24 #ifndef __MAINWINDOW_H_ 25 #define __MAINWINDOW_H_ 30 #include <QMainWindow> 31 #include <QSystemTrayIcon> 41 class QueryMenuAction;
63 bool isEffectivelyActiveWindow()
const;
65 void notifyFirstRun();
95 void stopAutoRefreshTimer();
97 void updateMasterAddresses();
100 void runGame(
const ServerPtr &);
101 void showInstallFreedoomDialog();
102 void updateDynamicAppearance();
107 static const QString HELP_SITE_URL;
109 void changeEvent(QEvent *event)
override;
110 void checkForUpdates(
bool bUserTriggered);
118 void closeEvent(QCloseEvent *event)
override;
137 bool hasCustomServers()
const;
139 QProgressBar *mkStdProgressBarForStatusBar();
141 void initAutoUpdaterWidgets();
142 void initIP2CUpdater();
146 void initServerDetailsDock();
147 void initServerFilterDock();
163 bool isAnyMasterEnabled()
const;
165 QueryMenuAction *queryMenuActionForPlugin(
const EnginePlugin *plugin);
167 void refreshCustomServers();
168 void refreshServersOnList();
169 void showEvent(QShowEvent *event)
override;
175 void updateTrayIconTooltipAndLogTotalRefresh();
178 void abortAutoUpdater();
179 void autoRefreshTimer_timeout();
180 void blockRefreshButtons();
191 void confirmUpdateInstallation();
192 void discardUpdates();
193 void findMissingWADs(
const ServerPtr &);
196 void masterManagerMessages(
MasterClient *pSender,
const QString &title,
const QString &content,
bool isError);
199 void menuCreateServer();
200 void menuHelpAbout();
202 void menuIRCOptions();
204 void menuManageDemos();
205 void menuOptionsConfigure();
206 void menuRecordDemo();
207 void menuUpdateIP2C();
209 void menuWadSeeker();
211 void onAutoUpdaterDownloadAndInstallConfirmationRequest();
212 void onAutoUpdaterFileProgress(qint64 bytesReceived, qint64 bytesTotal);
213 void onAutoUpdaterFinish();
214 void onAutoUpdaterOverallProgress(
int current,
int total,
const QString &msg);
217 void postInitAppStartup();
218 void refreshThreadBeginsWork();
219 void refreshThreadEndsWork();
220 void restartAndInstallUpdatesNow();
221 void serverAddedToList(
const ServerPtr &);
222 void showServerJoinCommandLine(
const ServerPtr &);
223 void showUpdaterProcessErrorDialog();
224 void showUpdateInstallErrorDialog();
231 void toolBarAction(QAction *pAction);
232 void trayIcon_activated(QSystemTrayIcon::ActivationReason reason);
234 void updateRefreshProgress();
239 void connectIP2CLoader();
243 void ip2cDownloadProgress(qint64 current, qint64 max);
244 void ip2cJobsFinished();
245 void ip2cStartUpdate();
246 void showAndLogStatusMessage(
const QString &message);
247 void showServerJoinCommandLineOnBuilderFinished();
248 void showProgramArgsHelp();
Structure describing server filter.
void checkForUpdatesAuto()
Auto triggered updates will display install confirmation only if configured to.
void togglePluginQueryEnabled(const EnginePlugin *plugin)
Message object used to pass messages throughout the Doomseeker's system.
void finishConfiguration(DoomseekerConfigurationDialog &, bool)
void setQueryPluginEnabled(const EnginePlugin *pClient, bool bEnabled)
Sets query for selected MasterClient object to enabled or disabled.
void checkForUpdatesUserTriggered()
User triggered updates will always display install confirmation.
void setDisplayUpdaterProcessFailure(int errorCode)
This should be set if program was started with "--update-failed" argument.
bool isAnythingToRefresh() const
Will check if refresh operation has any sense.
void fillQueryMenu(MasterManager *masterManager)
Manager class for a number of MasterClient instances.
void setDisplayUpdateInstallerError(int errorCode)
If set then MainWindow will display the reason for updater failure.
Abstract base for all MasterClients.
void initAutoRefreshTimer()