Rev 195 | Rev 200 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
88 | pingvin | 1 | #ifndef MAINWINDOW_H |
2 | #define MAINWINDOW_H |
||
3 | |||
93 | pingvin | 4 | |
5 | //#include "mysql.h" |
||
109 | pingvin | 6 | |
127 | pingvin | 7 | #include "mymodel.h" |
132 | pingvin | 8 | #include "settingform.h" |
124 | pingvin | 9 | #include "delegate.h" |
196 | pingvin | 10 | #include "fileform.h" |
124 | pingvin | 11 | |
88 | pingvin | 12 | #include <QMainWindow> |
13 | #include <QStandardItemModel> |
||
14 | #include <QStandardItem> |
||
15 | #include <QTreeWidgetItem> |
||
16 | #include <QTextCodec> |
||
89 | pingvin | 17 | #include <QSqlDatabase> |
88 | pingvin | 18 | |
89 | pingvin | 19 | #include <QtGui> |
93 | pingvin | 20 | #include <QString> |
21 | #include <QtSql> |
||
113 | pingvin | 22 | #include <QFont> |
114 | pingvin | 23 | #include <QColor> |
130 | pingvin | 24 | #include <QItemDelegate> |
147 | pingvin | 25 | #include <QList> |
89 | pingvin | 26 | |
93 | pingvin | 27 | |
28 | /* |
||
29 | #include <QSqlField> |
||
30 | #include <QSqlRecord> |
||
31 | #include <QSqlTableModel> |
||
32 | #include <QSqlQueryModel> |
||
33 | #include <QTableView> |
||
34 | #include <QSqlDriverPlugin> |
||
35 | #include <QIcon> |
||
36 | #include <QVariant> |
||
37 | #include <QProcess> |
||
38 | #include <QByteArray> |
||
39 | */ |
||
40 | |||
99 | pingvin | 41 | typedef struct Class { |
42 | QString name; |
||
43 | QString ID; |
||
93 | pingvin | 44 | |
99 | pingvin | 45 | } TClass; |
93 | pingvin | 46 | |
47 | |||
48 | |||
49 | |||
88 | pingvin | 50 | namespace Ui { |
51 | class MainWindow; |
||
52 | } |
||
53 | |||
54 | class MainWindow : public QMainWindow { |
||
55 | Q_OBJECT |
||
56 | public: |
||
57 | MainWindow(QWidget *parent = 0); |
||
58 | ~MainWindow(); |
||
59 | |||
60 | protected: |
||
61 | void changeEvent(QEvent *e); |
||
62 | |||
63 | private: |
||
64 | Ui::MainWindow *ui; |
||
196 | pingvin | 65 | FileForm fileForm; |
88 | pingvin | 66 | |
132 | pingvin | 67 | settingForm setFrm; |
68 | // |
||
69 | QString baseName; |
||
70 | QString hostName; |
||
71 | QString userName; |
||
72 | QString password; |
||
73 | QString tableName; |
||
74 | |||
75 | void readSettings(); |
||
76 | void writeSettings(); |
||
77 | |||
78 | |||
79 | |||
106 | pingvin | 80 | QList<QTreeWidgetItem *> root_items_list; |
88 | pingvin | 81 | QStandardItemModel *model; |
82 | QStandardItem *item; |
||
83 | QTreeWidgetItem *rootItem1, *rootItem2; |
||
89 | pingvin | 84 | void openBase(); |
85 | bool readModel(); |
||
147 | pingvin | 86 | void setupModelData(const QStringList &lines, QTreeWidgetItem *parent, int row); // row - , |
146 | pingvin | 87 | QString creatModelString(QTreeWidgetItem* model); |
91 | pingvin | 88 | QString modelString; // , |
89 | void addChildsString(QTreeWidgetItem *parentItem, int level); |
||
93 | pingvin | 90 | |
91 | QSqlDatabase sql; |
||
118 | pingvin | 92 | bool model_is_build; // , (true) (false) |
93 | pingvin | 93 | |
94 | bool openDataBase(); |
||
97 | pingvin | 95 | bool buildPreviewModel(QString modelName, QString rootClassID); |
107 | pingvin | 96 | |
147 | pingvin | 97 | bool rebuildPreviewModel(QTreeWidgetItem* root_item, QString rootClassID, int row); |
107 | pingvin | 98 | |
95 | pingvin | 99 | QString ClassName(QString class_id); // ID |
147 | pingvin | 100 | void addChildsItems(QTreeWidgetItem *perent_class_item, int row); // , |
99 | pingvin | 101 | QStringList classChields(QString class_id); |
102 | pingvin | 102 | QMap <QString, QString> getClassList(); // |
125 | pingvin | 103 | QMap <QString, QString> getFieldsList(QString class_id); // |
104 | pingvin | 104 | void initComboBox(); |
105 | QList<QTreeWidgetItem *> rootItems; // () |
||
127 | pingvin | 106 | |
107 | /////// QSqlTableModel * sql_mogel; |
||
108 | |||
109 | MyModel * sql_mogel; |
||
142 | pingvin | 110 | QSqlTableModel * model_for_ListModelsTable; |
127 | pingvin | 111 | |
142 | pingvin | 112 | void initListModelsTablle(); |
144 | pingvin | 113 | void readModels(); // |
142 | pingvin | 114 | |
118 | pingvin | 115 | int pointer_index; // - |
116 | QString parentObject_id; |
||
109 | pingvin | 117 | |
115 | pingvin | 118 | |
106 | pingvin | 119 | QMap <QString, QString> class_list_map; |
147 | pingvin | 120 | QMap <int, QTreeWidgetItem*> models_items; // ( ) |
109 | pingvin | 121 | void getDatabaseData(); |
122 | void buildTree(QTreeWidgetItem * model_item); |
||
123 | QString getClassInctance(QString class_id); // - |
||
110 | pingvin | 124 | void showClassObjects(QTreeWidgetItem * parent_item, QTreeWidgetItem * model_item); // |
125 | void showObjectChildrens(QString object_ID, QTreeWidgetItem * object_item, QTreeWidgetItem * model_item); // |
||
112 | pingvin | 126 | void showObjects(QTreeWidgetItem * parent_object_item, QTreeWidgetItem * model_item, QString filtr);// // |
127 | QString getPointerFieldName(QString parent_class_id, QString chield_class_id); // , |
||
93 | pingvin | 128 | |
128 | pingvin | 129 | QMap <QString, QString> getPointersList(QString class_id); // -, - |
130 | // - |
||
147 | pingvin | 131 | |
132 | |||
174 | pingvin | 133 | QMap <QString, QPixmap> getClassesIcons(); // |
134 | // ID , - |
||
135 | |||
195 | pingvin | 136 | |
137 | QMap <QString, QPixmap> getObjectsIcon(QString inctance); // |
||
138 | // ID , - |
||
139 | |||
140 | |||
158 | pingvin | 141 | QStringList getDataFieldList(QString class_id); // c "" |
147 | pingvin | 142 | |
158 | pingvin | 143 | |
144 | |||
145 | QStringList getBoolFieldList(QString class_id); // c "bool" |
||
146 | |||
147 | |||
188 | pingvin | 148 | |
149 | int getIconFieldIndex(QString inctance); // |
||
150 | |||
126 | pingvin | 151 | SpinBoxDelegate spinDelegate; |
130 | pingvin | 152 | QItemDelegate standart_delegate; |
138 | pingvin | 153 | CPictureDelegate * picture_delegate; |
189 | pingvin | 154 | IconDelegate * iconDelegate; |
152 | pingvin | 155 | bool comboBox_slot_enable; // , item_index , |
159 | pingvin | 156 | QList <int> boolFieldsIndexes_global; // "BOOL" |
115 | pingvin | 157 | |
174 | pingvin | 158 | QMap <QString, QPixmap> classesIcons; |
132 | pingvin | 159 | |
160 | |||
161 | |||
162 | |||
163 | |||
106 | pingvin | 164 | private slots: |
165 | void on_comboBox_currentIndexChanged( int index ); |
||
166 | void on_treeWidget_itemChanged ( QTreeWidgetItem * item, int column ); |
||
167 | void on_treeWidget_itemClicked ( QTreeWidgetItem * item, int column ); |
||
115 | pingvin | 168 | void on_treeWidget_2_itemClicked ( QTreeWidgetItem * item, int column ); |
119 | pingvin | 169 | void on_pushButton_clicked(); // " " |
170 | void on_pushButton_2_clicked();// " " |
||
171 | void on_pushButton_3_clicked();// "" |
||
172 | void on_pushButton_4_clicked();// " " |
||
144 | pingvin | 173 | void on_pushButton_5_clicked();// " " |
174 | void on_pushButton_6_clicked();// " " |
||
146 | pingvin | 175 | void on_pushButton_7_clicked();// "" ( ) |
176 | void on_pushButton_8_clicked();// "" ( ) |
||
119 | pingvin | 177 | void on_sql_mogel_dataChanged ( const QModelIndex & topLeft, const QModelIndex & bottomRight ); // |
146 | pingvin | 178 | void on_model_for_ListModelsTable_dataChanged ( const QModelIndex & topLeft, const QModelIndex & bottomRight ); // |
132 | pingvin | 179 | void applySetting(); |
180 | void getSetting(); // |
||
88 | pingvin | 181 | }; |
182 | |||
105 | pingvin | 183 | |
184 | |||
185 | |||
88 | pingvin | 186 | #endif // MAINWINDOW_H |