improvements to the default layout
authorMarcus Eggenberger <egs@quassel-irc.org>
Wed, 27 Feb 2008 16:20:34 +0000 (16:20 +0000)
committerMarcus Eggenberger <egs@quassel-irc.org>
Wed, 27 Feb 2008 16:20:34 +0000 (16:20 +0000)
src/qtui/chatwidget.cpp
src/qtui/chatwidget.h
src/qtui/mainwin.cpp
src/qtui/nicklistwidget.cpp
src/qtui/nicklistwidget.h
src/uisupport/bufferview.cpp
src/uisupport/nickview.cpp
version.inc

index 722f502..3a04383 100644 (file)
@@ -85,6 +85,10 @@ QSize ChatWidget::minimumSizeHint() const {
   return QSize(20, 20);
 }
 
   return QSize(20, 20);
 }
 
+QSize ChatWidget::sizeHint() const {
+  return QSize(400, 100);
+}
+
 // QSize ChatWidget::sizeHint() const {
 //   //qDebug() << size();
 //   return size();
 // QSize ChatWidget::sizeHint() const {
 //   //qDebug() << size();
 //   return size();
index 305af68..b8aa5a7 100644 (file)
@@ -48,7 +48,7 @@ class ChatWidget : public QAbstractScrollArea {
     void init(BufferId id);
 
     virtual QSize minimumSizeHint() const;
     void init(BufferId id);
 
     virtual QSize minimumSizeHint() const;
-  //    virtual QSize sizeHint() const;
+    virtual QSize sizeHint() const;
 
   public slots:
     void clear();
 
   public slots:
     void clear();
index e88a86d..d700b64 100644 (file)
@@ -70,7 +70,10 @@ MainWin::MainWin(QtUi *_gui, QWidget *parent)
 
 void MainWin::init() {
   QtUiSettings s;
 
 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)));
 
 
   Client::signalProxy()->attachSignal(this, SIGNAL(requestBacklog(BufferInfo, QVariant, QVariant)));
 
@@ -94,9 +97,9 @@ void MainWin::init() {
   setupMenus();
   setupViews();
   setupNickWidget();
   setupMenus();
   setupViews();
   setupNickWidget();
+  setupTopicWidget();
   setupChatMonitor();
   setupInputWidget();
   setupChatMonitor();
   setupInputWidget();
-  setupTopicWidget();
   setupSystray();
 
   
   setupSystray();
 
   
@@ -169,6 +172,7 @@ QDockWidget *MainWin::addBufferView(const QString &viewname, QAbstractItemModel
   dock->show();
 
   addDockWidget(Qt::LeftDockWidgetArea, dock);
   dock->show();
 
   addDockWidget(Qt::LeftDockWidgetArea, dock);
+
   ui.menuViews->addAction(dock->toggleViewAction());
 
   netViews.append(dock);
   ui.menuViews->addAction(dock->toggleViewAction());
 
   netViews.append(dock);
@@ -201,6 +205,7 @@ void MainWin::setupNickWidget() {
   nickDock->setWidget(nickListWidget);
 
   addDockWidget(Qt::RightDockWidgetArea, nickDock);
   nickDock->setWidget(nickListWidget);
 
   addDockWidget(Qt::RightDockWidgetArea, nickDock);
+
   ui.menuViews->addAction(nickDock->toggleViewAction());
 
   Client::bufferModel()->mapProperty(0, NetworkModel::BufferIdRole, nickListWidget, "currentBuffer");
   ui.menuViews->addAction(nickDock->toggleViewAction());
 
   Client::bufferModel()->mapProperty(0, NetworkModel::BufferIdRole, nickListWidget, "currentBuffer");
index 04e6e22..8219172 100644 (file)
@@ -75,3 +75,11 @@ void NickListWidget::removeBuffer(BufferId bufferId) {
   ui.stackedWidget->removeWidget(view);
   view->deleteLater();
 }
   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();
+}
index b21182d..a004f2a 100644 (file)
@@ -41,7 +41,10 @@ public slots:
   BufferId currentBuffer() const;
   void setCurrentBuffer(BufferId bufferId);
   void reset();
   BufferId currentBuffer() const;
   void setCurrentBuffer(BufferId bufferId);
   void reset();
-             
+
+protected:
+  virtual QSize sizeHint() const;
+
 private slots:
   void removeBuffer(BufferId bufferId);
   
 private slots:
   void removeBuffer(BufferId bufferId);
   
index 3043b83..d83f696 100644 (file)
@@ -136,9 +136,8 @@ void BufferView::dataChanged(const QModelIndex &topLeft, const QModelIndex &bott
       continue;
 
     bool isActive = networkIdx.data(NetworkModel::ItemActiveRole).toBool();
       continue;
 
     bool isActive = networkIdx.data(NetworkModel::ItemActiveRole).toBool();
-    if(isExpanded(networkIdx) != isActive) {
+    if(isExpanded(networkIdx) != isActive)
       setExpanded(networkIdx, isActive);
       setExpanded(networkIdx, isActive);
-    }
   }
 }
 
   }
 }
 
@@ -276,7 +275,10 @@ void BufferView::wheelEvent(QWheelEvent* event)
 QSize BufferView::sizeHint() const {
   if(!model())
     return QTreeView::sizeHint();
 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))
   int columnSize = 0;
   for(int i = 0; i < model()->columnCount(); i++) {
     if(!isColumnHidden(i))
index ba96c1e..7e30cb7 100644 (file)
@@ -146,11 +146,12 @@ void NickView::executeCommand(const BufferInfo & bufferInfo, const QString & com
 QSize NickView::sizeHint() const {
   if(!model())
     return QTreeView::sizeHint();
 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);
   }
   int columnSize = 0;
   for(int i = 0; i < model()->columnCount(); i++) {
     if(!isColumnHidden(i))
       columnSize += sizeHintForColumn(i);
   }
+
   return QSize(columnSize, 50);
 }
   return QSize(columnSize, 50);
 }
index c957677..1e0e8b0 100644 (file)
@@ -5,7 +5,7 @@
 
   quasselVersion = "0.2.0-alpha1+";
   quasselDate = "2008-02-27";
 
   quasselVersion = "0.2.0-alpha1+";
   quasselDate = "2008-02-27";
-  quasselBuild = 591;
+  quasselBuild = 592;
 
   //! Minimum client build number the core needs
   clientBuildNeeded = 563;
 
   //! Minimum client build number the core needs
   clientBuildNeeded = 563;