#ifndef MAINWIN_H_
#define MAINWIN_H_
-#include "ui_mainwin.h"
+#include <QMainWindow>
+#include <QSystemTrayIcon>
#include "qtui.h"
-#include "titlesetter.h"
#include "sessionsettings.h"
-
-#include <QPixmap>
-#include <QSystemTrayIcon>
-#include <QTimer>
+#include "titlesetter.h"
class ActionCollection;
-class Buffer;
class BufferViewConfig;
+class BufferWidget;
class MsgProcessorStatusWidget;
-class Message;
class NickListWidget;
class SystemTrayIcon;
+class QMenu;
+class QLabel;
+
//!\brief The main window of Quassel's QtUi.
class MainWin : public QMainWindow {
Q_OBJECT
public slots:
void saveStateToSession(const QString &sessionId);
void saveStateToSessionSettings(SessionSettings &s);
+ void showStatusBarMessage(const QString &message);
protected:
void closeEvent(QCloseEvent *event);
void on_actionEditNetworks_triggered();
void on_actionManageViews_triggered();
void on_actionLockDockPositions_toggled(bool lock);
- void on_actionDebugNetworkModel_triggered(bool);
+ void on_actionDebugNetworkModel_triggered();
+ void on_actionDebugLog_triggered();
void clientNetworkCreated(NetworkId);
void clientNetworkRemoved(NetworkId);
void disconnectFromCore();
private:
- Ui::MainWin ui;
QMenu *systrayMenu;
QLabel *coreLagLabel;
TitleSetter _titleSetter;
void setupActions();
+ void setupBufferWidget();
void setupMenus();
void setupViews();
void setupNickWidget();
void setupTopicWidget();
void setupStatusBar();
void setupSystray();
+ void setupTitleSetter();
+ void updateIcon();
void toggleVisibility();
void enableMenus();
QSystemTrayIcon *_trayIcon;
- QPixmap activeTrayIcon;
- QPixmap onlineTrayIcon;
- QPixmap offlineTrayIcon;
-
- BufferId currentBuffer;
- QString currentProfile;
QList<QDockWidget *> _netViews;
- NickListWidget *nickListWidget;
+ BufferWidget *_bufferWidget;
+ NickListWidget *_nickListWidget;
- ActionCollection *_actionCollection;
+ QMenu *_fileMenu, *_networksMenu, *_viewMenu, *_bufferViewsMenu, *_settingsMenu, *_helpMenu, *_helpDebugMenu;
friend class QtUi;
};