You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
2.4 KiB
C++
66 lines
2.4 KiB
C++
#include "OperatorsGlyph.h"
|
|
|
|
#include "GUIFrame/MainWindow.h"
|
|
#include "GUIFrame/MainTreeWidget.h"
|
|
#include "GUIWidget/TreeWidget.h"
|
|
#include "GUIDialog/GlyphDialog.h"
|
|
#include "OperatorsInterface/GraphEventOperator.h"
|
|
#include "OperatorsInterface/ParaWidgetInterfaceOperator.h"
|
|
|
|
#include "FITK_Kernel/FITKAppFramework/FITKAppFramework.h"
|
|
#include "FITK_Kernel/FITKAppFramework/FITKGlobalData.h"
|
|
#include "FITK_Interface/FITKInterfaceCFDPost/FITKCFDPost3DManager.h"
|
|
#include "FITK_Interface/FITKInterfaceCFDPost/FITKCFDPostData.h"
|
|
#include "FITK_Interface/FITKInterfaceCFDPost/FITKCFDPostIsosurface.h"
|
|
|
|
namespace OperModel
|
|
{
|
|
OperatorsGlyph::OperatorsGlyph()
|
|
{
|
|
|
|
}
|
|
|
|
bool OperatorsGlyph::execGUI()
|
|
{
|
|
GUI::MainWindow* mainWin = dynamic_cast<GUI::MainWindow*>(FITKAPP->getGlobalData()->getMainWindow());
|
|
if (mainWin == nullptr)return false;
|
|
GUI::TreeWidget* treeWidget = mainWin->getTreeWidget()->getTreeWidget();
|
|
if (treeWidget == nullptr)return false;
|
|
|
|
//获取树节点当前数据对象id
|
|
if (_senderName == "actionGlyphCreate") {
|
|
GUI::GlyphDialog* dialog = new GUI::GlyphDialog(treeWidget->getCurrentDataID(), this, true);
|
|
dialog->show();
|
|
}
|
|
else if (_senderName == "actionGlyphEdit") {
|
|
int objID = -1;
|
|
argValue(objID_String, objID);
|
|
if (objID <= 0)return false;
|
|
|
|
GUI::GlyphDialog* dialog = new GUI::GlyphDialog(objID, this, false);
|
|
dialog->show();
|
|
}
|
|
return false;
|
|
}
|
|
|
|
bool OperatorsGlyph::execProfession()
|
|
{
|
|
Interface::FITKCFDPost3DManager* manager = FITKAPP->getGlobalData()->getPostData<Interface::FITKCFDPostData>()->getPostDataManager();
|
|
if (manager == nullptr)return false;
|
|
EventOper::GraphEventOperator* graphOper = FITKOPERREPO->getOperatorT<EventOper::GraphEventOperator>("OperGraphPreprocess");
|
|
if (graphOper == nullptr)return false;
|
|
EventOper::ParaWidgetInterfaceOperator* treeOper = FITKOPERREPO->getOperatorT<EventOper::ParaWidgetInterfaceOperator>("ModelTreeEvent");
|
|
if (treeOper == nullptr)return false;
|
|
|
|
int objID = -1;
|
|
argValue(objID_String, objID);
|
|
Interface::FITKAbstractCFDPostData* data = manager->getDataByID(objID);
|
|
if (data) {
|
|
graphOper->updateSingle(objID);
|
|
}
|
|
|
|
treeOper->updateTree();
|
|
return false;
|
|
}
|
|
}
|