OWLNext 6.32
Classes | Defines | Typedefs | Functions | Variables
D:/Work/OWLNext/Subversion/branches/632/include/owl/commctrl.h File Reference
#include <owl/private/defs.h>
#include <owl/control.h>
#include <owl/module.h>
#include <richedit.h>
#include <commctrl.h>
#include <owl/shelwapi.h>
#include <owl/preclass.h>
#include <owl/posclass.h>

Classes

class  owl::TDllVersionInfo
class  owl::TCommCtrlDll
 Actual TModule derivative that wraps the common control DLL, implements delay loading and delay function banding. More...
class  owl::TCommCtrl
class  owl::TXCommCtrl
 Exception object thrown by the Common Control wrappers of ObjectWindows. More...
class  owl::TNotify
class  owl::TNmUpDown
class  owl::TTabKeyDown
class  owl::TTooltipText
class  owl::TTtCustomDraw
class  owl::TTooltipDispInfo
class  owl::THdrNotify
class  owl::THdrDispInfo
class  owl::TDateTimeChange
class  owl::TDateTimeFormat
class  owl::TDateTimeFormatQuery
class  owl::TDateTimeString
class  owl::TDateTimeKeyDown
class  owl::TEnDropFiles
 Structure sent with EN_DROPFILES notification. More...
class  owl::TMsgFilter
 Structure sent with EN_MSGFILTER notification. More...
class  owl::TEnProtected
 Structure sent with EN_PROTECTED notification. More...
class  owl::TReqResize
 Structure sent with EN_REQUESTRESIZE notification. More...
class  owl::TSelChange
 Structure sent with EN_SELCHANGE notification. More...
class  owl::TLvNotify
 Basic TListViewCtrl notification. More...
class  owl::TLvDispInfoNotify
 A TListViewCtrl notification to repaint an item. More...
class  owl::TLvKeyDownNotify
 A TListViewCtrl notification that a key has been pressed. More...
class  owl::TLvBkImage
class  owl::TLvCacheHint
class  owl::TLvCustomDraw
class  owl::TLvFindItem
class  owl::TLvOdStateChanged
class  owl::TLvGetInfoTip
class  owl::TLvItemActivate
class  owl::TTvNotify
 Basic TTreeViewCtrl notification. More...
class  owl::TTvDispInfoNotify
 A TTreeViewCtrl notification to repaint an item. More...
class  owl::TTvKeyDownNotify
 A TTreeViewCtrl notification that a key has been pressed. More...
class  owl::TTvHitTestInfo
 A TTreeViewCtrl notification for hit-testing. More...
class  owl::TTvCustomDraw
class  owl::TTvGetInfoTip
class  owl::TNmMouse
class  owl::TNmObjectNotify
class  owl::TNmKey
class  owl::TNmChar
class  owl::TNmCustomDrawInfo
class  owl::TNmCustomDraw
class  owl::TRebarInfo
class  owl::TColorScheme
class  owl::TRbHitTestInfo
class  owl::TCBExItemInfo
class  owl::TCBExEditInfo
class  owl::TCBExDragInfo
class  owl::TCBExNotifyInfo
class  owl::TMCHitTestInfo
 MonthCalendar Control notifications. More...
class  owl::TNmDayState
class  owl::TNmSelChange
class  owl::TNmPGCalcSize
 Pager Control notifications. More...
class  owl::TNmPGScroll
class  owl::TNmIPAddress
 IP Address control notifications. More...

Defines

