]> git.sesse.net Git - vlc/blobdiff - lxdialog/util.c
Preferences: fix some memleaks and fix horrible video-filter bug. :D
[vlc] / lxdialog / util.c
index 9d181aef470dc937e7ad7c3b1cd51a0031c99744..b3a7af9d2ddaa1ea9057c2dbf958b155007e8f99 100644 (file)
@@ -29,40 +29,40 @@ const char *backtitle = NULL;
 
 const char *dialog_result;
 
-/*
+/* 
  * Attribute values, default is for mono display
  */
 chtype attributes[] =
 {
-    A_NORMAL,            /* screen_attr */
-    A_NORMAL,            /* shadow_attr */
-    A_NORMAL,            /* dialog_attr */
-    A_BOLD,            /* title_attr */
-    A_NORMAL,            /* border_attr */
-    A_REVERSE,            /* button_active_attr */
-    A_DIM,            /* button_inactive_attr */
-    A_REVERSE,            /* button_key_active_attr */
-    A_BOLD,            /* button_key_inactive_attr */
-    A_REVERSE,            /* button_label_active_attr */
-    A_NORMAL,            /* button_label_inactive_attr */
-    A_NORMAL,            /* inputbox_attr */
-    A_NORMAL,            /* inputbox_border_attr */
-    A_NORMAL,            /* searchbox_attr */
-    A_BOLD,            /* searchbox_title_attr */
-    A_NORMAL,            /* searchbox_border_attr */
-    A_BOLD,            /* position_indicator_attr */
-    A_NORMAL,            /* menubox_attr */
-    A_NORMAL,            /* menubox_border_attr */
-    A_NORMAL,            /* item_attr */
-    A_REVERSE,            /* item_selected_attr */
-    A_BOLD,            /* tag_attr */
-    A_REVERSE,            /* tag_selected_attr */
-    A_BOLD,            /* tag_key_attr */
-    A_REVERSE,            /* tag_key_selected_attr */
-    A_BOLD,            /* check_attr */
-    A_REVERSE,            /* check_selected_attr */
-    A_BOLD,            /* uarrow_attr */
-    A_BOLD            /* darrow_attr */
+    A_NORMAL,                  /* screen_attr */
+    A_NORMAL,                  /* shadow_attr */
+    A_NORMAL,                  /* dialog_attr */
+    A_BOLD,                    /* title_attr */
+    A_NORMAL,                  /* border_attr */
+    A_REVERSE,                 /* button_active_attr */
+    A_DIM,                     /* button_inactive_attr */
+    A_REVERSE,                 /* button_key_active_attr */
+    A_BOLD,                    /* button_key_inactive_attr */
+    A_REVERSE,                 /* button_label_active_attr */
+    A_NORMAL,                  /* button_label_inactive_attr */
+    A_NORMAL,                  /* inputbox_attr */
+    A_NORMAL,                  /* inputbox_border_attr */
+    A_NORMAL,                  /* searchbox_attr */
+    A_BOLD,                    /* searchbox_title_attr */
+    A_NORMAL,                  /* searchbox_border_attr */
+    A_BOLD,                    /* position_indicator_attr */
+    A_NORMAL,                  /* menubox_attr */
+    A_NORMAL,                  /* menubox_border_attr */
+    A_NORMAL,                  /* item_attr */
+    A_REVERSE,                 /* item_selected_attr */
+    A_BOLD,                    /* tag_attr */
+    A_REVERSE,                 /* tag_selected_attr */
+    A_BOLD,                    /* tag_key_attr */
+    A_REVERSE,                 /* tag_key_selected_attr */
+    A_BOLD,                    /* check_attr */
+    A_REVERSE,                 /* check_selected_attr */
+    A_BOLD,                    /* uarrow_attr */
+    A_BOLD                     /* darrow_attr */
 };
 
 
@@ -103,7 +103,7 @@ int color_table[][3] =
     {CHECK_SELECTED_FG, CHECK_SELECTED_BG, CHECK_SELECTED_HL},
     {UARROW_FG, UARROW_BG, UARROW_HL},
     {DARROW_FG, DARROW_BG, DARROW_HL},
-};                /* color_table */
+};                             /* color_table */
 
 /*
  * Set window to attribute 'attr'
@@ -115,9 +115,9 @@ attr_clear (WINDOW * win, int height, int width, chtype attr)
 
     wattrset (win, attr);
     for (i = 0; i < height; i++) {
-    wmove (win, i, 0);
-    for (j = 0; j < width; j++)
-        waddch (win, ' ');
+       wmove (win, i, 0);
+       for (j = 0; j < width; j++)
+           waddch (win, ' ');
     }
     touchwin (win);
 }
@@ -144,14 +144,14 @@ void dialog_clear (void)
 void
 init_dialog (void)
 {
-    initscr ();            /* Init curses */
+    initscr ();                        /* Init curses */
     keypad (stdscr, TRUE);
     cbreak ();
     noecho ();
 
 
-    if (use_colors)    /* Set up colors */
-    color_setup ();
+    if (use_colors)    /* Set up colors */
+       color_setup ();
 
 
     dialog_clear ();
@@ -165,16 +165,16 @@ color_setup (void)
 {
     int i;
 
-    if (has_colors ()) {    /* Terminal supports color? */
-    start_color ();
+    if (has_colors ()) {       /* Terminal supports color? */
+       start_color ();
 
-    /* Initialize color pairs */
-    for (i = 0; i < ATTRIBUTE_COUNT; i++)
-        init_pair (i + 1, color_table[i][0], color_table[i][1]);
+       /* Initialize color pairs */
+       for (i = 0; i < ATTRIBUTE_COUNT; i++)
+           init_pair (i + 1, color_table[i][0], color_table[i][1]);
 
-    /* Setup color attributes */
-    for (i = 0; i < ATTRIBUTE_COUNT; i++)
-        attributes[i] = C_ATTR (color_table[i][2], i + 1);
+       /* Setup color attributes */
+       for (i = 0; i < ATTRIBUTE_COUNT; i++)
+           attributes[i] = C_ATTR (color_table[i][2], i + 1);
     }
 }
 
@@ -204,50 +204,50 @@ print_autowrap (WINDOW * win, const char *prompt, int width, int y, int x)
     strcpy (tempstr, prompt);
 
     prompt_len = strlen(tempstr);
-    
+       
     /*
      * Remove newlines
      */
     for(i=0; i<prompt_len; i++) {
-    if(tempstr[i] == '\n') tempstr[i] = ' ';
+       if(tempstr[i] == '\n') tempstr[i] = ' ';
     }
 
-    if (prompt_len <= width - x * 2) {    /* If prompt is short */
-    wmove (win, y, (width - prompt_len) / 2);
-    waddstr (win, tempstr);
+    if (prompt_len <= width - x * 2) { /* If prompt is short */
+       wmove (win, y, (width - prompt_len) / 2);
+       waddstr (win, tempstr);
     } else {
-    cur_x = x;
-    cur_y = y;
-    newl = 1;
-    word = tempstr;
-    while (word && *word) {
-        sp = index(word, ' ');
-        if (sp)
-            *sp++ = 0;
-
-        /* Wrap to next line if either the word does not fit,
-           or it is the first word of a new sentence, and it is
-           short, and the next word does not fit. */
-        room = width - cur_x;
-        wlen = strlen(word);
-        if (wlen > room ||
-           (newl && wlen < 4 && sp && wlen+1+strlen(sp) > room
-             && (!(sp2 = index(sp, ' ')) || wlen+1+(sp2-sp) > room))) {
-        cur_y++;
-        cur_x = x;
-        }
-        wmove (win, cur_y, cur_x);
-        waddstr (win, word);
-        getyx (win, cur_y, cur_x);
-        cur_x++;
-        if (sp && *sp == ' ') {
-            cur_x++;    /* double space */
-        while (*++sp == ' ');
-        newl = 1;
-        } else
-            newl = 0;
-        word = sp;
-    }
+       cur_x = x;
+       cur_y = y;
+       newl = 1;
+       word = tempstr;
+       while (word && *word) {
+           sp = index(word, ' ');
+           if (sp)
+               *sp++ = 0;
+
+           /* Wrap to next line if either the word does not fit,
+              or it is the first word of a new sentence, and it is
+              short, and the next word does not fit. */
+           room = width - cur_x;
+           wlen = strlen(word);
+           if (wlen > room ||
+              (newl && wlen < 4 && sp && wlen+1+strlen(sp) > room
+                    && (!(sp2 = index(sp, ' ')) || wlen+1+(sp2-sp) > room))) {
+               cur_y++;
+               cur_x = x;
+           }
+           wmove (win, cur_y, cur_x);
+           waddstr (win, word);
+           getyx (win, cur_y, cur_x);
+           cur_x++;
+           if (sp && *sp == ' ') {
+               cur_x++;        /* double space */
+               while (*++sp == ' ');
+               newl = 1;
+           } else
+               newl = 0;
+           word = sp;
+       }
     }
 }
 
@@ -265,14 +265,14 @@ print_button (WINDOW * win, const char *label, int y, int x, int selected)
     temp = strspn (label, " ");
     label += temp;
     wattrset (win, selected ? button_label_active_attr
-          : button_label_inactive_attr);
+             : button_label_inactive_attr);
     for (i = 0; i < temp; i++)
