patches/newt-00-generic-fixes.diff
author jurikm
Sun, 12 Feb 2012 14:04:10 +0000
changeset 8245 383896da4129
parent 1073 563acf208975
permissions -rw-r--r--
SFEsauerbraten.spec: add IPS package name
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1073
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
     1
diff -r 513389748d46 Makefile.in
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
     2
--- a/Makefile.in	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
     3
+++ b/Makefile.in	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
     4
@@ -1,5 +1,5 @@ LIBS = -lslang -lm -ldl #-lefence
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
     5
-LIBS = -lslang -lm -ldl #-lefence
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
     6
-SHLIBS = -lslang -lm -dl -lc  
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
     7
+LIBS = -lslang -ldl 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
     8
+SHLIBS = -lslang -ldl
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
     9
 LIBTCL = -ltcl8.4
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    10
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    11
 GPM_SUPPORT=@gpm_support@
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    12
@@ -10,7 +10,7 @@ CVSTAG = r$(subst .,-,$(VERSION))
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    13
 CVSTAG = r$(subst .,-,$(VERSION))
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    14
 SONAME = @SONAME@
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    15
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    16
-PYTHONVERS = python2.4
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    17
+PYTHONVERS = $(shell pyversions --supported)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    18
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    19
 WHIPTCLSO=whiptcl.so
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    20
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    21
@@ -71,15 +71,15 @@ _snackmodule.so:   snackmodule.c $(LIBNE
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    22
 	    if [ ! -f "$$ver/_snackmodule.so" -o $(LIBNEWTSH) -nt "$$ver/_snackmodule.so" ]; then \
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    23
 	    	mkdir -p $$ver ;\
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    24
 	        $(CC) $(CFLAGS) -I/usr/include/$$ver -fPIC -c -o $$ver/snackmodule.o snackmodule.c ;\
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    25
-		$(CC) --shared $(SHCFLAGS) -o $$ver/_snackmodule.so $$ver/snackmodule.o -L .  -lnewt -lslang ;\
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    26
+		$(CC) --shared $(SHCFLAGS) -o $$ver/_snackmodule.so $$ver/snackmodule.o -L .  -lnewt  ;\
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    27
 	    fi ; \
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    28
 	done
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    29
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    30
 whiptail: $(NDIALOGOBJS) $(LIBNEWTSH)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    31
-	$(CC) -g -o whiptail $(NDIALOGOBJS) -L . -lnewt $(LIBS) -lpopt
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    32
+	$(CC) -g -o whiptail $(NDIALOGOBJS) -L . -lnewt -lpopt
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    33
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    34
 whiptcl.so: $(WHIPTCLOBJS) $(LIBNEWTSH)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    35
-	$(CC) -shared $(SHCFLAGS) -o whiptcl.so $(WHIPTCLOBJS) -L . -lnewt  $(LIBTCL) -lslang -lpopt -lm
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    36
+	$(CC) -shared $(SHCFLAGS) -o whiptcl.so $(WHIPTCLOBJS) -L . -lnewt  $(LIBTCL) -lpopt
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    37
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    38
 # Ensure dialogboxes is compiled -fPIC
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    39
 dialogboxes.o: dialogboxes.c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    40
diff -r 513389748d46 button.c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    41
--- a/button.c	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    42
+++ b/button.c	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    43
@@ -112,7 +112,9 @@ static void buttonDrawIt(newtComponent c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    44
 	SLsmg_write_char('<');
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    45
 	SLsmg_write_string(bu->text);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    46
 	SLsmg_write_char('>');
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    47
-    } else {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    48
+        /* put cursor at beginning of text for better accessibility */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    49
+        newtGotorc(co->top+ pushed, co->left + 1 + pushed + 1);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    50
+} else {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    51
 	if (pushed) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    52
 	    SLsmg_set_color(NEWT_COLORSET_BUTTON);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    53
 	    newtDrawBox(co->left + 1, co->top + 1, co->width - 1, 3, 0);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    54
@@ -142,6 +144,8 @@ static void buttonDrawText(newtComponent
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    55
     SLsmg_write_char(' ');
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    56
     SLsmg_write_string(bu->text);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    57
     SLsmg_write_char(' ');
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    58
+    /* put cursor at beginning of text for better accessibility */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    59
+    newtGotorc(co->top + 1 + pushed, co->left + 1 + pushed + 1);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    60
 }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    61
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    62
 static struct eventResult buttonEvent(newtComponent co,
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    63
diff -r 513389748d46 checkboxtree.c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    64
--- a/checkboxtree.c	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    65
+++ b/checkboxtree.c	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    66
@@ -333,6 +333,8 @@ newtComponent newtCheckboxTreeMulti(int 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    67
     ct = malloc(sizeof(struct CheckboxTree));
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    68
     co->callback = NULL;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    69
     co->data = ct;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    70
+    co->left = left;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    71
+    co->top = top;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    72
     co->ops = &ctOps;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    73
     co->takesFocus = 1;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    74
     co->height = height;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    75
@@ -536,6 +538,18 @@ static void ctDestroy(newtComponent co) 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    76
     free(co);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    77
 }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    78
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    79
+static void ctEnsureLimits( struct CheckboxTree *ct ) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    80
+    struct items **listEnd = ct->flatList + ct->flatCount - 1;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    81
+    if (ct->firstItem < ct->flatList)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    82
+        ct->firstItem = ct->flatList;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    83
+    if (ct->currItem < ct->flatList)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    84
+        ct->currItem = ct->flatList;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    85
+    if (ct->firstItem > listEnd) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    86
+        ct->firstItem = listEnd;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    87
+        ct->currItem = listEnd;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    88
+    }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    89
+}
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    90
+
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    91
 struct eventResult ctEvent(newtComponent co, struct event ev) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    92
     struct CheckboxTree * ct = co->data;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    93
     struct eventResult er;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    94
@@ -647,6 +661,7 @@ struct eventResult ctEvent(newtComponent
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    95
 		ct->currItem -= co->height;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    96
 		ct->firstItem -= co->height;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    97
 	    }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    98
+	    ctEnsureLimits( ct );
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
    99
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   100
 	    ctDraw(co);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   101
 	    if(co->callback) co->callback(co, co->callbackData);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   102
@@ -663,6 +678,7 @@ struct eventResult ctEvent(newtComponent
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   103
 	    	ct->currItem += co->height;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   104
 		ct->firstItem += co->height;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   105
 	    }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   106
+	    ctEnsureLimits( ct );
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   107
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   108
 	    ctDraw(co);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   109
 	    if(co->callback) co->callback(co, co->callbackData);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   110
diff -r 513389748d46 configure
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   111
--- a/configure	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   112
+++ b/configure	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   113
@@ -1308,7 +1308,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   114
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   115
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   116
 PACKAGE=newt
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   117
-VERSION=0.52.1
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   118
+VERSION=0.52.2
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   119
 SONAME=0.52
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   120
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   121
 cat >>confdefs.h <<_ACEOF
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   122
diff -r 513389748d46 configure.in
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   123
--- a/configure.in	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   124
+++ b/configure.in	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   125
@@ -4,7 +4,7 @@ AC_CONFIG_HEADER(config.h)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   126
 AC_CONFIG_HEADER(config.h)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   127
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   128
 PACKAGE=newt
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   129
-VERSION=0.52.1
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   130
+VERSION=0.52.2
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   131
 SONAME=0.52
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   132
 AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [NEWT Version String])
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   133
 AC_SUBST(PACKAGE)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   134
diff -r 513389748d46 dialogboxes.c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   135
--- a/dialogboxes.c	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   136
+++ b/dialogboxes.c	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   137
@@ -140,7 +140,7 @@ int gauge(const char * text, int height,
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   138
 	}
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   139
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   140
 	val = strtoul(buf, &end, 10);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   141
-	if (!*end) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   142
+	if (!*end && val >= 0) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   143
 	    newtScaleSet(scale, val);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   144
 	    newtDrawForm(form);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   145
 	    newtRefresh();
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   146
diff -r 513389748d46 newt.c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   147
--- a/newt.c	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   148
+++ b/newt.c	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   149
@@ -53,21 +53,21 @@ const struct newtColors newtDefaultColor
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   150
 	"red", "lightgray",			/* title fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   151
 	"lightgray", "red",			/* button fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   152
 	"red", "lightgray",			/* active button fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   153
-	"yellow", "blue",			/* checkbox fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   154
-	"blue", "brown",			/* active checkbox fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   155
-	"yellow", "blue",			/* entry box fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   156
+	"lightgray", "blue",			/* checkbox fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   157
+	"lightgray", "red",			/* active checkbox fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   158
+	"lightgray", "blue",			/* entry box fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   159
 	"blue", "lightgray",			/* label fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   160
 	"black", "lightgray",			/* listbox fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   161
-	"yellow", "blue",			/* active listbox fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   162
+	"lightgray", "blue",			/* active listbox fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   163
 	"black", "lightgray",			/* textbox fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   164
-	"lightgray", "black",			/* active textbox fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   165
+	"lightgray", "red",			/* active textbox fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   166
 	"white", "blue",			/* help line */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   167
-	"yellow", "blue",			/* root text */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   168
+	"lightgray", "blue",			/* root text */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   169
 	"blue",					/* scale full */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   170
 	"red",					/* scale empty */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   171
 	"blue", "lightgray",			/* disabled entry fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   172
 	"black", "lightgray",			/* compact button fg, bg */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   173
-	"yellow", "red",			/* active & sel listbox */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   174
+	"lightgray", "red",			/* active & sel listbox */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   175
 	"black", "brown"			/* selected listbox */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   176
 };
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   177
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   178
@@ -290,6 +290,7 @@ int newtInit(void) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   179
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   180
     SLtt_get_terminfo();
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   181
     SLtt_get_screen_size();
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   182
+    SLutf8_enable(-1); /* init. utf8 according to locale */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   183
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   184
     MonoValue = getenv(MonoEnv);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   185
     if ( MonoValue == NULL ) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   186
diff -r 513389748d46 scale.c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   187
--- a/scale.c	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   188
+++ b/scale.c	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   189
@@ -48,6 +48,10 @@ void newtScaleSet(newtComponent co, unsi
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   190
     struct scale * sc = co->data;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   191
     int newPercentage;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   192
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   193
+    /* this will promote fullValue to unsigned for the compare */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   194
+    if (amount > sc->fullValue)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   195
+      amount = sc->fullValue;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   196
+
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   197
     sc->charsSet = (amount * co->width) / sc->fullValue;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   198
     newPercentage = (amount * 100) / sc->fullValue;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   199
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   200
@@ -82,4 +86,6 @@ static void scaleDraw(newtComponent co) 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   201
         else
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   202
             SLsmg_write_char(' ');
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   203
     }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   204
+    /* put cursor at beginning of text for better accessibility */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   205
+    newtGotorc(co->top, co->left + xlabel);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   206
 }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   207
