From 896be3c0f9d8de231da6f3ab840c0cc39d3510a4 Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 14 Sep 2013 15:22:45 +0200 Subject: Add Splitter in FilesystemWidget Add a Splitter between icons and the directory editbox. Save state on exit and restore it at startup. --- filesystemwidget.cpp | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) (limited to 'filesystemwidget.cpp') diff --git a/filesystemwidget.cpp b/filesystemwidget.cpp index 2eff69b..4a78889 100644 --- a/filesystemwidget.cpp +++ b/filesystemwidget.cpp @@ -79,9 +79,11 @@ FilesystemWidget::FilesystemWidget(QWidget *parent) : QWidget(parent), mClipboar mPicViewer = SmGlobals::instance()->pictureViewer(); QWidget *fileWidget = new QWidget; + mIconDirSplitter = new QSplitter(this); mToolBar = new QToolBar; mToolBar->setIconSize(QSize(16,16)); - QHBoxLayout *directoryEdit = new QHBoxLayout; + + QHBoxLayout *directoryEditL = new QHBoxLayout; QLabel *dirLabel = new QLabel(tr("&Directory")); mDirEdit = new QLineEdit; QCompleter *completer = new QCompleter(this); @@ -89,11 +91,15 @@ FilesystemWidget::FilesystemWidget(QWidget *parent) : QWidget(parent), mClipboar completer->setCompletionMode(QCompleter::PopupCompletion); mDirEdit->setCompleter(completer); dirLabel->setBuddy(mDirEdit); - directoryEdit->addWidget(mToolBar); - directoryEdit->addWidget(dirLabel); - directoryEdit->addWidget(mDirEdit); + directoryEditL->addWidget(dirLabel); + directoryEditL->addWidget(mDirEdit); + QWidget *dirEditW = new QWidget; + dirEditW->setLayout(directoryEditL); + mIconDirSplitter->addWidget(mToolBar); + mIconDirSplitter->addWidget(dirEditW); + QVBoxLayout *fwLayout = new QVBoxLayout; - fwLayout->addLayout(directoryEdit); + fwLayout->addWidget(mIconDirSplitter); fwLayout->addWidget(mFileView); fileWidget->setLayout(fwLayout); @@ -350,6 +356,7 @@ void FilesystemWidget::readSettings(){ bool expensiveOps = s.value("ui/expensiveops", true).toBool(); mFileModel->watcher()->setExpensiveOps(expensiveOps); QPoint picViewerPos = s.value("windows/picviewer").toPoint(); + mIconDirSplitter->restoreState(s.value("ui/fsdirsplitter").toByteArray()); mPicViewer->move(picViewerPos); mFileView->readConfig(); } @@ -364,6 +371,7 @@ void FilesystemWidget::writeSettings(){ s.setValue("paths/selecteddir", dir); } s.setValue("windows/picviewer", mPicViewer->pos()); + s.setValue("ui/fsdirsplitter", mIconDirSplitter->saveState()); mFileView->writeConfig(); } -- cgit v1.2.3-70-g09d2