Lua improvements:
[apps/madmutt.git] / lib-ui / curs_main.c
index 6e20d66..600932a 100644 (file)
@@ -14,6 +14,7 @@
 
 #include <lib-ui/sidebar.h>
 #include <lib-mx/mx.h>
+#include <lib-crypt/crypt.h>
 
 #include <pop/pop.h>
 
 #include "menu.h"
 
 #include "mutt.h"
+#include "pattern.h"
 #include "alias.h"
 #include "sort.h"
 #include "recvattach.h"
 #include "buffy.h"
 #include "thread.h"
-#include "xterm.h"
 
 #include <imap/imap_private.h>
 
-#include <lib-crypt/crypt.h>
-
 #ifdef USE_NNTP
-#include "nntp/nntp.h"
+#include <nntp/nntp.h>
 #endif
 
 #ifdef USE_SASL
@@ -98,12 +97,14 @@ extern size_t UngetCount;
 
 void index_make_entry (char *s, ssize_t l, struct menu_t * menu, int num)
 {
-  format_flag flag =
-    M_FORMAT_MAKEPRINT | M_FORMAT_ARROWCURSOR | M_FORMAT_INDEX;
+  format_flag flag = M_FORMAT_MAKEPRINT | M_FORMAT_INDEX;
   int edgemsgno, reverse = Sort & SORT_REVERSE;
   HEADER *h = Context->hdrs[Context->v2r[num]];
   THREAD *tmp;
 
+  if (option(OPTARROWCURSOR))
+      flag |= M_FORMAT_ARROWCURSOR;
+
   if ((Sort & SORT_MASK) == SORT_THREADS && h->tree) {
     flag |= M_FORMAT_TREE;      /* display the thread tree */
     if (h->display_subject)
@@ -387,7 +388,7 @@ struct mapping_t IndexNewsHelp[] = {
  */
 int mutt_index_menu (void)
 {
-  char buf[LONG_STRING], helpstr[SHORT_STRING];
+  char buf[LONG_STRING], helpstr[STRING];
   int flags;
   int op = OP_NULL;
   int done = 0;                 /* controls when to exit the "event" loop */
@@ -478,7 +479,7 @@ int mutt_index_menu (void)
           sidebar_draw ();
           mutt_message (_("New mail in this mailbox."));
 
-          if (option (OPTBEEPNEW))
+          if (ml_core.beep_new)
             beep ();
         }
         else if (check == M_FLAGS)
@@ -505,7 +506,7 @@ int mutt_index_menu (void)
         menu->redraw |= REDRAW_SIDEBAR;
       }
       if (do_buffy_notify) {
-        if (buffy_notify () && option (OPTBEEPNEW))
+        if (buffy_notify () && ml_core.beep_new)
           beep ();
       }
       else
@@ -549,10 +550,11 @@ int mutt_index_menu (void)
         sidebar_set_buffystats (Context);
         menu->redraw &= ~REDRAW_STATUS;
         if (option (OPTXTERMSETTITLES)) {
-          menu_status_line (buf, sizeof (buf), menu, NONULL (XtermTitle));
-          mutt_xterm_set_title (buf);
-          menu_status_line (buf, sizeof (buf), menu, NONULL (XtermIcon));
-          mutt_xterm_set_icon (buf);
+          menu_status_line(buf, sizeof(buf), menu, NONULL(XtermTitle));
+          printf("\033]2;%s\007", buf);
+          menu_status_line(buf, sizeof(buf), menu, NONULL(XtermIcon));
+          printf("\033]1;%s\007", buf);
+          fflush(stdout);
         }
       }
 
@@ -925,15 +927,14 @@ int mutt_index_menu (void)
       if (op == OP_TOGGLE_READ) {
         char buffer[LONG_STRING];
 
-        if (!Context->pattern
-            || strncmp (Context->pattern, "!~R!~D~s", 8) != 0) {
+        if (m_strncmp (Context->pattern, "!~R!~D~s", 8) != 0) {
           snprintf (buffer, sizeof (buffer), "!~R!~D~s%s",
                     Context->pattern ? Context->pattern : ".*");
           set_option (OPTHIDEREAD);
         }
         else {
           m_strcpy(buf, sizeof(buf), Context->pattern + 8);
-          if (!*buf || strncmp (buf, ".*", 2) == 0)
+          if (m_strncmp (buf, ".*", 2) == 0)
             snprintf (buf, sizeof (buf), "~A");
           unset_option (OPTHIDEREAD);
         }
@@ -973,7 +974,7 @@ int mutt_index_menu (void)
         break;
       }
 
-      if (query_quadoption (OPT_QUIT, _("Quit Madmutt?")) == M_YES) {
+      if (query_quadoption2(ml_core.quit, _("Quit Madmutt?")) == M_YES) {
         int check;
 
         oldcount = Context ? Context->msgcount : 0;
@@ -1301,7 +1302,7 @@ int mutt_index_menu (void)
       }
 
       if ((menu->menu == MENU_MAIN)
-          && (query_quadoption (OPT_QUIT,
+          && (query_quadoption2(ml_core.quit,
                                 _("Exit Madmutt without saving?")) == M_YES))
       {
         if (Context) {
@@ -2317,9 +2318,6 @@ int mutt_index_menu (void)
     if (menu->menu == MENU_PAGER) {
       menu->menu = MENU_MAIN;
       menu->redraw = REDRAW_FULL;
-#if 0
-      set_option (OPTWEED);     /* turn header weeding back on. */
-#endif
     }
 
     if (done)