| Win32-GUI documentation | Contained in the Win32-GUI distribution. |
Win32::GUI::Constants::Tags - export :tag definitions for Win32::GUI::Constants
use Win32::GUI::Constants qw ( :tag ... );
Win32::GUI::Constants::Tags provide export :tag definitions for use with Win32::GUI::Constants. It is implemented as a seperate module to improve the speed and memory usage of Win32::GUI::Constants if no :tag symbols are used on the import line.
The following tags are defined for use with Win32::GUI::Constants:
A somewhat subjective list of commonly used constants.
Constants related to custom draw handling.
Constants defining the system objects that can be created with GetStockObject().
All constants exported by default by Win32::GUI up to v1.03. Note that this is a large list.
All defined constants. Note that this is a very large list.
The following list of export tags is defined, each exporting constant that may be useful with the related Win32::GUI package(s). Note that some currently export nothing.
:accelerator, :animation, :bitmap, :brush, :button, :class, :combobox, :cursor, :datetime, :dc, :font, :header, :icon, :imagelist, :label, :listbox, :listview, :mdi, :menu, :monthcal, :notifyicon, :pen, :progressbar, :rebar, :region, :richedit, :scrollbar, :slider, :splitter, :statusbar, :tabstrip, :textfield, :timer, :toolbar, :tooltip, :treeview, :updown, :window
Homepage: http://perl-win32-gui.sourceforge.net/.
For further support join the users mailing list
(perl-win32-gui-users@lists.sourceforge.net) from the website
at http://lists.sourceforge.net/lists/listinfo/perl-win32-gui-users.
There is a searchable list archive at
http://sourceforge.net/mail/?group_id=16572
No all constants are covered. If you find missing constants please raise a feature request at http://sourceforge.net/tracker/?group_id=16572&atid=366572
Robert May, <robertemay@users.sourceforge.net>
Many thanks to the Win32::GUI developers at http://perl-win32-gui.sourceforge.net/ for suggestions and assistance.
Copyright 2005..2006 Robert May, All Rights Reserved.
| Win32-GUI documentation | Contained in the Win32-GUI distribution. |
package Win32::GUI::Constants::Tags; # $Id: Tags.pm,v 1.7 2008/02/08 18:47:17 robertemay Exp $ use strict; use warnings; # On one line so MakeMaker will see it. require Win32::GUI::Constants; our $VERSION = $Win32::GUI::Constants::VERSION; use AutoLoader 'AUTOLOAD';
# tag spec's # keys are tags, values are array ref containg regex patterns of # constants to match. If value is undef, then the definition will # be the return value of a subroutine named tag_spec(). These # subroutines are defined after the __END__ token in this file, and processed # by AutoSplit and AutoLoader. our %TAG_SPECS = ( common => [ qw( ^CW_USEDEFAULT$ ) ], customdraw => [ qw( ^CDDS_ ^CDRF_ ) ], stockobjects=> undef, all => [ qw( .* ) ], compatibility_win32_gui => undef, accelerator => [ qw( ^VK_ ) ], animation => [ qw( ^ACS_ ^ACM_ ^ACN_ ) ], bitmap => [ qw( ^OBM_ ) ], brush => [ qw() ], button => undef, class => [ qw( ^COLOR_ ^CS_ ) ], combobox => [ qw( ^CB_ ^CBS_ ^CBES_ ^CBN_ ) ], cursor => [ qw( ^IDC_ ^OCR_ ) ], datetime => [ qw( ^DTS_ ) ], dc => undef, font => [ qw() ], header => [ qw( ^HDS_ ) ], icon => [ qw( ^IDI_ ^OIC_ ) ], imagelist => [ qw( ^ILC_ ^ILD_ ^ILS_ ^CLR_NONE$ ^CLR_DEFAULT$ ^IMAGE_ ) ], label => [ qw( ^IMAGE_ ^STM_ ^STN_ ) ], listbox => [ qw( ^LB_ ^LBN_ ^LBS_ ) ], listview => [ qw( ^LVS_ ^LVIS_ ^LVIR_ ^LVSIL_ ^CLR_NONE$ ) ], mdi => [ qw() ], menu => [ qw( ^MF_ ^SC_ ^TPM_ ) ], monthcal => [ qw( ^MCS_ ^MCSC_ ) ], notifyicon => [ qw() ], pen => [ qw( ^PS_ ) ], progressbar => [ qw( ^PBS_ ^PBM_ ^CLR_DEFAULT$ ) ], rebar => [ qw( ^CLR_DEFAULT$ ^RBBS_ ) ], region => [ qw( ^RGN_ ) ], richedit => [ qw( ^CP_ ^EM_ ^ENM_ ^EN_ ^ES_ ^GT_ ^SF_ ^SFF_ ) ], scrollbar => [ qw( ^SB_ ^SBM_ ^SBS_ ) ], slider => [ qw( ^TBTS_ ) ], splitter => [ qw() ], statusbar => [ qw( ^CLR_DEFAULT$ ^SBT_ ) ], tabstrip => [ qw() ], textfield => [ qw( ^EM_ ^ES_ ) ], timer => [ qw() ], toolbar => [ qw( ^BTNS_ ^TBSTATE_ ^TBSTYLE_ ^I_ ^CLR_DEFAULT$ ^TRANSPARENT$ ^OPAQUE$ ^HINST_COMMCTRL$ ^IBD_ ) ], tooltip => [ qw( ^TTDT_ ^TTF_ ^TTM_ ^TTN_ ) ], treeview => [ qw( ^CLR_DEFAULT$ ^TVGN_ ^TVHT_ ) ], updown => [ qw() ], window => [ qw( ^DS_ ^ID.[^_]+ ^MA_ ^MK_ ^NM_ ^RDW_ ^SIZE_ ^SW_ ^WA_ ^WM_ ^WS_ ) ], ); # tag() returns a reference to a list of constant names, # or undef if the tag passed has no definition sub tag { my $spec = shift; if(exists $TAG_SPECS{$spec}) { my $patterns; if(defined($TAG_SPECS{$spec})) { $patterns = $TAG_SPECS{$spec}; } else { no strict 'refs'; $patterns = &{"tag_$spec"}; } my @names = (); my @syms = @{Win32::GUI::Constants::_export_ok()}; foreach my $patn (@$patterns) { push @names, grep(/$patn/, @syms); } return \@names; } return undef; } 1; #End of Tags.pm
#AutoLoaded subs go after the __END__ token # each sub here is the name of a tag, and returns an array ref # to a list of patterns to match __END__ sub tag_stockobjects() { [ qw( ^WHITE_BRUSH$ ^LTGRAY_BRUSH$ ^GRAY_BRUSH$ ^DKGRAY_BRUSH$ ^BLACK_BRUSH$ ^NULL_BRUSH$ ^HOLLOW_BRUSH$ ^WHITE_PEN$ ^BLACK_PEN$ ^NULL_PEN$ ^OEM_FIXED_FONT$ ^ANSI_FIXED_FONT$ ^ANSI_VAR_FONT$ ^SYSTEM_FONT$ ^DEVICE_DEFAULT_FONT$ ^DEFAULT_PALETTE$ ^SYSTEM_FIXED_FONT$ ^DEFAULT_GUI_FONT$ ^DC_BRUSH$ ^DC_PEN$ ) ] } sub tag_button() { [ qw( ^BS_PUSHBUTTON$ ^BS_DEFPUSHBUTTON$ ^BS_CHECKBOX$ ^BS_AUTOCHECKBOX$ ^BS_RADIOBUTTON$ ^BS_3STATE$ ^BS_AUTO3STATE$ ^BS_GROUPBOX$ ^BS_USERBUTTON$ ^BS_AUTORADIOBUTTON$ ^BS_PUSHBOX$ ^BS_OWNERDRAW$ ^BS_TYPEMASK$ ^BS_LEFTTEXT$ ^BS_TEXT$ ^BS_ICON$ ^BS_BITMAP$ ^BS_LEFT$ ^BS_RIGHT$ ^BS_CENTER$ ^BS_TOP$ ^BS_BOTTOM$ ^BS_VCENTER$ ^BS_PUSHLIKE$ ^BS_MULTILINE$ ^BS_NOTIFY$ ^BS_FLAT$ ^BS_RIGHTBUTTON$ ^IMAGE_ ^BM_ ^BCM_ ^BN_ ) ] } sub tag_dc() { [ qw( ^OPAQUE$ ^TRANSPARENT$ ^BDR_ ^EDGE_ ^BF_ ^CLR_INVALID$ ^HWND_DESKTOP$ ^DFC_ ^DFCS_ ^DT_ ^FLOODFILL ^OBJ_ ^R2_ ^SRCCOPY$ ^SRCPAINT$ ^SRCAND$ ^SRCINVERT$ ^SRCERASE$ ^NOTSRCCOPY$ ^NOTSRCERASE$ ^MERGECOPY$ ^MERGEPAINT$ ^PATCOPY$ ^PATPAINT$ ^PATINVERT$ ^DSTINVERT$ ^BLACKNESS$ ^WHITENESS$ ^NOMIRRORBITMAP$ ^CAPTUREBLT$ ^ERROR$ ^NULLREGION$ ^SIMPLEREGION$ ^COMPLEXREGION$ ^RGN_ ^BS_SOLID$ ^BS_NULL$ ^BS_HOLLOW$ ^BS_HATCHED$ ^BS_PATTERN$ ^BS_INDEXED$ ^BS_DIBPATTERN$ ^BS_DIBPATTERNPT$ ^BS_PATTERN8X8$ ^BS_DIBPATTERN8X8$ ^BS_MONOPATTERN$ ^HS_ ^PS_ ^BLACKONWHITE$ ^WHITEONBLACK$ ^COLORONCOLOR$ ^HALFTONE$ ^STRETCH_ ) ] } sub tag_compatibility_win32_gui() { [ qw( ^BS_3STATE$ ^BS_AUTO3STATE$ ^BS_AUTOCHECKBOX$ ^BS_AUTORADIOBUTTON$ ^BS_CHECKBOX$ ^BS_DEFPUSHBUTTON$ ^BS_GROUPBOX$ ^BS_LEFTTEXT$ ^BS_NOTIFY$ ^BS_OWNERDRAW$ ^BS_PUSHBUTTON$ ^BS_RADIOBUTTON$ ^BS_USERBUTTON$ ^BS_BITMAP$ ^BS_BOTTOM$ ^BS_CENTER$ ^BS_ICON$ ^BS_LEFT$ ^BS_MULTILINE$ ^BS_RIGHT$ ^BS_RIGHTBUTTON$ ^BS_TEXT$ ^BS_TOP$ ^BS_VCENTER$ ^COLOR_3DFACE$ ^COLOR_ACTIVEBORDER$ ^COLOR_ACTIVECAPTION$ ^COLOR_APPWORKSPACE$ ^COLOR_BACKGROUND$ ^COLOR_BTNFACE$ ^COLOR_BTNSHADOW$ ^COLOR_BTNTEXT$ ^COLOR_CAPTIONTEXT$ ^COLOR_GRAYTEXT$ ^COLOR_HIGHLIGHT$ ^COLOR_HIGHLIGHTTEXT$ ^COLOR_INACTIVEBORDER$ ^COLOR_INACTIVECAPTION$ ^COLOR_MENU$ ^COLOR_MENUTEXT$ ^COLOR_SCROLLBAR$ ^COLOR_WINDOW$ ^COLOR_WINDOWFRAME$ ^COLOR_WINDOWTEXT$ ^DS_3DLOOK$ ^DS_ABSALIGN$ ^DS_CENTER$ ^DS_CENTERMOUSE$ ^DS_CONTEXTHELP$ ^DS_CONTROL$ ^DS_FIXEDSYS$ ^DS_LOCALEDIT$ ^DS_MODALFRAME$ ^DS_NOFAILCREATE$ ^DS_NOIDLEMSG$ ^DS_SETFONT$ ^DS_SETFOREGROUND$ ^DS_SYSMODAL$ ^DTS_UPDOWN$ ^DTS_SHOWNONE$ ^DTS_SHORTDATEFORMAT$ ^DTS_LONGDATEFORMAT$ ^DTS_TIMEFORMAT$ ^DTS_APPCANPARSE$ ^DTS_RIGHTALIGN$ ^ES_AUTOHSCROLL$ ^ES_AUTOVSCROLL$ ^ES_CENTER$ ^ES_LEFT$ ^ES_LOWERCASE$ ^ES_MULTILINE$ ^ES_NOHIDESEL$ ^ES_NUMBER$ ^ES_OEMCONVERT$ ^ES_PASSWORD$ ^ES_READONLY$ ^ES_RIGHT$ ^ES_UPPERCASE$ ^ES_WANTRETURN$ ^GW_CHILD$ ^GW_HWNDFIRST$ ^GW_HWNDLAST$ ^GW_HWNDNEXT$ ^GW_HWNDPREV$ ^GW_OWNER$ ^IMAGE_BITMAP$ ^IMAGE_CURSOR$ ^IMAGE_ICON$ ^IDABORT$ ^IDCANCEL$ ^IDIGNORE$ ^IDNO$ ^IDOK$ ^IDRETRY$ ^IDYES$ ^LR_DEFAULTCOLOR$ ^LR_MONOCHROME$ ^LR_COLOR$ ^LR_COPYRETURNORG$ ^LR_COPYDELETEORG$ ^LR_LOADFROMFILE$ ^LR_LOADTRANSPARENT$ ^LR_DEFAULTSIZE$ ^LR_LOADMAP3DCOLORS$ ^LR_CREATEDIBSECTION$ ^LR_COPYFROMRESOURCE$ ^LR_SHARED$ ^MB_ABORTRETRYIGNORE$ ^MB_OK$ ^MB_OKCANCEL$ ^MB_RETRYCANCEL$ ^MB_YESNO$ ^MB_YESNOCANCEL$ ^MB_ICONEXCLAMATION$ ^MB_ICONWARNING$ ^MB_ICONINFORMATION$ ^MB_ICONASTERISK$ ^MB_ICONQUESTION$ ^MB_ICONSTOP$ ^MB_ICONERROR$ ^MB_ICONHAND$ ^MB_DEFBUTTON1$ ^MB_DEFBUTTON2$ ^MB_DEFBUTTON3$ ^MB_DEFBUTTON4$ ^MB_APPLMODAL$ ^MB_SYSTEMMODAL$ ^MB_TASKMODAL$ ^MB_DEFAULT_DESKTOP_ONLY$ ^MB_HELP$ ^MB_RIGHT$ ^MB_RTLREADING$ ^MB_SETFOREGROUND$ ^MB_TOPMOST$ ^MB_SERVICE_NOTIFICATION$ ^MB_SERVICE_NOTIFICATION_NT3X$ ^MF_STRING$ ^MF_POPUP$ ^RBBS_BREAK$ ^RBBS_CHILDEDGE$ ^RBBS_FIXEDBMP$ ^RBBS_FIXEDSIZE$ ^RBBS_GRIPPERALWAYS$ ^RBBS_HIDDEN$ ^RBBS_NOGRIPPER$ ^RBBS_NOVERT$ ^RBBS_VARIABLEHEIGHT$ ^SB_LINEUP$ ^SB_LINELEFT$ ^SB_LINEDOWN$ ^SB_LINERIGHT$ ^SB_PAGEUP$ ^SB_PAGELEFT$ ^SB_PAGEDOWN$ ^SB_PAGERIGHT$ ^SB_THUMBPOSITION$ ^SB_THUMBTRACK$ ^SB_TOP$ ^SB_LEFT$ ^SB_BOTTOM$ ^SB_RIGHT$ ^SB_ENDSCROLL$ ^SBT_POPOUT$ ^SBT_RTLREADING$ ^SBT_NOBORDERS$ ^SBT_OWNERDRAW$ ^SM_ARRANGE$ ^SM_CLEANBOOT$ ^SM_CMOUSEBUTTONS$ ^SM_CXBORDER$ ^SM_CYBORDER$ ^SM_CXCURSOR$ ^SM_CYCURSOR$ ^SM_CXDLGFRAME$ ^SM_CYDLGFRAME$ ^SM_CXDOUBLECLK$ ^SM_CYDOUBLECLK$ ^SM_CXDRAG$ ^SM_CYDRAG$ ^SM_CXEDGE$ ^SM_CYEDGE$ ^SM_CXFIXEDFRAME$ ^SM_CYFIXEDFRAME$ ^SM_CXFRAME$ ^SM_CYFRAME$ ^SM_CXFULLSCREEN$ ^SM_CYFULLSCREEN$ ^SM_CXHSCROLL$ ^SM_CYHSCROLL$ ^SM_CXHTHUMB$ ^SM_CXICON$ ^SM_CYICON$ ^SM_CXICONSPACING$ ^SM_CYICONSPACING$ ^SM_CXMAXIMIZED$ ^SM_CYMAXIMIZED$ ^SM_CXMAXTRACK$ ^SM_CYMAXTRACK$ ^SM_CXMENUCHECK$ ^SM_CYMENUCHECK$ ^SM_CXMENUSIZE$ ^SM_CYMENUSIZE$ ^SM_CXMIN$ ^SM_CYMIN$ ^SM_CXMINIMIZED$ ^SM_CYMINIMIZED$ ^SM_CXMINSPACING$ ^SM_CYMINSPACING$ ^SM_CXMINTRACK$ ^SM_CYMINTRACK$ ^SM_CXSCREEN$ ^SM_CYSCREEN$ ^SM_CXSIZE$ ^SM_CYSIZE$ ^SM_CXSIZEFRAME$ ^SM_CYSIZEFRAME$ ^SM_CXSMICON$ ^SM_CYSMICON$ ^SM_CXSMSIZE$ ^SM_CYSMSIZE$ ^SM_CXVSCROLL$ ^SM_CYVSCROLL$ ^SM_CYCAPTION$ ^SM_CYKANJIWINDOW$ ^SM_CYMENU$ ^SM_CYSMCAPTION$ ^SM_CYVTHUMB$ ^SM_DBCSENABLED$ ^SM_DEBUG$ ^SM_MENUDROPALIGNMENT$ ^SM_MIDEASTENABLED$ ^SM_MOUSEPRESENT$ ^SM_MOUSEWHEELPRESENT$ ^SM_NETWORK$ ^SM_PENWINDOWS$ ^SM_SECURE$ ^SM_SHOWSOUNDS$ ^SM_SLOWMACHINE$ ^SM_SWAPBUTTON$ ^TPM_LEFTBUTTON$ ^TPM_RIGHTBUTTON$ ^TPM_LEFTALIGN$ ^TPM_CENTERALIGN$ ^TPM_RIGHTALIGN$ ^TPM_TOPALIGN$ ^TPM_VCENTERALIGN$ ^TPM_BOTTOMALIGN$ ^TPM_HORIZONTAL$ ^TPM_VERTICAL$ ^TPM_NONOTIFY$ ^TPM_RETURNCMD$ ^TPM_RECURSE$ ^TBSTATE_CHECKED$ ^TBSTATE_ELLIPSES$ ^TBSTATE_ENABLED$ ^TBSTATE_HIDDEN$ ^TBSTATE_INDETERMINATE$ ^TBSTATE_MARKED$ ^TBSTATE_PRESSED$ ^TBSTATE_WRAP$ ^TBSTYLE_ALTDRAG$ ^TBSTYLE_CUSTOMERASE$ ^TBSTYLE_FLAT$ ^TBSTYLE_LIST$ ^TBSTYLE_REGISTERDROP$ ^TBSTYLE_TOOLTIPS$ ^TBSTYLE_TRANSPARENT$ ^TBSTYLE_WRAPABLE$ ^BTNS_AUTOSIZE$ ^BTNS_BUTTON$ ^BTNS_CHECK$ ^BTNS_CHECKGROUP$ ^BTNS_DROPDOWN$ ^BTNS_GROUP$ ^BTNS_NOPREFIX$ ^BTNS_SEP$ ^BTNS_SHOWTEXT$ ^BTNS_WHOLEDROPDOWN$ ^TBSTYLE_AUTOSIZE$ ^TBSTYLE_BUTTON$ ^TBSTYLE_CHECK$ ^TBSTYLE_CHECKGROUP$ ^TBSTYLE_DROPDOWN$ ^TBSTYLE_GROUP$ ^TBSTYLE_NOPREFIX$ ^TBSTYLE_SEP$ ^TBSTYLE_EX_DRAWDDARROWS$ ^TBSTYLE_EX_HIDECLIPPEDBUTTONS$ ^TBSTYLE_EX_MIXEDBUTTONS$ ^TBTS_TOP$ ^TBTS_LEFT$ ^TBTS_BOTTOM$ ^TBTS_RIGHT$ ^TVGN_CARET$ ^TVGN_CHILD$ ^TVGN_DROPHILITE$ ^TVGN_FIRSTVISIBLE$ ^TVGN_NEXT$ ^TVGN_NEXTVISIBLE$ ^TVGN_PARENT$ ^TVGN_PREVIOUS$ ^TVGN_PREVIOUSVISIBLE$ ^TVGN_ROOT$ ^WM_CREATE$ ^WM_DESTROY$ ^WM_MOVE$ ^WM_SIZE$ ^WM_ACTIVATE$ ^WM_SETFOCUS$ ^WM_KILLFOCUS$ ^WM_ENABLE$ ^WM_SETREDRAW$ ^WM_COMMAND$ ^WM_KEYDOWN$ ^WM_SETCURSOR$ ^WM_KEYUP$ ^WS_BORDER$ ^WS_CAPTION$ ^WS_CHILD$ ^WS_CHILDWINDOW$ ^WS_CLIPCHILDREN$ ^WS_CLIPSIBLINGS$ ^WS_DISABLED$ ^WS_DLGFRAME$ ^WS_GROUP$ ^WS_HSCROLL$ ^WS_ICONIC$ ^WS_MAXIMIZE$ ^WS_MAXIMIZEBOX$ ^WS_MINIMIZE$ ^WS_MINIMIZEBOX$ ^WS_OVERLAPPED$ ^WS_OVERLAPPEDWINDOW$ ^WS_POPUP$ ^WS_POPUPWINDOW$ ^WS_SIZEBOX$ ^WS_SYSMENU$ ^WS_TABSTOP$ ^WS_THICKFRAME$ ^WS_TILED$ ^WS_TILEDWINDOW$ ^WS_VISIBLE$ ^WS_VSCROLL$ ^WS_EX_ACCEPTFILES$ ^WS_EX_APPWINDOW$ ^WS_EX_CLIENTEDGE$ ^WS_EX_CONTEXTHELP$ ^WS_EX_CONTROLPARENT$ ^WS_EX_DLGMODALFRAME$ ^WS_EX_LEFT$ ^WS_EX_LEFTSCROLLBAR$ ^WS_EX_LTRREADING$ ^WS_EX_MDICHILD$ ^WS_EX_NOPARENTNOTIFY$ ^WS_EX_OVERLAPPEDWINDOW$ ^WS_EX_PALETTEWINDOW$ ^WS_EX_RIGHT$ ^WS_EX_RIGHTSCROLLBAR$ ^WS_EX_RTLREADING$ ^WS_EX_STATICEDGE$ ^WS_EX_TOOLWINDOW$ ^WS_EX_TOPMOST$ ^WS_EX_TRANSPARENT$ ^WS_EX_WINDOWEDGE$ ) ] }