* Free Software Foundation, Inc., *
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *
***************************************************************************/
+//#define SPUTDEV
#include "mainwin.h"
#include "client.h"
#include "coreconnectdlg.h"
#include "networkmodel.h"
+#include "buffermodel.h"
#include "nicklistwidget.h"
#include "serverlist.h"
#include "settingsdlg.h"
TopicWidget *topicwidget = new TopicWidget(dock);
dock->setWidget(topicwidget);
- Client::networkModel()->mapProperty(1, Qt::DisplayRole, topicwidget, "topic");
+ Client::bufferModel()->mapProperty(1, Qt::DisplayRole, topicwidget, "topic");
addDockWidget(Qt::TopDockWidgetArea, dock);
ui.menuViews->addAction(dock->toggleViewAction());
+
+ // attach the BufferWidget to the PropertyMapper
+ Client::bufferModel()->mapProperty(0, NetworkModel::BufferUidRole, ui.bufferWidget, "currentBuffer");
+ connect(Client::networkModel(), SIGNAL(bufferAboutToBeRemoved(BufferId)),
+ ui.bufferWidget, SLOT(removeBuffer(BufferId)));
+
+ // attach the NickList to the PropertyMapper
+ Client::bufferModel()->mapProperty(0, NetworkModel::BufferUidRole, nickListWidget, "currentBuffer");
+
+
#ifdef SPUTDEV
showSettingsDlg();
#endif
connect(ui.actionEditIdentities, SIGNAL(triggered()), serverListDlg, SLOT(editIdentities()));
connect(ui.actionSettingsDlg, SIGNAL(triggered()), this, SLOT(showSettingsDlg()));
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() {
-
- NetworkModel *model = Client::networkModel();
- connect(model, SIGNAL(bufferSelected(Buffer *)), this, SLOT(showBuffer(Buffer *)));
+ BufferModel *model = Client::bufferModel();
addBufferView(tr("All Buffers"), model, BufferViewFilter::AllNets, QList<uint>());
addBufferView(tr("All Channels"), model, BufferViewFilter::AllNets|BufferViewFilter::NoQueries|BufferViewFilter::NoServers, QList<uint>());
addBufferView(tr("All Queries"), model, BufferViewFilter::AllNets|BufferViewFilter::NoChannels|BufferViewFilter::NoServers, QList<uint>());
addBufferView(tr("All Networks"), model, BufferViewFilter::AllNets|BufferViewFilter::NoChannels|BufferViewFilter::NoQueries, QList<uint>());
addBufferView(tr("Full Custom"), model, BufferViewFilter::FullCustom, QList<uint>());
-
+
ui.menuViews->addSeparator();
}
QDockWidget *dock = new QDockWidget(viewname, this);
dock->setObjectName(QString("ViewDock-" + viewname)); // should be unique for mainwindow state!
dock->setAllowedAreas(Qt::RightDockWidgetArea|Qt::LeftDockWidgetArea);
- //dock->setContentsMargins(4,4,4,4);
//create the view and initialize it's filter
BufferView *view = new BufferView(dock);
+ view->show();
view->setFilteredModel(model, mode, nets);
- Client::networkModel()->synchronizeView(view);
+ Client::bufferModel()->synchronizeView(view);
dock->setWidget(view);
+ dock->show();
addDockWidget(Qt::LeftDockWidgetArea, dock);
ui.menuViews->addAction(dock->toggleViewAction());
void MainWin::setupSettingsDlg() {
settingsDlg->registerSettingsPage(new FontsSettingsPage(settingsDlg));
-#ifdef SPUTDEV
settingsDlg->registerSettingsPage(new IdentitiesSettingsPage(settingsDlg));
-#endif
}
void MainWin::connectedToCore() {
//}
}
-void MainWin::showBuffer(BufferInfo id) {
- showBuffer(Client::buffer(id));
-}
-
-void MainWin::showBuffer(Buffer *b) {
- currentBuffer = b->bufferInfo().groupId();
- //emit bufferSelected(b);
- //qApp->processEvents();
- ui.bufferWidget->setBuffer(b);
- nickListWidget->setBuffer(b);
- //if(b->bufferType() == Buffer::ChannelType) nickDock->show();
- //else nickDock->hide();
- //emit bufferSelected(b);
-}