|
|
|
|
@ -4028,6 +4028,24 @@ void nmWxWellboreTrajectoryDisplay::setCurrentWellboreData(nmDataWellBase* pWell
|
|
|
|
|
m_pCrossSectionViewWidget->resetViewTransform();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void nmWxWellboreTrajectoryDisplay::set3DViewVisible(bool bVisible)
|
|
|
|
|
{
|
|
|
|
|
if (m_p3DViewRadio == nullptr || m_pStackedWidget == nullptr)
|
|
|
|
|
{
|
|
|
|
|
return;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
m_p3DViewRadio->setVisible(bVisible);
|
|
|
|
|
if (!bVisible && m_pStackedWidget->currentIndex() == 2)
|
|
|
|
|
{
|
|
|
|
|
// 隐藏当前3D页时返回俯视图,保持选中状态、页面和工具栏一致。
|
|
|
|
|
m_pTopViewRadio->setChecked(true);
|
|
|
|
|
m_pStackedWidget->setCurrentIndex(0);
|
|
|
|
|
updateToolBarForCurrentView(0);
|
|
|
|
|
emit currentViewChanged(0);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void nmWxWellboreTrajectoryDisplay::setEditWellMode(bool enabled)
|
|
|
|
|
{
|
|
|
|
|
// 将状态传递给当前激活的子视图
|
|
|
|
|
@ -4170,7 +4188,6 @@ void nmWxWellboreTrajectoryDisplay::createToolBar()
|
|
|
|
|
|
|
|
|
|
m_pXYAction = m_pToolBar->addAction(QIcon(sIconDir + "NmWellbore4.png"), tr("Coordinates"));
|
|
|
|
|
m_pEditWellAction = m_pToolBar->addAction(QIcon(sIconDir + "NmWellbore5.png"), tr("Edit wellbore"));
|
|
|
|
|
m_pRefreshAction = m_pToolBar->addAction(QIcon(sIconDir + "NmWellbore6.png"), tr("Refresh"));
|
|
|
|
|
m_pToolBar->addSeparator();
|
|
|
|
|
|
|
|
|
|
// 第二步:射孔编辑命令按当前井型和视角动态启用。
|
|
|
|
|
@ -4213,8 +4230,6 @@ void nmWxWellboreTrajectoryDisplay::connectSignalsSlots()
|
|
|
|
|
connect(m_pZoomInAction, SIGNAL(triggered()), this, SLOT(onZoomInClicked()));
|
|
|
|
|
|
|
|
|
|
connect(m_pXYAction, SIGNAL(triggered()), this, SLOT(onXYClicked())); // XY 坐标显示仍然在视图内管理
|
|
|
|
|
connect(m_pRefreshAction, SIGNAL(triggered()),
|
|
|
|
|
this, SLOT(onRefreshClicked()));
|
|
|
|
|
|
|
|
|
|
// ============== 模式请求信号连接 ==============
|
|
|
|
|
// 这些槽函数现在将发出请求给控制器
|
|
|
|
|
@ -4414,12 +4429,6 @@ void nmWxWellboreTrajectoryDisplay::onEditWellClicked()
|
|
|
|
|
emit requestedEditWellMode(nCurrentViewIndex);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void nmWxWellboreTrajectoryDisplay::onRefreshClicked()
|
|
|
|
|
{
|
|
|
|
|
// 刷新只重读当前工作副本,不加载文件也不修改业务数据。
|
|
|
|
|
onWellboreDataChanged();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
void nmWxWellboreTrajectoryDisplay::onEditPerforationsClicked()
|
|
|
|
|
{
|
|
|
|
|
int nCurrentViewIndex = m_pStackedWidget->currentIndex();
|
|
|
|
|
@ -4514,7 +4523,6 @@ void nmWxWellboreTrajectoryDisplay::updateToolBarForCurrentView(int viewIndex)
|
|
|
|
|
|
|
|
|
|
m_pXYAction->setEnabled(true);
|
|
|
|
|
m_pEditWellAction->setEnabled(true);
|
|
|
|
|
m_pRefreshAction->setEnabled(true);
|
|
|
|
|
m_pEditPerforationsAction->setEnabled(true);
|
|
|
|
|
m_pNewPerforationAction->setEnabled(true);
|
|
|
|
|
m_pDeletePerforationAction->setEnabled(true);
|
|
|
|
|
|