Control

Control class.

class Control : DObject , IWindow {
DWORD ldlgcode;
enum _compat;
enum _compat;
HWND hwnd;
ContextMenu cmenu;
DockStyle sdock;
Dstring _ctrlname;
Object otag;
Color backc;
Color forec;
Rect wrect;
Size wclientsz;
Cursor wcurs;
Font wfont;
Control wparent;
Region wregion;
ControlCollection ccollection;
Dstring wtext;
ControlStyles ctrlStyle;
HBRUSH _hbrBg;
RightToLeft rtol;
uint _disallowLayout;
DropTarget droptarget;
LONG wstyle;
LONG wexstyle;
LONG wclassStyle;
CBits cbits;
}

Constructors

this
this()
this(Dstring text)
this(Control cparent, Dstring text)
this(Dstring text, int left, int top, int width, int height)
this(Control cparent, Dstring text, int left, int top, int width, int height)

Construct a new Control instance.

Destructor

A destructor is present on this object, but not explicitly documented in the source.

Members

Classes

ControlCollection
class ControlCollection

Functions

bringToFront
void bringToFront()
bringUpOne
void bringUpOne()
contains
bool contains(Control ctrl)
createControl
void createControl()
createControlsInstance
ControlCollection createControlsInstance()
createGraphics
Graphics createGraphics()

Returns a new Graphics object for this control, creating the control handle if necessary.

createHandle
void createHandle()
createParams
void createParams(ref CreateParams cp)
defWndProc
void defWndProc(ref Message msg)
delayInvoke
void delayInvoke(void function(Control, size_t[]) fn, size_t[] params...)

Asynchronously calls a function after the window message queue processes its current messages. It is generally not safe to pass references to the delayed function. Exceptions are not propagated to the caller.

delayInvoke
void delayInvoke(void function() fn)

Asynchronously calls a function after the window message queue processes its current messages. It is generally not safe to pass references to the delayed function. Exceptions are not propagated to the caller.

destroyHandle
void destroyHandle()
disable
void disable()
disableVisualStyle
void disableVisualStyle(bool byes = true)
dispose
void dispose(bool disposing)
dispose
void dispose()
doDragDrop
DragDropEffects doDragDrop(dfl.data.IDataObject dataObj, DragDropEffects allowedEffects)
DragDropEffects doDragDrop(Data obj, DragDropEffects allowedEffects)

Perform a drag/drop operation.

enable
void enable()
findForm
Form findForm()
focus
bool focus()
getAutoScaleSize
Size getAutoScaleSize()
getAutoScaleSize
Size getAutoScaleSize(Font f)
getChildAtPoint
Control getChildAtPoint(Point pt)
getStyle
bool getStyle(ControlStyles flag)
getTopLevel
bool getTopLevel()
hide
void hide()
initLayout
void initLayout()
invalidate
void invalidate(Region rgn, bool andChildren)
void invalidate(Region rgn)
void invalidate(Rect r, bool andChildren)
void invalidate(Rect r)
void invalidate(bool andChildren)
invalidate
void invalidate()
invoke
void invoke(void delegate() dg)

Synchronously calls a delegate in this Control's thread. This function is thread safe and exceptions are propagated to the caller.

invoke
Object invoke(Object delegate(Object[]) dg, Object[] args...)

Synchronously calls a delegate in this Control's thread. This function is thread safe and exceptions are propagated to the caller.

onBackColorChanged
void onBackColorChanged(EventArgs ea)
onClick
void onClick(EventArgs ea)
onContextMenuChanged
void onContextMenuChanged(EventArgs ea)
onControlAdded
void onControlAdded(ControlEventArgs cea)
onControlRemoved
void onControlRemoved(ControlEventArgs cea)
onCursorChanged
void onCursorChanged(EventArgs ea)
onDisposed
void onDisposed(EventArgs ea)
onDoubleClick
void onDoubleClick(EventArgs ea)
onDragDrop
void onDragDrop(DragEventArgs ea)
onDragEnter
void onDragEnter(DragEventArgs ea)
onDragLeave
void onDragLeave(EventArgs ea)
onDragOver
void onDragOver(DragEventArgs ea)
onEnabledChanged
void onEnabledChanged(EventArgs ea)
onFontChanged
void onFontChanged(EventArgs ea)
onForeColorChanged
void onForeColorChanged(EventArgs ea)
onGiveFeedback
void onGiveFeedback(GiveFeedbackEventArgs ea)
onGotFocus
void onGotFocus(EventArgs ea)
onHandleCreated
void onHandleCreated(EventArgs ea)
onHandleDestroyed
void onHandleDestroyed(EventArgs ea)
onHasLayoutChanged
void onHasLayoutChanged(EventArgs ea)
onHelpRequested
void onHelpRequested(HelpEventArgs hea)
onKeyDown
void onKeyDown(KeyEventArgs kea)
onKeyPress
void onKeyPress(KeyPressEventArgs kea)
onKeyUp
void onKeyUp(KeyEventArgs kea)
onLayout
void onLayout(LayoutEventArgs lea)
onLostFocus
void onLostFocus(EventArgs ea)
onMouseDown
void onMouseDown(MouseEventArgs mea)
onMouseEnter
void onMouseEnter(MouseEventArgs mea)
onMouseHover
void onMouseHover(MouseEventArgs mea)
onMouseLeave
void onMouseLeave(MouseEventArgs mea)
onMouseMove
void onMouseMove(MouseEventArgs mea)
onMouseUp
void onMouseUp(MouseEventArgs mea)
onMouseWheel
void onMouseWheel(MouseEventArgs mea)
onMove
void onMove(EventArgs ea)
onPaint
void onPaint(PaintEventArgs pea)
onPaintBackground
void onPaintBackground(PaintEventArgs pea)
onParentChanged
void onParentChanged(EventArgs ea)
onQueryContinueDrag
void onQueryContinueDrag(QueryContinueDragEventArgs ea)
onReflectedMessage
void onReflectedMessage(ref Message m)
onResize
void onResize(EventArgs ea)
onRightToLeftChanged
void onRightToLeftChanged(EventArgs ea)
onSystemColorsChanged
void onSystemColorsChanged(EventArgs ea)
onTextChanged
void onTextChanged(EventArgs ea)
onVisibleChanged
void onVisibleChanged(EventArgs ea)
pointToClient
Point pointToClient(Point pt)

Converts a screen Point to a client Point.

pointToScreen
Point pointToScreen(Point pt)

Converts a client Point to a screen Point.

preProcessMessage
bool preProcessMessage(ref Message msg)
processKeyEventArgs
bool processKeyEventArgs(ref Message msg)
processMnemonic
bool processMnemonic(dchar charCode)
recreateHandle
void recreateHandle()
rectangleToClient
Rect rectangleToClient(Rect r)

Converts a screen Rectangle to a client Rectangle.

rectangleToScreen
Rect rectangleToScreen(Rect r)

Converts a client Rectangle to a screen Rectangle.

redraw
void redraw()
refresh
void refresh()
resetBackColor
void resetBackColor()
resetCursor
void resetCursor()
resetFont
void resetFont()
resetForeColor
void resetForeColor()
resetRightToLeft
void resetRightToLeft()
resetText
void resetText()
resumeLayout
void resumeLayout(bool byes)
resumeLayout
void resumeLayout()
select
void select(bool directed, bool forward)
select
void select()
sendBackOne
void sendBackOne()
sendToBack
void sendToBack()
setBounds
void setBounds(int x, int y, int width, int height, BoundsSpecified specified)
setBounds
void setBounds(int x, int y, int width, int height)
setBoundsCore
void setBoundsCore(int x, int y, int width, int height, BoundsSpecified specified)
setClientSizeCore
void setClientSizeCore(int width, int height)
setStyle
void setStyle(ControlStyles flag, bool value)
setVisibleCore
void setVisibleCore(bool byes)
show
void show()
suspendLayout
void suspendLayout()
update
void update()
updateStyles
void updateStyles()
wndProc
void wndProc(ref Message msg)
allowDrop
bool allowDrop [@property getter]

Properties

allowDrop
bool allowDrop [@property setter]
backColor
Color backColor [@property setter]
Color backColor [@property getter]
bottom
int bottom [@property getter]
bounds
Rect bounds [@property getter]
bounds
Rect bounds [@property setter]
canFocus
bool canFocus [@property getter]
canSelect
bool canSelect [@property getter]
capture
bool capture [@property getter]
bool capture [@property setter]
clientRectangle
Rect clientRectangle [@property getter]
clientSize
Size clientSize [@property getter]
Size clientSize [@property setter]
containsFocus
bool containsFocus [@property getter]
contextMenu
ContextMenu contextMenu [@property setter]
ContextMenu contextMenu [@property getter]
controls
ControlCollection controls [@property getter]
created
bool created [@property getter]
cursor
Cursor cursor [@property getter]
cursor
Cursor cursor [@property setter]
defaultBackColor
Color defaultBackColor [@property getter]
defaultFont
Font defaultFont [@property getter]
Font defaultFont [@property setter]
defaultFont
ControlFont defaultFont [@property setter]
defaultForeColor
Color defaultForeColor [@property getter]
defaultSize
Size defaultSize [@property getter]
displayRectangle
Rect displayRectangle [@property getter]
dock
DockStyle dock [@property setter]
dock
DockStyle dock [@property getter]
enabled
bool enabled [@property getter]
enabled
bool enabled [@property setter]
focused
bool focused [@property getter]
font
Font font [@property getter]
font
Font font [@property setter]
foreColor
Color foreColor [@property getter]
foreColor
Color foreColor [@property setter]
handle
HWindow handle [@property getter]
hasChildren
bool hasChildren [@property getter]
hasLayout
bool hasLayout [@property setter]

Get or set whether or not this control currently has its bounds managed. Fires onHasLayoutChanged as needed.

hasLayout
bool hasLayout [@property getter]

Get or set whether or not this control currently has its bounds managed. Fires onHasLayoutChanged as needed.

height
int height [@property getter]
height
int height [@property setter]
invokeRequired
bool invokeRequired [@property getter]

Returns true if the window does not belong to the current thread.

isHandleCreated
bool isHandleCreated [@property getter]
left
int left [@property getter]
left
int left [@property setter]
location
Point location [@property getter]

Property: get or set the X and Y location of the control.

location
Point location [@property setter]

Property: get or set the X and Y location of the control.

modifierKeys
Keys modifierKeys [@property getter]

Currently depressed modifier keys.

mouseButtons
MouseButtons mouseButtons [@property getter]

Currently depressed mouse buttons.

mousePosition
Point mousePosition [@property getter]
name
Dstring name [@property getter]

Property: get or set the name of this control used in code.

name
Dstring name [@property setter]

Property: get or set the name of this control used in code.

parent
Control parent [@property getter]
parent
Control parent [@property setter]
recreatingHandle
bool recreatingHandle [@property getter]
region
Region region [@property getter]
region
Region region [@property setter]
resizeRedraw
bool resizeRedraw [@property getter]
resizeRedraw
bool resizeRedraw [@property setter]
right
int right [@property getter]
rightToLeft
RightToLeft rightToLeft [@property getter]
rightToLeft
RightToLeft rightToLeft [@property setter]
size
Size size [@property getter]
size
Size size [@property setter]
supportsMouseTracking
bool supportsMouseTracking [@property getter]
tabStop
bool tabStop [@property getter]
tabStop
bool tabStop [@property setter]
tag
Object tag [@property getter]

