00001
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef _MGUI_CTRL_SCROLLVIEW_H
00028 #define _MGUI_CTRL_SCROLLVIEW_H
00029
00030 #ifdef __cplusplus
00031 extern "C" {
00032 #endif
00033
00057 #define CTRL_SCROLLVIEW ("scrollview")
00058
00065 #define CTRL_SCROLLWND ("scrollwnd")
00066
00070 MG_EXPORT int GUIAPI DefaultContainerProc (HWND hWnd, int message, WPARAM wParam, LPARAM lParam);
00071
00073 typedef GHANDLE HSVITEM;
00074
00078 typedef struct _CONTAINERINFO
00079 {
00080 #if 0
00081 DWORD dwStyle;
00082 DWORD dwExStyle;
00083 int x, y, w, h;
00084 #endif
00085
00086 WNDPROC user_proc;
00088 int controlnr;
00090 PCTRLDATA controls;
00092 DWORD dwAddData;
00093 } CONTAINERINFO;
00095 typedef CONTAINERINFO* PCONTAINERINFO;
00096
00102 MG_EXPORT DWORD mglist_get_item_adddata (GHANDLE hi);
00103
00108 MG_EXPORT DWORD scrollview_get_item_adddata (HSVITEM hsvi);
00109
00114 MG_EXPORT int scrollview_get_item_index (HWND hWnd, HSVITEM hsvi);
00115
00120 MG_EXPORT BOOL scrollview_is_item_hilight (HWND hWnd, HSVITEM hsvi);
00121
00126 MG_EXPORT BOOL scrollview_is_item_selected (HSVITEM hsvi);
00127
00132 MG_EXPORT int scrollview_set_item_height (HWND hWnd, HSVITEM hsvi, int height);
00133
00143 typedef int (*SVITEM_INITFUNC) (HWND hWnd, HSVITEM hsvi);
00144
00152 typedef void (*SVITEM_DESTROYFUNC) (HWND hWnd, HSVITEM hsvi);
00153
00163 typedef void (*SVITEM_DRAWFUNC) (HWND hWnd, HSVITEM hsvi, HDC hdc, RECT *rcDraw);
00164
00169 typedef int (*SVITEM_CMP) (HSVITEM hsvi1, HSVITEM hsvi2);
00170
00172 typedef struct _svitem_operations
00173 {
00175 SVITEM_INITFUNC initItem;
00177 SVITEM_DESTROYFUNC destroyItem;
00179 SVITEM_DRAWFUNC drawItem;
00180 } SVITEMOPS;
00182 typedef SVITEMOPS* PSVITEMOPS;
00183
00185 typedef struct _SCROLLVIEWITEMINFO
00186 {
00188 int nItem;
00190 int nItemHeight;
00192 DWORD addData;
00193 } SVITEMINFO;
00195 typedef SVITEMINFO* PSVITEMINFO;
00196
00206 #define SVS_UPNOTIFY 0x0001L
00207
00208 #define SVS_NOTIFY 0x0002L
00209
00214 #define SVS_AUTOSORT 0x0004L
00215
00220 #define SVS_LOOP 0x0008L
00221
00248 #define SVM_ADDITEM 0xF300
00249
00269 #define SVM_DELITEM 0xF301
00270
00290 #define SVM_SETITEMDRAW 0xF302
00291
00310 #define SVM_ADDCTRLS 0xF303
00311
00330 #define SVM_SETCONTWIDTH 0xF306
00331
00350 #define SVM_SETCONTHEIGHT 0xF307
00351
00368 #define SVM_GETCTRL 0xF308
00369
00383 #define SVM_RESETCONTENT 0xF309
00384
00403 #define SVM_SETITEMOPS 0xF30a
00404
00423 #define SVM_GETMARGINS 0xF30b
00424
00444 #define SVM_SETMARGINS 0xF311
00445
00459 #define SVM_GETLEFTMARGIN 0xF312
00460
00474 #define SVM_GETTOPMARGIN 0xF313
00475
00489 #define SVM_GETRIGHTMARGIN 0xF314
00490
00504 #define SVM_GETBOTTOMMARGIN 0xF315
00505
00519 #define SVM_GETVISIBLEWIDTH 0xF316
00520
00534 #define SVM_GETVISIBLEHEIGHT 0xF317
00535
00549 #define SVM_GETCONTWIDTH 0xF318
00550
00564 #define SVM_GETCONTHEIGHT 0xF319
00565
00586 #define SVM_SETCONTRANGE 0xF31a
00587
00601 #define SVM_GETCONTENTX 0xF31b
00602
00616 #define SVM_GETCONTENTY 0xF31c
00617
00635 #define SVM_SETCONTPOS 0xF31d
00636
00655 #define SVM_GETCURSEL 0xF31e
00656
00674 #define SVM_SELECTITEM 0xF31f
00675
00694 #define SVM_SHOWITEM 0xF320
00695
00714 #define SVM_CHOOSEITEM 0xF321
00715
00734 #define SVM_SETCURSEL 0xF322
00735
00755 #define SVM_SETITEMINIT 0xF323
00756
00776 #define SVM_SETITEMDESTROY 0xF324
00777
00794 #define SVM_SETITEMCMP 0xF327
00795
00811 #define SVM_MAKEPOSVISIBLE 0xF328
00812
00829 #define SVM_SETCONTAINERPROC 0xF329
00830
00844 #define SVM_GETFOCUSCHILD 0xF32a
00845
00859 #define SVM_GETHSCROLLVAL 0xF32b
00860
00874 #define SVM_GETVSCROLLVAL 0xF32c
00875
00889 #define SVM_GETHSCROLLPAGEVAL 0xF32d
00890
00904 #define SVM_GETVSCROLLPAGEVAL 0xF32e
00905
00923 #define SVM_SETSCROLLVAL 0xF32f
00924
00942 #define SVM_SETSCROLLPAGEVAL 0xF330
00943
00959 #define SVM_SORTITEMS 0xF331
00960
00967 #define SVM_GETITEMCOUNT 0xF332
00968
00988 #define SVM_GETITEMADDDATA 0xF333
00989
01008 #define SVM_SETITEMADDDATA 0xF334
01009
01028 #define SVM_REFRESHITEM 0xF335
01029
01048 #define SVM_SETITEMHEIGHT 0xF336
01049
01060 #define SVM_GETFIRSTVISIBLEITEM 0xF337
01061
01062
01071 #define SVN_CLICKED 1
01072
01074 #define SVN_SELCHANGED 2
01075
01077 #define SVN_SELCHANGING 4
01078
01085 #ifdef __cplusplus
01086 }
01087 #endif
01088
01089 #endif
01090