[ create a new paste ] login | about

Link: http://codepad.org/EJEuc6qA    [ raw code | fork ]

D, pasted on Apr 9:
enum Metrics : int {
	SM_CXSCREEN = 0,
	SM_CYSCREEN,
	SM_CXVSCROLL,
	SM_CYHSCROLL,
	SM_CYCAPTION,
	SM_CXBORDER,
	SM_CYBORDER,
	SM_CXDLGFRAME, // = 7,
	SM_CXFIXEDFRAME = SM_CXDLGFRAME,
	SM_CYDLGFRAME, // =8,
	SM_CYFIXEDFRAME = SM_CYDLGFRAME,
	SM_CYVTHUMB = 9,
	SM_CXHTHUMB,
	SM_CXICON,
	SM_CYICON,
	SM_CXCURSOR,
	SM_CYCURSOR,
	SM_CYMENU,
	SM_CXFULLSCREEN,
	SM_CYFULLSCREEN,
	SM_CYKANJIWINDOW,
	SM_MOUSEPRESENT,
	SM_CYVSCROLL,
	SM_CXHSCROLL,
	SM_DEBUG,
	SM_SWAPBUTTON,
	SM_RESERVED1,
	SM_RESERVED2,
	SM_RESERVED3,
	SM_RESERVED4,
	SM_CXMIN,
	SM_CYMIN,
	SM_CXSIZE,
	SM_CYSIZE,
	SM_CXSIZEFRAME, // = 32,
	SM_CXFRAME = SM_CXSIZEFRAME,
	SM_CYSIZEFRAME, // = 33
	SM_CYFRAME = SM_CYSIZEFRAME,
	SM_CXMINTRACK,
	SM_CYMINTRACK,
	SM_CXDOUBLECLK,
	SM_CYDOUBLECLK,
	SM_CXICONSPACING,
	SM_CYICONSPACING,
	SM_MENUDROPALIGNMENT,
	SM_PENWINDOWS,
	SM_DBCSENABLED,
	SM_CMOUSEBUTTONS,
	SM_SECURE,
	SM_CXEDGE,
	SM_CYEDGE,
	SM_CXMINSPACING,
	SM_CYMINSPACING,
	SM_CXSMICON,
	SM_CYSMICON,
	SM_CYSMCAPTION,
	SM_CXSMSIZE,
	SM_CYSMSIZE,
	SM_CXMENUSIZE,
	SM_CYMENUSIZE,
	SM_ARRANGE,
	SM_CXMINIMIZED,
	SM_CYMINIMIZED,
	SM_CXMAXTRACK,
	SM_CYMAXTRACK,
	SM_CXMAXIMIZED,
	SM_CYMAXIMIZED,
	SM_NETWORK, // = 63
	SM_CLEANBOOT = 67,
	SM_CXDRAG,
	SM_CYDRAG,
	SM_SHOWSOUNDS,
	SM_CXMENUCHECK,
	SM_CYMENUCHECK,
	SM_SLOWMACHINE,
	SM_MIDEASTENABLED,
	// The next values aren't supported in Win95.
	SM_MOUSEWHEELPRESENT,
	SM_XVIRTUALSCREEN,
	SM_YVIRTUALSCREEN,
	SM_CXVIRTUALSCREEN,
	SM_CYVIRTUALSCREEN,
	SM_CMONITORS,
	SM_SAMEDISPLAYFORMAT,
	SM_IMMENABLED,
	SM_CXFOCUSBORDER,
	SM_CYFOCUSBORDER, // = 84
	SM_TABLETPC = 86,
	SM_MEDIACENTER = 87,
	SM_REMOTESESSION = 0x1000,
	// These are only for WinXP and later
	SM_SHUTTINGDOWN = 0x2000,
	SM_REMOTECONTROL = 0x2001
}
enum NUMLINES = [__traits(allMembers, Metrics)].length;

struct SysMetrics
{
    int iIndex;
    string szLabel;
    string szDesc;
}
SysMetrics[NUMLINES] sysmetrics;

static this()
{
    foreach (i, m; __traits(allMembers, Metrics))
    {
        sysmetrics[i] = SysMetrics(mixin(Metrics.stringof ~ "." ~ m), // value
                                  (Metrics.stringof ~ "." ~ m),       // label
                                  "");                                // desc.
    }
}


Create a new paste based on this one


Comments: