diff options
Diffstat (limited to 'app/wlib/test/listtest.c')
-rw-r--r-- | app/wlib/test/listtest.c | 96 |
1 files changed, 96 insertions, 0 deletions
diff --git a/app/wlib/test/listtest.c b/app/wlib/test/listtest.c new file mode 100644 index 0000000..6140fd6 --- /dev/null +++ b/app/wlib/test/listtest.c @@ -0,0 +1,96 @@ +#include <stdio.h> +#include "wlib.h" + + +#define TRUE (1) +#define FALSE (0) + +wWin_p mainW, popup1W, popup2W; +wList_p list1lB; +wList_p list1dB; +wList_p list1cB; +wList_p list2lB; +wList_p list2dB; +wList_p list2cB; + +static long valList1 = 3; +static void doList1( wIndex_t inx, char * name, wIndex_t op, void * data, void * itemContext ) +{ + wNotice( name, "Ok", NULL ); +} + +static long valList2 = 4; +static void doList2( wIndex_t inx, char * name, wIndex_t op, void * data, void * itemContext ) +{ + wNotice( name, "Ok", NULL ); +} + + +static long valList3 = 5; +static void doList3( wIndex_t inx, char * name, wIndex_t op, void * data, void * itemContext ) +{ + wNotice( name, "Ok", NULL ); +} + + +void populateList( wList_p l ) { + wListAddValue( l, "Giraffe", NULL, NULL ); + wListAddValue( l, "Marmaset", NULL, NULL ); + wListAddValue( l, "Nasty", NULL, NULL ); + wListAddValue( l, "Beaver", NULL, NULL ); + wListAddValue( l, "Lion", NULL, NULL ); + wListAddValue( l, "Donkey", NULL, NULL ); + wListAddValue( l, "Elephant", NULL, NULL ); + wListAddValue( l, "Jack Rabbit", NULL, NULL ); + wListAddValue( l, "Horse", NULL, NULL ); + wListAddValue( l, "Aardvark", NULL, NULL ); + wListAddValue( l, "Igloo", NULL, NULL ); + wListAddValue( l, "Cow", NULL, NULL ); + wListAddValue( l, "Kangaroo", NULL, NULL ); + wListAddValue( l, "Fawn", NULL, NULL ); +} + +wWin_p wMain( int argc, char * argv[] ) +{ + + wMenu_p m1, m2; + + mainW = wWinMainCreate( "Fred", 40, 80, "Help", "Main", F_AUTOSIZE|F_MENUBAR, NULL, NULL ); + popup1W = wWinPopupCreate( mainW, 2, 2, "Help2", "double click", F_AUTOSIZE|F_MENUBAR, NULL, NULL ); + + list1lB = wListCreate( popup1W, 2, 2, "List1", NULL, BL_DBLCLICK, 10, 200, &valList1, doList1, NULL ); + populateList( list1lB ); + list1dB = wDropListCreate( popup1W, 2, -4, "List2", NULL, BL_DBLCLICK, 10, 200, &valList2, doList2, NULL ); + populateList( list1dB ); + list1cB = wComboListCreate( popup1W, 2, -4, "List3", NULL, BL_DBLCLICK, 10, 200, &valList3, doList3, NULL ); + populateList( list1cB ); + m1 = wMenuBarAdd( popup1W, NULL, "Menu" ); + wMenuPushCreate( m1, NULL, "Clear List 1", (wMenuCallBack_p)wListClear, list1lB ); + wMenuPushCreate( m1, NULL, "Clear List 2", (wMenuCallBack_p)wListClear, list1dB ); + wMenuPushCreate( m1, NULL, "Clear List 3", (wMenuCallBack_p)wListClear, list1cB ); + wMenuPushCreate( m1, NULL, "Pop List 1", (wMenuCallBack_p)populateList, list1lB ); + wMenuPushCreate( m1, NULL, "Pop List 2", (wMenuCallBack_p)populateList, list1dB ); + wMenuPushCreate( m1, NULL, "Pop List 3", (wMenuCallBack_p)populateList, list1cB ); + + + popup2W = wWinPopupCreate( mainW, 2, 2, "Help2", "single click", F_AUTOSIZE|F_MENUBAR, NULL, NULL ); + list2lB = wListCreate( popup2W, 2, -4, "List1", NULL, BL_SORT, 10, 200, &valList1, doList1, NULL ); + populateList( list2lB ); + list2dB = wDropListCreate( popup2W, 2, -4, "List2", NULL, BL_SORT, 10, 200, &valList2, doList2, NULL ); + populateList( list2dB ); + list2cB = wComboListCreate( popup2W, 2, -4, "List3", NULL, BL_SORT, 10, 200, &valList3, doList3, NULL ); + populateList( list2cB ); + m2 = wMenuBarAdd( popup2W, NULL, "Menu" ); + wMenuPushCreate( m2, NULL, "Clear List 1", (wMenuCallBack_p)wListClear, list2lB ); + wMenuPushCreate( m2, NULL, "Clear List 2", (wMenuCallBack_p)wListClear, list2dB ); + wMenuPushCreate( m2, NULL, "Clear List 3", (wMenuCallBack_p)wListClear, list2cB ); + wMenuPushCreate( m2, NULL, "Pop List 1", (wMenuCallBack_p)populateList, list2lB ); + wMenuPushCreate( m2, NULL, "Pop List 2", (wMenuCallBack_p)populateList, list2dB ); + wMenuPushCreate( m2, NULL, "Pop List 3", (wMenuCallBack_p)populateList, list2cB ); + + + + wWinShow( popup1W, TRUE ); + wWinShow( popup2W, TRUE ); + return mainW; +} |