diff -r 513389748d46 scrollbar.c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   208
--- a/scrollbar.c	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   209
+++ b/scrollbar.c	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   210
@@ -47,7 +47,7 @@ newtComponent newtVerticalScrollbar(int 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   211
     sb = malloc(sizeof(*sb));
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   212
     co->data = sb;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   213
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   214
-    if (!strcmp(getenv("TERM"), "linux") && height >= 2) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   215
+    if (height >= 2) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   216
 	sb->arrows = 1;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   217
 	sb->curr = 1;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   218
     } else {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   219
@@ -100,7 +100,7 @@ static void sbDraw(newtComponent co) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   220
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   221
 static void sbDrawThumb(newtComponent co, int isOn) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   222
     struct scrollbar * sb = co->data;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   223
-    SLtt_Char_Type ch = isOn ? '#' : SLSMG_CKBRD_CHAR;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   224
+    SLtt_Char_Type ch = isOn ? SLSMG_BLOCK_CHAR : SLSMG_CKBRD_CHAR;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   225
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   226
     if (!co->isMapped) return;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   227
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   228
diff -r 513389748d46 snack.py
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   229
--- a/snack.py	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   230
+++ b/snack.py	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   231
@@ -789,6 +789,7 @@ def EntryWindow(screen, title, text, pro
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   232
     for n in prompts:
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   233
         if (type(n) == types.TupleType):
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   234
             (n, e) = n
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   235
+	    e = Entry(entryWidth, e)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   236
         else:
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   237
             e = Entry(entryWidth)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   238
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   239
diff -r 513389748d46 snackmodule.c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   240
--- a/snackmodule.c	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   241
+++ b/snackmodule.c	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   242
@@ -265,7 +265,7 @@ static snackWidget * snackWidgetNew (voi
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   243
 static snackWidget * snackWidgetNew (void) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   244
     snackWidget * widget;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   245
      
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   246
-    widget = PyObject_NEW(snackWidget, &snackWidgetType);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   247
+    widget = PyObject_New(snackWidget, &snackWidgetType);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   248
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   249
     widget->scs.cb = NULL;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   250
     widget->scs.data = NULL;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   251
@@ -750,7 +750,7 @@ static snackForm * formCreate(PyObject *
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   252
     if (help == Py_None)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   253
 	help = NULL;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   254
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   255
-    form = PyObject_NEW(snackForm, &snackFormType);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   256
+    form = PyObject_New(snackForm, &snackFormType);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   257
     form->fo = newtForm(NULL, help, 0);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   258
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   259
     return form;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   260
@@ -762,7 +762,7 @@ static snackGrid * gridCreate(PyObject *
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   261
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   262
     if (!PyArg_ParseTuple(args, "ii", &cols, &rows)) return NULL;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   263
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   264
-    grid = PyObject_NEW(snackGrid, &snackGridType);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   265
+    grid = PyObject_New(snackGrid, &snackGridType);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   266
     grid->grid = newtCreateGrid(cols, rows);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   267
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   268
     return grid;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   269
@@ -925,7 +925,7 @@ static void widgetDestructor(PyObject * 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   270
     Py_XDECREF (s->scs.cb);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   271
     Py_XDECREF (s->scs.data);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   272
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   273
-    PyMem_DEL(o);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   274
+    PyObject_Del(o);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   275
 }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   276
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   277
 static PyObject * widgetAddCallback(snackWidget * s, PyObject * args) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   278
diff -r 513389748d46 textbox.c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   279
--- a/textbox.c	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   280
+++ b/textbox.c	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   281
@@ -354,6 +354,8 @@ static void textboxDraw(newtComponent c)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   282
 	newtGotorc(c->top + i, c->left);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   283
 	SLsmg_write_string(tb->lines[i + tb->topLine]);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   284
     }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   285
+    /* put cursor at beginning of text for better accessibility */
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   286
+    newtGotorc(c->top, c->left);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   287
 }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   288
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   289
 static struct eventResult textboxEvent(newtComponent co, 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   290
diff -r 513389748d46 whiptail.c
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   291
--- a/whiptail.c	Thu May 01 16:50:21 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   292
+++ b/whiptail.c	Thu May 01 16:55:15 2008 +0530
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   293
@@ -47,17 +47,18 @@ static void usage(int err) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   294
 	       "\t--radiolist <text> <height> <width> <listheight> [tag item stautus]...\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   295
 	       "\t--gauge <text> <height> <width> <percent>\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   296
 	       "Options: (depend on box-option)\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   297
-	       "\t--clear				clear screen on exit\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   298
-	       "\t-defaultno			default no button\n"	
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   299
-	       "\t--default-item <string>		set default string\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   300
+	       "\t--clear			clear screen on exit\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   301
+	       "\t--defaultno			default no button\n"	
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   302
+	       "\t--default-item <string>	set default string\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   303
 	       "\t--fb				use full buttons\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   304
 	       "\t--nocancel			no cancel button\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   305
 	       "\t--noitem			display tags only\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   306
-	       "\t--separate-output <fd>		output one line at a time\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   307
+	       "\t--separate-output <fd>	output one line at a time\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   308
 	       "\t--output-fd <fd>		output to fd, not stdout\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   309
-	       "\t--title <title>			display title\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   310
-	       "\t--backtitle <backtitle>		display backtitle\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   311
-	       "\t--scrolltext			force verical scrollbars\n\n"));
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   312
+	       "\t--title <title>		display title\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   313
+	       "\t--backtitle <backtitle>	display backtitle\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   314
+	       "\t--scrolltext			force verical scrollbars\n"
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   315
+	       "\t--topleft			put window in top-left corner\n\n"));
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   316
     exit(err ? DLG_ERROR : 0 );
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   317
 }
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   318
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   319
@@ -339,6 +340,7 @@ int main(int argc, const char ** argv) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   320
     int separateOutput = 0;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   321
     int fullButtons = 0;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   322
     int outputfd = 2;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   323
+    int topLeft = 0;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   324
     FILE *output = stderr;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   325
     const char * result;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   326
     const char ** selections, ** next;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   327
@@ -367,6 +369,7 @@ int main(int argc, const char ** argv) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   328
 	    { "separate-output", '\0', 0, &separateOutput, 0 },
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   329
 	    { "title", '\0', POPT_ARG_STRING, &title, 0 },
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   330
 	    { "textbox", '\0', 0, 0, OPT_TEXTBOX },
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   331
+	    { "topleft", '\0', 0, &topLeft, 0 },
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   332
 	    { "yesno", '\0', 0, 0, OPT_YESNO },
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   333
 	    { "passwordbox", '\0', 0, 0, OPT_PASSWORDBOX },
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   334
 	    { "output-fd", '\0',  POPT_ARG_INT, &outputfd, 0 },
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   335
@@ -500,8 +503,8 @@ int main(int argc, const char ** argv) {
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   336
     width -= 2;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   337
     height -= 2;
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   338
 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   339
-    newtOpenWindow((SLtt_Screen_Cols - width) / 2, 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   340
-                   (SLtt_Screen_Rows - height) / 2, width, height, title);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   341
+    newtOpenWindow(topLeft ? 1 : (SLtt_Screen_Cols - width) / 2, 
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   342
+                   topLeft ? 1 : (SLtt_Screen_Rows - height) / 2, width, height, title);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   343
     if (backtitle)
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   344
 	newtDrawRootText(0, 0, backtitle);
563acf208975 2008-05-01 Ananth Shrinivas <[email protected]>
ananthshrinivas
parents:
diff changeset
   345