Property: get or set additional data tagged onto the control.

tag
Object tag [@property setter]

Property: get or set additional data tagged onto the control.

text
Dstring text [@property getter]
text
Dstring text [@property setter]
top
int top [@property getter]
top
int top [@property setter]
topLevelControl
Control topLevelControl [@property getter]

Returns the topmost Control related to this control.

visible
bool visible [@property getter]
visible
bool visible [@property setter]
width
int width [@property getter]
width
int width [@property setter]
zIndex
int zIndex [@property getter]

Static functions

fromChildHandle
Control fromChildHandle(HWND hwChild)

Returns the Control instance from one of its window handles, or null if none.

fromHandle
Control fromHandle(HWND hw)

Returns the Control instance from its window handle, or null if none.

isMnemonic
bool isMnemonic(dchar charCode, string text)

Variables

backColorChanged
Event!(Control, EventArgs) backColorChanged;
click
Event!(Control, EventArgs) click;
contextMenuChanged
Event!(Control, EventArgs) contextMenuChanged;
controlAdded
Event!(Control, ControlEventArgs) controlAdded;
controlRemoved
Event!(Control, ControlEventArgs) controlRemoved;
cursorChanged
Event!(Control, EventArgs) cursorChanged;
disposed
Event!(Control, EventArgs) disposed;
doubleClick
Event!(Control, EventArgs) doubleClick;
dragDrop
Event!(Control, DragEventArgs) dragDrop;
dragEnter
Event!(Control, DragEventArgs) dragEnter;
dragLeave
Event!(Control, EventArgs) dragLeave;
dragOver
Event!(Control, DragEventArgs) dragOver;
enabledChanged
Event!(Control, EventArgs) enabledChanged;
fontChanged
Event!(Control, EventArgs) fontChanged;
foreColorChanged
Event!(Control, EventArgs) foreColorChanged;
giveFeedback
Event!(Control, GiveFeedbackEventArgs) giveFeedback;
gotFocus
Event!(Control, EventArgs) gotFocus;
handleCreated
Event!(Control, EventArgs) handleCreated;
handleDestroyed
Event!(Control, EventArgs) handleDestroyed;
hasLayoutChanged
Event!(Control, EventArgs) hasLayoutChanged;
helpRequested
Event!(Control, HelpEventArgs) helpRequested;
keyDown
Event!(Control, KeyEventArgs) keyDown;
keyPress
Event!(Control, KeyPressEventArgs) keyPress;
keyUp
Event!(Control, KeyEventArgs) keyUp;
layout
Event!(Control, LayoutEventArgs) layout;
lostFocus
Event!(Control, EventArgs) lostFocus;
mouseDown
Event!(Control, MouseEventArgs) mouseDown;
mouseEnter
Event!(Control, MouseEventArgs) mouseEnter;
mouseHover
Event!(Control, MouseEventArgs) mouseHover;
mouseLeave
Event!(Control, MouseEventArgs) mouseLeave;
mouseMove
Event!(Control, MouseEventArgs) mouseMove;
mouseUp
Event!(Control, MouseEventArgs) mouseUp;
mouseWheel
Event!(Control, MouseEventArgs) mouseWheel;
move
Event!(Control, EventArgs) move;
paint
Event!(Control, PaintEventArgs) paint;
parentChanged
Event!(Control, EventArgs) parentChanged;
queryContinueDrag
Event!(Control, QueryContinueDragEventArgs) queryContinueDrag;
resize
Event!(Control, EventArgs) resize;
rightToLeftChanged
Event!(Control, EventArgs) rightToLeftChanged;
systemColorsChanged
Event!(Control, EventArgs) systemColorsChanged;
textChanged
Event!(Control, EventArgs) textChanged;
visibleChanged
Event!(Control, EventArgs) visibleChanged;

Inherited Members

From IWindow

handle
HWindow handle [@property getter]

Meta