forked from qt-creator/qt-creator
Outline: Disable filter button if no filters are available
Fixes that the filter button could be 'checked' for a cpp file.
This commit is contained in:
@@ -39,7 +39,6 @@ OutlineWidgetStack::OutlineWidgetStack(OutlineFactory *factory) :
|
|||||||
m_filterButton->setPopupMode(QToolButton::InstantPopup);
|
m_filterButton->setPopupMode(QToolButton::InstantPopup);
|
||||||
m_filterMenu = new QMenu(m_filterButton);
|
m_filterMenu = new QMenu(m_filterButton);
|
||||||
m_filterButton->setMenu(m_filterMenu);
|
m_filterButton->setMenu(m_filterMenu);
|
||||||
connect(m_filterMenu, SIGNAL(aboutToShow()), this, SLOT(updateFilterMenu()));
|
|
||||||
|
|
||||||
Core::EditorManager *editorManager = Core::EditorManager::instance();
|
Core::EditorManager *editorManager = Core::EditorManager::instance();
|
||||||
connect(editorManager, SIGNAL(currentEditorChanged(Core::IEditor*)),
|
connect(editorManager, SIGNAL(currentEditorChanged(Core::IEditor*)),
|
||||||
@@ -108,6 +107,7 @@ void OutlineWidgetStack::updateFilterMenu()
|
|||||||
m_filterMenu->addAction(filterAction);
|
m_filterMenu->addAction(filterAction);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
m_filterButton->setEnabled(!m_filterMenu->actions().isEmpty());
|
||||||
}
|
}
|
||||||
|
|
||||||
void OutlineWidgetStack::updateCurrentEditor(Core::IEditor *editor)
|
void OutlineWidgetStack::updateCurrentEditor(Core::IEditor *editor)
|
||||||
@@ -138,6 +138,8 @@ void OutlineWidgetStack::updateCurrentEditor(Core::IEditor *editor)
|
|||||||
addWidget(newWidget);
|
addWidget(newWidget);
|
||||||
setCurrentWidget(newWidget);
|
setCurrentWidget(newWidget);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
updateFilterMenu();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -31,10 +31,10 @@ public:
|
|||||||
private:
|
private:
|
||||||
bool isCursorSynchronized() const;
|
bool isCursorSynchronized() const;
|
||||||
QWidget *dummyWidget() const;
|
QWidget *dummyWidget() const;
|
||||||
|
void updateFilterMenu();
|
||||||
|
|
||||||
private slots:
|
private slots:
|
||||||
void toggleCursorSynchronization();
|
void toggleCursorSynchronization();
|
||||||
void updateFilterMenu();
|
|
||||||
void updateCurrentEditor(Core::IEditor *editor);
|
void updateCurrentEditor(Core::IEditor *editor);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
Reference in New Issue
Block a user