Хранилища Subversion OpenInventory

Редакция

Редакция 54 | Редакция 56 | К новейшей редакции | Содержимое файла | Сравнить с предыдущей | Последнее изменение | Открыть журнал | RSS

Редакция Автор № строки Строка
24 pingvin 1
#include "classeditor.h"
2
#include "ui_classeditor.h"
3
 
45 pingvin 4
 
24 pingvin 5
ClassEditor::ClassEditor(QWidget *parent) :
6
    QMainWindow(parent),
7
    ui(new Ui::ClassEditor)
8
{
9
    ui->setupUi(this);
10
//    settdialog = new SettingsDialog(this);
11
    settdialog.show();
12
    sql.setDatabaseName(tr("an_db"));
35 pingvin 13
    field = new TableField(tr(""), this);
38 pingvin 14
    field->setNotNull(true);
35 pingvin 15
    field->setDefaultValue(tr(""));
33 pingvin 16
 
38 pingvin 17
    table = new SqlTable (tr("NewTable"), this);
18
    table->setName(tr("NewTable"));
39 pingvin 19
    table->fields().at(0)->setNotNull(true);
20
    if (!(table->setPrimaryKey(tr("ID")))) {
21
         ui->label_3->setText(table->lastError());
22
    }
23
    else  ui->label_3->setText(table->primaryKey());
24
    table->append(field);
25
 
26
    field = new TableField(tr(""), this);
27
    field->setNotNull(true);
28
    field->setDefaultValue(tr(""));
29
    table->append(field);
30
 
40 pingvin 31
    field = new TableField(tr(""), this);
32
    field->setNotNull(true);
33
    field->setDefaultValue(tr(""));
34
    table->append(field);
35
 
36
    field = new TableField(tr(" ()"), this);
37
    field->setNotNull(true);
38
    field->setType(tr("INTEGER"));
39
    field->setDefaultValue(tr("1"));
40
    table->append(field);
41
 
42
    field = new TableField(tr(" "), this);
43
    field->setNotNull(false);
44
    field->setType(tr("DATE"));
45
    field->setDefaultValue(tr("NULL"));
46
    table->append(field);
47
 
38 pingvin 48
    ui->label_2->setText(table->name());
49
    ui->label->setText(table->fields().at(0)->sqlString());
39 pingvin 50
    ui->label_4->setText(table->sqlString());
40 pingvin 51
   ////// ui->lineEdit->insert(table->sqlString());
38 pingvin 52
 
45 pingvin 53
 
54
    /**********************************************
55
 
40 pingvin 56
    QTextDocument *document;
57
    // = ui->textEdit->document();
58
    QTextCursor *cursor;
45 pingvin 59
 
40 pingvin 60
    document = ui->textEdit->document();
61
    cursor = new QTextCursor(document);
62
    cursor->movePosition(QTextCursor::Start);
63
QTextCharFormat format(cursor->charFormat());
64
//format.setFontFamily("Courier");
65
format.setFontFamily("Arial");
66
//format.setFontItalic(false);
67
 
68
format.setFontWeight(QFont::Normal);
69
QTextCharFormat boldFormat = format;
70
boldFormat.setFontWeight(QFont::Bold);
71
 
72
QTextCharFormat italicFormat = format;
73
//format.setFontFamily("Courier");
74
//     format.setFontFamily("Arial");
75
italicFormat.setFontItalic(true);
76
 
77
cursor->insertText(table->sqlString(), format);
41 pingvin 78
 
45 pingvin 79
****************************************************/
80
 
41 pingvin 81
QString errorString;
82
 
83
sql.setDatabaseName(tr("an_db"));
84
sql.setHostName(tr("localhost"));
85
sql.setUserName(tr("an"));
86
sql.setPassword(tr("393939"));
87
 
88
bool ok;
44 pingvin 89
ok = sql.connect();
41 pingvin 90
if (!ok) {
91
                            QMessageBox::critical( //     .
92
                                                                            this,                      //  .
93
                                                                            QObject::tr("Database Error"),   // .
45 pingvin 94
                                                                            sql.lasError());         //  .
41 pingvin 95
 
96
                     }
97
else {
98
 
99
    QMessageBox::information( //     .
100
                                                    this,                      //  .
101
                                                    QObject::tr("Database Connect"),   // .
102
                                                    QObject::tr("     ."));         //  .
103
 
104
 
105
 
106
 
107
 
24 pingvin 108
}
109
 
42 pingvin 110
 
44 pingvin 111
ok = sql.createTable(table);
42 pingvin 112
if (!ok) {
113
                            QMessageBox::critical( //     .
114
                                                                            this,                      //  .
115
                                                                            QObject::tr("Database Error"),   // .
45 pingvin 116
                                                                            sql.lasError());         //  .
117
         }
42 pingvin 118
else {
119
 
120
    QMessageBox::information( //     .
121
                                                    this,                      //  .
122
                                                    QObject::tr("Database Connect"),   // .
123
                                                    QObject::tr("     ."));         //  .
45 pingvin 124
     }
42 pingvin 125
 
126
 
127
 
128
 
129
 
45 pingvin 130
ok = sql.createDataBase();
41 pingvin 131
 
45 pingvin 132
if (!ok) {
133
                            QMessageBox::critical( //     .
134
                                                                            this,                      //  .
135
                                                                            QObject::tr("Database Error"),   // .
136
                                                                            sql.lasError());         //  .
137
 
138
                     }
139
else {
140
 
141
    QMessageBox::information( //     .
142
                                                    this,                      //  .
143
                                                    QObject::tr("Database Create"),   // .
144
                                                    QObject::tr("   ."));         //  .
145
    }
146
 
147
 
148
model = new QSqlTableModel(this);
50 pingvin 149
mymodel = new MyModel(this);
150
 
151
 
45 pingvin 152
model->setTable(tr("ListOfClasses"));
50 pingvin 153
mymodel->setTable(tr("ListOfClasses"));
154
 
45 pingvin 155
/////model->setEditStrategy(QSqlTableModel::OnManualSubmit);
50 pingvin 156
 
157
/*
45 pingvin 158
model->setEditStrategy(QSqlTableModel::OnFieldChange);
50 pingvin 159
mymodel->setEditStrategy(QSqlTableModel::OnFieldChange);
160
*/
161
 
162
 
45 pingvin 163
model->setSort(0, Qt::AscendingOrder);
50 pingvin 164
mymodel->setSort(0, Qt::AscendingOrder);
165
 
45 pingvin 166
//       model->setFilter(tr("__ = '7' and _ = 'i09090909'"));
167
model->select();
50 pingvin 168
mymodel->select();
169
 
46 pingvin 170
model->setHeaderData(1, Qt::Horizontal, tr(" "));
50 pingvin 171
mymodel->setHeaderData(1, Qt::Horizontal, tr(" "));
172
 
173
 
174
 
46 pingvin 175
model->setHeaderData(2, Qt::Horizontal, tr(" "));
50 pingvin 176
mymodel->setHeaderData(2, Qt::Horizontal, tr(" "));
177
 
178
//ui->tableView->setModel(model);
179
ui->tableView->setModel(mymodel);
180
 
181
 
182
 
183
 
45 pingvin 184
ui->tableView->setAlternatingRowColors(true);
185
ui->tableView->resizeColumnsToContents();
55 pingvin 186
ui->tableView->hideColumn(0);
187
ui->tableView->hideColumn(3);
45 pingvin 188
 
189
 
55 pingvin 190
//connect(ui->tableView, SIGNAL(clicked(const QModelIndex)), this, SLOT(on_tableView_clicked(const QModelIndex)));
42 pingvin 191
}
192
 
