From 923ab935b9e2936d2512ef9344811e9bb2f436f3 Mon Sep 17 00:00:00 2001 From: Marcus Eggenberger Date: Wed, 27 Feb 2008 16:20:34 +0000 Subject: [PATCH] improvements to the default layout --- src/qtui/chatwidget.cpp | 4 ++++ src/qtui/chatwidget.h | 2 +- src/qtui/mainwin.cpp | 9 +++++++-- src/qtui/nicklistwidget.cpp | 8 ++++++++ src/qtui/nicklistwidget.h | 5 ++++- src/uisupport/bufferview.cpp | 8 +++++--- src/uisupport/nickview.cpp | 3 ++- version.inc | 2 +- 8 files changed, 32 insertions(+), 9 deletions(-) diff --git a/src/qtui/chatwidget.cpp b/src/qtui/chatwidget.cpp index 722f502a..3a04383f 100644 --- a/src/qtui/chatwidget.cpp +++ b/src/qtui/chatwidget.cpp @@ -85,6 +85,10 @@ QSize ChatWidget::minimumSizeHint() const { return QSize(20, 20); } +QSize ChatWidget::sizeHint() const { + return QSize(400, 100); +} + // QSize ChatWidget::sizeHint() const { // //qDebug() << size(); // return size(); diff --git a/src/qtui/chatwidget.h b/src/qtui/chatwidget.h index 305af689..b8aa5a7d 100644 --- a/src/qtui/chatwidget.h +++ b/src/qtui/chatwidget.h @@ -48,7 +48,7 @@ class ChatWidget : public QAbstractScrollArea { void init(BufferId id); virtual QSize minimumSizeHint() const; - // virtual QSize sizeHint() const; + virtual QSize sizeHint() const; public slots: void clear(); diff --git a/src/qtui/mainwin.cpp b/src/qtui/mainwin.cpp index e88a86db..d700b642 100644 --- a/src/qtui/mainwin.cpp +++ b/src/qtui/mainwin.cpp @@ -70,7 +70,10 @@ MainWin::MainWin(QtUi *_gui, QWidget *parent) void MainWin::init() { QtUiSettings s; - resize(s.value("MainWinSize").toSize()); + if(s.value("MainWinSize").isValid()) + resize(s.value("MainWinSize").toSize()); + else + resize(QSize(800, 500)); Client::signalProxy()->attachSignal(this, SIGNAL(requestBacklog(BufferInfo, QVariant, QVariant))); @@ -94,9 +97,9 @@ void MainWin::init() { setupMenus(); setupViews(); setupNickWidget(); + setupTopicWidget(); setupChatMonitor(); setupInputWidget(); - setupTopicWidget(); setupSystray(); @@ -169,6 +172,7 @@ QDockWidget *MainWin::addBufferView(const QString &viewname, QAbstractItemModel dock->show(); addDockWidget(Qt::LeftDockWidgetArea, dock); + ui.menuViews->addAction(dock->toggleViewAction()); netViews.append(dock); @@ -201,6 +205,7 @@ void MainWin::setupNickWidget() { nickDock->setWidget(nickListWidget); addDockWidget(Qt::RightDockWidgetArea, nickDock); + ui.menuViews->addAction(nickDock->toggleViewAction()); Client::bufferModel()->mapProperty(0, NetworkModel::BufferIdRole, nickListWidget, "currentBuffer"); diff --git a/src/qtui/nicklistwidget.cpp b/src/qtui/nicklistwidget.cpp index 04e6e22a..82191722 100644 --- a/src/qtui/nicklistwidget.cpp +++ b/src/qtui/nicklistwidget.cpp @@ -75,3 +75,11 @@ void NickListWidget::removeBuffer(BufferId bufferId) { ui.stackedWidget->removeWidget(view); view->deleteLater(); } + +QSize NickListWidget::sizeHint() const { + QWidget *currentWidget = ui.stackedWidget->currentWidget(); + if(!currentWidget || currentWidget == ui.emptyPage) + return QSize(100, height()); + else + return currentWidget->sizeHint(); +} diff --git a/src/qtui/nicklistwidget.h b/src/qtui/nicklistwidget.h index b21182dd..a004f2a2 100644 --- a/src/qtui/nicklistwidget.h +++ b/src/qtui/nicklistwidget.h @@ -41,7 +41,10 @@ public slots: BufferId currentBuffer() const; void setCurrentBuffer(BufferId bufferId); void reset(); - + +protected: + virtual QSize sizeHint() const; + private slots: void removeBuffer(BufferId bufferId); diff --git a/src/uisupport/bufferview.cpp b/src/uisupport/bufferview.cpp index 3043b83c..d83f696a 100644 --- a/src/uisupport/bufferview.cpp +++ b/src/uisupport/bufferview.cpp @@ -136,9 +136,8 @@ void BufferView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bott continue; bool isActive = networkIdx.data(NetworkModel::ItemActiveRole).toBool(); - if(isExpanded(networkIdx) != isActive) { + if(isExpanded(networkIdx) != isActive) setExpanded(networkIdx, isActive); - } } } @@ -276,7 +275,10 @@ void BufferView::wheelEvent(QWheelEvent* event) QSize BufferView::sizeHint() const { if(!model()) return QTreeView::sizeHint(); - + + if(model()->rowCount() == 0) + return QSize(120, 50); + int columnSize = 0; for(int i = 0; i < model()->columnCount(); i++) { if(!isColumnHidden(i)) diff --git a/src/uisupport/nickview.cpp b/src/uisupport/nickview.cpp index ba96c1ec..7e30cb7c 100644 --- a/src/uisupport/nickview.cpp +++ b/src/uisupport/nickview.cpp @@ -146,11 +146,12 @@ void NickView::executeCommand(const BufferInfo & bufferInfo, const QString & com QSize NickView::sizeHint() const { if(!model()) return QTreeView::sizeHint(); - + int columnSize = 0; for(int i = 0; i < model()->columnCount(); i++) { if(!isColumnHidden(i)) columnSize += sizeHintForColumn(i); } + return QSize(columnSize, 50); } diff --git a/version.inc b/version.inc index c9576770..1e0e8b0e 100644 --- a/version.inc +++ b/version.inc @@ -5,7 +5,7 @@ quasselVersion = "0.2.0-alpha1+"; quasselDate = "2008-02-27"; - quasselBuild = 591; + quasselBuild = 592; //! Minimum client build number the core needs clientBuildNeeded = 563; -- 2.20.1