-    waddch (win, ' ');
+       waddch (win, ' ');
     wattrset (win, selected ? button_key_active_attr
-          : button_key_inactive_attr);
+             : button_key_inactive_attr);
     waddch (win, label[0]);
     wattrset (win, selected ? button_label_active_attr
-          : button_label_inactive_attr);
+             : button_label_inactive_attr);
     waddstr (win, (char *)label + 1);
     wattrset (win, selected ? button_active_attr : button_inactive_attr);
     waddstr (win, ">");
@@ -284,32 +284,32 @@ print_button (WINDOW * win, const char *label, int y, int x, int selected)
  */
 void
 draw_box (WINDOW * win, int y, int x, int height, int width,
-      chtype box, chtype border)
+         chtype box, chtype border)
 {
     int i, j;
 
     wattrset (win, 0);
     for (i = 0; i < height; i++) {
-    wmove (win, y + i, x);
-    for (j = 0; j < width; j++)
-        if (!i && !j)
-        waddch (win, border | ACS_ULCORNER);
-        else if (i == height - 1 && !j)
-        waddch (win, border | ACS_LLCORNER);
-        else if (!i && j == width - 1)
-        waddch (win, box | ACS_URCORNER);
-        else if (i == height - 1 && j == width - 1)
-        waddch (win, box | ACS_LRCORNER);
-        else if (!i)
-        waddch (win, border | ACS_HLINE);
-        else if (i == height - 1)
-        waddch (win, box | ACS_HLINE);
-        else if (!j)
-        waddch (win, border | ACS_VLINE);
-        else if (j == width - 1)
-        waddch (win, box | ACS_VLINE);
-        else
-        waddch (win, box | ' ');
+       wmove (win, y + i, x);
+       for (j = 0; j < width; j++)
+           if (!i && !j)
+               waddch (win, border | ACS_ULCORNER);
+           else if (i == height - 1 && !j)
+               waddch (win, border | ACS_LLCORNER);
+           else if (!i && j == width - 1)
+               waddch (win, box | ACS_URCORNER);
+           else if (i == height - 1 && j == width - 1)
+               waddch (win, box | ACS_LRCORNER);
+           else if (!i)
+               waddch (win, border | ACS_HLINE);
+           else if (i == height - 1)
+               waddch (win, box | ACS_HLINE);
+           else if (!j)
+               waddch (win, border | ACS_VLINE);
+           else if (j == width - 1)
+               waddch (win, box | ACS_VLINE);
+           else
+               waddch (win, box | ' ');
     }
 }
 
@@ -322,17 +322,17 @@ draw_shadow (WINDOW * win, int y, int x, int height, int width)
 {
     int i;
 
-    if (has_colors ()) {    /* Whether terminal supports color? */
-    wattrset (win, shadow_attr);
-    wmove (win, y + height, x + 2);
-    for (i = 0; i < width; i++)
-        waddch (win, winch (win) & A_CHARTEXT);
-    for (i = y + 1; i < y + height + 1; i++) {
-        wmove (win, i, x + width);
-        waddch (win, winch (win) & A_CHARTEXT);
-        waddch (win, winch (win) & A_CHARTEXT);
-    }
-    wnoutrefresh (win);
+    if (has_colors ()) {       /* Whether terminal supports color? */
+       wattrset (win, shadow_attr);
+       wmove (win, y + height, x + 2);
+       for (i = 0; i < width; i++)
+           waddch (win, winch (win) & A_CHARTEXT);
+       for (i = y + 1; i < y + height + 1; i++) {
+           wmove (win, i, x + width);
+           waddch (win, winch (win) & A_CHARTEXT);
+           waddch (win, winch (win) & A_CHARTEXT);
+       }
+       wnoutrefresh (win);
     }
 }
 
@@ -342,18 +342,18 @@ draw_shadow (WINDOW * win, int y, int x, int height, int width)
 int
 first_alpha(const char *string, const char *exempt)
 {
-    int i, in_paren=0, c;
+       int i, in_paren=0, c;
 
-    for (i = 0; i < strlen(string); i++) {
-        c = tolower(string[i]);
+       for (i = 0; i < strlen(string); i++) {
+               c = tolower(string[i]);
 
-        if (strchr("<[(", c)) ++in_paren;
-        if (strchr(">])", c)) --in_paren;
+               if (strchr("<[(", c)) ++in_paren;
+               if (strchr(">])", c)) --in_paren;
 
-        if ((! in_paren) && isalpha(c) &&
-             strchr(exempt, c) == 0)
-            return i;
-    }
+               if ((! in_paren) && isalpha(c) && 
+                    strchr(exempt, c) == 0)
+                       return i;
+       }
 
-    return 0;
+       return 0;
 }