/usr/share/doc/libcdk5-doc/examples/subwindow_ex.c is in libcdk5-doc 5.0.20161210-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | /* $Id: subwindow_ex.c,v 1.13 2016/12/04 16:20:33 tom Exp $ */
#include <cdk_test.h>
#ifdef HAVE_XCURSES
char *XCursesProgramName = "subwindow_ex";
#endif
/*
* This demo displays the ability to put widgets within a curses subwindow.
*/
int main (int argc, char **argv)
{
CDKSCREEN *cdkscreen;
CDKSCROLL *dowList;
CDKLABEL *title;
WINDOW *subWindow;
const char *dow[] =
{
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday",
"Saturday",
"Sunday"
};
const char *mesg[5];
int pick;
CDK_PARAMS params;
CDKparseParams (argc, argv, ¶ms, "s:" CDK_CLI_PARAMS);
/* Start curses. */
(void) initCDKScreen (NULL);
curs_set (0);
/* Create a basic window. */
subWindow = newwin (LINES - 5, COLS - 10, 2, 5);
/* Start Cdk. */
cdkscreen = initCDKScreen (subWindow);
/* Box our window. */
box (subWindow, ACS_VLINE, ACS_HLINE);
wrefresh (subWindow);
/* Create a basic scrolling list inside the window. */
dowList = newCDKScroll (cdkscreen,
CDKparamValue (¶ms, 'X', CENTER),
CDKparamValue (¶ms, 'Y', CENTER),
CDKparsePosition (CDKparamString2 (¶ms,
's',
"RIGHT")),
CDKparamValue (¶ms, 'H', 10),
CDKparamValue (¶ms, 'W', 15),
"<C></U>Pick a Day",
(CDK_CSTRING2) dow, 7,
NONUMBERS,
A_REVERSE,
CDKparamValue (¶ms, 'N', TRUE),
CDKparamValue (¶ms, 'S', FALSE));
/* Put a title within the window. */
mesg[0] = "<C><#HL(30)>";
mesg[1] = "<C>This is a Cdk scrolling list";
mesg[2] = "<C>inside a curses window.";
mesg[3] = "<C><#HL(30)>";
title = newCDKLabel (cdkscreen, CENTER, 0,
(CDK_CSTRING2) mesg, 4,
FALSE, FALSE);
/* Refresh the screen. */
refreshCDKScreen (cdkscreen);
/* Let the user play. */
pick = activateCDKScroll (dowList, 0);
/* Clean up. */
destroyCDKScroll (dowList);
destroyCDKLabel (title);
eraseCursesWindow (subWindow);
destroyCDKScreen (cdkscreen);
endCDK ();
/* Tell them what they picked. */
printf ("You picked %s\n", dow[pick]);
ExitProgram (EXIT_SUCCESS);
}
|