6 #ifndef SWIFT_GUI_COMPONENTS_NAVIGATORDIALOG_H
7 #define SWIFT_GUI_COMPONENTS_NAVIGATORDIALOG_H
10 #include <QGridLayout>
13 #include <QScopedPointer>
15 #include <QWidgetAction>
28 class CNavigatorDialog;
49 void buildNavigator(
int columns);
52 virtual void reject()
override;
55 void toggleFrameless();
58 void showNavigator(
bool visible);
61 void toggleNavigatorVisibility();
64 void restoreFromSettings();
67 void saveToSettings();
81 virtual void mouseMoveEvent(QMouseEvent *event)
override;
84 virtual void mousePressEvent(QMouseEvent *event)
override;
87 virtual void mouseReleaseEvent(QMouseEvent *event)
override;
90 virtual void changeEvent(QEvent *evt)
override;
93 virtual void windowFlagsChanged()
override;
96 virtual void paintEvent(QPaintEvent *event)
override;
99 virtual void enterEvent(QEnterEvent *event)
override;
104 void menuChangeMargins(
const QMargins &margins);
110 void dummyFunction();
113 void showContextMenu(
const QPoint &pos);
116 void onStyleSheetsChanged();
119 void onSettingsChanged();
122 void insertOwnActions();
125 void addToContextMenu(QMenu *contextMenu)
const;
128 int columnsForRows(
int rows);
131 QGridLayout *myGridLayout()
const;
134 void adjustNavigatorSize(QGridLayout *layout =
nullptr);
139 bool m_firstBuild =
true;
140 bool m_originalQuitOnLastWindow =
false;
141 int m_currentColumns = 1;
142 QScopedPointer<Ui::CNavigatorDialog> ui;
143 QMainWindow *m_mainWindow =
nullptr;
144 QWidgetAction *m_marginMenuAction =
nullptr;
148 &CNavigatorDialog::onSettingsChanged };
Main window which can be frameless.
void navigatorClosed()
Navigator closed.
void setMainWindow(QMainWindow *window)
The main window.
High level reusable GUI components.
#define SWIFT_GUI_EXPORT
Export a class or function from the library.