[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: playground/pim/qma/src
From: Tom Albers <tomalbers () kde ! nl>
Date: 2006-10-23 18:20:23
Message-ID: 1161627623.006347.24731.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 598490 by toma:
- Save all the sizes of all the splitters and all the listviews out there
- Implement poor mans autoexpand folder with childeren on hover when dragging \
message, wonder if I missed something in the api.... Almost time to prep a tarball.
M +29 -9 composer.cpp
M +1 -0 composer.h
M +36 -1 qmamailbox.cpp
M +14 -1 qmamailbox.h
M +7 -2 qmawidget.cpp
--- trunk/playground/pim/qma/src/composer.cpp #598489:598490
@@ -80,7 +80,7 @@
QHBox* box = new QHBox(this);
// ------------- Split it in two columns ---------------//
- m_sidebar = new Sidebar(box, "leftComposerBar", Sidebar::Left, true);
+ m_sidebar = new Sidebar(box, "SideBarSettings", Sidebar::Left, true);
m_hsplitter = new QSplitter(box);
m_sidebar->setSplitter(m_hsplitter);
@@ -93,7 +93,7 @@
SLOT(slotAddAddressFromAddressBook(QListViewItem*,const QPoint&,int)));
m_filebrowser = new FileBrowser(0,"FileView");
- m_filebrowser->readConfig(kapp->config(), "FileView");
+ m_filebrowser->readConfig(kapp->config(), "FileViewSettings");
connect(m_filebrowser->dirOperator(),
SIGNAL(fileSelected(const KFileItem*)),
this,SLOT(slotAddFile(const KFileItem*)));
@@ -107,10 +107,10 @@
m_vsplitter->setOrientation(Qt::Vertical);
// and the top part is in two parts....
- QSplitter* leftsplitter = new QSplitter(m_vsplitter);
- leftsplitter->setOrientation(Qt::Horizontal);
+ m_vhsplitter = new QSplitter(m_vsplitter);
+ m_vhsplitter->setOrientation(Qt::Horizontal);
- QWidget* widg = new QWidget(leftsplitter);
+ QWidget* widg = new QWidget(m_vhsplitter);
QGridLayout* grid = new QGridLayout(widg,2,2,5,5);
m_edit = new KLineEdit( widg, "AddressCompletion" );
@@ -144,17 +144,22 @@
m_lv = new KListView(widg);
m_lv->addColumn(i18n("Address"));
m_lv->addColumn(i18n("to"));
+ m_lv->setColumnAlignment(1,Qt::AlignHCenter);
m_lv->addColumn(i18n("cc"));
+ m_lv->setColumnAlignment(2,Qt::AlignHCenter);
m_lv->addColumn(i18n("bcc"));
+ m_lv->setColumnAlignment(3,Qt::AlignHCenter);
m_lv->addColumn(i18n("del"));
+ m_lv->setColumnAlignment(4,Qt::AlignHCenter);
m_lv->setSorting(500, false); // no sort by default, but do when clicked..
connect(m_lv, SIGNAL(clicked(QListViewItem*, const QPoint&, int)),
SLOT(slotEditAddress(QListViewItem*, const QPoint&, int)));
- m_attachlv = new KListView(leftsplitter);
+ m_attachlv = new KListView(m_vhsplitter);
m_attachlv->hide();
m_attachlv->addColumn(i18n("File"));
m_attachlv->addColumn(i18n("del"));
+ m_lv->setColumnAlignment(1,Qt::AlignHCenter);
m_attachlv->setSorting(500, false); // no sort by default, but do when clicked..
connect(m_attachlv, SIGNAL(doubleClicked(QListViewItem*, const QPoint&, int)),
SLOT(slotShowFile(QListViewItem*, const QPoint&, int)));
@@ -194,7 +199,7 @@
setAutoSaveSettings("Composer", true);
KConfig *config = kapp->config();
- config->setGroup("Composer");
+ config->setGroup("ComposerSplitterSize");
QValueList<int> defaultsize1 = config->readIntListEntry("hsplitter");
if (!defaultsize1.count())
@@ -211,19 +216,34 @@
defaultsize2.append(400);
}
+ QValueList<int> defaultsize3 = config->readIntListEntry("vhsplitter");
+ if (!defaultsize3.count())
+ {
+ defaultsize3.append(275);
+ defaultsize3.append(1);
+ defaultsize3.append(125);
+ }
+
m_hsplitter->setSizes(defaultsize1);
m_vsplitter->setSizes(defaultsize2);
+ m_vhsplitter->setSizes(defaultsize3);
+
+ m_lv->restoreLayout(config,"ComposerAddressListSize");
+ m_attachlv->restoreLayout(config,"ComposerAttachmentListSize");
m_edit->setFocus();
}
Composer::~Composer()
{
- m_filebrowser->writeConfig(kapp->config(), "FileView");
+ m_filebrowser->writeConfig(kapp->config(), "FileViewSettings");
KConfig *config = kapp->config();
- config->setGroup("Composer");
+ config->setGroup("ComposerSplitterSize");
config->writeEntry("hsplitter", m_hsplitter->sizes());
config->writeEntry("vsplitter", m_vsplitter->sizes());
+ config->writeEntry("vhsplitter", m_vhsplitter->sizes());
+ m_lv->saveLayout(config,"ComposerAddressListSize");
+ m_attachlv->saveLayout(config,"ComposerAttachmentListSize");
config->sync();
}
--- trunk/playground/pim/qma/src/composer.h #598489:598490
@@ -131,6 +131,7 @@
Sidebar* m_sidebar;
QSplitter* m_hsplitter;
QSplitter* m_vsplitter;
+ QSplitter* m_vhsplitter;
KLineEdit* m_subject;
QTextEdit* m_text;
Socket* m_smtp;
--- trunk/playground/pim/qma/src/qmamailbox.cpp #598489:598490
@@ -17,8 +17,9 @@
*/
#include <qpainter.h>
-
+#include <qcursor.h>
#include <qdragobject.h>
+#include <qtimer.h>
#include <klistview.h>
#include <kdebug.h>
@@ -31,6 +32,8 @@
setAcceptDrops(true);
setDropVisualizer(false);
setDropHighlighter(true);
+ m_drop = new QTimer(this);
+ connect(m_drop, SIGNAL(timeout()), this, SLOT(slotOpen()));
}
bool QMAMailBoxList::acceptDrag(QDropEvent *event) const
@@ -38,6 +41,36 @@
return QTextDrag::canDecode( event );
}
+void QMAMailBoxList::contentsDragEnterEvent(QDragEnterEvent *e)
+{
+ m_drop->start(1400);
+ KListView::contentsDragEnterEvent(e);
+}
+
+void QMAMailBoxList::contentsDragLeaveEvent(QDragLeaveEvent *e)
+{
+ m_drop->stop();
+ KListView::contentsDragLeaveEvent(e);
+}
+
+void QMAMailBoxList::contentsDropEvent(QDropEvent *e)
+{
+ m_drop->stop();
+ KListView::contentsDropEvent(e);
+}
+
+void QMAMailBoxList::slotOpen()
+{
+ QPoint pos = viewport()->mapFromGlobal( QCursor::pos() );
+
+ QListViewItem* lv = itemAt(pos);
+ if (lv)
+ {
+ kdDebug() << "AutoOpen: " << lv->text(0) << endl;
+ lv->setOpen(true);
+ }
+}
+
//------------------------------------------------------------------
QMAMailBox::QMAMailBox( QMAMailBox* parent, const QString& visualName,
const QString& fullName, const bool mailCheck)
@@ -107,3 +140,5 @@
.compare( i->key( col, ascending).lower() );
}
+
+#include "qmamailbox.moc"
--- trunk/playground/pim/qma/src/qmamailbox.h #598489:598490
@@ -25,10 +25,23 @@
class QMAMessage;
class QMAMailBoxList : public KListView
-{
+{
+ Q_OBJECT
+
public:
QMAMailBoxList( QWidget* );
bool acceptDrag(QDropEvent *event) const;
+
+ protected:
+ void contentsDragEnterEvent(QDragEnterEvent *e);
+ void contentsDragLeaveEvent(QDragLeaveEvent *e);
+ void contentsDropEvent(QDropEvent *e);
+
+ private:
+ QTimer* m_drop;
+
+ private slots:
+ void slotOpen();
};
class QMAMailBox : public KListViewItem
--- trunk/playground/pim/qma/src/qmawidget.cpp #598489:598490
@@ -193,7 +193,7 @@
this, SLOT(slotUrlSelected(const KURL&, const KParts::URLArgs&)));
- kapp->config()->setGroup("MainWindow");
+ kapp->config()->setGroup("MainWindowSplitterSize");
QValueList<int> defaultsize1 = config->readIntListEntry("hsplitter");
if (!defaultsize1.count())
{
@@ -211,6 +211,9 @@
d->first->setSizes(defaultsize1);
d->second->setSizes(defaultsize2);
+ d->headerList->restoreLayout(config,"MainWindowHeaderListSize");
+ d->mailboxList->restoreLayout(config,"MainWindowMailboxListSize");
+
KStdAction::quit(this, SLOT(slotQuit()), actionCollection(), "app_exit");
KStdAction::preferences(this, SLOT(slotSetup()), actionCollection());
new KAction(i18n("Get mailbox list"), 0, this, SLOT(slotGetMailBoxList()),
@@ -298,9 +301,11 @@
QMAWidget::~QMAWidget()
{
- kapp->config()->setGroup("MainWindow");
+ kapp->config()->setGroup("MainWindowSplitterSize");
kapp->config()->writeEntry("vsplitter", d->first->sizes());
kapp->config()->writeEntry("hsplitter", d->second->sizes());
+ d->headerList->saveLayout(kapp->config(),"MainWindowHeaderListSize");
+ d->mailboxList->saveLayout(kapp->config(),"MainWindowMailboxListSize");
kapp->config()->sync();
delete d->db;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic