143 lines
5.5 KiB
C
143 lines
5.5 KiB
C
|
/* $Id: raiseCDKObject_ex.c,v 1.12 2016/12/04 15:22:16 tom Exp $ */
|
||
|
|
||
|
#include <cdk_test.h>
|
||
|
|
||
|
#ifdef HAVE_XCURSES
|
||
|
char *XCursesProgramName = "raiseCDKObject_ex";
|
||
|
#endif
|
||
|
|
||
|
#define MY_LABEL(p) ((chtype)ObjOf(p)->screenIndex | 0x30 | A_UNDERLINE | A_BOLD)
|
||
|
|
||
|
int main (int argc, char **argv)
|
||
|
{
|
||
|
char ch;
|
||
|
|
||
|
const char *mesg[1];
|
||
|
const char *mesg1[10];
|
||
|
const char *mesg2[10];
|
||
|
const char *mesg3[10];
|
||
|
const char *mesg4[10];
|
||
|
|
||
|
CDKSCREEN *cdkscreen;
|
||
|
CDKLABEL *label1, *label2, *label3, *label4, *instruct;
|
||
|
|
||
|
CDK_PARAMS params;
|
||
|
|
||
|
CDKparseParams (argc, argv, ¶ms, CDK_MIN_PARAMS);
|
||
|
|
||
|
cdkscreen = initCDKScreen (NULL);
|
||
|
|
||
|
mesg1[0] = "label1 label1 label1 label1 label1 label1 label1";
|
||
|
mesg1[1] = "label1 label1 label1 label1 label1 label1 label1";
|
||
|
mesg1[2] = "label1 label1 label1 label1 label1 label1 label1";
|
||
|
mesg1[3] = "label1 label1 label1 label1 label1 label1 label1";
|
||
|
mesg1[4] = "label1 label1 label1 label1 label1 label1 label1";
|
||
|
mesg1[5] = "label1 label1 label1 label1 label1 label1 label1";
|
||
|
mesg1[6] = "label1 label1 label1 label1 label1 label1 label1";
|
||
|
mesg1[7] = "label1 label1 label1 label1 label1 label1 label1";
|
||
|
mesg1[8] = "label1 label1 label1 label1 label1 label1 label1";
|
||
|
mesg1[9] = "label1 label1 label1 label1 label1 label1 label1";
|
||
|
label1 = newCDKLabel (cdkscreen, 10, 4, (CDK_CSTRING2)mesg1, 10, TRUE, FALSE);
|
||
|
setCDKLabelULChar (label1, '1' | A_BOLD);
|
||
|
|
||
|
mesg2[0] = "label2 label2 label2 label2 label2 label2 label2";
|
||
|
mesg2[1] = "label2 label2 label2 label2 label2 label2 label2";
|
||
|
mesg2[2] = "label2 label2 label2 label2 label2 label2 label2";
|
||
|
mesg2[3] = "label2 label2 label2 label2 label2 label2 label2";
|
||
|
mesg2[4] = "label2 label2 label2 label2 label2 label2 label2";
|
||
|
mesg2[5] = "label2 label2 label2 label2 label2 label2 label2";
|
||
|
mesg2[6] = "label2 label2 label2 label2 label2 label2 label2";
|
||
|
mesg2[7] = "label2 label2 label2 label2 label2 label2 label2";
|
||
|
mesg2[8] = "label2 label2 label2 label2 label2 label2 label2";
|
||
|
mesg2[9] = "label2 label2 label2 label2 label2 label2 label2";
|
||
|
label2 = newCDKLabel (cdkscreen, 8, 8, (CDK_CSTRING2)mesg2, 10, TRUE, FALSE);
|
||
|
setCDKLabelULChar (label2, '2' | A_BOLD);
|
||
|
|
||
|
mesg3[0] = "label3 label3 label3 label3 label3 label3 label3";
|
||
|
mesg3[1] = "label3 label3 label3 label3 label3 label3 label3";
|
||
|
mesg3[2] = "label3 label3 label3 label3 label3 label3 label3";
|
||
|
mesg3[3] = "label3 label3 label3 label3 label3 label3 label3";
|
||
|
mesg3[4] = "label3 label3 label3 label3 label3 label3 label3";
|
||
|
mesg3[5] = "label3 label3 label3 label3 label3 label3 label3";
|
||
|
mesg3[6] = "label3 label3 label3 label3 label3 label3 label3";
|
||
|
mesg3[7] = "label3 label3 label3 label3 label3 label3 label3";
|
||
|
mesg3[8] = "label3 label3 label3 label3 label3 label3 label3";
|
||
|
mesg3[9] = "label3 label3 label3 label3 label3 label3 label3";
|
||
|
label3 = newCDKLabel (cdkscreen, 6, 12, (CDK_CSTRING2)mesg3, 10, TRUE, FALSE);
|
||
|
setCDKLabelULChar (label3, '3' | A_BOLD);
|
||
|
|
||
|
mesg4[0] = "label4 label4 label4 label4 label4 label4 label4";
|
||
|
mesg4[1] = "label4 label4 label4 label4 label4 label4 label4";
|
||
|
mesg4[2] = "label4 label4 label4 label4 label4 label4 label4";
|
||
|
mesg4[3] = "label4 label4 label4 label4 label4 label4 label4";
|
||
|
mesg4[4] = "label4 label4 label4 label4 label4 label4 label4";
|
||
|
mesg4[5] = "label4 label4 label4 label4 label4 label4 label4";
|
||
|
mesg4[6] = "label4 label4 label4 label4 label4 label4 label4";
|
||
|
mesg4[7] = "label4 label4 label4 label4 label4 label4 label4";
|
||
|
mesg4[8] = "label4 label4 label4 label4 label4 label4 label4";
|
||
|
mesg4[9] = "label4 label4 label4 label4 label4 label4 label4";
|
||
|
label4 = newCDKLabel (cdkscreen, 4, 16, (CDK_CSTRING2)mesg4, 10, TRUE, FALSE);
|
||
|
setCDKLabelULChar (label4, '4' | A_BOLD);
|
||
|
|
||
|
mesg[0] = "</B>#<!B> - raise </U>label#<!U>, </B>r<!B> - </U>redraw<!U>, </B>q<!B> - </U>quit<!U>";
|
||
|
instruct = newCDKLabel (cdkscreen,
|
||
|
CDKparamValue (¶ms, 'X', CENTER),
|
||
|
CDKparamValue (¶ms, 'Y', BOTTOM),
|
||
|
(CDK_CSTRING2)mesg, 1,
|
||
|
CDKparamValue (¶ms, 'N', TRUE),
|
||
|
CDKparamValue (¶ms, 'S', FALSE));
|
||
|
setCDKLabelULChar (instruct, ' ' | A_NORMAL);
|
||
|
setCDKLabelURChar (instruct, ' ' | A_NORMAL);
|
||
|
setCDKLabelLLChar (instruct, ' ' | A_NORMAL);
|
||
|
setCDKLabelVerticalChar (instruct, ' ' | A_NORMAL);
|
||
|
setCDKLabelHorizontalChar (instruct, ' ' | A_NORMAL);
|
||
|
|
||
|
setCDKLabelLRChar (label1, MY_LABEL (label1));
|
||
|
setCDKLabelLRChar (label2, MY_LABEL (label2));
|
||
|
setCDKLabelLRChar (label3, MY_LABEL (label3));
|
||
|
setCDKLabelLRChar (label4, MY_LABEL (label4));
|
||
|
setCDKLabelLRChar (instruct, MY_LABEL (instruct));
|
||
|
refreshCDKScreen (cdkscreen);
|
||
|
|
||
|
while ((ch = (char)getch ()) != 'q')
|
||
|
{
|
||
|
switch (ch)
|
||
|
{
|
||
|
case '1':
|
||
|
raiseCDKObject (vLABEL, label1);
|
||
|
break;
|
||
|
case '2':
|
||
|
raiseCDKObject (vLABEL, label2);
|
||
|
break;
|
||
|
case '3':
|
||
|
raiseCDKObject (vLABEL, label3);
|
||
|
break;
|
||
|
case '4':
|
||
|
raiseCDKObject (vLABEL, label4);
|
||
|
break;
|
||
|
case 'r':
|
||
|
refreshCDKScreen (cdkscreen);
|
||
|
break;
|
||
|
default:
|
||
|
continue;
|
||
|
}
|
||
|
|
||
|
setCDKLabelLRChar (label1, MY_LABEL (label1));
|
||
|
setCDKLabelLRChar (label2, MY_LABEL (label2));
|
||
|
setCDKLabelLRChar (label3, MY_LABEL (label3));
|
||
|
setCDKLabelLRChar (label4, MY_LABEL (label4));
|
||
|
setCDKLabelLRChar (instruct, MY_LABEL (instruct));
|
||
|
refreshCDKScreen (cdkscreen);
|
||
|
}
|
||
|
|
||
|
/* Clean up. */
|
||
|
destroyCDKLabel (label1);
|
||
|
destroyCDKLabel (label2);
|
||
|
destroyCDKLabel (label3);
|
||
|
destroyCDKLabel (label4);
|
||
|
destroyCDKLabel (instruct);
|
||
|
destroyCDKScreen (cdkscreen);
|
||
|
endCDK ();
|
||
|
ExitProgram (EXIT_SUCCESS);
|
||
|
}
|