diff options
Diffstat (limited to 'widgetfactory.cpp')
| -rw-r--r-- | widgetfactory.cpp | 81 |
1 files changed, 79 insertions, 2 deletions
diff --git a/widgetfactory.cpp b/widgetfactory.cpp index 7299074..ecf1bbb 100644 --- a/widgetfactory.cpp +++ b/widgetfactory.cpp @@ -566,20 +566,97 @@ notebookPanelInit(HWND panel) /* checkbox panel */ static void -checkboxPanelAttach(void *closure, HWND panel) +checkboxPanelAttach(void *closure, HWND outerPanel) { (void)closure; + HWND panel = ALF_AddGroupBox(outerPanel, (WORD)-1, 1, 1, TEXT("ALF Checkbox")); + ALF_AddCheckbox(panel, (WORD)-1, 1, 2, TEXT("Some Checkbox with a very very really very very long text")); HWND l = ALF_AddLabel(panel, (WORD)-1, 1, 4, TEXT("Width checker")); ALF_SetBackgroundColor(l, ALF_COLOR_RGB(0, 0, 255)); ALF_SetTextColor(l, ALF_COLOR_RGB(255, 255, 255)); - ALF_LayoutSetRowMinSize(panel, 1, 825); + ALF_AddCheckbox(panel, (WORD)-1, 1, 6, TEXT("Another Checkbox")); + + ALF_LayoutSetRowMinSize(panel, 3, 525); + ALF_LayoutSetRowMinSize(panel, 5, 525); + ALF_LayoutSetColumnExpandNumerator(panel, 9, 1); + ALF_LayoutSetRowExpandNumerator(panel, 9, 1); + + panel = ALF_AddGroupBox(outerPanel, (WORD)-1, 3, 1, TEXT("Native Checkbox")); + + HWND hwnd = CreateWindowEx(0, + TEXT("BUTTON"), + TEXT("Native Checkbox with long text"), + WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_AUTOCHECKBOX, + 0, 0, 100, 100, + panel, + (HMENU)(ULONG_PTR)-1, + (HINSTANCE)GetModuleHandle(NULL), + NULL); + + ALF_AddWidget(panel, 1, 1, hwnd, 0, 0, ALF_LAYOUT_SIZE_CHECKBOX | ALF_LAYOUT_INHERITFONT | ALF_LAYOUT_TRANSPARENTBG); + ALF_LayoutSetRowMinSize(panel, 3, 825); + ALF_LayoutSetRowMinSize(panel, 5, 825); ALF_LayoutSetColumnExpandNumerator(panel, 9, 1); ALF_LayoutSetRowExpandNumerator(panel, 9, 1); + + panel = ALF_AddGroupBox(outerPanel, (WORD)-1, 1, 3, TEXT("ALF Radio Button")); + + hwnd = ALF_AddRadioButton(panel, (WORD)-1, 1, 2, TEXT("Some Radio button")); + ALF_AddRadioButton(panel, (WORD)-1, 1, 4, TEXT("Another long One")); + ALF_AddRadioButton(panel, (WORD)-1, 1, 6, TEXT("Option 3")); + ALF_AddRadioButton(panel, (WORD)-1, 1, 8, TEXT("Option IV")); + + SendMessage(hwnd, BM_SETCHECK, BST_CHECKED, 0); + + ALF_LayoutSetRowMinSize(panel, 3, 525); + ALF_LayoutSetRowMinSize(panel, 5, 525); + ALF_LayoutSetRowMinSize(panel, 7, 525); + ALF_LayoutSetColumnExpandNumerator(panel, 9, 1); + ALF_LayoutSetRowExpandNumerator(panel, 9, 1); + + panel = ALF_AddGroupBox(outerPanel, (WORD)-1, 3, 3, TEXT("Native Radio")); + + hwnd = CreateWindowEx(0, + TEXT("BUTTON"), + TEXT("Native Radio Button with long text"), + WS_CHILD | WS_VISIBLE | BS_AUTORADIOBUTTON, + 0, 0, 100, 100, + panel, + (HMENU)(ULONG_PTR)-1, + (HINSTANCE)GetModuleHandle(NULL), + NULL); + SendMessage(hwnd, BM_SETCHECK, BST_CHECKED, 0); + ALF_AddWidget(panel, 1, 1, hwnd, 0, 0, ALF_LAYOUT_SIZE_RADIOBUTTON | ALF_LAYOUT_INHERITFONT | ALF_LAYOUT_TRANSPARENTBG); + + hwnd = CreateWindowEx(0, + TEXT("BUTTON"), + TEXT("Native Radio Button #2"), + WS_CHILD | WS_VISIBLE | BS_AUTORADIOBUTTON, + 0, 0, 100, 100, + panel, + (HMENU)(ULONG_PTR)-1, + (HINSTANCE)GetModuleHandle(NULL), + NULL); + ALF_AddWidget(panel, 1, 3, hwnd, 0, 0, ALF_LAYOUT_SIZE_RADIOBUTTON | ALF_LAYOUT_INHERITFONT | ALF_LAYOUT_TRANSPARENTBG); + + ALF_LayoutSetRowMinSize(panel, 2, 525); + ALF_LayoutSetRowMinSize(panel, 4, 525); + ALF_LayoutSetColumnExpandNumerator(panel, 9, 1); + ALF_LayoutSetRowExpandNumerator(panel, 9, 1); + + ALF_LayoutSetRowMinSize(outerPanel, 0, 825); + ALF_LayoutSetRowMinSize(outerPanel, 2, 825); + ALF_LayoutSetColumnMinSize(outerPanel, 0, 825); + ALF_LayoutSetColumnMinSize(outerPanel, 2, 825); + ALF_LayoutSetColumnMinSize(outerPanel, 4, 825); + ALF_LayoutSetColumnExpandNumerator(outerPanel, 1, 1); + ALF_LayoutSetColumnExpandNumerator(outerPanel, 3, 1); + ALF_LayoutSetRowExpandNumerator(outerPanel, 1, 1); } static ALFPanelVTable checkboxPanelVtbl = { |
