Skip to content

ModernUI_Button Control

mrfearless edited this page Oct 24, 2018 · 2 revisions

ModernUI_Button Functions

MUIButtonRegister

Description: Registers the ModernUI_Button class, which allows the control to be created via dialog resources or via CreateWindowEx and specifying the classname ModernUI_Button. If using the RadASM custom class control instead of a the ModernUI RadASM Design Time Controls specify ModernUI_Button as the classname.

Parameters: None

MUIButtonCreate

Description: Creates a ModernUI_Button control. Returns in rax the handle of the newly created control or NULL.

Parameters: hWndParent, lpszText, xpos, ypos, qwWidth, qwHeight, qwResourceID, qwStyle

MUIButtonSetProperty

Description: Set a ModernUI_Button property with a value, which is stored in the external properties structure. Properties are defined as equates and are actually offsets into the memory location used to store the properties.

Parameters: hModernUI_Button, qwProperty, qwPropertyValue

MUIButtonGetProperty

Description: Get a ModernUI_Button property from the external properties structure. Properties are defined as equates and are actually offsets into the memory location used to store the properties.

Parameters: hModernUI_Button, qwProperty

MUIButtonGetState

Description: Gets the state for the button: unselected or selected.

Parameters: hModernUI_Button

MUIButtonSetState

Description: Sets the state for the button: unselected or selected.

Parameters: hModernUI_Button, bState

MUIButtonLoadImages

Description: Loads images for specified states: unselected, unselected mouse over, selected, selected mouse over and disabled.

Parameters: hModernUI_Button, qwImageType, qwResIDImage, qwResIDImageAlt, qwResIDImageSel, qwResIDImageSelAlt, qwResIDImageDisabled

MUIButtonSetImages

Description: Set images from pre loaded image handles for specified states: unselected, unselected mouse over, selected, selected mouse over and disabled.

Parameters: hModernUI_Button, qwImageType, hImage, hImageAlt, hImageSel, hImageSelAlt, hImageDisabled

ModernUI_Button Styles

  • MUIBS_LEFT - Align text to the left of the button
  • MUIBS_BOTTOM - Place image at the top, and text below
  • MUIBS_CENTER - Align text centerally.
  • MUIBS_AUTOSTATE - Automatically toggle between TRUE/FALSE state when clicked. TRUE = Selected.
  • MUIBS_PUSHBUTTON - Simulate button movement down slightly when mouse click and movement up again when mouse is released.
  • MUIBS_HAND - Show a hand instead of an arrow when mouse moves over button.
  • MUIBS_KEEPIMAGES - Dont delete image handles when control is destoyed. Essential if image handles are used in multiple controls.
  • MUIBS_DROPDOWN - Show dropdown arrow right side of control
  • MUIBS_NOFOCUSRECT - Dont show focus rect, just use change border to @ButtonBorderColorAlt when setfocus.
  • MUIBS_THEME - Use default windows theme colors and react to WM_THEMECHANGED

ModernUI_Button Properties

  • @ButtonTextFont - hFont
  • @ButtonTextColor - Colorref
  • @ButtonTextColorAlt - Colorref
  • @ButtonTextColorSel - Colorref
  • @ButtonTextColorSelAlt - Colorref
  • @ButtonTextColorDisabled - Colorref
  • @ButtonBackColor - Colorref, -1 = transparent
  • @ButtonBackColorAlt - Colorref
  • @ButtonBackColorSel - Colorref
  • @ButtonBackColorSelAlt - Colorref
  • @ButtonBackColorDisabled - Colorref
  • @ButtonBorderColor - Colorref, -1 = transparent
  • @ButtonBorderColorAlt - Colorref
  • @ButtonBorderColorSel - Colorref
  • @ButtonBorderColorSelAlt - Colorref
  • @ButtonBorderColorDisabled - Colorref
  • @ButtonBorderStyle - Button Border Styles - Either MUIBBS_NONE, MUIBBS_ALL or a combination of MUIBBS_LEFT, MUIBBS_TOP, MUIBBS_BOTTOM, MUIBBS_RIGHT
  • @ButtonAccentColor - Colorref, -1 = transparent
  • @ButtonAccentColorAlt - Colorref
  • @ButtonAccentColorSel - Colorref
  • @ButtonAccentColorSelAlt - Colorref
  • @ButtonAccentStyle - Button Accent Styles - Either MUIBAS_NONE, MUIBAS_ALL or a combination of MUIBAS_LEFT, MUIBAS_TOP, MUIBAS_BOTTOM, MUIBAS_RIGHT
  • @ButtonAccentStyleAlt - Button Accent Styles - Either MUIBAS_NONE, MUIBAS_ALL or a combination of MUIBAS_LEFT, MUIBAS_TOP, MUIBAS_BOTTOM, MUIBAS_RIGHT
  • @ButtonAccentStyleSel - Button Accent Styles - Either MUIBAS_NONE, MUIBAS_ALL or a combination of MUIBAS_LEFT, MUIBAS_TOP, MUIBAS_BOTTOM, MUIBAS_RIGHT
  • @ButtonAccentStyleSelAlt - Button Accent Styles - Either MUIBAS_NONE, MUIBAS_ALL or a combination of MUIBAS_LEFT, MUIBAS_TOP, MUIBAS_BOTTOM, MUIBAS_RIGHT
  • @ButtonImageType - Button Image Types - One of the following: MUIBIT_NONE, MUIBIT_BMP, MUIBIT_ICO or MUIBIT_PNG
  • @ButtonImage - hImage
  • @ButtonImageAlt - hImage
  • @ButtonImageSel - hImage
  • @ButtonImageSelAlt - hImage
  • @ButtonImageDisabled - hImage
  • @ButtonRightImage - hImage - Right side image
  • @ButtonRightImageAlt - hImage - Right side image
  • @ButtonRightImageSel - hImage - Right side image
  • @ButtonRightImageSelAlt - hImage - Right side image
  • @ButtonRightImageDisabled - hImage - Right side image
  • @ButtonNotifyTextFont - hFont
  • @ButtonNotifyTextColor - Colorref
  • @ButtonNotifyBackColor - Colorref
  • @ButtonNotifyRound - dwPixels - Roundrect x,y value
  • @ButtonNotifyImageType - Button Image Types - One of the following: MUIBIT_NONE, MUIBIT_BMP, MUIBIT_ICO or MUIBIT_PNG
  • @ButtonNotifyImage - hImage
  • @ButtonNoteTextFont - hFont
  • @ButtonNoteTextColor - Colorref
  • @ButtonNoteTextColorDisabled - Colorref
  • @ButtonPaddingLeftIndent - dwPixels - No of pixels to indent images + text (or just text if no images). Defaults to 0 when control is created
  • @ButtonPaddingGeneral - dwPixels - No of pixels of padding to apply based on @ButtonPaddingStyle: Defaults to 4px when control is created.
  • @ButtonPaddingStyle - Button Padding Style - Where to apply @ButtonPaddingGeneral: defaults to MUIBPS_ALL when control is created
  • @ButtonPaddingTextImage - dwPixels - No of pixels between left images and text. Defaults to 8 when control is created
  • @ButtonDllInstance - Set to hInstance of dll before calling MUIButtonLoadImages or MUIButtonNotifyLoadImage if used within a dll
  • @ButtonParam - Custom user data

ModernUI_Button Property Styles

Button Border Styles

  • MUIBBS_NONE - No border
  • MUIBBS_LEFT - Border on left side
  • MUIBBS_TOP - Border on top side
  • MUIBBS_BOTTOM - Border on bottom side
  • MUIBBS_RIGHT - Border on right side
  • MUIBBS_ALL - same as MUIBBS_LEFT + MUIBBS_TOP + MUIBBS_BOTTOM + MUIBBS_RIGHT

Button Accent Styles

  • MUIBAS_NONE - No accent
  • MUIBAS_LEFT - Accent on left side
  • MUIBAS_TOP - Accent on top side
  • MUIBAS_BOTTOM - Accent on bottom side
  • MUIBAS_RIGHT - Accent on right side
  • MUIBAS_ALL - same as MUIBAS_LEFT + MUIBAS_TOP + MUIBAS_BOTTOM + MUIBAS_RIGHT

Button Image Types

  • MUIBIT_NONE - No image type specified
  • MUIBIT_BMP - Bitmap
  • MUIBIT_ICO - Icon
  • MUIBIT_PNG - PNG

Button Padding Styles

  • MUIBPS_NONE - No padding
  • MUIBPS_LEFT - Padding at left edge
  • MUIBPS_TOP - Padding at top edge
  • MUIBPS_BOTTOM - Padding at bottom edge
  • MUIBPS_RIGHT - Padding at right edge
  • MUIBPS_ALL - same as MUIBPS_LEFT + MUIBPS_TOP + MUIBPS_BOTTOM + MUIBPS_RIGHT