[Knode-devel] kdepim/knode

Daniel Molkentin molkentin at kde.org
Sat Apr 24 23:51:59 CEST 2004


CVS commit by danimo: 

Quick, quick, get this application an incremential article quick search!
(aka make it consistant with KMail)


  M +35 -2     knmainwidget.cpp   1.29
  M +3 -0      knmainwidget.h   1.13


--- kdepim/knode/knmainwidget.cpp  #1.28:1.29
@@ -16,4 +16,6 @@
 
 #include <qhbox.h>
+#include <qlayout.h>
+#include <ktoolbar.h>
 
 #include <kinputdialog.h>
@@ -58,4 +60,6 @@ using KRecentAddress::RecentAddresses;
 #include <kcmdlineargs.h>
 
+#include <klistviewsearchline_pimcopy.h>
+
 KNGlobals knGlobals;
 
@@ -161,9 +165,34 @@ KNMainWidget::KNMainWidget( KXMLGUIClien
   header = new KDockWidgetHeader(h_drDock, "headerDockHeader");
   h_drDock->setHeader(header);
-  h_drView=new KNListView(h_drDock, "hdrView");
+  QWidget *dummy = new QWidget(h_drDock);
+  QVBoxLayout *vlay = new QVBoxLayout(dummy);
+  h_drView=new KNListView(dummy, "hdrView");
   header->setDragPanel(new KNDockWidgetHeaderDrag(h_drView, header, h_drDock));
-  h_drDock->setWidget(h_drView);
+  h_drDock->setWidget(dummy);
   h_drDock->manualDock(a_rtDock, KDockWidget::DockTop, 5000);
 
+  KToolBar *tb = new KToolBar(dummy, "search toolbar");
+  KAction *resetQuickSearch = new KAction( i18n( "Reset Quick Search" ),
+                                           QApplication::reverseLayout()
+                                           ? "clear_left"
+                                           : "locationbar_erase",
+                                           0, this,
+                                           SLOT( slotClearHeaderSearch() ),
+                                           actionCollection(),
+                                           "reset_quicksearch" );
+  resetQuickSearch->plug( tb );
+  resetQuickSearch->setWhatsThis( i18n( "<b>Reset Quick Search<b><br>"
+                                        "Resets the quick search so that "
+                                        "all messages are shown again." ) );
+
+  QLabel *lbl = new QLabel(i18n("&Search:"), tb, "kde toolbar widget");
+  s_earchLineEdit = new KPIM::KListViewSearchLine(tb, h_drView, "KListViewSearchLine");
+  tb->setStretchableWidget(s_earchLineEdit);
+  lbl->setBuddy(s_earchLineEdit);
+
+  vlay->addWidget(tb);
+  vlay->addWidget(h_drView);
+  
+
   h_drView->setAcceptDrops(false);
   h_drView->setDragEnabled(true);
@@ -1084,4 +1113,8 @@ void KNMainWidget::closeCurrentThread()
 }
 
+void KNMainWidget::slotClearHeaderSearch()
+{
+ s_earchLineEdit->clear();
+}
 
 void KNMainWidget::slotArticleSelected(QListViewItem *i)

--- kdepim/knode/knmainwidget.h  #1.12:1.13
@@ -219,4 +219,6 @@ protected slots:
   void slotHdrViewSortingChanged(int i);
 
+  void slotClearHeaderSearch();
+  
   void slotReparented();
 
@@ -408,4 +410,5 @@ private:
   KStatusBarLabel *s_tatusFilter;
   KXMLGUIClient *m_GUIClient;
+  QLineEdit * s_earchLineEdit;
 };
 




More information about the Knode-devel mailing list