1 // Copyright (C) 2006-2019 CEA/DEN, EDF R&D
3 // This library is free software; you can redistribute it and/or
4 // modify it under the terms of the GNU Lesser General Public
5 // License as published by the Free Software Foundation; either
6 // version 2.1 of the License, or (at your option) any later version.
8 // This library is distributed in the hope that it will be useful,
9 // but WITHOUT ANY WARRANTY; without even the implied warranty of
10 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 // Lesser General Public License for more details.
13 // You should have received a copy of the GNU Lesser General Public
14 // License along with this library; if not, write to the Free Software
15 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
17 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
20 #ifndef _SALOMEWRAP_MODULE_HXX_
21 #define _SALOMEWRAP_MODULE_HXX_
23 #include "SalomeWrapExport.hxx"
25 #include <SalomeApp_Module.h>
26 #include <SALOMEconfig.h>
28 #include <QGraphicsScene>
29 #include <QGraphicsView>
30 #include <QDockWidget>
34 class SalomeApp_Application;
35 class QxScene_ViewWindow;
37 class SalomeWrap_DataModel;
39 class SALOMEWRAP_EXPORT SalomeWrap_Module: public SalomeApp_Module
44 SalomeWrap_Module(const char* name);
46 QxScene_ViewWindow* getNewWindow(QGraphicsScene *scene);
48 void AssociateViewToWindow(QGraphicsView* gView,
49 QxScene_ViewWindow* viewWindow);
51 QDockWidget* objectBrowser();
53 QAction* wCreateAction(const int id,
54 const QString& toolTip,
57 const QString& status,
60 bool checkable = false,
62 const char* member =0);
64 int wCreateMenu(const QString& subMenu,
65 const int parentMenuId,
66 const int menuId = -1,
67 const int groupId = -1,
68 const int index = -1);
70 int wCreateMenu(const QString& subMenu,
71 const QString& parentMenu,
72 const int menuId = -1,
73 const int groupId = -1,
74 const int index = -1);
76 int wCreateMenu(const int actionId,
78 const int groupId = -1,
79 const int index = -1);
81 int wCreateMenu(const int actionId,
83 const int groupId = -1,
84 const int index = -1);
86 int wCreateMenu(QAction* action,
88 const int actionId = -1,
89 const int groupId = -1,
90 const int index = -1);
92 int wCreateMenu(QAction* action,
94 const int actionId = -1,
95 const int groupId = -1,
96 const int index = -1);
98 int wCreateTool(const QString& title,
99 const QString& name = QString());
101 int wCreateTool(const int actionId,
103 const int index = -1);
105 int wCreateTool(const int actionId,
106 const QString& toolbar,
107 const int index = -1);
109 int wCreateTool(QAction* action,
111 const int actionId = -1,
112 const int index = -1);
114 int wCreateTool(QAction* action,
115 const QString& toolbar,
116 const int actionId = -1,
117 const int index = -1);
119 static QAction* wSeparator();
121 SalomeWrap_DataModel* getDataModel();
124 virtual CAM_DataModel* createDataModel();
126 std::map<QGraphicsScene*, QxScene_ViewWindow*> _mapOfViewWindow;