]> AND Private Git Repository - blast.git/blobdiff - MainWindow.h
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
nearly finished GroupBlock VHDL gen
[blast.git] / MainWindow.h
index ee51e4cb9e4ed8262827bb468dce7f45c80f4f28..96fab67769428f4a8e14a11698c19dfb620d9830 100644 (file)
@@ -12,7 +12,7 @@ class Dispatcher;
 class Parameters;
 class BlockLibraryWidget;
 class GroupWidget;
 class Parameters;
 class BlockLibraryWidget;
 class GroupWidget;
-class BlockWidget;
+class VHDLConverter;
 class Graph;
 
 // versioning related
 class Graph;
 
 // versioning related
@@ -23,7 +23,9 @@ class Graph;
 
 
 // defines for menus
 
 
 // defines for menus
-#define TRACE_MENU (quint8)1
+#define PROJECT_MENU (quint8)1
+#define ANALYSIS_MENU (quint8)2
+#define TOOLS_MENU (quint8)3
 
 // defines for actions
 #define NONE_ACT (quint16)0
 
 // defines for actions
 #define NONE_ACT (quint16)0
@@ -35,6 +37,9 @@ class Graph;
 #define PROJECT_CLOSE (quint16)16
 #define PROJECT_LIB (quint16)32
 
 #define PROJECT_CLOSE (quint16)16
 #define PROJECT_LIB (quint16)32
 
+#define ANALYSIS_ANALYZE (quint16)1
+#define ANALYSIS_GENERATE (quint16)2
+
 #define OP_ADD (quint8)0
 #define OP_REM (quint8)1
 #define OP_RAZ (quint8)2
 #define OP_ADD (quint8)0
 #define OP_REM (quint8)1
 #define OP_RAZ (quint8)2
@@ -72,7 +77,6 @@ private:
   Parameters *params;  
   BlockLibraryWidget *library;
 
   Parameters *params;  
   BlockLibraryWidget *library;
 
-  bool isCurrentProject;
   QString absoluteFilename;
 
   QString checkNewVersion;
   QString absoluteFilename;
 
   QString checkNewVersion;
@@ -90,8 +94,11 @@ private:
 
   QMenu* projectMenu;
   quint16 projectMenuEnb;
 
   QMenu* projectMenu;
   quint16 projectMenuEnb;
+  QMenu* analysisMenu;
+  quint16 analysisMenuEnb;
   QMenu* toolsMenu;
 
   QMenu* toolsMenu;
 
+  // actions for project
   QAction* newProject;
   QAction* openProject;
   QAction* saveProject;
   QAction* newProject;
   QAction* openProject;
   QAction* saveProject;
@@ -99,9 +106,12 @@ private:
   QAction* closeProject;
   QAction* openLibrary;
 
   QAction* closeProject;
   QAction* openLibrary;
 
-  QAction *newBlockWidgetAct;
-  QAction *graphValidation;    
+  // actions for graph analysis
+  QAction *graphAnalysis;
+  QAction *generateVHDL;
 
 
+  // actions for tools
+  QAction *vhdlToXmlAct;
 
   // versioning related
   quint8 versionMaj;
 
   // versioning related
   quint8 versionMaj;
@@ -110,17 +120,20 @@ private:
 
 public slots:
   void enableProjectActions(bool enbMenu, quint16 mask = 0, quint8 op = 0); // default : add nothing
 
 public slots:
   void enableProjectActions(bool enbMenu, quint16 mask = 0, quint8 op = 0); // default : add nothing
+  void enableAnalysisActions(bool enbMenu, quint16 mask = 0, quint8 op = 0); // default : add nothing
 
 private slots:
   void slotNewProject();
   void slotLoadProject();
   void slotSaveProject();
   void slotSaveAsProject();
 
 private slots:
   void slotNewProject();
   void slotLoadProject();
   void slotSaveProject();
   void slotSaveAsProject();
-  void slotCloseProject();
+  bool slotCloseProject();
   void slotOpenBlockLibrary();
 
   void slotOpenBlockLibrary();
 
-  void slotNewBlockWidget();  
-  void slotGraphValidation();
+  void slotGraphAnalysis();
+  void slotGenerateVHDL();
+
+  void slotVHDLToXml();
 
   void slotCheckNewVersion(QNetworkReply *reply);
 };
 
   void slotCheckNewVersion(QNetworkReply *reply);
 };