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

Private GIT Repository
finalized analysis with clkconvert + started testbench gen.
[blast.git] / BlockLibraryWidget.h
1 #ifndef __BLOCKLIBRARYWIDGET_H__
2 #define __BLOCKLIBRARYWIDGET_H__
3
4 #include <iostream>
5
6 #include <QtCore>
7 #include <QtGui>
8
9 #include "Dispatcher.h"
10 class Dispatcher;
11 #include "Parameters.h"
12 class Parameters;
13 #include "BlockCategory.h"
14 class BlockCategory;
15
16 using namespace std;
17 using namespace Qt;
18
19 class BlockLibraryWidget : public QWidget {
20   Q_OBJECT
21
22 public:
23   explicit BlockLibraryWidget(Dispatcher* _dispatcher, Parameters* _params, QWidget *parent = 0);
24   ~BlockLibraryWidget();
25
26 public slots:
27   void updateBoxConn();
28   void updateComboScene();
29   void updateClkRst(int idCat, int idBlock);
30
31 private slots:
32   void addClicked();
33   void clicked();
34   void doubleClicked();
35   void enableAvailableClocks(bool state);
36
37
38 private:
39   Parameters* params;
40   Dispatcher* dispatcher;
41   QTreeWidget* tree;
42   QPushButton* buttonAdd;
43   QComboBox* comboScenes;
44
45   QGroupBox* boxConnMode;
46   QRadioButton* radAutoClk;
47   QRadioButton* radChooseClk;
48
49   QGroupBox* boxClkRst;
50   QGridLayout* layClkRst;
51   QComboBox** comboClkGen;
52   int nbClock;
53   QComboBox** comboRstGen;
54   int nbRst;
55
56   ReferenceBlock* currentRefBlock;
57
58   QStackedWidget* stack;
59   // other attributes
60   
61   void addChild(BlockCategory *catParent, QTreeWidgetItem* itemParent);
62   void addButtons();
63
64 };
65
66 #endif // __BLOCKLIBRARYWIDGET_H__