8#ifndef KIS_MAIN_WINDOW_H
9#define KIS_MAIN_WINDOW_H
11#include "kritaui_export.h"
71 QMenu *createPopupMenu()
override;
80 virtual void showView(
KisView *view, QMdiSubWindow *subWindow = 0);
93 bool openDocument(
const QString &path, OpenFlags flags);
109 void showWelcomeScreen(
bool show);
121 bool saveDocument(
KisDocument *document,
bool saveas,
bool isExporting,
bool isAdvancedExporting =
false);
126 QDockWidget* dockWidget(
const QString &
id);
132 int viewCount()
const;
134 void saveWindowState(
bool restoreNormalState =
false);
144 bool restoreWorkspaceState(
const QByteArray &state);
151 QMdiSubWindow *subWindow = 0);
159 bool canvasDetached()
const;
170 bool hackIsSaving()
const;
173 bool installBundle(
const QString &fileName)
const;
179 QImage layoutThumbnail();
209 void sigFullscreenOnShow(
bool fullScreen);
218 void clearRecentFiles();
223 void removeRecentFile(QString url);
240 void slotFileOpen(
bool isImporting =
false);
248 void slotFileOpenRecent(
const QUrl &);
253 void slotPreferences();
261 void slotShowSessionManager();
268 KisView *newView(QObject *document, QMdiSubWindow *subWindow = 0);
270 void notifyChildViewDestroyed(
KisView *view);
273 void setActiveView(
KisView *view);
274 void unsetActiveView();
276 void subWindowActivated();
278 void windowFocused();
283 void setCanvasDetached(
bool detached);
288 void viewFullscreen(
bool fullScreen);
294 bool checkActiveBundlesAvailable();
295 bool checkPaintOpAvailable();
297 void synchronizeDynamicActions();
300 void slotLoadCompleted();
301 void slotLoadCanceled(
const QString &);
302 void slotSaveCompleted();
303 void slotSaveCanceled(
const QString &);
304 void forceDockTabFonts();
306 void slotUpdateWidgetStyle();
308 void slotUpdateSaveActionTitle(
const QString &documentPath);
309 void slotUpdateReadWriteMode(
bool readWrite);
314 void slotFileSaveAs();
327 void slotDocumentInfo();
332 bool slotFileCloseAll();
337 virtual void showAboutApplication();
347 void slotConfigureToolbars();
353 void slotNewToolbarConfig();
358 void slotResetConfigurations();
363 void slotToolbarToggled(
bool toggle);
368 void showDockerTitleBars(
bool show);
375 void slotImportFile();
382 void slotExportFile();
384 void slotExportAdvance();
389 void toggleDockersVisibility(
bool visible,
bool onWelcomePage =
false);
395 void slotThemeChanged();
399 void updateWindowMenu();
400 void updateSubwindowFlags();
401 void setActiveSubWindow(QWidget *window);
402 void configChanged();
405 void closeCurrentWindow();
409 void showErrorAndDie();
411 void initializeGeometry();
413 void switchTab(
int index);
415 void slotXmlGuiMakingChanges(
bool finished);
417 void orientationChanged();
419 void restoreWorkspace();
421 void openCommandBar();
423 void slotStoragesWarning(
const QString &location = QString());
428 void resizeEvent(QResizeEvent * e)
override;
429 void showEvent(QShowEvent *event)
override;
432 void dragMoveEvent(QDragMoveEvent *event)
override;
433 void dragLeaveEvent(QDragLeaveEvent *event)
override;
440 void dragMove(QDragMoveEvent *event);
450 void addView(
KisView *view, QMdiSubWindow *subWindow = 0);
463 bool openDocumentInternal(
const QString &path, KisMainWindow::OpenFlags f = KisMainWindow::OpenFlags());
465 void saveWindowSettings();
469 void createActions();
471 void applyToolBarLayout();
475 void customizeTabBar();
477 void setMainWindowLayoutForCurrentMainWidget(
int widgetIndex,
bool widgetIndexChanged);
478 void adjustLayoutForWelcomePage();
479 void applyActionIconOverridesFromLocalXML();
Q_DECLARE_FLAGS(KisUpdaterContextSnapshotEx, KisUpdaterContextSnapshotExTag)
KDE top level main window with predefined action layout
virtual bool windowsLayoutSavingAllowed() const
void closeEvent(QCloseEvent *) override
void guiLoadingFinished()
const KConfigGroup & windowStateConfig() const
void themeChanged()
This signal is emitted when the color theme changes.
KisViewManager * viewManager() const
QWidget * canvasWindow() const
void keyBindingsChanged()
This signal is emitted when the shortcut key configuration has changed.
void renderAnimationAgain()
void importVideoAnimation()
KisView * activeView() const
void restoringDone()
This signal is emitted right after the docker states have been successfully restored from config.
void activeViewChanged()
emitted when the current view has changed
A widget for displaying if no documents are open. This will display in the MDI area.
virtual QList< KoCanvasObserverBase * > canvasObservers() const =0
Q_DECLARE_OPERATORS_FOR_FLAGS(KisBaseRectsWalker::SubtreeVisitFlags)