mirror of
https://github.com/qelectrotech/qelectrotech-source-mirror.git
synced 2025-12-20 08:10:52 +01:00
Recharger la collection ne remet plus systematiquement en haut de l'arborescence
git-svn-id: svn+ssh://svn.tuxfamily.org/svnroot/qet/qet/trunk@185 bfdf4180-ca20-0410-9c96-a3a8aa849046
This commit is contained in:
@@ -180,13 +180,19 @@ void ElementsPanel::reload() {
|
|||||||
saveCollapsedCategories();
|
saveCollapsedCategories();
|
||||||
|
|
||||||
// vide l'arbre
|
// vide l'arbre
|
||||||
while (takeTopLevelItem(0));
|
clear();
|
||||||
|
|
||||||
// chargement des elements de la collection QET
|
// chargement des elements de la collection QET
|
||||||
addDir(invisibleRootItem(), QETApp::commonElementsDir(), tr("Collection QET"));
|
addDir(invisibleRootItem(), QETApp::commonElementsDir(), tr("Collection QET"));
|
||||||
|
|
||||||
// chargement des elements de la collection utilisateur
|
// chargement des elements de la collection utilisateur
|
||||||
addDir(invisibleRootItem(), QETApp::customElementsDir(), tr("Collection utilisateur"));
|
addDir(invisibleRootItem(), QETApp::customElementsDir(), tr("Collection utilisateur"));
|
||||||
|
|
||||||
|
// reselectionne le dernier element selectionne
|
||||||
|
if (!last_selected_item.isNull()) {
|
||||||
|
QTreeWidgetItem *qtwi = findFile(last_selected_item);
|
||||||
|
if (qtwi) setCurrentItem(qtwi);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -282,7 +288,8 @@ void ElementsPanel::launchCategoryEditor(const QString &filename) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Enregistre la liste des categories repliees
|
Enregistre la liste des categories repliees ainsi que le dernier element
|
||||||
|
selectionne
|
||||||
*/
|
*/
|
||||||
void ElementsPanel::saveCollapsedCategories() {
|
void ElementsPanel::saveCollapsedCategories() {
|
||||||
collapsed_directories.clear();
|
collapsed_directories.clear();
|
||||||
@@ -293,4 +300,20 @@ void ElementsPanel::saveCollapsedCategories() {
|
|||||||
collapsed_directories << file;
|
collapsed_directories << file;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// sauvegarde egalement le dernier element selectionne
|
||||||
|
QTreeWidgetItem *current_item = currentItem();
|
||||||
|
if (current_item) last_selected_item = current_item -> data(0, 42).toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
@param file fichier ou dossier a retrouver dans l'arborescence
|
||||||
|
@return le QTreeWidgetItem correspondant au fichier file ou 0 si celui-ci n'est pas trouve
|
||||||
|
*/
|
||||||
|
QTreeWidgetItem *ElementsPanel::findFile(const QString &file) const {
|
||||||
|
QList<QTreeWidgetItem *> items = findItems("*", Qt::MatchRecursive|Qt::MatchWildcard);
|
||||||
|
foreach(QTreeWidgetItem *item, items) {
|
||||||
|
if (item -> data(0, 42).toString() == file) return(item);
|
||||||
|
}
|
||||||
|
return(0);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -30,7 +30,9 @@ class ElementsPanel : public QTreeWidget {
|
|||||||
void launchElementEditor(const QString &);
|
void launchElementEditor(const QString &);
|
||||||
void launchCategoryEditor(const QString &);
|
void launchCategoryEditor(const QString &);
|
||||||
void saveCollapsedCategories();
|
void saveCollapsedCategories();
|
||||||
|
QTreeWidgetItem *findFile(const QString &) const;
|
||||||
QStringList collapsed_directories;
|
QStringList collapsed_directories;
|
||||||
|
QString last_selected_item;
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
void slot_doubleClick(QTreeWidgetItem *, int);
|
void slot_doubleClick(QTreeWidgetItem *, int);
|
||||||
|
|||||||
Reference in New Issue
Block a user