属性处理统一方法

This commit is contained in:
jiayulong 2026-03-24 14:48:27 +08:00
parent b5884b836b
commit 5a1da0a991
3 changed files with 127 additions and 258 deletions

View File

@ -1408,13 +1408,11 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
listCond << variant;
emit CallManage::getInstance()->sig_changeDepthProperty(listCond);
}
if("深度比例尺" == m_propertyData[pProperty])
else if(m_strCurrentProperty == Widget_Property)
{
//qDebug() << "深度比例尺->改变";
//当前属性类型
if(m_strCurrentProperty == Widget_Property)
if("深度比例尺" == m_propertyData[pProperty])
{
//qDebug() << "深度比例尺->改变";
int iScale = 200;
QString newScale = pProperty->valueText();
//qDebug() << "深度比例尺->" << newScale;
@ -1446,19 +1444,15 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
//通知界面缩放
emit CallManage::getInstance()->sig_changeScale(m_strUuid, iScale);
}
}
else if("自定义比例尺" == m_propertyData[pProperty])
{
if(m_bSelfChange==true)
else if("自定义比例尺" == m_propertyData[pProperty])
{
m_bSelfChange=false;
return;
}
if(m_bSelfChange==true)
{
m_bSelfChange=false;
return;
}
//qDebug() << "自定义比例尺->改变";
//当前属性类型
if(m_strCurrentProperty == Widget_Property)
{
//qDebug() << "自定义比例尺->改变";
int iScale = 200;
QString newScale = variant.value<QString>();
//qDebug() << "自定义比例尺->" << newScale;
@ -1489,20 +1483,17 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
//不合规
return;
}
//
m_iScale = iScale;
//通知界面缩放
emit CallManage::getInstance()->sig_changeScale(m_strUuid, iScale);
}
}
else if("开始深度(m)" == m_propertyData[pProperty])
else if(m_strCurrentProperty == Well_Property)
{
//qDebug() << "开始深度(m)->改变";
//当前属性类型
if(m_strCurrentProperty == Well_Property)
if("开始深度(m)" == m_propertyData[pProperty])
{
//qDebug() << "开始深度(m)->改变";
double newStartDepth = variant.value<double>();
m_iY2 = 0 - newStartDepth;
if(m_iY2 < m_iY1)
@ -1512,13 +1503,9 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
//通知界面
emit CallManage::getInstance()->sig_changeDepth(m_strUuid, m_strSlfName, m_strWellName, m_iY1, m_iY2);
}
}
else if("终止深度(m)" == m_propertyData[pProperty])
{
//qDebug() << "终止深度(m)->改变";
//当前属性类型
if(m_strCurrentProperty == Well_Property)
else if("终止深度(m)" == m_propertyData[pProperty])
{
//qDebug() << "终止深度(m)->改变";
double newEndDepth = variant.value<double>();
m_iY1 = 0 - newEndDepth;
if(m_iY2 < m_iY1)
@ -1529,114 +1516,113 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
emit CallManage::getInstance()->sig_changeDepth(m_strUuid, m_strSlfName, m_strWellName, m_iY1, m_iY2);
}
}
//曲线---------------------------
else if("显示名称" == m_propertyData[pProperty])
else if(m_strCurrentProperty == Curve_Property)
{
//qDebug() << "显示名称->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
//曲线---------------------------
if("选择井曲线" == m_propertyData[pProperty])
{
QString sFilePath = variant.value<QString>();
if(sFilePath.indexOf("@")>-1)
{
int ind=sFilePath.indexOf("@");
QString strLineName = sFilePath.left(ind);
sFilePath=sFilePath.mid(ind+1);
sFilePath.trimmed();
//只支持以下名称
{
QString strOldLineName = m_formInfo->m_strLineName;
QString strOldSlfName = m_formInfo->m_strSlfName;
//暂时不允许改变slf井次名称不然不在同一口井绘制
if(strOldSlfName != sFilePath)
{
QMessageBox::information(nullptr,"提示","不允许改变slf井次名称");
return;
}
//名称不变
if(strOldLineName == strLineName)
{
return;
}
//
m_formInfo->m_strLineName = strLineName;
//m_formInfo->m_strSlfName = sFilePath;
m_formInfo->update();
//改变曲线名
//emit CallManage::getInstance()->sig_changeJiegutextLine(m_formInfo->m_strUuid, m_formInfo->m_strSlfName, m_formInfo->m_strWellName, m_formInfo->m_strTrackName, strOldLineName, strLineName);
}
}
}
else if("显示名称" == m_propertyData[pProperty])
{
//qDebug() << "显示名称->改变";
QString newAliasName = variant.value<QString>();
m_formInfo->m_strAliasName = newAliasName;
m_formInfo->update();
}
}
else if("显示单位" == m_propertyData[pProperty])
{
//qDebug() << "显示单位->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("显示单位" == m_propertyData[pProperty])
{
//qDebug() << "显示单位->改变";
QString newUnit = variant.value<QString>();
m_formInfo->m_strUnit = newUnit;
m_formInfo->update();
}
}
else if("左刻度" == m_propertyData[pProperty])
{
//qDebug() << "左刻度->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("左刻度" == m_propertyData[pProperty])
{
//qDebug() << "左刻度->改变";
double newLeftScale = variant.value<double>();
m_formInfo->m_vmin = newLeftScale;
m_formInfo->m_vmin = newLeftScale;
emit CallManage::getInstance()->sig_ChangeLeftScale(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, newLeftScale);
emit CallManage::getInstance()->sig_ChangeCross(m_strUuid, m_strTrackUuid);
emit CallManage::getInstance()->sig_ChangeCross(m_strUuid, m_strTrackUuid);
//更新填充
ChangFillProperty();
}
}
else if("右刻度" == m_propertyData[pProperty])
{
//qDebug() << "右刻度->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("右刻度" == m_propertyData[pProperty])
{
//qDebug() << "右刻度->改变";
double newRightScale = variant.value<double>();
m_formInfo->m_vmax = newRightScale;
m_formInfo->m_vmax = newRightScale;
emit CallManage::getInstance()->sig_ChangeRightScale(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, newRightScale);
emit CallManage::getInstance()->sig_ChangeCross(m_strUuid, m_strTrackUuid);
emit CallManage::getInstance()->sig_ChangeCross(m_strUuid, m_strTrackUuid);
//更新填充
ChangFillProperty();
}
}
else if("刻度类型" == m_propertyData[pProperty])
{
//qDebug() << "刻度类型->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("刻度类型" == m_propertyData[pProperty])
{
//qDebug() << "刻度类型->改变";
QString newScaleType = pProperty->valueText();
emit CallManage::getInstance()->sig_ChangeScaleType(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, newScaleType);
//更新填充
ChangFillProperty();
}
}
else if ("左跨道个数" == m_propertyData[pProperty])
{
if (m_strCurrentProperty == Curve_Property)
{
m_formInfo->m_nLeftCross = variant.toInt();
emit CallManage::getInstance()->sig_ChangeCross(m_strUuid, m_strTrackUuid);
}
}
else if ("右跨道个数" == m_propertyData[pProperty])
{
if (m_strCurrentProperty == Curve_Property)
{
m_formInfo->m_nRightCross = variant.toInt();
emit CallManage::getInstance()->sig_ChangeCross(m_strUuid, m_strTrackUuid);
}
}
else if("颜色" == m_propertyData[pProperty])
{
//qDebug() << "颜色->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if ("左跨道个数" == m_propertyData[pProperty])
{
m_formInfo->m_nLeftCross = variant.toInt();
emit CallManage::getInstance()->sig_ChangeCross(m_strUuid, m_strTrackUuid);
}
else if ("右跨道个数" == m_propertyData[pProperty])
{
m_formInfo->m_nRightCross = variant.toInt();
emit CallManage::getInstance()->sig_ChangeCross(m_strUuid, m_strTrackUuid);
}
else if("颜色" == m_propertyData[pProperty])
{
//qDebug() << "颜色->改变";
//曲线颜色
// 假设variant已经被设置为包含QColor
QColor newColor = variant.value<QColor>();
emit CallManage::getInstance()->sig_ChangeLineColor(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, newColor);
}
}
else if("线宽" == m_propertyData[pProperty])
{
//qDebug() << "线宽->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("线宽" == m_propertyData[pProperty])
{
//qDebug() << "线宽->改变";
double newWidth = variant.value<double>();
emit CallManage::getInstance()->sig_ChangeLineWidth(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, newWidth);
}
}
else if("线型" == m_propertyData[pProperty])
{
//qDebug() << "线型->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("线型" == m_propertyData[pProperty])
{
//qDebug() << "线型->改变";
Qt::PenStyle newStyle = Qt::SolidLine;
int iStyle = variant.value<int>();
switch(iStyle)
@ -1668,168 +1654,76 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
default:
break;
}
emit CallManage::getInstance()->sig_ChangeLineStyle(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, newStyle);
}
}
else if("曲线" == m_propertyData[pProperty])
{
//qDebug() << "曲线->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("曲线" == m_propertyData[pProperty])
{
//qDebug() << "曲线->改变";
bool bDraw = variant.value<bool>();
emit CallManage::getInstance()->sig_ChangeDrawLine(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, bDraw);
}
}
else if("杆状" == m_propertyData[pProperty])
{
//qDebug() << "杆状->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("杆状" == m_propertyData[pProperty])
{
//qDebug() << "杆状->改变";
bool bDraw = variant.value<bool>();
emit CallManage::getInstance()->sig_ChangeDrawGan(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, bDraw);
}
}
else if("点状" == m_propertyData[pProperty])
{
//qDebug() << "点状->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("点状" == m_propertyData[pProperty])
{
//qDebug() << "点状->改变";
bool bDraw = variant.value<bool>();
emit CallManage::getInstance()->sig_ChangeDrawPoint(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, bDraw);
}
}
else if("绘制对称曲线" == m_propertyData[pProperty])
{
//qDebug() << "绘制对称曲线->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("绘制对称曲线" == m_propertyData[pProperty])
{
//qDebug() << "绘制对称曲线->改变";
bool bDraw = variant.value<bool>();
emit CallManage::getInstance()->sig_ChangeDrawSymmetry(m_strUuid, m_strSlfName, m_strWellName, m_strTrackName, m_strLineName, bDraw);
}
}
else if("填充模式" == m_propertyData[pProperty])
{
//qDebug() << "填充模式->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
else if("填充模式" == m_propertyData[pProperty] ||
"填充类型" == m_propertyData[pProperty] ||
"目标曲线" == m_propertyData[pProperty] ||
"填充颜色" == m_propertyData[pProperty] ||
"填充岩性" == m_propertyData[pProperty] ||
"岩性前景色" == m_propertyData[pProperty] ||
"岩性背景色" == m_propertyData[pProperty] ||
"头部图例" == m_propertyData[pProperty])
{
ChangFillProperty();
}
}
else if("填充类型" == m_propertyData[pProperty])
else if(m_strCurrentProperty == Head_Property)
{
//qDebug() << "填充类型->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
{
ChangFillProperty();
}
}
else if("目标曲线" == m_propertyData[pProperty])
{
//qDebug() << "目标曲线->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
{
ChangFillProperty();
}
}
else if("填充颜色" == m_propertyData[pProperty])
{
//qDebug() << "填充颜色->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
{
ChangFillProperty();
}
}
else if("填充岩性" == m_propertyData[pProperty])
{
//qDebug() << "填充岩性->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
{
ChangFillProperty();
}
}
else if("岩性前景色" == m_propertyData[pProperty])
{
//qDebug() << "岩性前景色->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
{
ChangFillProperty();
}
}
else if("岩性背景色" == m_propertyData[pProperty])
{
//qDebug() << "岩性背景色->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
{
ChangFillProperty();
}
}
else if("头部图例" == m_propertyData[pProperty])
{
//qDebug() << "头部图例->改变";
//当前属性类型
if(m_strCurrentProperty == Curve_Property)
{
ChangFillProperty();
}
}
//图头---------------------------
else if("图例" == m_propertyData[pProperty])
{
//qDebug() << "图例->改变";
//当前属性类型
if(m_strCurrentProperty == Head_Property)
//图头---------------------------
if("图例" == m_propertyData[pProperty])
{
//qDebug() << "图例->改变";
QString newSvg = variant.value<QString>();
m_item->setData(Qt::UserRole+1, newSvg); // 图片路径
//图头项改变
ChangHeadItemProperty();
}
}
else if("图例宽(cm)" == m_propertyData[pProperty])
{
//qDebug() << "图例宽(cm)->改变";
//当前属性类型
if(m_strCurrentProperty == Head_Property)
else if("图例宽(cm)" == m_propertyData[pProperty])
{
//qDebug() << "图例宽(cm)->改变";
double newWidth = variant.value<double>();
m_item->setData(Qt::UserRole+2, newWidth); // 图片路径
m_colWidth_Img = newWidth;
//图头项改变
ChangHeadItemProperty();
}
}
else if("图例高(cm)" == m_propertyData[pProperty])
{
//qDebug() << "图例高(cm)->改变";
//当前属性类型
if(m_strCurrentProperty == Head_Property)
else if("图例高(cm)" == m_propertyData[pProperty])
{
//qDebug() << "图例高(cm)->改变";
double newHight = variant.value<double>();
m_item->setData(Qt::UserRole+3, newHight); // 图片路径
m_rowHeight_Img = newHight;
//图头项改变
ChangHeadItemProperty();
}
}
else if("背景颜色" == m_propertyData[pProperty])
{
//qDebug() << "背景颜色->改变";
//当前属性类型
if(m_strCurrentProperty == Head_Property)
else if("背景颜色" == m_propertyData[pProperty])
{
//qDebug() << "背景颜色->改变";
//背景颜色
// 假设variant已经被设置为包含QColor
QColor newColor = variant.value<QColor>();
@ -1838,13 +1732,9 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
m_formHead->m_bRefresh=false;
m_item->setBackground(brush);
}
}
else if("列宽(cm)" == m_propertyData[pProperty])
{
//qDebug() << "列宽(cm)->改变";
//当前属性类型
if(m_strCurrentProperty == Head_Property)
else if("列宽(cm)" == m_propertyData[pProperty])
{
//qDebug() << "列宽(cm)->改变";
double newWidth = variant.value<double>();
m_colWidth = newWidth;
m_formHead->m_bRefresh=false;
@ -1853,13 +1743,9 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
m_tableWidget->update();
m_formHead->resizeWindow();
}
}
else if("行高(cm)" == m_propertyData[pProperty])
{
//qDebug() << "行高(cm)->改变";
//当前属性类型
if(m_strCurrentProperty == Head_Property)
else if("行高(cm)" == m_propertyData[pProperty])
{
//qDebug() << "行高(cm)->改变";
double newHight = variant.value<double>();
m_rowHeight = newHight;
m_formHead->m_bRefresh=false;
@ -1868,40 +1754,26 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
m_tableWidget->update();
m_formHead->resizeWindow();
}
}
else if("内容" == m_propertyData[pProperty])
{
//qDebug() << "内容->改变";
//当前属性类型
if(m_strCurrentProperty == Head_Property)
else if("内容" == m_propertyData[pProperty])
{
//qDebug() << "内容->改变";
QString newText = variant.value<QString>();
m_formHead->m_bRefresh=false;
m_item->setText(newText);
}
}
else if("方向" == m_propertyData[pProperty])
{
//qDebug() << "方向->改变";
//当前属性类型
if(m_strCurrentProperty == Head_Property)
else if("方向" == m_propertyData[pProperty])
{
//qDebug() << "方向->改变";
QString newDirection = pProperty->valueText();
if(newDirection=="垂直")
{
}
else{
//m_item->
}
}
}
else if("字体颜色" == m_propertyData[pProperty])
{
//qDebug() << "字体颜色->改变";
//当前属性类型
if(m_strCurrentProperty == Head_Property)
else if("字体颜色" == m_propertyData[pProperty])
{
//qDebug() << "字体颜色->改变";
//字体颜色
// 假设variant已经被设置为包含QColor
QColor newColor = variant.value<QColor>();
@ -1910,13 +1782,9 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
m_formHead->m_bRefresh=false;
m_item->setForeground(brush);
}
}
else if("字体" == m_propertyData[pProperty])
{
//qDebug() << "字体->改变";
//当前属性类型
if(m_strCurrentProperty == Head_Property)
else if("字体" == m_propertyData[pProperty])
{
//qDebug() << "字体->改变";
//字体
// 假设variant已经被设置为包含QColor
QFont newFont = variant.value<QFont>();
@ -1925,10 +1793,11 @@ void PropertyWidget::SlotPropertyChanged( QtProperty *pProperty, const QVariant
m_item->setFont(newFont);
}
}
else if("间隔" == m_propertyData[pProperty])
{
}
}
void PropertyWidget::SlotPropertyChanged(QtProperty *property, const int &val, bool islinestyle)
@ -2406,7 +2275,7 @@ void PropertyWidget::initCurveProperty(FormInfo *formInfo, QStringList strListOt
listScaleType.append("对数");
//
_CreateVariantPropertyItem("通常", "井曲线", m_strLineName + "@"+m_strSlfName, QVariant::String);
_CreateVariantPropertyItem("通常", "选择井曲线", m_strLineName + "@"+m_strSlfName, QVariant::String);
_CreateVariantPropertyItem("通常", "显示名称", formInfo->m_strAliasName, QVariant::String);
_CreateVariantPropertyItem("通常", "显示单位", formInfo->m_strUnit, QVariant::String);
//

View File

@ -224,7 +224,7 @@ void MainWindow::initToolBar()
//add QAction to Widget.
ui->mainToolBar->addAction(m_newprojectAc);
ui->mainToolBar->addAction(m_openprojectAc);
ui->mainToolBar->addAction(m_saveprojectAc);
//ui->mainToolBar->addAction(m_saveprojectAc);
ui->mainToolBar->addSeparator();//添加分隔符
//
ui->mainToolBar->addAction(m_wellogAc);

View File

@ -419,7 +419,7 @@ void MainWindowCurve::initToolBar()
ui->toolBar->addAction(m_logfaceAc);
ui->toolBar->addAction(m_TubingstringAc);
ui->toolBar->addAction(m_TDTAc);
ui->toolBar->addAction(m_LogMudAc);
//ui->toolBar->addAction(m_LogMudAc);
connect(m_blankTrackAc, &QAction::triggered, this, &MainWindowCurve::s_NewTrack);
connect(m_depthAc, &QAction::triggered, this, &MainWindowCurve::s_NewDepth);//深度