21 #ifndef PCMANFM_APPLICATION_H
22 #define PCMANFM_APPLICATION_H
24 #include <QApplication>
26 #include <libfm-qt/libfmqt.h>
27 #include <libfm-qt/editbookmarksdialog.h>
30 #include <QProxyStyle>
31 #include <QTranslator>
34 #include <libfm-qt/core/filepath.h>
35 #include <libfm-qt/core/fileinfo.h>
39 class QFileSystemWatcher;
45 class PreferencesDialog;
46 class DesktopPreferencesDialog;
53 virtual int styleHint(StyleHint hint,
const QStyleOption* option =
nullptr,
const QWidget* widget =
nullptr, QStyleHintReturn* returnData =
nullptr)
const;
58 Q_PROPERTY(
bool desktopManagerEnabled READ desktopManagerEnabled)
71 Fm::LibFmQt& libFm() {
80 void launchFiles(
const QString& cwd,
const QStringList& paths,
bool inNewWindow,
bool reopenLastTabs);
81 void setWallpaper(
const QString& path,
const QString& modeString);
82 void preferences(
const QString& page);
83 void desktopPrefrences(
const QString& page);
85 void desktopManager(
bool enabled);
86 void findFiles(QStringList paths = QStringList());
87 void ShowFolders(
const QStringList& uriList,
const QString& startupId);
88 void ShowItems(
const QStringList& uriList,
const QString& startupId);
89 void ShowItemProperties(
const QStringList& uriList,
const QString& startupId);
90 void connectToServer();
92 bool desktopManagerEnabled() {
93 return enableDesktopManager_;
96 void updateFromSettings();
97 void updateDesktopsFromSettings(
bool changeSlide =
true);
99 void openFolderInTerminal(Fm::FilePath path);
100 void openFolders(Fm::FileInfoList files);
102 QString profileName() {
106 void cleanPerFolderConfig();
109 void onAboutToQuit();
110 void onSigtermNotified();
112 void onLastWindowClosed();
113 void onSaveStateRequest(QSessionManager& manager);
114 void initVolumeManager();
116 void onVirtualGeometryChanged(
const QRect& rect);
117 void onAvailableGeometryChanged(
const QRect& rect);
118 void onScreenDestroyed(QObject* screenObj);
119 void onScreenAdded(QScreen* newScreen);
120 void onScreenRemoved(QScreen* oldScreen);
121 void reloadDesktopsAsNeeded();
123 void onFindFileAccepted();
124 void onConnectToServerAccepted();
128 bool parseCommandLineArgs();
130 bool autoMountVolume(GVolume* volume,
bool interactive =
true);
132 static void onVolumeAdded(GVolumeMonitor* monitor, GVolume* volume,
Application* pThis);
135 void onUserDirsChanged();
136 void onPropJobFinished();
140 void installSigtermHandler();
142 bool isPrimaryInstance;
145 QString profileName_;
147 bool enableDesktopManager_;
148 QVector<DesktopWindow*> desktopWindows_;
149 QPointer<PreferencesDialog> preferencesDialog_;
150 QPointer<DesktopPreferencesDialog> desktopPreferencesDialog_;
151 QPointer<Fm::EditBookmarksDialog> editBookmarksialog_;
152 QTranslator translator;
153 QTranslator qtTranslator;
154 GVolumeMonitor* volumeMonitor_;
156 QFileSystemWatcher* userDirsWatcher_;
157 QString userDirsFile_;
158 QString userDesktopFolder_;
Definition: application.h:56
Definition: desktopwindow.h:46
Definition: application.h:48
Definition: settings.h:154