Fixed a bug causing new diagrams to be placed after title blocks parent directory in the elements panel.

git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/branches/0.3@1345 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
xavier
2011-10-01 17:11:54 +00:00
parent 6ca6d01352
commit ac0386203e

View File

@@ -608,23 +608,19 @@ QTreeWidgetItem *ElementsPanel::addDiagram(QTreeWidgetItem *qtwi_parent, Diagram
// repere le dernier element correspondant a un schema, s'il existe // repere le dernier element correspondant a un schema, s'il existe
QTreeWidgetItem *last_diagram = 0; QTreeWidgetItem *last_diagram = 0;
bool collection_item_exists = false;
if (QETProject *project = diagram -> project()) { if (QETProject *project = diagram -> project()) {
if (ElementsCollection *project_collection = project -> embeddedCollection()) { if (QTreeWidgetItem *embedded_title_blocks = title_blocks_directories_.key(project)) {
if (QTreeWidgetItem *collection_item = locations_.key(project_collection -> location())) { // gets the last diagram, supposed to be right before the title blocks directory item
collection_item_exists = true; int title_blocks_item_idx = qtwi_parent -> indexOfChild(embedded_title_blocks);
// repere le dernier schema if (title_blocks_item_idx != -1) {
int common_collection_item_idx = qtwi_parent -> indexOfChild(collection_item); last_diagram = qtwi_parent -> child(title_blocks_item_idx - 1);
if (common_collection_item_idx != -1) {
last_diagram = qtwi_parent -> child(common_collection_item_idx - 1);
}
} }
} }
} }
// creation du QTreeWidgetItem representant le schema // creation du QTreeWidgetItem representant le schema
QTreeWidgetItem *qtwi_diagram; QTreeWidgetItem *qtwi_diagram;
if (collection_item_exists) { if (last_diagram) {
qtwi_diagram = new QTreeWidgetItem(qtwi_parent, last_diagram); qtwi_diagram = new QTreeWidgetItem(qtwi_parent, last_diagram);
} else { } else {
qtwi_diagram = new QTreeWidgetItem(qtwi_parent); qtwi_diagram = new QTreeWidgetItem(qtwi_parent);