Compare commits

..

No commits in common. "25c314dbac7a2a1f81c346ff34d55d25322c07d8" and "82246766bea0df964fafbce46153dac688db6ae2" have entirely different histories.

15 changed files with 218 additions and 230 deletions

View File

@ -13,13 +13,4 @@ enum BorderFlag {
}; };
Q_DECLARE_FLAGS(BorderFlags, BorderFlag) Q_DECLARE_FLAGS(BorderFlags, BorderFlag)
struct GridProperty
{
GridProperty() :m_nInv(1), m_nWidth(1), m_clor(0, 0, 0), m_nType(1) {}
int m_nInv;
int m_nWidth;
QColor m_clor;
int m_nType;
};
#endif // LOG_COMMON_H #endif // LOG_COMMON_H

View File

@ -2775,8 +2775,8 @@ void PropertyWidget::initWellProperty(QString strUuid, QString strSlfName, QStri
void PropertyWidget::initGridProperty(QString strGroup, QStringList slist, GridProperty& gridp) void PropertyWidget::initGridProperty(QString strGroup, QStringList slist, GridProperty& gridp)
{ {
if (strGroup != "边框") if (strGroup != "边框")
_CreateVariantPropertyItem(strGroup, "间隔(m)", gridp.m_nInv, QVariant::Int, 1, 100); _CreateVariantPropertyItem(strGroup, "间隔(m)", gridp.m_nInv, QVariant::Int);
_CreateVariantPropertyItem(strGroup, "线宽", gridp.m_nWidth, QVariant::Int, 1, 10); _CreateVariantPropertyItem(strGroup, "线宽", gridp.m_nWidth, QVariant::Int);
_CreateVariantPropertyItem(strGroup, "颜色", gridp.m_clor, QVariant::Color); _CreateVariantPropertyItem(strGroup, "颜色", gridp.m_clor, QVariant::Color);
QStringList listStyle; QStringList listStyle;
@ -2810,34 +2810,6 @@ void PropertyWidget::initTrackProperty(FormTrackTop *fromTop, int iWidth, QMyTab
_CreateVariantPropertyItem("通常", "道名称", m_strTrackName, QVariant::String); _CreateVariantPropertyItem("通常", "道名称", m_strTrackName, QVariant::String);
_CreateVariantPropertyItem("通常", "道头字体", fromTop->m_font, QVariant::Font); _CreateVariantPropertyItem("通常", "道头字体", fromTop->m_font, QVariant::Font);
_CreateVariantPropertyItem("通常", "道头字颜色", fromTop->m_fontColor, QVariant::Color); _CreateVariantPropertyItem("通常", "道头字颜色", fromTop->m_fontColor, QVariant::Color);
//
// _CreateVariantPropertyItem("网格", "水平", fromTop->m_nTrackW, QVariant::Bool);
// _CreateVariantPropertyItem("网格", "垂直", fromTop->m_nTrackW, QVariant::Bool);
// _CreateVariantPropertyItem("网格", "道左刻度", fromTop->m_nTrackW, QVariant::Double);
// _CreateVariantPropertyItem("网格", "道右刻度", fromTop->m_nTrackW, QVariant::Double);
// _CreateVariantPropertyItem("网格", "同步修改曲线刻度", fromTop->m_nTrackW, QVariant::Double);
// _CreateVariantPropertyItem("网格", "道垂直网格数", fromTop->m_nTrackW, QVariant::Double);
// _CreateVariantPropertyItem("网格", "垂直网格粗线间隔", fromTop->m_nTrackW, QVariant::Double);
//
// QStringList listStyle;
// listStyle.append("无");
// listStyle.append("实线");
// listStyle.append("虚线");
// listStyle.append("点线");
// listStyle.append("虚点线");
// listStyle.append("虚点点线");
// _CreateVariantPropertyItem("垂直网格细线线型", "线宽", formInfo->m_dWidth, QVariant::Int);
// _CreateVariantPropertyItem("垂直网格细线线型", "颜色", formInfo->m_lineColor, QVariant::Color);
// _CreateEnumPropertyItem("垂直网格细线线型", "线型", (int)formInfo->m_lineStyle, listStyle);
//
// _CreateVariantPropertyItem("垂直网格粗线线型", "线宽", formInfo->m_dWidth, QVariant::Int);
// _CreateVariantPropertyItem("垂直网格粗线线型", "颜色", formInfo->m_lineColor, QVariant::Color);
// _CreateEnumPropertyItem("垂直网格粗线线型", "线型", (int)formInfo->m_lineStyle, listStyle);
//
// _CreateVariantPropertyItem("边框", "绘制顶边框", fromTop->m_nTrackW, QVariant::Bool);
// _CreateVariantPropertyItem("边框", "绘制底边框", fromTop->m_nTrackW, QVariant::Bool);
// _CreateVariantPropertyItem("边框", "绘制左边框", fromTop->m_nTrackW, QVariant::Bool);
// _CreateVariantPropertyItem("边框", "绘制右边框", fromTop->m_nTrackW, QVariant::Bool);
//当前属性类型 //当前属性类型
m_strCurrentProperty = Track_Property; m_strCurrentProperty = Track_Property;

View File

@ -40,8 +40,6 @@ FormDraw::FormDraw(QWidget *parent, QString strWellName, QString strTrackName) :
ui->setupUi(this); ui->setupUi(this);
setAcceptDrops(true); setAcceptDrops(true);
m_pFWell = qobject_cast<FormWell*>(parent);
m_strWellName = strWellName; m_strWellName = strWellName;
m_strTrackName = strTrackName; m_strTrackName = strTrackName;
m_nSltk=15.0;//杆状图长度 m_nSltk=15.0;//杆状图长度
@ -2800,7 +2798,7 @@ void FormDraw::paintEvent(QPaintEvent*)
rect.setTop(rect.top() + 1); rect.setTop(rect.top() + 1);
// 3. 准备绘制边框 // 3. 准备绘制边框
painter.save(); painter.save();
painter.setPen(QPen(m_pFWell->getBorderGridProperty().m_clor, m_pFWell->getBorderGridProperty().m_nWidth)); // 颜色、宽度可自定义 painter.setPen(QPen(Qt::black, 2)); // 颜色、宽度可自定义
// 上边框 // 上边框
if (m_BorderFlags & TopBorder) { if (m_BorderFlags & TopBorder) {
@ -3154,10 +3152,10 @@ void FormDraw::s_mouseWheel(QWheelEvent *event)
emit CallManage::getInstance()->sig_mouseWheel(event); emit CallManage::getInstance()->sig_mouseWheel(event);
} }
void FormDraw::setColWidth(float fNewWidth) void FormDraw::setColWidth(int iNewWidth)
{ {
m_nTrackW = fNewWidth; m_nTrackW = iNewWidth;
fNewWidth = fNewWidth * g_dPixelPerCm; iNewWidth = iNewWidth * g_dPixelPerCm;
// 获取当前widget的所有子控件 // 获取当前widget的所有子控件
const QObjectList &children = this->children(); const QObjectList &children = this->children();
//判断为空 //判断为空

View File

@ -11,7 +11,6 @@
#include "MemRdWt.h" #include "MemRdWt.h"
#include "FormLine.h" #include "FormLine.h"
#include "common.h" #include "common.h"
#include "formwell.h"
#pragma execution_character_set("utf-8") #pragma execution_character_set("utf-8")
@ -85,7 +84,7 @@ public:
private: private:
Ui::FormDraw *ui; Ui::FormDraw *ui;
FormWell* m_pFWell = NULL;
protected: protected:
void paintEvent(QPaintEvent *event); void paintEvent(QPaintEvent *event);
@ -100,7 +99,7 @@ public slots:
void s_mouseWheel(QWheelEvent *event); void s_mouseWheel(QWheelEvent *event);
void setRowHeight(double dHight, QProgressBar *progressBar, int iSplit); void setRowHeight(double dHight, QProgressBar *progressBar, int iSplit);
void setColWidth(float fNewWidth); void setColWidth(int iNewWidth);
public: public:
QString m_strUuid; QString m_strUuid;

View File

@ -3,7 +3,6 @@
#include <QDebug> #include <QDebug>
#include "CallManage.h" #include "CallManage.h"
#include "geometryutils.h" #include "geometryutils.h"
#include "formwell.h"
extern int g_iOneWidth; //道宽 extern int g_iOneWidth; //道宽
@ -14,8 +13,6 @@ FormTrack::FormTrack(QWidget *parent, QString strWellName, QString strTrackName)
{ {
ui->setupUi(this); ui->setupUi(this);
m_pFWell = qobject_cast<FormWell*>(parent);
m_strTrackUuid = getUUid(); m_strTrackUuid = getUUid();
m_strWellName = strWellName; m_strWellName = strWellName;
m_strTrackName = strTrackName; m_strTrackName = strTrackName;
@ -191,7 +188,7 @@ void FormTrack::paintEvent(QPaintEvent *event)
rect.setTop(rect.top() + 1); rect.setTop(rect.top() + 1);
// 绘制边框 // 绘制边框
painter.save(); painter.save();
painter.setPen(QPen(m_pFWell->getBorderGridProperty().m_clor, m_pFWell->getBorderGridProperty().m_nWidth)); // 颜色、宽度可自定义 painter.setPen(QPen(Qt::black, 2)); // 颜色、宽度可自定义
// 上边框 // 上边框
if (m_BorderFlags & TopBorder) { if (m_BorderFlags & TopBorder) {

View File

@ -11,7 +11,7 @@
namespace Ui { namespace Ui {
class FormTrack; class FormTrack;
} }
class FormWell;
//class NoLRBorderDelegate : public QStyledItemDelegate //class NoLRBorderDelegate : public QStyledItemDelegate
//{ //{
//public: //public:
@ -61,7 +61,7 @@ public:
private: private:
Ui::FormTrack *ui; Ui::FormTrack *ui;
FormWell* m_pFWell = NULL;
protected: protected:
void paintEvent(QPaintEvent *event); void paintEvent(QPaintEvent *event);

View File

@ -7,7 +7,6 @@
#include <QPushButton> #include <QPushButton>
#include <QVBoxLayout> #include <QVBoxLayout>
#include "geometryutils.h" #include "geometryutils.h"
#include "formwell.h"
//曲线名称(单个) //曲线名称(单个)
FormTrackTop::FormTrackTop(QWidget *parent, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QColor lineColor) : FormTrackTop::FormTrackTop(QWidget *parent, QString strSlfName, QString strWellName, QString strTrackName, QString strLineName, QColor lineColor) :
@ -18,8 +17,6 @@ FormTrackTop::FormTrackTop(QWidget *parent, QString strSlfName, QString strWellN
// //
setAcceptDrops(true); setAcceptDrops(true);
m_pFWell = qobject_cast<FormWell*>(parent);
m_strSlfName = strSlfName; m_strSlfName = strSlfName;
m_strWellName = strWellName; m_strWellName = strWellName;
m_strTrackName = strTrackName; m_strTrackName = strTrackName;
@ -78,29 +75,13 @@ void FormTrackTop::paintEvent(QPaintEvent* event)
painter.setBrush(Qt::NoBrush); // 确保文字不被填充色遮挡 painter.setBrush(Qt::NoBrush); // 确保文字不被填充色遮挡
painter.setFont(m_font); painter.setFont(m_font);
painter.setPen(m_fontColor); // fontColor QColor(220, 220, 220) painter.setPen(m_fontColor); // fontColor QColor(220, 220, 220)
painter.drawText(rect.left(), rect.top(), rect.width(), rect.height(), Qt::AlignCenter, m_strTrackName);
bool bVer = false;
QString text = m_strTrackName;
QFontMetrics fm1(m_font);
QRect textRect = fm1.boundingRect(m_strTrackName);
if (textRect.width() > rect.width())
{
text = "";
for (int i = 0; i < m_strTrackName.size(); i++) {
if (!i)text += m_strTrackName.at(i);
else {
text += "\n";
text += m_strTrackName.at(i);
}
}
}
painter.drawText(rect.left(), rect.top(), rect.width(), rect.height(), Qt::AlignCenter, text);
rect.setLeft(rect.left() + 1); rect.setLeft(rect.left() + 1);
rect.setTop(rect.top() + 1); rect.setTop(rect.top() + 1);
// 3. 准备绘制边框 // 3. 准备绘制边框
painter.save(); painter.save();
painter.setPen(QPen(m_pFWell->getBorderGridProperty().m_clor, m_pFWell->getBorderGridProperty().m_nWidth)); // 颜色、宽度可自定义 painter.setPen(QPen(Qt::black, 2)); // 颜色、宽度可自定义
// 上边框 // 上边框
if (m_BorderFlags & TopBorder) { if (m_BorderFlags & TopBorder) {

View File

@ -15,7 +15,7 @@
namespace Ui { namespace Ui {
class FormTrackTop; class FormTrackTop;
} }
class FormWell;
class FormTrackTop : public QWidget class FormTrackTop : public QWidget
{ {
Q_OBJECT Q_OBJECT
@ -55,16 +55,12 @@ public:
BorderFlags m_BorderFlags; BorderFlags m_BorderFlags;
public: public:
QJsonObject makeJson(); QJsonObject makeJson();
private: private:
QPoint startPosition; QPoint startPosition;
FormWell* m_pFWell = NULL;
}; };
#endif // FormTrackTop_H #endif // FormTrackTop_H

View File

@ -5,7 +5,6 @@
#include "geometryutils.h" #include "geometryutils.h"
#include "mainwindowcurve.h" #include "mainwindowcurve.h"
#include "PropertyWidget.h" #include "PropertyWidget.h"
#include "wellheader.h"
extern int g_iOneWidth; //道宽 extern int g_iOneWidth; //道宽
//extern int m_iY1; //extern int m_iY1;
@ -35,9 +34,6 @@ FormWell::FormWell(QWidget *parent, QString strWellName) :
m_xiProperty.m_clor = QColor(208,208,208); m_xiProperty.m_clor = QColor(208,208,208);
m_borderProperty.m_clor = Qt::black;
m_borderProperty.m_nWidth = 2;
//ui->tableWidget->verticalHeader()->hide(); //行 //ui->tableWidget->verticalHeader()->hide(); //行
ui->tableWidget->horizontalHeader()->hide();//列 ui->tableWidget->horizontalHeader()->hide();//列
int rowcount = 3; //总行数 int rowcount = 3; //总行数
@ -88,12 +84,6 @@ FormWell::~FormWell()
delete ui; delete ui;
} }
void FormWell::setWellHeader(WellHeader* pHeader)
{
m_pWHeader = pHeader;
pHeader->m_pFormWell = this;
}
void FormWell::resizeEvent(QResizeEvent *event) void FormWell::resizeEvent(QResizeEvent *event)
{ {
//重设表格高度 //重设表格高度
@ -229,7 +219,7 @@ QVector<QWidget *> FormWell::new_track(QStringList listdt, QString strTrackName)
else if(i==1) else if(i==1)
{ {
//设置高度 //设置高度
ui->tableWidget->setRowHeight(i, m_nObjLyrH); ui->tableWidget->setRowHeight(i, 300);
//曲线名称栏 //曲线名称栏
formTrack = new FormTrack(this, strWellName, strTrackName); formTrack = new FormTrack(this, strWellName, strTrackName);
@ -346,7 +336,7 @@ void FormWell::paintEvent(QPaintEvent *event)
rect.setTop(rect.top() + 1); rect.setTop(rect.top() + 1);
// 3. 准备绘制边框 // 3. 准备绘制边框
painter.save(); painter.save();
painter.setPen(QPen(m_borderProperty.m_clor, m_borderProperty.m_nWidth)); // 颜色、宽度可自定义 painter.setPen(QPen(Qt::black, 2)); // 颜色、宽度可自定义
// 上边框 // 上边框
if (m_BorderFlags & TopBorder) { if (m_BorderFlags & TopBorder) {
@ -681,28 +671,19 @@ void FormWell::setWellProperty(QVariantList listVal)
gridpt->m_nType = listVal.at(2).toInt(); gridpt->m_nType = listVal.at(2).toInt();
} }
if (strGroup == "边框") int columnCount = ui->tableWidget->columnCount();//总列数
for (int i = 0; i < columnCount; i++)
{ {
update(); if (ui->tableWidget->cellWidget(1, i) == nullptr)
if(m_pWHeader) continue;
m_pWHeader->update(); auto myWidget = ui->tableWidget->cellWidget(2, i);
} if (myWidget == nullptr)
else continue;
{
int columnCount = ui->tableWidget->columnCount();//总列数
for (int i = 0; i < columnCount; i++)
{
if (ui->tableWidget->cellWidget(1, i) == nullptr)
continue;
auto myWidget = ui->tableWidget->cellWidget(2, i);
if (myWidget == nullptr)
continue;
FormDraw *formDraw = qobject_cast<FormDraw*>(myWidget); FormDraw *formDraw = qobject_cast<FormDraw*>(myWidget);
if (formDraw) if (formDraw)
{ {
formDraw->changeGridProperty(strGroup, gridpt->m_nInv, gridpt->m_nWidth, gridpt->m_clor, gridpt->m_nType); formDraw->changeGridProperty(strGroup, gridpt->m_nInv, gridpt->m_nWidth, gridpt->m_clor, gridpt->m_nType);
}
} }
} }
} }
@ -976,7 +957,7 @@ void FormWell::getTableSize_Head(int &iHight)
} }
if(iHight == 0) if(iHight == 0)
{ {
iHight = 100 + m_nObjLyrH; iHight = 100 + 300;
} }
} }

View File

@ -9,10 +9,19 @@
#pragma execution_character_set("utf-8") #pragma execution_character_set("utf-8")
struct GridProperty
{
GridProperty() :m_nInv(1), m_nWidth(1), m_clor(0, 0, 0), m_nType(1) {}
int m_nInv;
int m_nWidth;
QColor m_clor;
int m_nType;
};
namespace Ui { namespace Ui {
class FormWell; class FormWell;
} }
class WellHeader;
class FormWell : public QWidget class FormWell : public QWidget
{ {
Q_OBJECT Q_OBJECT
@ -21,7 +30,6 @@ public:
explicit FormWell(QWidget *parent = nullptr, QString strWellName=""); explicit FormWell(QWidget *parent = nullptr, QString strWellName="");
~FormWell(); ~FormWell();
void setWellHeader(WellHeader* pHeader);
// 插入列,返回列索引 // 插入列,返回列索引
int insertColumn(double dw); int insertColumn(double dw);
@ -46,20 +54,16 @@ protected:
void resizeWindow(); void resizeWindow();
private: private:
Ui::FormWell *ui; Ui::FormWell *ui;
WellHeader* m_pWHeader = NULL;
GridProperty m_cuProperty; // 粗网格 GridProperty m_cuProperty; // 粗网格
GridProperty m_zhongProperty; // 中网格 GridProperty m_zhongProperty; // 中网格
GridProperty m_xiProperty; // 细网格 GridProperty m_xiProperty; // 细网格
GridProperty m_borderProperty; // 边框 GridProperty m_borderProperty; // 边框
GridProperty m_verCuProperty; // 粗网格
GridProperty m_verXiProperty; // xi网格
public: public:
QString m_strUuid; QString m_strUuid;
QString m_strWellName; QString m_strWellName;
QString m_strSlfName=""; QString m_strSlfName="";
int m_nObjLyrH = 100;
int m_iScale=200; int m_iScale=200;
double m_iY1=0; double m_iY1=0;
double m_iY2=0; double m_iY2=0;

View File

@ -11,7 +11,6 @@
</ProjectConfiguration> </ProjectConfiguration>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<QtMoc Include="wellheader.h" />
<QtMoc Include="TransparentDraggableCrackObject.h" /> <QtMoc Include="TransparentDraggableCrackObject.h" />
<QtMoc Include="selectwelldialog.h" /> <QtMoc Include="selectwelldialog.h" />
<QtMoc Include="TransparentDraggableCorePhysics.h" /> <QtMoc Include="TransparentDraggableCorePhysics.h" />
@ -217,7 +216,6 @@
<ClCompile Include="variantfactory.cpp" /> <ClCompile Include="variantfactory.cpp" />
<ClCompile Include="variantmanager.cpp" /> <ClCompile Include="variantmanager.cpp" />
<ClCompile Include="ViewInfo.cpp" /> <ClCompile Include="ViewInfo.cpp" />
<ClCompile Include="wellheader.cpp" />
<ClCompile Include="YxzpDialog.cpp" /> <ClCompile Include="YxzpDialog.cpp" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>

View File

@ -316,9 +316,6 @@
<QtMoc Include="TransparentDraggableCrackObject.h"> <QtMoc Include="TransparentDraggableCrackObject.h">
<Filter>Header Files</Filter> <Filter>Header Files</Filter>
</QtMoc> </QtMoc>
<QtMoc Include="wellheader.h">
<Filter>Header Files</Filter>
</QtMoc>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="backgrounddelegate.cpp"> <ClCompile Include="backgrounddelegate.cpp">
@ -663,9 +660,6 @@
<ClCompile Include="3rd_tiff\libtiff\port\getopt.c"> <ClCompile Include="3rd_tiff\libtiff\port\getopt.c">
<Filter>libtiff\port</Filter> <Filter>libtiff\port</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="wellheader.cpp">
<Filter>Source Files</Filter>
</ClCompile>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<QtRcc Include="logplus.qrc"> <QtRcc Include="logplus.qrc">

View File

@ -22,7 +22,6 @@
#include "TIFFIO.H" #include "TIFFIO.H"
#include "TIFF.H" #include "TIFF.H"
#include "DepthProgress.h" #include "DepthProgress.h"
#include "wellheader.h"
//主窗口为了方便获取tab当前页 //主窗口为了方便获取tab当前页
extern MainWindow *g_mainWindow; extern MainWindow *g_mainWindow;
@ -2153,14 +2152,13 @@ QStringList MainWindowCurve::insertCol(int nW)
return sret; return sret;
} }
WellHeader* pWheader = qobject_cast<WellHeader*>(ui->tableWidget_2->cellWidget(0, column)); QString strWellName = ui->tableWidget_2->item(0, column)->text();
if (pWheader)
{
sret << pWheader->m_strWellName << pWheader->m_strSlfName;
}
//设置列宽 //设置列宽
ui->tableWidget_2->setColumnWidth(column, iWidth+nW*g_dPixelPerCm); ui->tableWidget_2->setColumnWidth(column, iWidth+nW*g_dPixelPerCm);
sret << strWellName << strSlfName;
return sret; return sret;
} }
@ -2193,11 +2191,12 @@ QStringList MainWindowCurve::getSelectWell_New()
} }
else if(ui->tableWidget_2->columnCount()==1) else if(ui->tableWidget_2->columnCount()==1)
{ {
WellHeader* pWheader = qobject_cast<WellHeader*>(ui->tableWidget_2->cellWidget(0, 0)); //单井
if (pWheader) QString strWellName = ui->tableWidget_2->item(0, 0)->text();
{ //直接从单井获取data记录slf路径
sret << pWheader->m_strWellName << pWheader->m_strSlfName; QString strSlfName = ui->tableWidget_2->item(0, 0)->data(Qt::UserRole+1).toString();
}
sret << strWellName << strSlfName;
return sret; return sret;
} }
else else
@ -2256,11 +2255,12 @@ QStringList MainWindowCurve::getSelectWell()
return sret; return sret;
} }
WellHeader* pWheader = qobject_cast<WellHeader*>(ui->tableWidget_2->cellWidget(0, column)); QString strWellName = ui->tableWidget_2->item(0, column)->text();
if (pWheader) //直接从选中的井获取data记录slf路径
{ QString strSlfName = ui->tableWidget_2->item(0, column)->data(Qt::UserRole+1).toString();
sret << pWheader->m_strWellName << pWheader->m_strSlfName;
} sret << strWellName << strSlfName;
return sret; return sret;
} }
@ -3175,27 +3175,19 @@ void MainWindowCurve::s_NewWell(QString strWellName, QString strSlfName)
QTableWidgetItem *headerItem = new QTableWidgetItem(""); QTableWidgetItem *headerItem = new QTableWidgetItem("");
ui->tableWidget_2->setHorizontalHeaderItem(columnCount, headerItem); ui->tableWidget_2->setHorizontalHeaderItem(columnCount, headerItem);
WellHeader *wellH = NULL;
for(int i=0; i<rowcount; i++) for(int i=0; i<rowcount; i++)
{ {
if(i==0) if(i==0)
{ {
//设置高度 //设置高度
ui->tableWidget_2->setRowHeight(i, 100); ui->tableWidget_2->setRowHeight(i, 100);
wellH = new WellHeader(this, strSlfName, strWellName);
wellH->m_strUuid = m_strUuid;
wellH->setBorderFlags(BorderFlags(TopBorder |BottomBorder | LeftBorder | RightBorder));
//
ui->tableWidget_2->setCellWidget(i, columnCount, wellH);
// //
// QTableWidgetItem* item = new QTableWidgetItem(strWellName); QTableWidgetItem* item = new QTableWidgetItem(strWellName);
// setItemBorderFlags(item, BorderFlags(TopBorder | BottomBorder | LeftBorder | RightBorder)); setItemBorderFlags(item, BorderFlags(TopBorder | BottomBorder | LeftBorder | RightBorder));
// item->setData(Qt::UserRole + 1, strSlfName); item->setData(Qt::UserRole + 1, strSlfName);
// item->setFlags(item->flags() & (~Qt::ItemIsEditable)); item->setFlags(item->flags() & (~Qt::ItemIsEditable));
// item->setTextAlignment(Qt::AlignCenter); //设置文本居中 item->setTextAlignment(Qt::AlignCenter); //设置文本居中
// ui->tableWidget_2->setItem(i, columnCount, item); ui->tableWidget_2->setItem(i, columnCount, item);
} }
else else
{ {
@ -3211,7 +3203,7 @@ void MainWindowCurve::s_NewWell(QString strWellName, QString strSlfName)
dHight = 32767; dHight = 32767;
} }
dHight = dHight+ m_nObjLayerH +100+10; dHight = dHight+300+100+10;
//设置高度 //设置高度
//jyl ui->tableWidget_2->setRowHeight(i, (int)dHight); //jyl ui->tableWidget_2->setRowHeight(i, (int)dHight);
// 屏幕高度 // 屏幕高度
@ -3230,7 +3222,7 @@ void MainWindowCurve::s_NewWell(QString strWellName, QString strSlfName)
} }
// //
//获取井well前2行的高度 //获取井well前2行的高度
int iTableSize_Head = 100 + m_nObjLayerH; int iTableSize_Head = 100 + 300;
//此处还没有生成well所以不能这样获取 //此处还没有生成well所以不能这样获取
//getTableSize_Head(iTableSize_Head); //getTableSize_Head(iTableSize_Head);
// //
@ -3242,9 +3234,7 @@ void MainWindowCurve::s_NewWell(QString strWellName, QString strSlfName)
widgetWell->m_iY2 = m_iY2; widgetWell->m_iY2 = m_iY2;
widgetWell->m_strUuid = m_strUuid; widgetWell->m_strUuid = m_strUuid;
widgetWell->m_strSlfName = strSlfName; widgetWell->m_strSlfName = strSlfName;
widgetWell->m_nObjLyrH = m_nObjLayerH;
widgetWell->m_iScale = m_iScale; widgetWell->m_iScale = m_iScale;
widgetWell->setWellHeader(wellH);
// //
ui->tableWidget_2->setCellWidget(i, columnCount, widgetWell);//默认用widgetWell填充满 ui->tableWidget_2->setCellWidget(i, columnCount, widgetWell);//默认用widgetWell填充满
m_mapFWell.insert(strWellName, widgetWell); m_mapFWell.insert(strWellName, widgetWell);
@ -3378,10 +3368,7 @@ void MainWindowCurve::s_NewTrack()
return; return;
} }
QStringList sret = this->getSelectWell(); QString strWellName = ui->tableWidget_2->item(0, column)->text();
if (sret.length() <= 0)
return;
QString strWellName = sret.at(0);
//新建道 //新建道
emit CallManage::getInstance()->sig_NewTrack(m_strUuid, strWellName, "", "", ""); emit CallManage::getInstance()->sig_NewTrack(m_strUuid, strWellName, "", "", "");
@ -3393,15 +3380,75 @@ void MainWindowCurve::s_NewTrack()
void MainWindowCurve::s_NewDepth() void MainWindowCurve::s_NewDepth()
{ {
int column = -1; int column = -1;
int nW = 2; int nW = 3;
QStringList sret = this->insertCol(nW); QString strSlfName = "";
if (sret.length() <= 0)
return; //如果视图为空,则根据左侧选中的井来创建深度道
if(ui->tableWidget_2->columnCount()==0)
{
QString strLeft = m_leftWidgets->getLeftTreeString();
if(strLeft.length() > 0)
{
QStringList list = strLeft.split("#@@#");//QString字符串分割函数
if (list.size() > 3)
{
strSlfName = list[0];
QString strWellName = list[1];
// QString strLineName = list[2];
// QString strType = list[3];
if(!m_listWell.contains(strWellName))
{
//井没创建,创建井+道+曲线
//新建井
s_NewWell(strWellName, strSlfName);
//m_listWell.push_back(strWellName);//重复添加
column= 0;
}
}
}
//return;
}
int iWidth = 0;
if(column < 0)
{
column = ui->tableWidget_2->currentColumn();//列编号从0开始
iWidth = ui->tableWidget_2->columnWidth(column);
}
if(column<0)
{
//当前没有选中井
QMessageBox::warning(this, "提示", "当前没有选中井", "确定");
return;
}
if(column%2==0)
{
}
else
{
//空白列
QMessageBox::warning(this, "提示", "当前没有选中井", "确定");
return;
}
QString strWellName = ui->tableWidget_2->item(0, column)->text();
//直接从选中的井获取data记录slf路径
if(strSlfName=="")
{
strSlfName = ui->tableWidget_2->item(0, column)->data(Qt::UserRole+1).toString();
}
//设置列宽
ui->tableWidget_2->setColumnWidth(column, iWidth+nW*g_dPixelPerCm+8);
QStringList dt; QStringList dt;
dt << m_strUuid; dt << m_strUuid;
dt << sret.at(0); dt << strWellName;
dt << sret.at(1); dt << strSlfName;
dt << "深度"; dt << "深度";
dt << "depthObject"; dt << "depthObject";
dt << QString::number(nW); dt << QString::number(nW);
@ -3635,16 +3682,49 @@ void MainWindowCurve::s_NewShowDip()
void MainWindowCurve::s_pinLvAc() void MainWindowCurve::s_pinLvAc()
{ {
int column = -1;
int nW = 4; int nW = 4;
QStringList sret = this->insertCol(nW); if(ui->tableWidget_2->columnCount()==0)
if (sret.length() <= 0) {
return; return;
}
int iWidth = 0;
if(column < 0)
{
column = ui->tableWidget_2->currentColumn();//列编号从0开始
iWidth = ui->tableWidget_2->columnWidth(column);
}
if(column<0)
{
//当前没有选中井
QMessageBox::warning(this, "提示", "当前没有选中井", "确定");
return;
}
if(column%2==0)
{
}
else
{
//空白列
QMessageBox::warning(this, "提示", "当前没有选中井", "确定");
return;
}
QString strWellName = ui->tableWidget_2->item(0, column)->text();
//直接从选中的井获取data记录slf路径
QString strSlfName = ui->tableWidget_2->item(0, column)->data(Qt::UserRole+1).toString();
//设置列宽
ui->tableWidget_2->setColumnWidth(column, iWidth+nW*g_dPixelPerCm+8);
QStringList dt; QStringList dt;
dt << m_strUuid; dt << m_strUuid;
dt << sret.at(0); dt << strWellName;
dt << sret.at(1); dt << strSlfName;
dt << ""; dt << "";
dt << "plObject"; dt << "plObject";
dt << QString::number(nW); dt << QString::number(nW);
@ -3654,13 +3734,38 @@ void MainWindowCurve::s_pinLvAc()
void MainWindowCurve::s_NewGanZhuangTu() void MainWindowCurve::s_NewGanZhuangTu()
{ {
int nW = 4; if(ui->tableWidget_2->columnCount()==0)
QStringList sret = this->insertCol(nW); {
if (sret.length() <= 0) return;
return; }
QString strWellName = sret.at(0);
int column = ui->tableWidget_2->currentColumn();//列编号从0开始
if(column<0)
{
//当前没有选中井
QMessageBox::warning(this, "提示", "当前没有选中井", "确定");
return;
}
if(column%2==0)
{
}
else
{
//空白列
QMessageBox::warning(this, "提示", "当前没有选中井", "确定");
return;
}
QString strWellName = ui->tableWidget_2->item(0, column)->text();
//直接从选中的井获取data记录slf路径 //直接从选中的井获取data记录slf路径
QString strSlfName = sret.at(1); QString strSlfName = ui->tableWidget_2->item(0, column)->data(Qt::UserRole+1).toString();
int iWidth = ui->tableWidget_2->columnWidth(column);
int nW = 4;
//设置列宽
ui->tableWidget_2->setColumnWidth(column, iWidth+nW*g_dPixelPerCm+8);
//新建道 //新建道
emit CallManage::getInstance()->sig_NewTrack(m_strUuid, strWellName, strSlfName, "杆状图", "ganzhuangtuObject", nW); emit CallManage::getInstance()->sig_NewTrack(m_strUuid, strWellName, strSlfName, "杆状图", "ganzhuangtuObject", nW);
@ -3728,12 +3833,9 @@ void MainWindowCurve::s_Jykt()
return; return;
} }
QStringList sret = this->getSelectWell_New(); QString strWellName = ui->tableWidget_2->item(0, column)->text();
if (sret.length() <= 0) //直接从选中的井获取data记录slf路径
return; QString strSlfName = ui->tableWidget_2->item(0, column)->data(Qt::UserRole+1).toString();
QString strWellName = sret.at(0);
//直接从选中的井获取data记录slf路径
QString strSlfName = sret.at(1);
int iWidth = ui->tableWidget_2->columnWidth(column); int iWidth = ui->tableWidget_2->columnWidth(column);
@ -3782,12 +3884,9 @@ void MainWindowCurve::s_Denv()
return; return;
} }
QStringList sret = this->getSelectWell_New(); QString strWellName = ui->tableWidget_2->item(0, column)->text();
if (sret.length() <= 0) //直接从选中的井获取data记录slf路径
return; QString strSlfName = ui->tableWidget_2->item(0, column)->data(Qt::UserRole+1).toString();
QString strWellName = sret.at(0);
//直接从选中的井获取data记录slf路径
QString strSlfName = sret.at(1);
int iWidth = ui->tableWidget_2->columnWidth(column); int iWidth = ui->tableWidget_2->columnWidth(column);
@ -3836,12 +3935,9 @@ void MainWindowCurve::s_DrawImage()
return; return;
} }
QStringList sret = this->getSelectWell_New(); QString strWellName = ui->tableWidget_2->item(0, column)->text();
if (sret.length() <= 0) //直接从选中的井获取data记录slf路径
return; QString strSlfName = ui->tableWidget_2->item(0, column)->data(Qt::UserRole+1).toString();
QString strWellName = sret.at(0);
//直接从选中的井获取data记录slf路径
QString strSlfName = sret.at(1);
int iWidth = ui->tableWidget_2->columnWidth(column); int iWidth = ui->tableWidget_2->columnWidth(column);
@ -3988,8 +4084,8 @@ void MainWindowCurve::s_NewTrackChangeWidth(QString strWellName, double nW)
continue; continue;
} }
// //
WellHeader* pWheader = qobject_cast<WellHeader*>(ui->tableWidget_2->cellWidget(0, i)); QString strWellNameTemp = ui->tableWidget_2->item(0, i)->text();
if(pWheader && pWheader->m_strWellName==strWellName) if(strWellNameTemp==strWellName)
{ {
int iWidth = ui->tableWidget_2->columnWidth(i);//设置列宽 int iWidth = ui->tableWidget_2->columnWidth(i);//设置列宽
ui->tableWidget_2->setColumnWidth(i, iWidth + ntmpw + 6); ui->tableWidget_2->setColumnWidth(i, iWidth + ntmpw + 6);
@ -4357,7 +4453,7 @@ void MainWindowCurve::s_changeScale(QString strUuid, int iNewScale)
dHight = 32767; dHight = 32767;
} }
double dHightOne = dHight+ m_nObjLayerH +100+10; double dHightOne = dHight+300+100+10;
//设置高度 //设置高度
//jyl ui->tableWidget_2->setRowHeight(1, (int)dHightOne); //jyl ui->tableWidget_2->setRowHeight(1, (int)dHightOne);
@ -4486,7 +4582,7 @@ void MainWindowCurve::s_changeDepth(QString strUuid, QString strSlfName, QString
} }
dHightMax = dHightMax*100.0/(double)m_iScale * g_dPixelPerCm; dHightMax = dHightMax*100.0/(double)m_iScale * g_dPixelPerCm;
double dHightOne = dHightMax+ m_nObjLayerH +100+10; double dHightOne = dHightMax+300+100+10;
//设置高度 //设置高度
//jyl ui->tableWidget_2->setRowHeight(1, (int)dHightOne); //jyl ui->tableWidget_2->setRowHeight(1, (int)dHightOne);
@ -4564,7 +4660,7 @@ void MainWindowCurve::changeDepthForPrint()
} }
// //
//获取井well前2行的高度 //获取井well前2行的高度
int iTableSize_Head = 100 + m_nObjLayerH; int iTableSize_Head = 100 + 300;
//此处还没有生成well所以不能这样获取 //此处还没有生成well所以不能这样获取
//getTableSize_Head(iTableSize_Head); //getTableSize_Head(iTableSize_Head);
// //
@ -4794,20 +4890,7 @@ void MainWindowCurve::resizeItem(QString strWellName, double colWidth, double ro
continue; continue;
} }
// //
QStringList sret = this->getSelectWell_New(); QString strWellNameTemp = ui->tableWidget_2->item(0, i)->text();
if (sret.length() <= 0)
return;
QString strWellName = sret.at(0);
//直接从选中的井获取data记录slf路径
QString strSlfName = sret.at(1);
QString strWellNameTemp = "";
WellHeader* pWheader = qobject_cast<WellHeader*>(ui->tableWidget_2->cellWidget(0, i));
if (pWheader)
{
strWellNameTemp = pWheader->m_strWellName;
}
if(strWellNameTemp==strWellName) if(strWellNameTemp==strWellName)
{ {
ui->tableWidget_2->setColumnWidth(i, colWidth+8); ui->tableWidget_2->setColumnWidth(i, colWidth+8);
@ -4914,7 +4997,7 @@ void MainWindowCurve::getTableSize_Head(int &iHight)
{ {
if(iHight == 0) if(iHight == 0)
{ {
iHight = 100 + m_nObjLayerH; iHight = 100 + 300;
} }
return; return;
@ -4936,7 +5019,7 @@ void MainWindowCurve::getTableSize_Head(int &iHight)
// //
if(iHight == 0) if(iHight == 0)
{ {
iHight = 100 + m_nObjLayerH; iHight = 100 + 300;
} }
} }

View File

@ -87,7 +87,6 @@ public:
QLineEdit *spinbox2; QLineEdit *spinbox2;
QLineEdit *spinbox3; QLineEdit *spinbox3;
int m_nObjLayerH = 104; // 对象层高度
int m_iScale=200; int m_iScale=200;
double m_iY1=-1000; double m_iY1=-1000;
double m_iY2=0; double m_iY2=0;

View File

@ -11770,20 +11770,15 @@ void QMyCustomPlot::vertScrollBarChanged(QString strUuid, int value)
{ {
if (qAbs(xAxis->range().center()-value) > 0.01) // if user is dragging plot, we don't want to replot twice if (qAbs(xAxis->range().center()-value) > 0.01) // if user is dragging plot, we don't want to replot twice
{ {
xAxis->setRange(-value, xAxis->range().size(), Qt::AlignRight); xAxis->setRange(-value, xAxis->range().size(), Qt::AlignRight);
const QCPRange& rg = xAxis->range(); replot();
this->updateDepthY(rg.lower, rg.upper);
replot();
} }
} }
else{ else{
if (qAbs(this->yAxis->range().center()+value) > 0.01) // if user is dragging plot, we don't want to replot twice if (qAbs(this->yAxis->range().center()+value) > 0.01) // if user is dragging plot, we don't want to replot twice
{ {
this->yAxis->setRange(-value, this->yAxis->range().size(), Qt::AlignRight); this->yAxis->setRange(-value, this->yAxis->range().size(), Qt::AlignRight);
const QCPRange& rg = yAxis->range(); this->replot();
this->updateDepthY(rg.lower, rg.upper);
replot();
} }
} }
} }