📄 compstui.h
字号:
/*++
Copyright (c) 1990-1995 Microsoft Corporation
Module Name:
compstui.h
Abstract:
This module contains global header definition for the COMMON DRIVER UI
Author:
19-Jun-1995 Mon 11:52:01 created -by- Daniel Chou (danielc)
17-Aug-1995 Thu 14:59:28 updated -by- Daniel Chou (danielc)
Updated for the first draft.
23-Aug-1995 Wed 15:13:27 updated -by- Daniel Chou (danielc)
Updated for second draft
29-Aug-1995 Tue 11:33:24 updated -by- Daniel Chou (danielc)
Adding ExtChkBox for some TVOT_xxx type
31-Aug-1995 Thu 04:04:23 updated -by- Daniel Chou (danielc)
Making UNICODE type
01-Sep-1995 Fri 17:29:18 updated -by- Daniel Chou (danielc)
Change the API interface type, so that it can be dynamically called
and generate the property pages to be merge with the shell
05-Sep-1995 Tue 11:52:43 updated -by- Daniel Chou (danielc)
Rename to compspui.h and update the API entry structure
07-Sep-1995 Thu 14:46:55 updated -by- Daniel Chou (danielc)
rename to compstui.h and update comments
07-Sep-1995 Thu 16:07:31 updated -by- Daniel Chou (danielc)
Adding UNION type for pSel/Sel, pOldSel/OldSel
08-Sep-1995 Fri 09:23:38 updated -by- Daniel Chou (danielc)
Remove TypeIdx from OPTITEM and use pOptType, and remove all
pOptType passed in the CPSUICBPARAM and COMPROPSHEETUI structures
25-Sep-1995 Mon 19:39:45 updated -by- Daniel Chou (danielc)
add other related stuff.
26-Sep-1995 Tue 11:02:26 updated -by- Daniel Chou (danielc)
Add error codes for GETLASTERROR
27-Sep-1995 Wed 16:32:37 updated -by- Daniel Chou (danielc)
Move hWndParent, pTitle, hInst and TitleIconID out from
COMPROPSHEETUI to COMPROPSHEETUIHEADER.
28-Sep-1995 Thu 17:06:46 updated -by- Daniel Chou (danielc)
Add hInstCaller to COMPROPSHEETUI and add _COMPSTUI_ and cplusplus
stuff
28-Sep-1995 Thu 23:16:34 updated -by- Daniel Chou (danielc)
change tick count for trackbar/scrollbar to multiply factor. and
add the push button flag which can overwrite the update permission so
it can let user view the current setting from push button's dialog
display
07-Feb-1996 Wed 17:45:31 updated -by- Daniel Chou (danielc)
Change the API CommonPropSheetUI to CommonPropertySheetUI so that it
not using stack but message base, this way any caller can add/delete
pages as they want without worry about how many pages been added from
its children.
7:15 AM 2/14/2001 updated -by- Lazar Ivanov (LazarI)
Making compstui fusion aware. Attaching a fusion activation context
to the compstui handles and adding a new message for setting it called
CPSFUNC_SET_FUSION_CONTEXT. when a page is about to be created/inserted and
it doesn't specify an activation context in its PROPSHEETPAGE structure it
will be created into the parent's page activation context. if the parent's
activation context is not set then we look up the next parent and so on until
the top level parent is reached or until we find a parent with an activation
context properly set. if none of the parents have an activation context set,
then we force the default (NULL) activation context prior creating the page.
[Environment:]
NT Windows - Common Property Sheet UI DLL.
[Notes:]
Revision History:
--*/
#ifndef _COMPSTUI_
#define _COMPSTUI_
#ifdef __cplusplus
extern "C" {
#endif
#if (!defined(RC_INVOKED))
//
// For compilers that don't support nameless unions
//
#ifndef DUMMYUNIONNAME
#ifdef NONAMELESSUNION
#define DUMMYUNIONNAME u
#define DUMMYUNIONNAME2 u2
#define DUMMYUNIONNAME3 u3
#define DUMMYUNIONNAME4 u4
#else
#define DUMMYUNIONNAME
#define DUMMYUNIONNAME2
#define DUMMYUNIONNAME3
#define DUMMYUNIONNAME4
#endif
#endif
//
// Predefined ID for the TreeView Option Type
//
//
#define TVOT_2STATES 0
#define TVOT_3STATES 1
#define TVOT_UDARROW 2
#define TVOT_TRACKBAR 3
#define TVOT_SCROLLBAR 4
#define TVOT_LISTBOX 5
#define TVOT_COMBOBOX 6
#define TVOT_EDITBOX 7
#define TVOT_PUSHBUTTON 8
#define TVOT_CHKBOX 9
#define TVOT_LAST TVOT_CHKBOX
#define TVOT_NONE (TVOT_LAST + 1)
//
// Predefined ID for the TreeView Option Type
//
//
// TVOT_2STATES:
// Count = 2
// pOptParam[0]=pointer to the State 1 OPTPARAM
// pOptParam[1]=pointer to the State 2 OPTPARAM
//
// BegCtrlID = 2 States Group Box ID
// BegCtrlID+1= 2 States static Text
// BegCtrlID+2= state 1 Radio button ID
// BegCtrlID+3= state 1 icon control ID
// BegCtrlID+4= state 2 Radio button ID
// BegCtrlID+5= state 2 icon control ID
// BegCtrlID+6= Extended Check Box/Push Button control ID
// BegCtrlID+7= Extended Check Box/Push Button Icon control ID
//
// * For TVOT_3STATES, TVOT_3STATES, each of OPTPARAM consisted
//
// Style =Ignored
// pData =Pointer to the string to describe the state
// IconID=Icons resource ID, or common UI standard icon ID
// lParam=Ignored
//
// * OPTITEM's 'Sel' is the selection index range from 0 to 1
// * On the non-treeview page, this must be a auto radio button
//
//
// TVOT_3STATES:
// Count = 3
// pOptParam[0]=pointer to the State 1 OPTPARAM
// pOptParam[1]=pointer to the State 2 OPTPARAM
// pOptParam[2]=pointer to the State 3 OPTPARAM
//
// BegCtrlID = 3 States Group Box ID
// BegCtrlID+1= 3 States static Text
// BegCtrlID+2= state 1 Radio button ID
// BegCtrlID+3= state 1 icon control ID
// BegCtrlID+4= state 2 Radio button ID
// BegCtrlID+5= state 2 icon control ID
// BegCtrlID+6= state 3 Radio button ID
// BegCtrlID+7= state 3 icon control ID
// BegCtrlID+8= Extended Check Box/Push Button control ID
// BegCtrlID+9= Extended Check Box/Push Button Icon control ID
//
// * For TVOT_2STATES, TVOT_3STATES, each of OPTPARAM consisted
//
// Style =Ignored
// pData =Pointer to the string to describe the state
// IconID=Icons resource ID, or common UI standard icon ID
// lParam=Ignored
//
// * OPTITEM's 'Sel' is the selection index range from 0 to 1
// * On the non-treeview page, this must be a auto radio button
//
// ** For TVOT_2STATES, TVOT_3STSATES the 'Sel' field in the OPTITEM has
// following definitions
//
// State 1, Sel = 0
// State 2, Sel = 1
// State 3, Sel = 2
//
// for any selection which based on false/true, no/yes, off/ontrue/false,
// none/select then state 1 (sel=0) must always be the NO, FALSE, OFF or
// NONE type.
//
//
// TVOT_UDARROW:
// Count = 2
// pOptParam[0]=Pointer to the text of postfix and ICONS
// pOptParam[1]=Pointer to the help line text above the control and
// IconID = (SHORT)Low range of the up-down control
// lParam = (SHORT)High range of the up-down control
//
// * Low/High must in range of a 16-bit sign integer
//
// if pData pointed to no help text then common UI automatically
// set the (# - #) as help line
//
// BegCtrlID = udarrow Group Box ID
// BegCtrlID+1= udarrow title static title ID
// BegCtrlID+2= udarrow's editbox ID
// BegCtrlID+3= udarrow icon control ID
// BegCtrlID+4= udarrow postfix static text ID
// BegCtrlID+5= udarrow help static text ID
// BegCtrlID+6= udarrow arrow ID
// BegCtrlID+7= Extended Check Box/Push Button control ID
// BegCtrlID+8= Extended Check Box/Push Button Icon control ID
//
// * OPTITEM's 'Sel' is the selection index between Low/High range
// * Style field in the OPTPARAM is ignored
//
//
// TVOT_TRACKBAR:
// Count = 3
// pOptParam[0]=Pointer to the text for the selection postfix and ICONS
// pOptParam[1]=Pointer to the <Low Range Text> and
// IconID = (SHORT)Low range of the trackbar control
// lParam = (SHORT)High range of the trackbar control
//
// * Low/High must in range of a 16-bit sign integer
//
// pOptParam[2]=Pointer to the <High Range Text> and
// IconID = 'Sel' multiply factor for display
// lParam = Page Size (increment)
//
// if pData pointed to NULLt then common UI automatically
// set the Low/High range.
//
// BegCtrlID = trackbar Group Box ID
// BegCtrlID+1= trackbar static title ID
// BegCtrlID+2= trackbar(horizontal) ID (static FRAME to define size)
// BegCtrlID+3= trackbar icon control ID
// BegCtrlID+4= trackbar low range text control ID
// BegCtrlID+5= trackbar high range text control ID
// BegCtrlID+6= trackbar postfix ID
// BegCtrlID+7= Extended Check Box/Push Button control ID
// BegCtrlID+8= Extended Check Box/Push Button Icon control ID
//
// * OPTITEM's 'Sel' is the selection index between Low/High range
// * The multiply factor is used to multiply the current select with
// this factor and display it. typically this is one
// * the tick frequency is automatically to set to PageSize increment
// * Style field in the OPTPARAM is ignored
//
//
// TVOT_SCROLLBAR:
// Count = 3
// pOptParam[0]=Pointer to the text for the selection postfix and ICONS
// pOptParam[1]=Pointer to the <Low Range Text> and
// IconID = (SHORT)Low range of the scrollbar control
// lParam = (SHORT)High range of the scroll control
//
// * Low/High must in range of a 16-bit sign integer
//
// pOptParam[2]=Pointer to the <High Range Text> and
// IconID = 'Sel' multiply factor for display
// lParam = Page Size (increment)
//
// if pData pointed to NULLt then common UI automatically
// set the Low/High range.
//
//
// BegCtrlID = scrollbar(horizontal) group box ID
// BegCtrlID+1= scrollbar(horizontal) static text ID
// BegCtrlID+2= scrollbar(horizontal) ID
// BegCtrlID+3= scrollbar icon control ID
// BegCtrlID+4= scrollbar low range text control ID
// BegCtrlID+5= scrollbar high range text control ID
// BegCtrlID+6= scrollbar postfix control ID
// BegCtrlID+7= Extended Check Box/Push Button control ID
// BegCtrlID+8= Extended Check Box/Push Button Icon control ID
//
// * OPTITEM's 'Sel' is the selection index between Low/High range
// * The multiply factor is used to multiply the current select with
// this factor and display it. typically this is one
// * Style field in the OPTPARAM is ignored
//
//
//
// TVOT_LISTBOX:
// TVOT_COMBOBOX:
// Count = N
// pOptParam[0]=pointer to the first OPTPARAM (pData=string pointer)
// pOptParam[1]=pointer to the second OPTPARAM (pData=string pointer)
// .
// .
// pOptParam[N-1]=pointer to the N item string
//
// BegCtrlID = Listbox/ComboBox group box ID
// BegCtrlID+1= Listbox/ComboBox static title ID
// BegCtrlID+2= Listbox/Combobox ID
// BegCtrlID+3= Listbox/Combobox icon control ID
// BegCtrlID+4= Extended Check Box/Push Button control ID
// BegCtrlID+5= Extended Check Box/Push Button Icon control ID
//
// * for TVOT_LISTBOX, TVOT_COMBOBOX, the field used as
//
// Style =Ignored by the common UI
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -