aboutsummaryrefslogtreecommitdiff
path: root/contrib/bsddialog/examples_library/mixedlist.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/bsddialog/examples_library/mixedlist.c')
-rw-r--r--contrib/bsddialog/examples_library/mixedlist.c60
1 files changed, 34 insertions, 26 deletions
diff --git a/contrib/bsddialog/examples_library/mixedlist.c b/contrib/bsddialog/examples_library/mixedlist.c
index 2a4e9102164c..6d286996931b 100644
--- a/contrib/bsddialog/examples_library/mixedlist.c
+++ b/contrib/bsddialog/examples_library/mixedlist.c
@@ -8,16 +8,18 @@
* <http://creativecommons.org/publicdomain/zero/1.0/>.
*/
-#include <stdio.h>
-#include <string.h>
-
#include <bsddialog.h>
+#include <stdio.h>
int main()
{
- int i, j, output;
+ int output;
+ unsigned int i, j;
struct bsddialog_conf conf;
struct bsddialog_menuitem item;
+ struct bsddialog_menuitem sep1[1] = {
+ { "", true, 0, "Checklist", "(desc)", "" }
+ };
struct bsddialog_menuitem check[5] = {
{ "+", true, 0, "Name 1", "Desc 1", "Bottom Desc 1" },
{ "" , false, 0, "Name 2", "Desc 2", "Bottom Desc 2" },
@@ -25,8 +27,9 @@ int main()
{ "" , false, 0, "Name 4", "Desc 4", "Bottom Desc 4" },
{ "+", true, 0, "Name 5", "Desc 5", "Bottom Desc 5" }
};
- struct bsddialog_menuitem sep[1] = {
- { "", true, 0, "Radiolist", "(desc)", "" }
+ struct bsddialog_menuitem sep2[2] = {
+ { "", true, 0, "Radiolist", "(desc)", "" },
+ { "", true, 0, "Subtitle", "(desc)", "" }
};
struct bsddialog_menuitem radio[5] = {
{ "", true, 0, "Name 1", "Desc 1", "Bottom Desc 1" },
@@ -35,36 +38,41 @@ int main()
{ "+", false, 0, "Name 4", "Desc 4", "Bottom Desc 4" },
{ "", false, 0, "Name 5", "Desc 5", "Bottom Desc 5" }
};
- struct bsddialog_menugroup group[3] = {
- { BSDDIALOG_CHECKLIST, 5, check },
- { BSDDIALOG_SEPARATOR, 1, sep },
- { BSDDIALOG_RADIOLIST, 5, radio }
+ struct bsddialog_menugroup group[4] = {
+ { BSDDIALOG_SEPARATOR, 1, sep1, 0 },
+ { BSDDIALOG_CHECKLIST, 5, check, 0 },
+ { BSDDIALOG_SEPARATOR, 2, sep2, 0 },
+ { BSDDIALOG_RADIOLIST, 5, radio, 0 }
};
+ if (bsddialog_init() == BSDDIALOG_ERROR) {
+ printf("Error: %s\n", bsddialog_geterror());
+ return (1);
+ }
bsddialog_initconf(&conf);
- conf.title = "mixedmenu";
-
- if (bsddialog_init() < 0)
- return -1;
-
- output = bsddialog_mixedlist(&conf, "dialog4ports", 20, 30, 11, 3, group,
- NULL,NULL);
-
+ conf.title = "mixedlist";
+ output = bsddialog_mixedlist(&conf, "Example", 20, 0, 13, 4, group,
+ NULL, NULL);
bsddialog_end();
+ if (output == BSDDIALOG_ERROR) {
+ printf("Error: %s\n", bsddialog_geterror());
+ return (1);
+ }
printf("Mixedlist:\n");
- for (i=0; i<3; i++) {
- for (j=0; j<group[i].nitems; j++) {
+ for (i = 0; i < 4; i++) {
+ for (j = 0; j < group[i].nitems; j++) {
item = group[i].items[j];
if (group[i].type == BSDDIALOG_SEPARATOR)
printf("----- %s -----\n", item.name);
else if (group[i].type == BSDDIALOG_RADIOLIST)
- printf(" (%c) %s\n", item.on ? '*' : ' ', item.name);
- else /* BSDDIALOG_PORTCHECKLIST */
- printf(" [%c] %s\n", item.on ? 'X' : ' ', item.name);
+ printf(" (%c) %s\n",
+ item.on ? '*' : ' ', item.name);
+ else /* BSDDIALOG_CHECKLIST */
+ printf(" [%c] %s\n",
+ item.on ? 'X' : ' ', item.name);
}
}
-
-
- return output;
+
+ return (0);
}