#define EV_COMMCTL_NOTIFY(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_AND_CODE(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_AND_NMHDR(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_BOOL_AND_NMHDR(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_AND_NOTIFY(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_BOOL_AND_NOTIFY(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_INT_AND_NOTIFY(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_AND_NMMOUSE(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_AND_CUSTOMDRAW(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_AND_NMCHAR(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_AND_NMKEY(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_AND_ID_NOTIFY(id, notifyCode, method)
#define EV_COMMCTL_NOTIFY_AND_ID_NOTIFY_RETURN(id, notifyCode, method)
#define EV_ACN_START(id, method)   EV_CHILD_NOTIFY(id, ACN_START, method)
#define EV_ACN_STOP(id, method)   EV_COMMCTL_NOTIFY(id, ACN_STOP, method)
#define EV_HEADERNOTIFY(id, notifyCode, method)
#define EV_HEADERNOTIFY_BOOL(id, notifyCode, method)
#define EV_HDN_DISPINFO_NOTIFY_BOOL(id, notifyCode, method)
#define EV_HDN_DISPINFO_NOTIFY(id, notifyCode, method)
#define EV_DTN_CLOSEUP(id, method)   EV_COMMCTL_NOTIFY(id, DTN_CLOSEUP, method)
#define EV_DTN_DATETIMECHANGE(id, method)
#define EV_DTN_DROPDOWN(id, method)   EV_COMMCTL_NOTIFY(id, DTN_DROPDOWN, method)
#define EV_DTN_FORMAT(id, method)
#define EV_DTN_FORMATQUERY(id, method)
#define EV_DTN_USERSTRING(id, method)
#define EV_DTN_WMKEYDOWN(id, method)
#define EV_LISTWIND_NOTIFY(id, notifyCode, method)
#define EV_LISTWIND_NOTIFY_BOOL(id, notifyCode, method)
#define EV_LV_DISPINFO_NOTIFY(id, notifyCode, method)
#define EV_LV_DISPINFO_NOTIFY_BOOL(id, notifyCode, method)
#define EV_RBN_AUTOSIZE(id, method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(id, RBN_AUTOSIZE, method)
#define EV_RBN_BEGINDRAG(id, method)   EV_COMMCTL_NOTIFY_BOOL_AND_NOTIFY(id, RBN_BEGINDRAG, method)
#define EV_RBN_CHILDSIZE(id, method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(id, RBN_CHILDSIZE, method)
#define EV_RBN_DELETEDBAND(id, method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(id, RBN_DELETEDBAND, method)
#define EV_RBN_DELETINGBAND(id, method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(id, RBN_DELETINGBAND, method)
#define EV_RBN_ENDDRAG(id, method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(id, RBN_ENDDRAG, method)
#define EV_RBN_GETOBJECT(id, method)   EV_COMMCTL_NOTIFY_BOOL_AND_NOTIFY(id, RBN_GETOBJECT, method)
#define EV_RBN_HEIGHTCHANGE(id, method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(id, RBN_HEIGHTCHANGE, method)
#define EV_RBN_LAYOUTCHANGED(id, method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(id, RBN_LAYOUTCHANGED, method)
#define EV_CBEN_ITEMINFO_NOTIFY_BOOL(id, notifyCode, method)
#define EV_CBEN_BEGINEDIT(id, method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(id, CBEN_BEGINEDIT, method)
#define EV_CBEN_DELETEITEM(id, method)   EV_CBEN_ITEMINFO_NOTIFY_BOOL(id, CBEN_DELETEITEM, method)
#define EV_CBEN_DRAGBEGIN(id, method)
#define EV_CBEN_ENDEDIT(id, method)
#define EV_CBEN_GETDISPINFO(id, method)   EV_CBEN_ITEMINFO_NOTIFY_BOOL(id, CBEN_GETDISPINFO, method)
#define EV_CBEN_INSERTITEM(id, method)   EV_CBEN_ITEMINFO_NOTIFY_BOOL(id, CBEN_INSERTITEM, method)
#define EV_MCN_GETDAYSTATE(id, method)
#define EV_MCN_SELCHANGE(id, method)
#define EV_MCN_SELECT(id, method)
#define EV_PGN_CALCSIZE(id, method)
#define EV_PGN_SCROLL(id, method)
#define EV_IPN_FIELDCHANGED(id, method)
Common Control Notification Messages

These common control macros handle NM_xxxx notification codes. To determine the name of the notification code that corresponds to the EV_XXXX macro, remove the EV_ prefix.

#define EV_NM_CLICK(id, method)   EV_COMMCTL_NOTIFY(id, NM_CLICK, method)
#define EV_NM_DBLCLK(id, method)   EV_COMMCTL_NOTIFY(id, NM_DBLCLK, method)
#define EV_NM_KILLFOCUS(id, method)   EV_COMMCTL_NOTIFY(id, NM_KILLFOCUS, method)
#define EV_NM_OUTOFMEMORY(id, method)   EV_COMMCTL_NOTIFY(id, NM_OUTOFMEMORY, method)
#define EV_NM_RCLICK(id, method)   EV_COMMCTL_NOTIFY(id, NM_RCLICK, method)
#define EV_NM_RDBLCLK(id, method)   EV_COMMCTL_NOTIFY(id, NM_RDBLCLK, method)
#define EV_NM_RETURN(id, method)   EV_COMMCTL_NOTIFY(id, NM_RETURN, method)
#define EV_NM_SETFOCUS(id, method)   EV_COMMCTL_NOTIFY(id, NM_SETFOCUS, method)
#define EV_NM_CUSTOMDRAW(id, method)   EV_COMMCTL_NOTIFY_AND_CUSTOMDRAW(id, NM_CUSTOMDRAW,method)
#define EV_NM_HOVER(id, method)   EV_COMMCTL_NOTIFY_BOOL_AND_NOTIFY(id, NM_HOVER, method)
#define EV_NM_NCHITTEST(id, method)   EV_COMMCTL_NOTIFY_AND_NMMOUSE(id, NM_NCHITTEST, method)
#define EV_NM_KEYDOWN(id, method)   EV_COMMCTL_NOTIFY_AND_NMKEY(id, NM_KEYDOWN, method)
#define EV_NM_RELEASEDCAPTURE(id, method)   EV_COMMCTL_NOTIFY(id, NM_RELEASEDCAPTURE, method)
#define EV_NM_SETCURSOR(id, method)   EV_COMMCTL_NOTIFY_AND_NMMOUSE(id, NM_SETCURSOR, method)
#define EV_NM_CHAR(id, method)   EV_COMMCTL_NOTIFY_AND_NMCHAR(id, NM_CHAR, method)
Header Control Notification Messages

These header control macros handle EN_xxxx notification codes. To determine the name of the notification code that corresponds to the EV_XXXX macro, remove the EV_ prefix.

#define EV_HDN_BEGINDRAG(id, method)   EV_HEADERNOTIFY_BOOL(id, HDN_BEGINDRAG, method)
#define EV_HDN_BEGINTRACK(id, method)   EV_HEADERNOTIFY_BOOL(id, HDN_BEGINTRACK, method)
#define EV_HDN_DIVIDERDBLCLICK(id, method)   EV_HEADERNOTIFY(id, HDN_DIVIDERDBLCLICK, method)
#define EV_HDN_ENDDRAG(id, method)   EV_HEADERNOTIFY_BOOL(id, HDN_ENDDRAG, method)
#define EV_HDN_ENDTRACK(id, method)   EV_HEADERNOTIFY(id, HDN_ENDTRACK, method)
#define EV_HDN_ITEMCHANGED(id, method)   EV_HEADERNOTIFY(id, HDN_ITEMCHANGED, method)
#define EV_HDN_ITEMCHANGING(id, method)   EV_HEADERNOTIFY_BOOL(id, HDN_ITEMCHANGING, method)
#define EV_HDN_ITEMCLICK(id, method)   EV_HEADERNOTIFY(id, HDN_ITEMCLICK, method)
#define EV_HDN_ITEMDBLCLICK(id, method)   EV_HEADERNOTIFY(id, HDN_ITEMDBLCLICK, method)
#define EV_HDN_TRACK(id, method)   EV_HEADERNOTIFY_BOOL(id, HDN_TRACK, method)
#define EV_HDN_GETDISPINFO(id, method)   EV_HDN_DISPINFO_NOTIFY(id, HDN_GETDISPINFO, method)
Tab Control Notificaiton Messages

The following tab control macros handle TCN_xxxx notification codes. To determine the name of the notification code that corresponds to the EV_XXXX macro, remove the EV_ prefix.

#define EV_TCN_KEYDOWN(id, method)
#define EV_TCN_SELCHANGE(id, method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(id, TCN_SELCHANGE, method)
#define EV_TCN_SELCHANGING(id, method)   EV_COMMCTL_NOTIFY_BOOL_AND_NOTIFY(id, TCN_SELCHANGING, method)
#define EV_TCN_GETOBJECT(id, method)
Property Sheet Notification Messages

The following property sheet macros handle PSN_xxxx notification codes. To determine the name of the notification code that corresponds to the EV_XXXX macro, remove the EV_ prefix.

Note:
These macros hard-code the CtlID to PropPageID. Since Property
#define EV_PSN_APPLY(method)   EV_COMMCTL_NOTIFY_INT_AND_NOTIFY(PropPageID, (uint)PSN_APPLY, method)
#define EV_PSN_GETOBJECT(method)
#define EV_PSN_HELP(method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(PropPageID, (uint)PSN_HELP, method)
#define EV_PSN_KILLACTIVE(method)   EV_COMMCTL_NOTIFY_BOOL_AND_NOTIFY(PropPageID, (uint)PSN_KILLACTIVE, method)
#define EV_PSN_QUERYCANCEL(method)   EV_COMMCTL_NOTIFY_BOOL_AND_NOTIFY(PropPageID, (uint)PSN_QUERYCANCEL, method)
#define EV_PSN_RESET(method)   EV_COMMCTL_NOTIFY_AND_NOTIFY(PropPageID, (uint)PSN_RESET, method)
#define EV_PSN_SETACTIVE(method)   EV_COMMCTL_NOTIFY_INT_AND_NOTIFY(PropPageID, (uint)PSN_SETACTIVE, method)
#define EV_PSN_WIZBACK(method)   EV_COMMCTL_NOTIFY_INT_AND_NOTIFY(PropPageID, (uint)PSN_WIZBACK, method)
#define EV_PSN_WIZFINISH(method)   EV_COMMCTL_NOTIFY_BOOL_AND_NOTIFY(PropPageID, (uint)PSN_WIZFINISH, method)
#define EV_PSN_WIZNEXT(method)   EV_COMMCTL_NOTIFY_INT_AND_NOTIFY(PropPageID, (uint)PSN_WIZNEXT, method)
Rich Edit Notification Messages

The following rich edit macros handle EN_xxxx notification codes. To determine the name of the notification code that corresponds to the EV_XXXX macro, remove the EV_ prefix.

#define EV_EN_DROPFILES(id, method)
#define EV_EN_MSGFILTER(id, method)
#define EV_EN_PROTECTED(id, method)
#define EV_EN_REQRESIZE(id, method)
#define EV_RICHED_EN_SELCHANGE(id, method)
UpDown Notification Messages

The following Up/Down control macro handles UDN_xxxx notification codes. To determine the name of the notification code that corresponds to the EV_XXXX macro, remove the EV_ prefix.

#define EV_UDN_DELTAPOS(id, method)
Tool Tip Notification Messages

The following tooltip macros handle TTN_xxxx notification codes. To determine the name of the notification code that corresponds to the EV_XXXX macro, remove the EV_ prefix.

#define EV_TTN_NEEDTEXT(id, method)
#define EV_TTN_CUSTOMDRAW(id, method)
#define EV_TTN_GETDISPINFO(id, method)
#define EV_TTN_POP(id, method)   EV_COMMCTL_NOTIFY_AND_ID_NOTIFY(id, TTN_POP, method)
#define EV_TTN_SHOW(id, method)   EV_COMMCTL_NOTIFY_AND_ID_NOTIFY_RETURN(id, TTN_SHOW, method)
Tree View Notification Messages

The following tree view macros handle TVN_xxxx notification codes. To determine the name of the notification code that corresponds to the EV_XXXX macro, remove the EV_ prefix.

#define EV_TREEWIND_NOTIFY(id, notifyCode, method)
#define EV_TREEWIND_NOTIFY_BOOL(id, notifyCode, method)
#define EV_TV_DISPINFO_NOTIFY(id, notifyCode, method)
#define EV_TV_DISPINFO_NOTIFY_BOOL(id, notifyCode, method)
#define EV_TVN_BEGINDRAG(id, method)   EV_TREEWIND_NOTIFY (id, TVN_BEGINDRAG, method)
#define EV_TVN_BEGINLABELEDIT(id, method)   EV_TV_DISPINFO_NOTIFY_BOOL(id, TVN_BEGINLABELEDIT, method)
#define EV_TVN_BEGINRDRAG(id, method)   EV_TREEWIND_NOTIFY (id, TVN_BEGINRDRAG, method)
#define EV_TVN_DELETEITEM(id, method)   EV_TREEWIND_NOTIFY (id, TVN_DELETEITEM, method)
#define EV_TVN_ENDLABELEDIT(id, method)   EV_TV_DISPINFO_NOTIFY (id, TVN_ENDLABELEDIT, method)
#define EV_TVN_GETDISPINFO(id, method)   EV_TV_DISPINFO_NOTIFY (id, TVN_GETDISPINFO, method)
#define EV_TVN_ITEMEXPANDED(id, method)   EV_TREEWIND_NOTIFY (id, TVN_ITEMEXPANDED, method)
#define EV_TVN_ITEMEXPANDING(id, method)   EV_TREEWIND_NOTIFY_BOOL (id, TVN_ITEMEXPANDING, method)
#define EV_TVN_SELCHANGED(id, method)   EV_TREEWIND_NOTIFY (id, TVN_SELCHANGED, method)
#define EV_TVN_SELCHANGING(id, method)   EV_TREEWIND_NOTIFY_BOOL (id, TVN_SELCHANGING, method)
#define EV_TVN_SETDISPINFO(id, method)   EV_TV_DISPINFO_NOTIFY (id, TVN_SETDISPINFO, method)
#define EV_TVN_KEYDOWN(id, method)
#define EV_TVN_CUSTOMDRAW(id, method)
#define EV_TVN_GETINFOTIP(id, method)
#define EV_TVN_SINGLEEXPAND(id, method)   EV_TREEWIND_NOTIFY(id, TVN_SINGLEEXPAND, method)
List View Notification Messages

