[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kmail-devel
Subject:    New action: move to next unread message or folder
From:       David Smith <dsmih () algonet ! se>
Date:       2003-07-16 19:09:37
[Download RAW message or body]

I just started to use KMail and this is a feature I was missing. An action 
that sort of combines "Next unread message" and "Next unread text", that is, 
goes to the next unread message but continues to the next folder.

I called the action "Next unread message or folder" with default key SHIFT++. 
What do you think?

/David

["kmmainwidget.diff" (text/x-diff)]

Index: kmmainwidget.cpp
===================================================================
RCS file: /home/kde/kdepim/kmail/kmmainwidget.cpp,v
retrieving revision 1.63
diff -u -r1.63 kmmainwidget.cpp
--- kmmainwidget.cpp	11 Jul 2003 12:18:25 -0000	1.63
+++ kmmainwidget.cpp	16 Jul 2003 19:01:22 -0000
@@ -2328,6 +2328,12 @@
                          Key_Plus, this, SLOT(slotNextUnreadMessage()),
                          actionCollection(), "go_next_unread_message" );
 
+  new KAction( KGuiItem( i18n("Next Unread Message Or Folder"),
+                         QApplication::reverseLayout() ? "previous" : "next",
+                         i18n("Go to the next unread message or folder") ),
+                         SHIFT+Key_Plus, this, SLOT(slotNextUnreadMessageOrFolder()),
+                         actionCollection(), "go_next_unread_message_or_folder" );
+
   /* ### needs better support from folders:
   new KAction( KGuiItem( i18n("Next &Important Message"), QString::null,
                          i18n("Go to the next important message") ),
@@ -2465,6 +2471,16 @@
         mMsgView->slotJumpDown();
         return;
     }
+    slotNextUnreadMessageOrFolder();
+}
+
+void KMMainWidget::slotNextUnreadFolder() {
+  if ( !mFolderTree ) return;
+  mFolderTree->nextUnreadFolder();
+}
+
+void KMMainWidget::slotNextUnreadMessageOrFolder()
+{
     int i = mHeaders->findUnread(true, -1, false, false);
     if ( i < 0 ) // let's try from start, what gives?
         i = mHeaders->findUnread(true, 0, false, true);
@@ -2474,11 +2490,6 @@
          return;
     }
     mFolderTree->nextUnreadFolder( true );
-}
-
-void KMMainWidget::slotNextUnreadFolder() {
-  if ( !mFolderTree ) return;
-  mFolderTree->nextUnreadFolder();
 }
 
 void KMMainWidget::slotPrevUnreadFolder() {
Index: kmmainwidget.h
===================================================================
RCS file: /home/kde/kdepim/kmail/kmmainwidget.h,v
retrieving revision 1.20
diff -u -r1.20 kmmainwidget.h
--- kmmainwidget.h	5 Jul 2003 17:05:16 -0000	1.20
+++ kmmainwidget.h	16 Jul 2003 19:01:23 -0000
@@ -264,6 +264,7 @@
   void slotNextUnreadMessage();
   void slotNextImportantMessage();
   void slotNextUnreadFolder();
+  void slotNextUnreadMessageOrFolder();
   void slotPrevMessage();
   void slotPrevUnreadMessage();
   void slotPrevImportantMessage();


_______________________________________________
KMail Developers mailing list
kmail@mail.kde.org
http://mail.kde.org/mailman/listinfo/kmail


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic