summaryrefslogtreecommitdiff
path: root/alf/alf.h
diff options
context:
space:
mode:
authorJonas Kümmerlin <jonas@kuemmerlin.eu>2020-07-08 21:03:41 +0200
committerJonas Kümmerlin <jonas@kuemmerlin.eu>2020-07-08 21:03:41 +0200
commitc8a5d9cc2dedf3a8573659fa70b14f86e899bac4 (patch)
tree396a26f622c5064734c44197b2dc8d39008e7410 /alf/alf.h
parent960f0cef228a64ea598c4531d0a7d159dfb7ed0d (diff)
progress bar
Diffstat (limited to 'alf/alf.h')
-rw-r--r--alf/alf.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/alf/alf.h b/alf/alf.h
index f6ef21d..e64cac7 100644
--- a/alf/alf.h
+++ b/alf/alf.h
@@ -685,6 +685,44 @@ ALF_SpinBox_EditControl(HWND spinbox);
HWND
ALF_SpinBox_UpDownControl(HWND spinbox);
+// progress
+enum ALFProgressState {
+ ALF_PROGRESS_STATE_NORMAL = 1, //==PBST_NORMAL
+ ALF_PROGRESS_STATE_ERROR = 2, //==PBST_ERROR FIXME! only supported in native commctl v6 progress bar on Vista+
+ ALF_PROGRESS_STATE_PAUSED = 3, //==PBST_PAUSED FIXME! only supported in native commctl v6 progress bar on Vista+
+ ALF_PROGRESS_STATE_INDETERMINATE = 4,
+ ALF_PROGRESS_STATE_HIDDEN = 5 // TODO: define semantics and implement
+};
+
+HWND
+ALF_AddNativeProgressBar(HWND parent, WORD id, int x, int y);
+
+HWND
+ALF_AddProgressGauge(HWND parent, WORD id, int x, int y);
+
+// creates a native progress bar on commctlv6 (XP+), a selfmade progress gauge otherwise
+HWND
+ALF_AddProgressBar(HWND parent, WORD id, int x, int y);
+
+void
+ALF_Progress_Range(HWND progress, int *pMin, int *pMax);
+
+void
+ALF_Progress_SetRange(HWND progress, int min, int max);
+
+int
+ALF_Progress_Value(HWND progress);
+
+void
+ALF_Progress_SetValue(HWND progress, int value);
+
+enum ALFProgressState
+ALF_Progress_State(HWND progress);
+
+void
+ALF_Progress_SetState(HWND progress, enum ALFProgressState state);
+
+
#ifdef __cplusplus
} // extern C
#endif