diff options
| author | Jonas Kümmerlin <jonas@kuemmerlin.eu> | 2020-06-24 11:19:34 +0200 |
|---|---|---|
| committer | Jonas Kümmerlin <jonas@kuemmerlin.eu> | 2020-06-24 11:19:34 +0200 |
| commit | cd9b72745abd06012777f130f1f19c4ae853489d (patch) | |
| tree | c2bbf90ea7618d82faae560d42f268f62567168a /widgetfactory.cpp | |
| parent | 02c1f4e9165084589941ce205defaf5f3f1ea90f (diff) | |
messagedlg: initial implementation
Diffstat (limited to 'widgetfactory.cpp')
| -rw-r--r-- | widgetfactory.cpp | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/widgetfactory.cpp b/widgetfactory.cpp index cc3ede9..3298d81 100644 --- a/widgetfactory.cpp +++ b/widgetfactory.cpp @@ -40,6 +40,11 @@ enum { IDM_BACKGROUND_GREEN, IDM_BACKGROUND_BLUE, IDM_CENTER_ON_MONITOR, + IDM_MESSAGEDLG_INFO, + IDM_MESSAGEDLG_WARNING, + IDM_MESSAGEDLG_ERROR, + IDM_MESSAGEDLG_QUESTION, + IDM_MESSAGEDLG_DANGERQUESTION, IDM_PANES, IDM_PANES__MAX = IDM_PANES + PANE__MAX, IDM_MODALDIALOG_PANES, @@ -898,6 +903,39 @@ handleCommand(void *closure, HWND window, WORD notificationcode, WORD sourceid, ALF_Toplevel_CenterOnCurrentMonitor(window); } + if (sourceid == IDM_MESSAGEDLG_INFO) { + const TCHAR *text = TEXT("Hello World!\r\n\r\n" + "This is a really long text to show that there is no automatic line breaking going on.\r\n" + "We also want to demo\r\n\r\n\r\n\r\n\r\n\r\n" + "what happens when the text is very high"); + + ALF_MessageDlg_Information(window, text, TEXT("Hello"), NULL); + } + + if (sourceid == IDM_MESSAGEDLG_WARNING) { + ALF_MessageDlg_Warning(window, TEXT("Something noteworthy happened"), TEXT("Warning"), TEXT("Got it!")); + } + + if (sourceid == IDM_MESSAGEDLG_ERROR) { + ALF_MessageDlg_Error(window, TEXT("Something happened."), TEXT("ERROR"), NULL); + } + + if (sourceid == IDM_MESSAGEDLG_QUESTION) { + if (ALF_MessageDlg_Confirm(window, TEXT("Continue?"), TEXT("Question"), TEXT("Yes"), TEXT("No")) == IDOK) { + ALF_MessageDlg_Information(window, TEXT("You clicked OK"), TEXT("Info"), NULL); + } else { + ALF_MessageDlg_Information(window, TEXT("You clicked Cancel"), TEXT("Info"), NULL); + } + } + + if (sourceid == IDM_MESSAGEDLG_DANGERQUESTION) { + if (ALF_MessageDlg_ConfirmDanger(window, TEXT("Do you want to format your hard drive?"), TEXT("Question"), TEXT("&Format Drive"), TEXT("Cancel")) == IDOK) { + ALF_MessageDlg_Information(window, TEXT("You clicked OK"), TEXT("Info"), NULL); + } else { + ALF_MessageDlg_Information(window, TEXT("You clicked Cancel"), TEXT("Info"), NULL); + } + } + return 0; } @@ -1090,6 +1128,12 @@ WinMain AppendMenu(helpmenu, MF_STRING, IDM_CENTER_ON_MONITOR, TEXT("Center Window")); AppendMenu(helpmenu, MF_SEPARATOR, 0, 0); + AppendMenu(helpmenu, MF_STRING, IDM_MESSAGEDLG_INFO, TEXT("Information")); + AppendMenu(helpmenu, MF_STRING, IDM_MESSAGEDLG_WARNING, TEXT("Warning")); + AppendMenu(helpmenu, MF_STRING, IDM_MESSAGEDLG_ERROR, TEXT("Error")); + AppendMenu(helpmenu, MF_STRING, IDM_MESSAGEDLG_QUESTION, TEXT("Question")); + AppendMenu(helpmenu, MF_STRING, IDM_MESSAGEDLG_DANGERQUESTION, TEXT("Dangerous Question")); + AppendMenu(helpmenu, MF_SEPARATOR, 0, 0); AppendMenu(helpmenu, MF_STRING, IDM_HELP_ABOUT, TEXT("&About")); AppendMenu(bgmenu, MF_STRING, IDM_BACKGROUND_INHERIT, TEXT("(Default)")); |
