X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtgui%2Fmainwin.h;h=f5224492b163a6f24b3b4d6cafa9cd0df0114afa;hp=123d5f4580fd4a9368748813d7b104393fde3e58;hb=06a03c2c69ee934aaeec83512bae2fffee83a340;hpb=6869909402a4dc807ee5261cc2a0999ac33053ee diff --git a/src/qtgui/mainwin.h b/src/qtgui/mainwin.h index 123d5f45..f5224492 100644 --- a/src/qtgui/mainwin.h +++ b/src/qtgui/mainwin.h @@ -21,49 +21,44 @@ #ifndef _MAINWIN_H_ #define _MAINWIN_H_ -#include #include "ui_mainwin.h" -#include "quasselui.h" -//#include "global.h" -#include "message.h" -#include "chatwidget.h" +#include "qtgui.h" #include "bufferviewfilter.h" -#include "bufferviewwidget.h" class ServerListDlg; class CoreConnectDlg; -//class BufferViewDock; class Buffer; -class BufferWidget; class SettingsDlg; +class QtGui; +class Message; -//!\brief The main window and central object of Quassel GUI. -/** In addition to displaying the main window including standard stuff like a menubar, - * dockwidgets and of course the chat window, this class also stores all data it - * receives from the core, and it maintains a list of all known nicks. - */ -class MainWin : public QMainWindow, public AbstractUi { +//!\brief The main window of Quassel's QtGui. +class MainWin : public QMainWindow { Q_OBJECT public: - MainWin(); + MainWin(QtGui *gui, QWidget *parent = 0); virtual ~MainWin(); void init(); - void registerBufferViewDock(BufferViewDock *); + void addBufferView(const QString &, QAbstractItemModel *, const BufferViewFilter::Modes &, const QStringList &); AbstractUiMsg *layoutMsg(const Message &); protected: void closeEvent(QCloseEvent *event); - //void importOldBacklog(); + protected slots: + void connectedToCore(); + void disconnectedFromCore(); private slots: void showServerList(); void showSettingsDlg(); + void showCoreConnectionDlg(bool autoConnect = false); + void coreConnectionDlgFinished(int result); void showBuffer(BufferId); void showBuffer(Buffer *); @@ -71,15 +66,21 @@ class MainWin : public QMainWindow, public AbstractUi { void importBacklog(); signals: + void connectToCore(const QVariantMap &connInfo); + void disconnectFromCore(); + void requestBacklog(BufferId, QVariant, QVariant); void importOldBacklog(); private: Ui::MainWin ui; + QtGui *gui; void setupMenus(); void setupViews(); void setupSettingsDlg(); + void enableMenus(); + QSystemTrayIcon *systray; ServerListDlg *serverListDlg; @@ -87,9 +88,11 @@ class MainWin : public QMainWindow, public AbstractUi { SettingsDlg *settingsDlg; uint currentBuffer; + QString currentProfile; - QList netViews; + QList netViews; + friend class QtGui; }; #endif