1.追加波列数据校深 2.左侧树图支持ctrl键多选
This commit is contained in:
parent
da29d6680a
commit
359fd529f1
|
|
@ -58,6 +58,10 @@ QtProjectWidgets::QtProjectWidgets(QWidget *parent)
|
|||
//为树 tree 创建信号槽,鼠标press时会触发对应的信号。
|
||||
connect(ui->treeWidget, &QTreeWidget::itemPressed, this, &QtProjectWidgets::onItemClicked);
|
||||
//connect(ui->treeWidget, &QTreeWidget::itemChanged, this, &QtProjectWidgets::onItemChanged);
|
||||
|
||||
// 设置选择模式为多选模式
|
||||
ui->treeWidget->setSelectionMode(QAbstractItemView::ExtendedSelection); // 或者使用 QAbstractItemView::MultiSelection
|
||||
|
||||
}
|
||||
|
||||
QtProjectWidgets::~QtProjectWidgets()
|
||||
|
|
@ -622,6 +626,10 @@ void QtProjectWidgets::initMenu()
|
|||
_menuCurveObject = new QMenu(ui->treeWidget);
|
||||
initCurveObjectTreeMenu(_menuCurveObject, ui->treeWidget);
|
||||
|
||||
//波列对象-右键菜单
|
||||
_menuWaveObject = new QMenu(ui->treeWidget);
|
||||
initWaveObjectTreeMenu(_menuWaveObject, ui->treeWidget);
|
||||
|
||||
//表格对象-右键菜单
|
||||
_menuTableObject = new QMenu(ui->treeWidget);
|
||||
initTableObjectTreeMenu(_menuTableObject, ui->treeWidget);
|
||||
|
|
@ -671,6 +679,20 @@ void QtProjectWidgets::initCurveObjectTreeMenu(QMenu *menu, QTreeWidget *treeWid
|
|||
menu->addAction(m_action_DepthShift);
|
||||
}
|
||||
|
||||
//初始化波列对象-右键菜单
|
||||
void QtProjectWidgets::initWaveObjectTreeMenu(QMenu *menu, QTreeWidget *treeWidget)
|
||||
{
|
||||
// QAction* action_WaveObject = new QAction("数据查看", treeWidget);
|
||||
// action_WaveObject->setIcon(QIcon(GetImagePath() + "icon/Sheet.png")); // 设置图标
|
||||
// connect(action_WaveObject, SIGNAL(triggered(bool)), this, SLOT(onShowWave(bool)));
|
||||
// menu->addAction(action_WaveObject);
|
||||
//
|
||||
QAction* action_DepthShift = new QAction("深度移动", treeWidget);
|
||||
action_DepthShift->setIcon(QIcon(GetImagePath() + "icon/RigidDepthShifting.png")); // 设置图标
|
||||
connect(action_DepthShift, SIGNAL(triggered(bool)), this, SLOT(onDepthShift(bool)));
|
||||
menu->addAction(action_DepthShift);
|
||||
}
|
||||
|
||||
//初始化表格对象-右键菜单
|
||||
void QtProjectWidgets::initTableObjectTreeMenu(QMenu *menu, QTreeWidget *treeWidget)
|
||||
{
|
||||
|
|
@ -805,11 +827,27 @@ void QtProjectWidgets::onDepthShift(bool checked)
|
|||
}
|
||||
}
|
||||
|
||||
//emit CallManage::getInstance()->sig_DepthShift(m_strSlfName, m_strCurveObjectName, depthshift);
|
||||
//支持多选
|
||||
foreach(QTreeWidgetItem *item, ui->treeWidget->selectedItems())
|
||||
{
|
||||
QString strTreeTag = item->data(0, Qt::UserRole).toString();
|
||||
if (strTreeTag == "curveObject" || strTreeTag=="waveObject" || strTreeTag == "tableObject")
|
||||
{
|
||||
QString strLineName = item->text(0);
|
||||
QString strSlfName = item->data(0, Qt::UserRole+1).toString();
|
||||
|
||||
//
|
||||
ApplyShiftDepth(strSlfName, strLineName, depthshift);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void QtProjectWidgets::ApplyShiftDepth(QString strSlfName, QString strLineName, double DepthOffset)
|
||||
{
|
||||
//1.修改内存数据
|
||||
if(m_strSlfName=="") return ;
|
||||
if(strSlfName=="") return ;
|
||||
CMemRdWt * logio=new CMemRdWt();
|
||||
if(!logio->Open(m_strSlfName.toStdString().c_str(),CSlfIO::modeReadWrite))
|
||||
if(!logio->Open(strSlfName.toStdString().c_str(),CSlfIO::modeReadWrite))
|
||||
{
|
||||
delete logio;
|
||||
//AppendConsole(pai::log::PAI_ERROR,"SLF文件打开失败,请检查!");
|
||||
|
|
@ -817,12 +855,12 @@ void QtProjectWidgets::onDepthShift(bool checked)
|
|||
};
|
||||
bool isok=0;
|
||||
//TODO 目前对于表格类,参数卡类不支持,会崩溃
|
||||
int curveindex=logio->FindObjectName((char *)m_strCurveObjectName.toStdString().c_str());
|
||||
int curveindex=logio->FindObjectName((char *)strLineName.toStdString().c_str());
|
||||
if(curveindex>=0) {
|
||||
CString szBuffer="";
|
||||
szBuffer=QString::number(depthshift,'f',3)+"\r\n";
|
||||
WriteShiftMessage(*logio,szBuffer,m_strCurveObjectName);
|
||||
logio->CorrectObjectDepth(curveindex, depthshift);
|
||||
szBuffer=QString::number(DepthOffset,'f',3)+"\r\n";
|
||||
WriteShiftMessage(*logio,szBuffer,strLineName);
|
||||
logio->CorrectObjectDepth(curveindex, DepthOffset);
|
||||
isok=1;
|
||||
}
|
||||
delete logio;
|
||||
|
|
|
|||
|
|
@ -40,6 +40,7 @@ public slots:
|
|||
|
||||
//曲线
|
||||
void onShowCurve(bool checked = false); //数据查看
|
||||
void ApplyShiftDepth(QString strSlfName, QString strLineName, double DepthOffset);
|
||||
void onDepthShift(bool checked = false); //深度移动
|
||||
//表格
|
||||
void onShowTable(bool checked = false); //数据查看
|
||||
|
|
@ -60,6 +61,7 @@ public:
|
|||
//右键菜单
|
||||
QMenu *_menuRoot;
|
||||
QMenu *_menuCurveObject; //曲线对象(AC、BS...)
|
||||
QMenu *_menuWaveObject; //波列对象
|
||||
QMenu *_menuTableObject; //表格对象
|
||||
QMenu *_menuWellName; //井名
|
||||
QMenu *_menuSlfName; //井次
|
||||
|
|
@ -89,6 +91,8 @@ public:
|
|||
void initRootTreeMenu(QMenu *menu, QTreeWidget *treeWidget);
|
||||
//初始化曲线对象(AC、BS...)-右键菜单
|
||||
void initCurveObjectTreeMenu(QMenu *menu, QTreeWidget *treeWidget);
|
||||
//初始化波列对象-右键菜单
|
||||
void initWaveObjectTreeMenu(QMenu *menu, QTreeWidget *treeWidget);
|
||||
//初始化表格对象-右键菜单
|
||||
void initTableObjectTreeMenu(QMenu *menu, QTreeWidget *treeWidget);
|
||||
//初始化根节点(井名称)-右键菜单
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user