These list view macros handle LVN_xxxx notification codes. To determine the name of the notification code that corresponds to the EV_XXXX macro, remove the EV_ prefix.

#define EV_LVN_KEYDOWN(id, method)
#define EV_LVN_GETINFOTIP(id, method)
#define EV_LVN_ODCACHEHINT(id, method)
#define EV_LVN_ODFINDITEM(id, method)
#define EV_LVN_ODSTATECHANGED(id, method)
#define EV_LVN_CUSTOMDRAW(id, method)
#define EV_LVN_BEGINDRAG(id, method)   EV_LISTWIND_NOTIFY(id, LVN_BEGINDRAG, method)
#define EV_LVN_BEGINLABELEDIT(id, method)   EV_LV_DISPINFO_NOTIFY_BOOL(id, LVN_BEGINLABELEDIT, method)
#define EV_LVN_BEGINRDRAG(id, method)   EV_LISTWIND_NOTIFY(id, LVN_BEGINRDRAG, method)
#define EV_LVN_COLUMNCLICK(id, method)   EV_LISTWIND_NOTIFY(id, LVN_COLUMNCLICK, method)
#define EV_LVN_DELETEALLITEMS(id, method)   EV_LISTWIND_NOTIFY(id, LVN_DELETEALLITEMS, method)
#define EV_LVN_DELETEITEM(id, method)   EV_LISTWIND_NOTIFY(id, LVN_DELETEITEM, method)
#define EV_LVN_SETDISPINFO(id, method)   EV_LV_DISPINFO_NOTIFY(id, LVN_SETDISPINFO, method)
#define EV_LVN_ENDLABELEDIT(id, method)   EV_LV_DISPINFO_NOTIFY_BOOL(id, LVN_ENDLABELEDIT, method)
#define EV_LVN_GETDISPINFO(id, method)   EV_LV_DISPINFO_NOTIFY(id, LVN_GETDISPINFO, method)
#define EV_LVN_INSERTITEM(id, method)   EV_LISTWIND_NOTIFY(id, LVN_INSERTITEM, method)
#define EV_LVN_ITEMCHANGED(id, method)   EV_LISTWIND_NOTIFY(id, LVN_ITEMCHANGED, method)
#define EV_LVN_ITEMCHANGING(id, method)   EV_LISTWIND_NOTIFY_BOOL(id, LVN_ITEMCHANGING, method)
#define EV_LVN_HOTTRACK(id, method)   EV_LISTWIND_NOTIFY_BOOL(id, LVN_HOTTRACK, method)
#define EV_LVN_MARQUEEBEGIN(id, method)   EV_LISTWIND_NOTIFY_BOOL(id, LVN_MARQUEEBEGIN, method)
#define EV_LVN_ITEMACTIVATE(id, method)   EV_COMMCTL_NOTIFY_BOOL_AND_NOTIFY(id, LVN_ITEMACTIVATE, method)

Typedefs

typedef TLvNotify owl::TLwNotify
typedef TLvDispInfoNotify owl::TLwDispInfoNotify
typedef TLvKeyDownNotify owl::TLwKeyDownNotify
typedef TLvBkImage owl::TLwBkImage
typedef TLvCacheHint owl::TLwCacheHint
typedef TLvCustomDraw owl::TLwCustomDraw
typedef TLvFindItem owl::TLwFindItem
typedef TLvOdStateChanged owl::TLwOdStateChanged
typedef TLvGetInfoTip owl::TLwGetInfoTip
typedef TLvItemActivate owl::TLwItemActivate
typedef TTvNotify owl::TTwNotify
typedef TTvDispInfoNotify owl::TTwDispInfoNotify
typedef TTvKeyDownNotify owl::TTwKeyDownNotify
typedef TTvHitTestInfo owl::TTwHitTestInfo
typedef TTvCustomDraw owl::TTwCustomDraw
typedef TTvGetInfoTip owl::TTwGetInfoTip

Functions

int32 owl::v_NMHDRCode_Dispatch (TGeneric &genericxx, void(TGeneric::*pmf)(uint), uint wParam, int32 lParam)

Variables

const int owl::PropPageID = 0xFFF0
const uint owl::ComCtlVersionWin95 = 0x40000
const uint owl::ComCtlVersionIE3 = 0x40007
const uint owl::ComCtlVersionIE4 = 0x40047
const uint owl::ComCtlVersionIE41 = 0x40048

Detailed Description

Definition of classes for CommonControl encapsulation