X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtopia%2Fqtopiamainwin.cpp;h=1991da9f95c961471ebcc17a59d5e0126f952471;hp=7a4a48053ffa0175a01ee70a5f5d44c5dd18cd5a;hb=902c95728306e5ba115de84800fc8d5d239c9d62;hpb=64773d0bbb9ad9e7b0a26aa9751447fa7288ca56 diff --git a/src/qtopia/qtopiamainwin.cpp b/src/qtopia/qtopiamainwin.cpp index 7a4a4805..1991da9f 100644 --- a/src/qtopia/qtopiamainwin.cpp +++ b/src/qtopia/qtopiamainwin.cpp @@ -20,8 +20,11 @@ #include "qtopiamainwin.h" +#include "buffertreemodel.h" +#include "chatline.h" #include "coreconnectdlg.h" #include "global.h" +#include "mainwidget.h" #include "message.h" #include "qtopiagui.h" #include "signalproxy.h" @@ -31,10 +34,10 @@ QtopiaMainWin::QtopiaMainWin(QWidget *parent, Qt::WFlags flags) : QMainWindow(parent, flags) { qRegisterMetaType("QVariant"); qRegisterMetaType("Message"); - qRegisterMetaType("BufferId"); + qRegisterMetaType("BufferInfo"); qRegisterMetaTypeStreamOperators("QVariant"); qRegisterMetaTypeStreamOperators("Message"); - qRegisterMetaTypeStreamOperators("BufferId"); + qRegisterMetaTypeStreamOperators("BufferInfo"); Global::runMode = Global::ClientOnly; @@ -45,19 +48,28 @@ QtopiaMainWin::QtopiaMainWin(QWidget *parent, Qt::WFlags flags) : QMainWindow(pa //Style::init(); QtopiaGui *gui = new QtopiaGui(this); Client::init(gui); - init(); - //gui->init(); setWindowTitle("Quassel IRC"); - //setWindowTitle(QString::fromUtf8("Κυασελ Εγαρζη")); setWindowIcon(QIcon(":/qirc-icon.png")); setWindowIconText("Quassel IRC"); + mainWidget = new MainWidget(this); + setCentralWidget(mainWidget); + + QToolBar *toolBar = new QToolBar(this); + toolBar->setIconSize(QSize(16, 16)); + toolBar->addAction(QIcon(":icon/trash"), "Trash"); + addToolBar(toolBar); + + init(); + //gui->init(); + } // at this point, client is fully initialized void QtopiaMainWin::init() { - Client::signalProxy()->attachSignal(this, SIGNAL(requestBacklog(BufferId, QVariant, QVariant))); + Client::signalProxy()->attachSignal(this, SIGNAL(requestBacklog(BufferInfo, QVariant, QVariant))); + connect(Client::bufferModel(), SIGNAL(bufferSelected(Buffer *)), this, SLOT(showBuffer(Buffer *))); CoreConnectDlg *dlg = new CoreConnectDlg(this); //setCentralWidget(dlg); @@ -71,9 +83,14 @@ QtopiaMainWin::~QtopiaMainWin() { } void QtopiaMainWin::connectedToCore() { - foreach(BufferId id, Client::allBufferIds()) { + foreach(BufferInfo id, Client::allBufferInfos()) { emit requestBacklog(id, 100, -1); } + // FIXME just for testing: select first available buffer + if(Client::allBufferInfos().count()) { + Buffer *b = Client::buffer(Client::allBufferInfos()[0]); + Client::bufferModel()->selectBuffer(b); + } } void QtopiaMainWin::disconnectedFromCore() { @@ -82,6 +99,11 @@ void QtopiaMainWin::disconnectedFromCore() { } AbstractUiMsg *QtopiaMainWin::layoutMsg(const Message &msg) { - //return new ChatLine(msg); - return 0; + return new ChatLine(msg); + //return 0; +} + +void QtopiaMainWin::showBuffer(Buffer *b) { + mainWidget->setBuffer(b); + }