kconfig/nconf.h
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Tue Aug 02 18:28:10 2011 +0200 (2011-08-02)
changeset 2590 b64cfb67944e
permissions -rw-r--r--
scripts/functions: svn retrieval first tries the mirror for tarballs

The svn download helper looks for the local tarballs dir to see if it
can find a pre-downloaded tarball, and if it does not find it, does
the actual fetch to upstream via svn.

In the process, it does not even try to get a tarball from the local
mirror, which can be useful if the mirror has been pre-populated
manually (or with a previously downloaded tree).

Fake a tarball get with the standard tarball-download helper, but
without specifying any upstream URL, which makes the helper directly
try the LAN mirror.

Of course, if no mirror is specified, no URL wil be available, and
the standard svn retrieval will kick in.

Reported-by: ANDY KENNEDY <ANDY.KENNEDY@adtran.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
     1 /*
     2  * Copyright (C) 2008 Nir Tzachar <nir.tzachar@gmail.com?
     3  * Released under the terms of the GNU GPL v2.0.
     4  *
     5  * Derived from menuconfig.
     6  *
     7  */
     8 
     9 #include <ctype.h>
    10 #include <errno.h>
    11 #include <fcntl.h>
    12 #include <limits.h>
    13 #include <stdarg.h>
    14 #include <stdlib.h>
    15 #include <string.h>
    16 #include <unistd.h>
    17 #include <locale.h>
    18 #include <curses.h>
    19 #include <menu.h>
    20 #include <panel.h>
    21 #include <form.h>
    22 
    23 #include <stdio.h>
    24 #include <time.h>
    25 #include <sys/time.h>
    26 
    27 #include "ncurses.h"
    28 
    29 #define max(a, b) ({\
    30 		typeof(a) _a = a;\
    31 		typeof(b) _b = b;\
    32 		_a > _b ? _a : _b; })
    33 
    34 #define min(a, b) ({\
    35 		typeof(a) _a = a;\
    36 		typeof(b) _b = b;\
    37 		_a < _b ? _a : _b; })
    38 
    39 typedef enum {
    40 	NORMAL = 1,
    41 	MAIN_HEADING,
    42 	MAIN_MENU_BOX,
    43 	MAIN_MENU_FORE,
    44 	MAIN_MENU_BACK,
    45 	MAIN_MENU_GREY,
    46 	MAIN_MENU_HEADING,
    47 	SCROLLWIN_TEXT,
    48 	SCROLLWIN_HEADING,
    49 	SCROLLWIN_BOX,
    50 	DIALOG_TEXT,
    51 	DIALOG_MENU_FORE,
    52 	DIALOG_MENU_BACK,
    53 	DIALOG_BOX,
    54 	INPUT_BOX,
    55 	INPUT_HEADING,
    56 	INPUT_TEXT,
    57 	INPUT_FIELD,
    58 	FUNCTION_TEXT,
    59 	FUNCTION_HIGHLIGHT,
    60 	ATTR_MAX
    61 } attributes_t;
    62 extern attributes_t attributes[];
    63 
    64 typedef enum {
    65 	F_HELP = 1,
    66 	F_SYMBOL = 2,
    67 	F_INSTS = 3,
    68 	F_CONF = 4,
    69 	F_BACK = 5,
    70 	F_SAVE = 6,
    71 	F_LOAD = 7,
    72 	F_SEARCH = 8,
    73 	F_EXIT = 9,
    74 } function_key;
    75 
    76 void set_colors(void);
    77 
    78 /* this changes the windows attributes !!! */
    79 void print_in_middle(WINDOW *win,
    80 		int starty,
    81 		int startx,
    82 		int width,
    83 		const char *string,
    84 		chtype color);
    85 int get_line_length(const char *line);
    86 int get_line_no(const char *text);
    87 const char *get_line(const char *text, int line_no);
    88 void fill_window(WINDOW *win, const char *text);
    89 int btn_dialog(WINDOW *main_window, const char *msg, int btn_num, ...);
    90 int dialog_inputbox(WINDOW *main_window,
    91 		const char *title, const char *prompt,
    92 		const char *init, char *result, int result_len);
    93 void refresh_all_windows(WINDOW *main_window);
    94 void show_scroll_win(WINDOW *main_window,
    95 		const char *title,
    96 		const char *text);