/***************************************************************************
- * Copyright (C) 2005-07 by The Quassel Team *
+ * Copyright (C) 2005-07 by the Quassel IRC Team *
* devel@quassel-irc.org *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
- * (at your option) any later version. *
+ * (at your option) version 3. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
#include "chatline-old.h"
#include "client.h"
#include "coreconnectdlg.h"
+#include "networkmodel.h"
#include "nicklistwidget.h"
#include "serverlist.h"
#include "settingsdlg.h"
-//#include "settingspage.h"
#include "signalproxy.h"
#include "topicwidget.h"
#include "selectionmodelsynchronizer.h"
#include "mappedselectionmodel.h"
+#include "settingspages/fontssettingspage.h"
+#include "settingspages/identitiessettingspage.h"
+
+#include "debugconsole.h"
+
MainWin::MainWin(QtUi *_gui, QWidget *parent) : QMainWindow(parent), gui(_gui) {
ui.setupUi(this);
setWindowTitle("Quassel IRC");
//setWindowTitle(QString::fromUtf8("Κυασελ Εγαρζη"));
- setWindowIcon(QIcon(":/qirc-icon.png"));
+ setWindowIcon(QIcon(":icons/quassel-icon.png"));
setWindowIconText("Quassel IRC");
statusBar()->showMessage(tr("Waiting for core..."));
serverListDlg = new ServerListDlg(this);
settingsDlg = new SettingsDlg(this);
-
+ debugConsole = new DebugConsole(this);
}
void MainWin::init() {
setupMenus();
setupViews();
+ setupSettingsDlg();
// create nick dock
- nickDock = new QDockWidget("Nicks", this);
+ nickDock = new QDockWidget(tr("Nicks"), this);
nickDock->setObjectName("NickDock");
nickDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea);
setDockNestingEnabled(true);
- // TESTING
+ // new Topic Stuff... should be probably refactored out into a separate method
+
setCorner(Qt::TopLeftCorner, Qt::LeftDockWidgetArea);
setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);
setCorner(Qt::BottomRightCorner, Qt::RightDockWidgetArea);
- QDockWidget *dock = new QDockWidget("Topic Dock", this);
+ QDockWidget *dock = new QDockWidget(tr("Topic Dock"), this);
dock->setObjectName("TopicDock");
dock->setAllowedAreas(Qt::TopDockWidgetArea | Qt::BottomDockWidgetArea);
TopicWidget *topicwidget = new TopicWidget(dock);
dock->setWidget(topicwidget);
- Client::bufferModel()->mapProperty(0, Qt::DisplayRole, topicwidget, "topic");
+ Client::networkModel()->mapProperty(1, Qt::DisplayRole, topicwidget, "topic");
addDockWidget(Qt::TopDockWidgetArea, dock);
ui.menuViews->addAction(dock->toggleViewAction());
+ //showSettingsDlg();
+
}
MainWin::~MainWin() {
connect(ui.actionNetworkList, SIGNAL(triggered()), this, SLOT(showServerList()));
connect(ui.actionEditIdentities, SIGNAL(triggered()), serverListDlg, SLOT(editIdentities()));
connect(ui.actionSettingsDlg, SIGNAL(triggered()), this, SLOT(showSettingsDlg()));
- ui.actionSettingsDlg->setEnabled(false);
+ connect(ui.actionDebug_Console, SIGNAL(triggered()), this, SLOT(showDebugConsole()));
+ //ui.actionSettingsDlg->setEnabled(false);
connect(ui.actionAboutQt, SIGNAL(triggered()), QApplication::instance(), SLOT(aboutQt()));
}
void MainWin::setupViews() {
- BufferTreeModel *model = Client::bufferModel();
+ NetworkModel *model = Client::networkModel();
connect(model, SIGNAL(bufferSelected(Buffer *)), this, SLOT(showBuffer(Buffer *)));
addBufferView(tr("All Buffers"), model, BufferViewFilter::AllNets, QList<uint>());
//create the view and initialize it's filter
BufferView *view = new BufferView(dock);
view->setFilteredModel(model, mode, nets);
- Client::bufferModel()->synchronizeView(view);
+ Client::networkModel()->synchronizeView(view);
dock->setWidget(view);
addDockWidget(Qt::LeftDockWidgetArea, dock);
netViews.append(dock);
}
+void MainWin::setupSettingsDlg() {
+ settingsDlg->registerSettingsPage(new FontsSettingsPage(settingsDlg));
+ settingsDlg->registerSettingsPage(new IdentitiesSettingsPage(settingsDlg));
+
+}
+
void MainWin::connectedToCore() {
foreach(BufferInfo id, Client::allBufferInfos()) {
- emit requestBacklog(id, 100, -1);
+ emit requestBacklog(id, 1000, -1);
}
ui.menuViews->setEnabled(true);
settingsDlg->show();
}
+void MainWin::showDebugConsole() {
+ debugConsole->show();
+}
+
void MainWin::closeEvent(QCloseEvent *event)
{
//if (userReallyWantsToQuit()) {