]> git.ipfire.org Git - thirdparty/newt.git/commitdiff
bump version - added NEWT_FLAG_PASSWORD flag to put asterix in entry when typing r0-50-14
authormsf <msf>
Wed, 5 Jul 2000 20:45:19 +0000 (20:45 +0000)
committermsf <msf>
Wed, 5 Jul 2000 20:45:19 +0000 (20:45 +0000)
configure.in
entry.c
newt.h
newt.spec
snack.py
snackmodule.c
test.c

index 8ab471e82be9444b138e93bdd1ba127ae546d30d..305990dea7c52b6bd107a274771c1ead900ec2d5 100644 (file)
@@ -2,7 +2,7 @@ dnl Process this file with autoconf to produce a configure script.
 
 AC_INIT(newt_pr.h)
 AC_CONFIG_HEADER(config.h)
-VERSION=0.50.13
+VERSION=0.50.14
 SONAME=0.50
 AC_SUBST(VERSION)
 AC_SUBST(SONAME)
diff --git a/entry.c b/entry.c
index 6ac48de8000669451f3067aef01f9717259d9063..154edba713220a82771030532c1710480702af66 100644 (file)
--- a/entry.c
+++ b/entry.c
@@ -138,6 +138,17 @@ static void entryDraw(newtComponent co) {
     }
 
     chptr = en->buf + en->firstChar;
+
+    if (en->flags & NEWT_FLAG_PASSWORD) {
+       char *tmpptr, *p;
+
+       tmpptr = alloca(strlen(chptr+2));
+       strcpy(tmpptr, chptr);
+       for (p = tmpptr; *p; p++)
+           *p = '*';
+       chptr = tmpptr;
+    }                  
+
     len = strlen(chptr);
 
     if (len <= co->width) {
diff --git a/newt.h b/newt.h
index 1f16287ac3bbab58f3e6435aa1a2b57a26edf69f..58ad90a5c88ffd04384f191357f0c04a926b1a9a 100644 (file)
--- a/newt.h
+++ b/newt.h
@@ -72,7 +72,7 @@ enum newtFlagsSense { NEWT_FLAGS_SET, NEWT_FLAGS_RESET, NEWT_FLAGS_TOGGLE };
 #define NEWT_FLAG_MULTIPLE      (1 << 8)
 #define NEWT_FLAG_SELECTED     (1 << 9)
 #define NEWT_FLAG_CHECKBOX     (1 << 10)
-
+#define NEWT_FLAG_PASSWORD      (1 << 11)  /* draw '*'  of chars in entrybox */
 #define NEWT_FD_READ           (1 << 0)
 #define NEWT_FD_WRITE          (1 << 1)
 
index 94424599910a71f42cf01e111eb9a1dae97c4d79..d86bf2abbf8341e4cc9544a0e50849d3fef5e5ca 100644 (file)
--- a/newt.spec
+++ b/newt.spec
@@ -1,6 +1,6 @@
 Summary: A development library for text mode user interfaces.
 Name: newt
-%define version 0.50.13
+%define version 0.50.14
 Version: %{version}
 Release: 1
 Copyright: LGPL
@@ -57,6 +57,9 @@ rm -rf $RPM_BUILD_ROOT
 %postun -p /sbin/ldconfig
 
 %changelog
+* Wed Jul 05 2000 Michael Fulbright <msf@redhat.com>
+- added NEWT_FLAG_PASSWORD for entering passwords and having asterix echo'd
+
 * Fri Jun 16 2000 Matt Wilson <msw@redhat.com>
 - build for new release
 
index 4781b6e23d3ca6d255f7495bccfcd68202580136..aed70e76211a716754e590c9964f52db02da5830 100644 (file)
--- a/snack.py
+++ b/snack.py
@@ -137,9 +137,9 @@ class Entry(Widget):
     def setFlags (self, flag, sense):
         return self.w.entrySetFlags(flag, sense)
 
-    def __init__(self, width, text = "", hidden = 0, scroll = 1, 
+    def __init__(self, width, text = "", hidden = 0, password = 0, scroll = 1, 
                 returnExit = 0):
-       self.w = _snack.entry(width, text, hidden, scroll, returnExit)
+       self.w = _snack.entry(width, text, hidden, password, scroll, returnExit)
 
 
 # Form uses hotkeys
index cdf5d0441bd6e1b4dee668a85c35f9064ee07226..b0c32d12a8bf1c31d7088c8fc39243786c6ed367 100644 (file)
@@ -674,14 +674,15 @@ static snackWidget * entryWidget(PyObject * s, PyObject * args) {
     snackWidget * widget;
     int width;
     char * initial;
-    int isHidden, isScrolled, returnExit;
+    int isHidden, isScrolled, returnExit, isPassword;
 
-    if (!PyArg_ParseTuple(args, "isiii", &width, &initial,
-                         &isHidden, &isScrolled, &returnExit)) return NULL;
+    if (!PyArg_ParseTuple(args, "isiiii", &width, &initial,
+                         &isHidden, &isPassword, &isScrolled, &returnExit)) return NULL;
 
     widget = snackWidgetNew ();
     widget->co = newtEntry(-1, -1, initial, width, (char **) &widget->apointer, 
                           (isHidden ? NEWT_FLAG_HIDDEN : 0) |
+                          (isPassword ? NEWT_FLAG_PASSWORD : 0) |
                           (returnExit ? NEWT_FLAG_RETURNEXIT : 0) |
                           (isScrolled ? NEWT_FLAG_SCROLL : 0));
 
diff --git a/test.c b/test.c
index 16758e416ec13df0db15840fb0d15e86e38b2936..04ccc039d38300bd5f63cb406a802f69409e4f20 100644 (file)
--- a/test.c
+++ b/test.c
@@ -83,7 +83,8 @@ int main(void) {
     l3 = newtLabel(3, 8, "Hidden:");
     e1 = newtEntry(12, 6, "", 20, &scaleVal, 0);
     e2 = newtEntry(12, 7, "Default", 20, &enr2, NEWT_FLAG_SCROLL);
-    e3 = newtEntry(12, 8, NULL, 20, &enr3, NEWT_FLAG_HIDDEN);
+/*    e3 = newtEntry(12, 8, NULL, 20, &enr3, NEWT_FLAG_HIDDEN); */
+    e3 = newtEntry(12, 8, NULL, 20, &enr3, NEWT_FLAG_PASSWORD);
 
     cbis[0].state = &results[0];
     cbis[0].en = e1;