Subversion Repositories OpenInventory

Rev

Rev 129 | Rev 132 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 129 Rev 130
Line 466... Line 466...
466
        sql_mogel->select();
466
        sql_mogel->select();
467
467
468
        QMap <QString, QString> pointersList = getPointersList(class_id); // ïîëó÷àåì ñïèñîê ïîëåé-óêàçàòåëåé
468
        QMap <QString, QString> pointersList = getPointersList(class_id); // ïîëó÷àåì ñïèñîê ïîëåé-óêàçàòåëåé
469
        QMap <int, QString> pointersToModel;
469
        QMap <int, QString> pointersToModel;
470
470
-
 
471
        QStringList pointersNames;
-
 
472
        static QList<int> colomns_indexes; // ñïèñîê íîìåðîâ ñòîëáöîâ òàáëèöû ñ íåñòàíäàðòíûìè äåëåãàòàìè
-
 
473
-
 
474
        // Ñïåðâà "î÷èñòèì" òàáëèöó îò íåñòàíäàðòíûõ äåëåãàòîâ
-
 
475
        for (i=0; i < colomns_indexes.size(); i++){ // äëÿ âñåõ ïîëåé-óêàçàòåëåé:
-
 
476
-
 
477
-
 
478
-
 
479
            ui->tableView->setItemDelegateForColumn(colomns_indexes.at(i), &standart_delegate ); // è ïðèñâàèâàåì ñòàíäàðòíûé äåëåãàò
-
 
480
-
 
481
        }
-
 
482
-
 
483
        colomns_indexes.clear(); // î÷èùàåñ ñïèñîê ñòîëáöîâ ñ íåñòàíäàðòíûìè äåëåãàòàìè
-
 
484
-
 
485
471
        QStringList pointersNames = pointersList.keys(); //çäåñü ñïèñîê èìåí ïîëåé-óêàçàòåëåé íà ðîäèòåëüñêèå êëàññû
486
        pointersNames = pointersList.keys(); //çäåñü ñïèñîê èìåí ïîëåé-óêàçàòåëåé íà ðîäèòåëüñêèå êëàññû
-
 
487
-
 
488
-
 
489
-
 
490
-
 
491
472
        QStringList parentInctancesList = pointersList.values(); // çäåñü ñïèñîê ñîîòâåòñòâóþùèõ õðàíèëèù
492
        QStringList parentInctancesList = pointersList.values(); // çäåñü ñïèñîê ñîîòâåòñòâóþùèõ õðàíèëèù
473
493
474
        for (i=0; i < pointersNames.size(); i++){
494
        for (i=0; i < pointersNames.size(); i++){ // äëÿ âñåõ ïîëåé-óêàçàòåëåé:
475
            QString pointerName;
495
            QString pointerName;
476
496
477
            int pointerIndex;
497
            int pointerIndex;
478
            pointerName = pointersNames.at(i);
498
            pointerName = pointersNames.at(i);  // îïðåäåëÿåì èìÿ ïîëÿ-óêàçàòåëÿ
479
            pointerIndex = sql_mogel->record().indexOf(pointerName);
499
            pointerIndex = sql_mogel->record().indexOf(pointerName); // îïðåäåëÿåì íîìåð ñòîëáöà â ìîäåëå
480
-
 
-
 
500
            colomns_indexes.append(pointerIndex); // çàïîìíèì íîìåð ñòîëáöà ñ íåñòàíäàðòíûì äåëåãàòîì
481
            spinDelegate.setInctance(parentInctancesList.at(i));
501
            spinDelegate.setInctance(parentInctancesList.at(i)); // äåëåãàòó ïåðåäàåì èìÿ õðàíèëèùà îáúåêòîâ ðîäèòåëüñêîãî êëàññà
482
            spinDelegate.getItems();
502
            spinDelegate.getItems();                             // ïðîñèì äåëåãàòà ñîñòàâèòü ñïèñîê îáúåêòîâ â õðàíèëèùå
483
            ui->tableView->setItemDelegateForColumn(pointerIndex, &spinDelegate);
503
            ui->tableView->setItemDelegateForColumn(pointerIndex, &spinDelegate); // è ïðèñâàèâàåì åãî ñîîòâåòñòâóþùåìó ñòîëáöó íàøåé òàáëèöû
484
504
485
505
486
            pointersToModel.insert(pointerIndex, parentInctancesList.at(i));
506
            pointersToModel.insert(pointerIndex, parentInctancesList.at(i)); // ôîðìèðóåì ñïèñîê ñòîëáöîâ ñ óêàçàòåëÿìè
487
        }
507
        }
488
508
489
        sql_mogel->setPointers(pointersToModel);
509
        sql_mogel->setPointers(pointersToModel); // ïåðåäàåì ñïèñîê ìîäåëè
490
510
491
        pointer_index = sql_mogel->record().indexOf(pointer_name);
511
        pointer_index = sql_mogel->record().indexOf(pointer_name); // ýòî ãëîáàëüíàÿ ïåðåìåííàÿ, íå òðîãàåì, íóæíà! :-)
492
512
493
        ui->tableView->setModel(sql_mogel);
513
        ui->tableView->setModel(sql_mogel);
494
514
495
        connect(sql_mogel, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(on_sql_mogel_dataChanged(QModelIndex,QModelIndex)));
515
        connect(sql_mogel, SIGNAL(dataChanged(QModelIndex,QModelIndex)), this, SLOT(on_sql_mogel_dataChanged(QModelIndex,QModelIndex)));
496
516