summaryrefslogtreecommitdiff
path: root/widgetfactory.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'widgetfactory.cpp')
-rw-r--r--widgetfactory.cpp72
1 files changed, 72 insertions, 0 deletions
diff --git a/widgetfactory.cpp b/widgetfactory.cpp
index 3885df4..b0c0fdd 100644
--- a/widgetfactory.cpp
+++ b/widgetfactory.cpp
@@ -595,6 +595,77 @@ checkboxPanelAddToNotebook(HWND hwndNotebook)
ALF_PanelSetVTable(panel, &checkboxPanelVtbl, priv);
}
+/* groupbox panel */
+
+static void
+groupboxPanelAttach(void *closure, HWND panel)
+{
+ (void)closure;
+
+ ALF_AddLabel(panel, (WORD)-1, 1, 1, TEXT("ALF"));
+ ALF_AddLabel(panel, (WORD)-1, 3, 1, TEXT("native"));
+
+ HWND hwndGb0 = ALF_AddGroupBox(panel, (WORD)-1, 1, 3, TEXT("Test Bo&x"));
+
+ HWND hwndGb1 = CreateWindowEx(WS_EX_TRANSPARENT,
+ TEXT("BUTTON"),
+ TEXT("Test Box"),
+ WS_CHILD | WS_TABSTOP | WS_VISIBLE | BS_GROUPBOX,
+ 0, 0, 100, 100,
+ panel,
+ (HMENU)(WORD)-1,
+ (HINSTANCE)GetModuleHandle(NULL),
+ NULL);
+ ALF_AddWidget(panel, 3, 3, hwndGb1, 0, 0, ALF_LAYOUT_INHERITFONT | ALF_LAYOUT_TRANSPARENTBG);
+
+ ALF_AddEdit(hwndGb0, (WORD)-1, 0, 0, TEXT("Dummy"));
+
+ HWND hwndGb3 = ALF_AddGroupBox(panel, (WORD)-1, 1, 5, TEXT("Disabled"));
+ EnableWindow(hwndGb3, FALSE);
+
+ HWND hwndGb2 = CreateWindowEx(WS_EX_TRANSPARENT,
+ TEXT("BUTTON"),
+ TEXT("Disabled"),
+ WS_CHILD | WS_TABSTOP | WS_VISIBLE | BS_GROUPBOX,
+ 0, 0, 100, 100,
+ panel,
+ (HMENU)(WORD)-1,
+ (HINSTANCE)GetModuleHandle(NULL),
+ NULL);
+ ALF_AddWidget(panel, 3, 5, hwndGb2, 0, 0, ALF_LAYOUT_INHERITFONT | ALF_LAYOUT_TRANSPARENTBG);
+ EnableWindow(hwndGb2, FALSE);
+
+ ALF_LayoutSetRowMinSize(panel, 0, 825);
+ ALF_LayoutSetRowMinSize(panel, 2, 825);
+ ALF_LayoutSetRowMinSize(panel, 4, 825);
+ ALF_LayoutSetRowMinSize(panel, 6, 825);
+ ALF_LayoutSetColumnMinSize(panel, 0, 825);
+ ALF_LayoutSetColumnMinSize(panel, 2, 825);
+ ALF_LayoutSetColumnMinSize(panel, 4, 825);
+ ALF_LayoutSetRowExpandNumerator(panel, 3, 1);
+ ALF_LayoutSetRowExpandNumerator(panel, 5, 1);
+ ALF_LayoutSetColumnExpandNumerator(panel, 1, 1);
+ ALF_LayoutSetColumnExpandNumerator(panel, 3, 1);
+}
+
+static ALFPanelVTable groupboxPanelVtbl = {
+ groupboxPanelAttach,
+ commonPanelDestroy,
+ commonPanelMessage,
+ NULL,
+ NULL,
+ commonPanelPaint,
+ NULL
+};
+
+static void
+groupboxPanelAddToNotebook(HWND hwndNotebook)
+{
+ HWND panel = ALF_NotebookAddTab(hwndNotebook, TEXT("GroupBox"));
+ CommonPanelPriv *priv = ALF_New(CommonPanelPriv, 1);
+ ALF_PanelSetVTable(panel, &groupboxPanelVtbl, priv);
+}
+
int CALLBACK
#ifdef UNICODE
wWinMain
@@ -643,6 +714,7 @@ WinMain
comboPanelAddToNotebook(hwndNtbk);
notebookPanelAddToNotebook(hwndNtbk);
checkboxPanelAddToNotebook(hwndNtbk);
+ groupboxPanelAddToNotebook(hwndNtbk);
ALF_SetDefaultButton(win, ID_HELLO);