45 pingvin 193
 
194
 
195
 
196
 
197
 
198
 
199
 
200
 
201
 
202
 
24 pingvin 203
ClassEditor::~ClassEditor()
204
{
205
    delete ui;
38 pingvin 206
 //    delete field;
24 pingvin 207
   // delete settdialog;
208
}
209
 
210
void ClassEditor::changeEvent(QEvent *e)
211
{
212
    QMainWindow::changeEvent(e);
213
    switch (e->type()) {
214
    case QEvent::LanguageChange:
215
        ui->retranslateUi(this);
216
        break;
217
    default:
218
        break;
219
    }
220
}
51 pingvin 221
 
222
 
223
 
224
void  ClassEditor::addNewClass(){
225
 
226
    int row = model->rowCount();
227
 
228
    model->insertRows(row, 1);
54 pingvin 229
    model->setData(model->index(row, 1), tr("New class")); //     " "
51 pingvin 230
 
231
 
232
    // model->setData(model->index(row, 1), tr("   "));
233
    // model->setData(model->index(row, 2) , tr("  ,    1"));
234
 
235
 
236
    model->submitAll();
237
 
238
    row = model->rowCount();
239
    QString tmp_str;
240
    int i_tmp;
241
    i_tmp = model->data(model->index(row-1, 0)).toInt();
242
    tmp_str = model->data(model->index(row-1, 0)).toString(); //   -  
243
 
244
    tmp_str.append(tr("_Inctance"));
245
    model->setData(model->index(row-1, 3), tmp_str );  //     
246
 
247
    model->submitAll();
248
    mymodel->select();
249
 
250
 
251
}
252
 
253
 
54 pingvin 254
void  ClassEditor::addNewClass_new(){
255
 
256
    int row = mymodel->rowCount();
257
 
258
    mymodel->insertRows(row, 1);
259
    mymodel->setData(mymodel->index(row, 1), QVariant(tr("New classs")), Qt::EditRole); //     " "
260
 
261
    mymodel->submitAll();
262
 
263
    row = mymodel->rowCount();
264
    QString tmp_str1;
265
    int i_tmp1;
266
    i_tmp1 = mymodel->data(mymodel->index(row-1, 0)).toInt();
267
    tmp_str1 = mymodel->data(mymodel->index(row-1, 0)).toString(); //   -  
268
 
269
    tmp_str1.append(tr("_Inctance"));
270
    mymodel->setData(mymodel->index(row-1, 3), QVariant(tmp_str1), Qt::EditRole);  //     
271
 
272
    // model->setData(model->index(row, 1), tr("   "));
273
    // model->setData(model->index(row, 2) , tr("  ,    1"));
274
 
275
 
276
    mymodel->submitAll();
277
 
278
    //row = mymodel->rowCount();
279
 
280
 
281
  mymodel->select();
282
 
283
 
284
}
285
 
286
 
51 pingvin 287
void ClassEditor::on_pushButton_clicked(){
54 pingvin 288
//int i;
289
//i++;
290
/////ClassEditor::addNewClass();
291
ClassEditor::addNewClass_new();
292
 mymodel->select();
293
//ui->tableView->setModel(mymodel);
294
 
51 pingvin 295
}
54 pingvin 296
 
55 pingvin 297
void ClassEditor::on_tableView_clicked(const QModelIndex & index ){
298
    int i, row, column;
299
    i++;
300
    row = index.row();
301
    column = index.column();
302
}
54 pingvin 303