forked from qt-creator/qt-creator
Merge branch 'master' of git@scm.dev.nokia.troll.no:creator/mainline
This commit is contained in:
@@ -248,6 +248,7 @@ void CMakeRunPage::initWidgets()
|
|||||||
fl->addWidget(m_runCMake);
|
fl->addWidget(m_runCMake);
|
||||||
|
|
||||||
m_output = new QPlainTextEdit(this);
|
m_output = new QPlainTextEdit(this);
|
||||||
|
m_output->setReadOnly(true);
|
||||||
fl->addRow(m_output);
|
fl->addRow(m_output);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ void GenericProjectNode::refresh()
|
|||||||
removeFileNodes(fileNodes(), this);
|
removeFileNodes(fileNodes(), this);
|
||||||
removeFolderNodes(subFolderNodes(), this);
|
removeFolderNodes(subFolderNodes(), this);
|
||||||
|
|
||||||
ProjectExplorerPlugin::instance()->setCurrentNode(0); // ### remove me
|
//ProjectExplorerPlugin::instance()->setCurrentNode(0); // ### remove me
|
||||||
|
|
||||||
FileNode *projectFilesNode = new FileNode(m_project->filesFileName(),
|
FileNode *projectFilesNode = new FileNode(m_project->filesFileName(),
|
||||||
ProjectFileType,
|
ProjectFileType,
|
||||||
|
|||||||
@@ -119,6 +119,13 @@ ProjectTreeWidget::ProjectTreeWidget(QWidget *parent)
|
|||||||
m_autoSync(false)
|
m_autoSync(false)
|
||||||
{
|
{
|
||||||
m_model = new FlatModel(m_explorer->session()->sessionNode(), this);
|
m_model = new FlatModel(m_explorer->session()->sessionNode(), this);
|
||||||
|
NodesWatcher *watcher = new NodesWatcher(this);
|
||||||
|
m_explorer->session()->sessionNode()->registerWatcher(watcher);
|
||||||
|
|
||||||
|
connect(watcher, SIGNAL(foldersAboutToBeRemoved(FolderNode *, const QList<FolderNode*> &)),
|
||||||
|
this, SLOT(foldersAboutToBeRemoved(FolderNode *, const QList<FolderNode*> &)));
|
||||||
|
connect(watcher, SIGNAL(filesAboutToBeRemoved(FolderNode *, const QList<FileNode*> &)),
|
||||||
|
this, SLOT(filesAboutToBeRemoved(FolderNode *, const QList<FileNode*> &)));
|
||||||
|
|
||||||
m_view = new ProjectTreeView;
|
m_view = new ProjectTreeView;
|
||||||
m_view->setModel(m_model);
|
m_view->setModel(m_model);
|
||||||
@@ -165,6 +172,29 @@ ProjectTreeWidget::ProjectTreeWidget(QWidget *parent)
|
|||||||
setAutoSynchronization(true);
|
setAutoSynchronization(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void ProjectTreeWidget::foldersAboutToBeRemoved(FolderNode *, const QList<FolderNode*> &list)
|
||||||
|
{
|
||||||
|
Node *n = m_explorer->currentNode();
|
||||||
|
while(n) {
|
||||||
|
if (FolderNode *fn = qobject_cast<FolderNode *>(n)) {
|
||||||
|
if (list.contains(fn)) {
|
||||||
|
m_explorer->setCurrentNode(n->projectNode());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
n = n->parentFolderNode();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void ProjectTreeWidget::filesAboutToBeRemoved(FolderNode *, const QList<FileNode*> &list)
|
||||||
|
{
|
||||||
|
if (FileNode *fileNode = qobject_cast<FileNode *>(m_explorer->currentNode())) {
|
||||||
|
if (list.contains(fileNode)) {
|
||||||
|
m_explorer->setCurrentNode(fileNode->projectNode());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
QToolButton *ProjectTreeWidget::toggleSync()
|
QToolButton *ProjectTreeWidget::toggleSync()
|
||||||
{
|
{
|
||||||
return m_toggleSync;
|
return m_toggleSync;
|
||||||
|
|||||||
@@ -40,6 +40,8 @@ namespace ProjectExplorer {
|
|||||||
class ProjectExplorerPlugin;
|
class ProjectExplorerPlugin;
|
||||||
class Project;
|
class Project;
|
||||||
class Node;
|
class Node;
|
||||||
|
class FolderNode;
|
||||||
|
class FileNode;
|
||||||
|
|
||||||
namespace Internal {
|
namespace Internal {
|
||||||
|
|
||||||
@@ -73,6 +75,9 @@ private slots:
|
|||||||
void startupProjectChanged(ProjectExplorer::Project *project);
|
void startupProjectChanged(ProjectExplorer::Project *project);
|
||||||
void initView();
|
void initView();
|
||||||
|
|
||||||
|
void foldersAboutToBeRemoved(FolderNode *, const QList<FolderNode*> &);
|
||||||
|
void filesAboutToBeRemoved(FolderNode *, const QList<FileNode*> &);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
ProjectExplorerPlugin *m_explorer;
|
ProjectExplorerPlugin *m_explorer;
|
||||||
QTreeView *m_view;
|
QTreeView *m_view;
|
||||||
|
|||||||
Reference in New Issue
Block a user