[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdevelop/parts/fileview
From: Amilcar do Carmo Lucas <amilcar () ida ! ing ! tu-bs ! de>
Date: 2003-09-21 16:57:14
[Download RAW message or body]
CVS commit by aclu:
Added a "Show non-project files" option to File Groups View
M +30 -2 filegroupswidget.cpp 1.18
M +4 -0 filegroupswidget.h 1.5
--- kdevelop/parts/fileview/filegroupswidget.cpp #1.17:1.18
@@ -23,4 +24,5 @@
#include <klocale.h>
#include <kpopupmenu.h>
+#include <kaction.h>
#include "kdevcore.h"
@@ -100,5 +102,6 @@ FileGroupsFileItem::FileGroupsFileItem(Q
FileGroupsWidget::FileGroupsWidget(FileGroupsPart *part)
- : KListView(0, "file view widget")
+ : KListView(0, "file view widget"),
+ m_actionToggleShowNonProjectFiles( 0 )
{
setFocusPolicy(ClickFocus);
@@ -116,6 +119,12 @@ FileGroupsWidget::FileGroupsWidget(FileG
this, SLOT(slotContextMenu(KListView*, QListViewItem*, const QPoint&)) \
);
+ m_actionToggleShowNonProjectFiles = new KToggleAction( i18n("Show Non Project \
files"), KShortcut(), + this, SLOT(slotToggleShowNonProjectFiles()), this, \
"actiontoggleshowshownonprojectfiles" ); +
m_part = part;
(void) translations; // supress compiler warning
+
+ QDomDocument &dom = *m_part->projectDom();
+ m_actionToggleShowNonProjectFiles->setChecked( !DomUtil::readBoolEntry(dom, \
"/kdevfileview/groups/hidenonprojectfiles") ); }
@@ -123,4 +132,6 @@ FileGroupsWidget::FileGroupsWidget(FileG
FileGroupsWidget::~FileGroupsWidget()
{
+ QDomDocument &dom = *m_part->projectDom();
+ DomUtil::writeBoolEntry( dom, "/kdevfileview/groups/hidenonprojectfiles", \
!m_actionToggleShowNonProjectFiles->isChecked() ); }
@@ -160,4 +171,5 @@ void FileGroupsWidget::slotContextMenu(K
m_part->core()->fillContextMenu(&popup, &context);
}
+ m_actionToggleShowNonProjectFiles->plug( &popup );
int res = popup.exec(p);
@@ -193,5 +205,15 @@ void FileGroupsWidget::refresh()
}
- QStringList allFiles = m_part->project()->allFiles();
+ QStringList allFiles;
+ if (m_actionToggleShowNonProjectFiles->isChecked()) {
+ // get all files in the project directory
+ QDir projectDir = m_part->project()->projectDirectory();
+ allFiles = projectDir.entryList(QDir::Files);
+ // @todo get all files in all subdirectories
+ }
+ else {
+ // get all project files
+ allFiles = m_part->project()->allFiles();
+ }
QStringList::ConstIterator fit;
for (fit = allFiles.begin(); fit != allFiles.end(); ++fit) {
@@ -277,4 +299,10 @@ void FileGroupsWidget::removeFiles ( con
}
}
+
+void FileGroupsWidget::slotToggleShowNonProjectFiles()
+{
+ refresh();
+}
+
#include "filegroupswidget.moc"
--- kdevelop/parts/fileview/filegroupswidget.h #1.4:1.5
@@ -35,4 +35,5 @@ private slots:
void slotItemExecuted(QListViewItem *item);
void slotContextMenu(KListView *, QListViewItem *item, const QPoint &p);
+ void slotToggleShowNonProjectFiles();
protected:
@@ -42,4 +43,7 @@ protected:
private:
FileGroupsPart *m_part;
+
+ class KToggleAction *m_actionToggleShowNonProjectFiles;
+ bool showNonProjectFiles;
};
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic