📄 wndstruc.h
字号:
typedef struct _wnddrop {
WORD id;
BITS style:14;
BITS fCursorOn:1;
BITS fEnabled:1;
WORD wExtStyle;
ARC arcWindow;
ARC arcClipping;
#ifdef BROADSWORD
ARC rrcInvalid;
BYTE hbrDraw; // Color for drawing.
BYTE hbrBackGround; // Color for background.
#else
RRC rrcInvalid;
#endif
PLFN_WNDPROC pfnWndProc;
PWND pwndParent;
PWND pwndSibling;
PWND pwndChild;
#ifdef BROADSWORD
WORD pcls;
#endif
BYTE axCursor;
BYTE ayCursor;
#ifndef BROADSWORD
BYTE wndBytes; // 31 bytes
#endif
WORD wDropState;
WORD wDropFlags; // TRUE ( 1 ) = Combo, FALSE ( 0 ) = Plain
PWND pwndDropListBox;
PWND pwndDropButton;
PWND pwndDropEdit;
PLFN_WNDPROC pfnDropListBoxProc;
PLFN_WNDPROC pfnDropEditProc; // 20 bytes
};
#define PwndDropListBox(pwnd) ( (PWND_LIST)( (PWND_DROP)pwnd )->pwndDropListBox )
#define PwndDropButton(pwnd) ( (PWND_BTN)( (PWND_DROP)pwnd )->pwndDropButton )
#define PwndDropEdit(pwnd) ( (PWND_EDIT)( (PWND_DROP)pwnd )->pwndDropEdit)
#define PfnDropListBoxProc(pwnd) ( ( (PWND_DROP)pwnd )->pfnDropListBoxProc)
#define PfnDropEditProc(pwnd) ( ( (PWND_DROP)pwnd )->pfnDropEditProc)
#ifdef BASED
typedef struct _wnddroplist _based(pWndSeg) WND_DROP_LIST;
#else
typedef struct _wnddroplist WND_DROP_LIST;
#endif
typedef WND_DROP_LIST *PWND_DROP_LIST;
typedef struct _wnddroplist {
WORD id;
BITS style:14;
BITS fCursorOn:1;
BITS fEnabled:1;
WORD wExtStyle;
ARC arcWindow;
ARC arcClipping;
#ifdef BROADSWORD
ARC rrcInvalid;
BYTE hbrDraw; // Color for drawing.
BYTE hbrBackGround; // Color for background.
#else
RRC rrcInvalid;
#endif
PLFN_WNDPROC pfnWndProc;
PWND pwndParent;
PWND pwndSibling;
PWND pwndChild;
#ifdef BROADSWORD
WORD pcls;
#endif
BYTE axCursor;
BYTE ayCursor;
#ifndef BROADSWORD
BYTE wndBytes; // 31 bytes
#endif
PWFN_CTL pfnLBFtn;
WORD wParam;
WORD wUnknown;
WORD iszTopLb; // first item in Display
WORD cszLb; // # of strings in list in list
WORD iszCurLb; // currently selected item
WORD hmemMpiszoffLb; // array of offsets in string buffer
WORD hmemGpszLb; // string buffer pool
WORD offLb; // next string buffer pointer
WORD offMaxLb; // size of string buffer
WORD iszMacLb; // max isz before index buf is grown
WORD fSelectedLb; // do we have a selection ?
WORD isaColor; // colour of the listbox
WORD isaHiliteColor; // colour of the listbox hilite
WORD ctickRepLb; // scrolling rate
WORD drxItemLb; // width of a single item (add 1 for space)
WORD citemWidthLb; // max # of items wide // 36 bytes
PWND_DROP pwndDrop;
};
#ifdef BASED
typedef struct _wnddlgdir _based(pWndSeg) WND_DLGDIR;
#else
typedef struct _wnddlgdir WND_DLGDIR;
#endif
typedef WND_DLGDIR *PWND_DLGDIR;
typedef struct _wnddlgdir {
WORD id;
BITS style:14;
BITS fCursorOn:1;
BITS fEnabled:1;
WORD wExtStyle;
ARC arcWindow;
ARC arcClipping;
#ifdef BROADSWORD
ARC rrcInvalid;
BYTE hbrDraw; // Color for drawing.
BYTE hbrBackGround; // Color for background.
#else
RRC rrcInvalid;
#endif
PLFN_WNDPROC pfnWndProc;
PWND pwndParent;
PWND pwndSibling;
PWND pwndChild;
#ifdef BROADSWORD
WORD pcls;
#endif
BYTE axCursor;
BYTE ayCursor;
#ifndef BROADSWORD
BYTE wndBytes; // 31 bytes
#endif
PWND pwndDirDrivesBox;
PWND pwndFilesBox;
PWND pwndDirEdit;
PWND pwndDirStatic;
};
#define PwndDlgDirEdit(pwnd) ( ( (PWND_DLGDIR)pwnd )->pwndDirEdit)
#define PwndDirStatic(pwnd) ( ( (PWND_DLGDIR)pwnd )->pwndDirStatic)
typedef struct _Scroll SCROLL;
typedef SCROLL *PSCROLL;
typedef struct _Scroll {
WORD ctickRepSb; // # of ticks to repeat
short ptCurSb; // current position on scroll line
short ptMinSb; // minimum position on scroll line
short ptMaxSb; // end position on scroll line
BYTE ptElevatorSb; // elevator position
BYTE dummy; // word alignment
};
#ifdef BASED
typedef struct _wndscroll _based(pWndSeg) WND_SCROLL;
#else
typedef struct _wndscroll WND_SCROLL;
#endif
typedef WND_SCROLL *PWND_SCROLL;
typedef struct _wndscroll
{
WORD id;
BITS style:14;
BITS fCursorOn:1;
BITS fEnabled:1;
WORD wExtStyle;
ARC arcWindow;
ARC arcClipping;
#ifdef BROADSWORD
ARC rrcInvalid;
BYTE hbrDraw; // Color for drawing.
BYTE hbrBackGround; // Color for background.
#else
RRC rrcInvalid;
#endif
PLFN_WNDPROC pfnWndProc;
PWND pwndParent;
PWND pwndSibling;
PWND pwndChild;
#ifdef BROADSWORD
WORD pcls;
#endif
BYTE axCursor;
BYTE ayCursor;
#ifndef BROADSWORD
BYTE wndBytes; // 31 bytes
#endif
WORD ctickRepSb; // # of ticks to repeat
short ptCurSb; // current position on scroll line
short ptMinSb; // minimum position on scroll line
short ptMaxSb; // end position on scroll line
short ptElevatorSb; // elevator position (lower byte) // 10 bytes
};
typedef struct _List LISTBOX;
typedef LISTBOX *PLISTBOX;
typedef struct _List {
PWFN_CTL pfnLBFtn;
WORD wParam;
WORD wUnknown;
WORD iszTopLb; // first item in Display
WORD cszLb; // # of strings in list in list
WORD iszCurLb; // currently selected item
WORD hmemMpiszoffLb; // array of offsets in string buffer
WORD hmemGpszLb; // string buffer pool
WORD offLb; // next string buffer pointer
WORD offMaxLb; // size of string buffer
WORD iszMacLb; // max isz before index buf is grown
WORD fSelectedLb; // do we have a selection ?
WORD isaColor; // colour of the listbox
WORD isaHiliteColor; // colour of the listbox hilite
WORD ctickRepLb; // scrolling rate
WORD drxItemLb; // width of a single item (add 1 for space)
WORD citemWidthLb; // max # of items wide
};
#ifdef BASED
typedef struct _wndlist _based(pWndSeg) WND_LIST;
#else
typedef struct _wndlist WND_LIST;
#endif
typedef WND_LIST *PWND_LIST;
typedef struct _wndlist {
WORD id;
BITS style:14;
BITS fCursorOn:1;
BITS fEnabled:1;
WORD wExtStyle;
ARC arcWindow;
ARC arcClipping;
#ifdef BROADSWORD
ARC rrcInvalid;
BYTE hbrDraw; // Color for drawing.
BYTE hbrBackGround; // Color for background.
#else
RRC rrcInvalid;
#endif
PLFN_WNDPROC pfnWndProc;
PWND pwndParent;
PWND pwndSibling;
PWND pwndChild;
#ifdef BROADSWORD
WORD pcls;
#endif
BYTE axCursor;
BYTE ayCursor;
#ifndef BROADSWORD
BYTE wndBytes; // 31 bytes
#endif
PWFN_CTL pfnLBFtn;
WORD wParam;
WORD wUnknown;
WORD iszTopLb; // first item in Display
WORD cszLb; // # of strings in list in list
WORD iszCurLb; // currently selected item
WORD hmemMpiszoffLb; // array of offsets in string buffer
WORD hmemGpszLb; // string buffer pool
WORD offLb; // next string buffer pointer
WORD offMaxLb; // size of string buffer
WORD iszMacLb; // max isz before index buf is grown
WORD fSelectedLb; // do we have a selection ?
WORD isaColor; // colour of the listbox
WORD isaHiliteColor; // colour of the listbox hilite
WORD ctickRepLb; // scrolling rate
WORD drxItemLb; // width of a single item (add 1 for space)
WORD citemWidthLb; // max # of items wide // 36 bytes
};
#define PwfnCtlLb(pwnd) (((PWND_LIST)pwnd)->pfnLBFtn)
#define WParamLb(pwnd) (((PWND_LIST)pwnd)->wParam)
// special listbox window specific isa's
#define IsaListbox(pwnd) (((PWND_LIST)pwnd)->isaColor)
#define IsaHiliteListbox(pwnd) (((PWND_LIST)pwnd)->isaHiliteColor)
typedef struct _Edit EDIT;
typedef EDIT *PEDIT;
typedef struct _Edit {
WORD aclDialog;
char *szDialog;
WORD cchDialog;
WORD isaEb; // color
WORD isaSelEb; // selected color
BYTE chFillDialog; // fill char for trailing spaces
WORD ichMacEb; // last character in edit buffer
WORD ichLeftEb; // leftmost character displayed
WORD ichCursorEb; // current cursor position, to the left of insertion point
WORD ichSelEb; // start of selection
WORD fNoBracketEb; // don't show brackets ??
WORD wEb; // random flags
WORD cchMaxEb; // for fixed length edit items
WORD isaDisabledEb; // disabled color
char *szWildCardEb; // auxilary edit field
BOOL fCWAllocated;
BOOL Dummy;
};
#ifdef BASED
typedef struct _wnded _based(pWndSeg) WND_EDIT;
#else
typedef struct _wnded WND_EDIT;
#endif
typedef WND_EDIT *PWND_EDIT;
typedef struct _wnded
{
WORD id;
BITS style:14;
BITS fCursorOn:1;
BITS fEnabled:1;
WORD wExtStyle;
ARC arcWindow;
ARC arcClipping;
#ifdef BROADSWORD
ARC rrcInvalid;
BYTE hbrDraw; // Color for drawing.
BYTE hbrBackGround; // Color for background.
#else
RRC rrcInvalid;
#endif
PLFN_WNDPROC pfnWndProc;
PWND pwndParent;
PWND pwndSibling;
PWND pwndChild;
#ifdef BROADSWORD
WORD pcls;
#endif
BYTE axCursor;
BYTE ayCursor;
#ifndef BROADSWORD
BYTE wndBytes; // 31 bytes
#endif
WORD aclDialog;
char *szDialog;
WORD cchDialog;
WORD isaEb; // color
WORD isaSelEb; // selected color
BYTE chFillDialog; // fill char for trailing spaces
WORD ichMacEb; // last character in edit buffer
WORD ichLeftEb; // leftmost character displayed
WORD ichCursorEb; // current cursor position, to the left of insertion point
WORD ichSelEb; // start of selection
WORD fNoBracketEb; // don't show brackets ??
WORD wEb; // random flags
WORD cchMaxEb; // for fixed length edit items
WORD isaDisabledEb; // disabled color
char *szWildCardEb; // auxilary edit field
BOOL fCWAllocated;
BOOL Dummy; // 34 bytes
};
#define ShowEditBracket(pwnd, fNoBracket ) (((PWND_EDIT)pwnd)->fNoBracketEb = !(fNoBracket) )
#define SetEditFillCharacter(pwnd, ch) (((PWND_EDIT)pwnd)->chFillDialog = (BYTE)(ch) )
#define SetEditDisabledIsa(pwnd, isa) (((PWND_EDIT)pwnd)->isaDisabledEb = (isa) )
#define SetEditSelectedIsa(pwnd, isa) (((PWND_EDIT)pwnd)->isaSelEb = (isa) )
#define SetEditIsa(pwnd, isa) (((PWND_EDIT)pwnd)->isaEb = (isa) )
// special edit window specific isa's
#define IsaEdit(pwnd) (((PWND_EDIT)pwnd)->isaEb)
#define IsaSelEdit(pwnd) (((PWND_EDIT)pwnd)->isaSelEb )
#define IsaDisabledEdit(pwnd) (((PWND_EDIT)pwnd)->isaDisabledEb)
#ifdef BASED
typedef struct _btnwnd _based(pWndSeg) WND_BTN;
#else
typedef struct _btnwnd WND_BTN;
#endif
typedef WND_BTN *PWND_BTN;
typedef struct _btnwnd
{
WORD id;
BITS style:14;
BITS fCursorOn:1;
BITS fEnabled:1;
WORD wExtStyle;
ARC arcWindow;
ARC arcClipping;
#ifdef BROADSWORD
ARC rrcInvalid;
BYTE hbrDraw; // Color for drawing.
BYTE hbrBackGround; // Color for background.
#else
RRC rrcInvalid;
#endif
PLFN_WNDPROC pfnWndProc;
PWND pwndParent;
PWND pwndSibling;
PWND pwndChild;
#ifdef BROADSWORD
WORD pcls;
#endif
BYTE axCursor;
BYTE ayCursor;
#ifndef BROADSWORD
BYTE wndBytes; // 31 bytes
#endif
WORD aclDialog;
char *szDialog;
BYTE cchDialog;
BYTE wButton;
#ifndef WIN_BTN
PWND_BTN pwndButtonNext; // 8 bytes
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -