X-Git-Url: https://git.quassel-irc.org/?a=blobdiff_plain;f=src%2Fqtui%2Fmainwin.h;h=9787832c60f017aa2cf9bba921ac4217b7ea666c;hb=65d88a7f8c37e549a259aba85c52b7916b89a17d;hp=01903456e23d512de79f612bf6232fe8614e338a;hpb=997a62b68d7469a93f373476dd955c44eb051be0;p=quassel.git diff --git a/src/qtui/mainwin.h b/src/qtui/mainwin.h index 01903456..9787832c 100644 --- a/src/qtui/mainwin.h +++ b/src/qtui/mainwin.h @@ -24,11 +24,14 @@ #include "ui_mainwin.h" #include "qtui.h" +#include "titlesetter.h" #include #include + class ServerListDlg; +class ChannelListDlg; class CoreConnectDlg; class Buffer; class BufferViewConfig; @@ -38,6 +41,7 @@ class Message; class NickListWidget; class DebugConsole; +#include "desktopnotifications.h" //!\brief The main window of Quassel's QtUi. class MainWin : public QMainWindow { @@ -50,8 +54,8 @@ class MainWin : public QMainWindow { void init(); void addBufferView(BufferViewConfig *config = 0); - AbstractUiMsg *layoutMsg(const Message &); void displayTrayIconMessage(const QString &title, const QString &message); + void sendDesktopNotification(const QString &title, const QString &message); virtual bool event(QEvent *event); @@ -64,17 +68,23 @@ class MainWin : public QMainWindow { protected slots: void connectedToCore(); + void setConnectedState(); + void updateLagIndicator(int lag); void securedConnection(); void disconnectedFromCore(); + void setDisconnectedState(); void systrayActivated( QSystemTrayIcon::ActivationReason ); private slots: void addBufferView(int bufferViewConfigId); void removeBufferView(int bufferViewConfigId); void receiveMessage(const Message &msg); + void showChannelList(NetworkId netId = NetworkId()); + void showCoreInfoDlg(); void showSettingsDlg(); - void showNetworkDlg(); - void showManageViewsDlg(); + void on_actionEditNetworks_triggered(); + void on_actionManageViews_triggered(); + void on_actionLockDockPositions_toggled(bool lock); void showAboutDlg(); void showDebugConsole(); @@ -91,7 +101,11 @@ class MainWin : public QMainWindow { void saveStatusBarStatus(bool enabled); void loadLayout(); - + void saveLayout(); + + void desktopNotificationClosed(uint id, uint reason); + void desktopNotificationInvoked(uint id, const QString & action); + signals: void connectToCore(const QVariantMap &connInfo); void disconnectFromCore(); @@ -102,8 +116,11 @@ class MainWin : public QMainWindow { QtUi *gui; QMenu *systrayMenu; + QLabel *coreLagLabel; QLabel *sslLabel; + TitleSetter _titleSetter; + void setupMenus(); void setupViews(); void setupNickWidget(); @@ -127,6 +144,7 @@ class MainWin : public QMainWindow { QTimer *timer; CoreConnectDlg *coreConnectDlg; + ChannelListDlg *channelListDlg; SettingsDlg *settingsDlg; DebugConsole *debugConsole; @@ -136,8 +154,8 @@ class MainWin : public QMainWindow { QList _netViews; NickListWidget *nickListWidget; - QAction *actionEditNetworks; - QList networkActions; + org::freedesktop::Notifications *desktopNotifications; + quint32 notificationId; friend class QtUi; };