Main Page Namespace List Class Hierarchy Compound List File List Namespace Members Compound Members File Members Related Pages

# wkgl::AbstractEdit Class Reference

This class implements common edit control features. More...

`#include <AbstractEdit.h>`

Inheritance diagram for wkgl::AbstractEdit:

List of all members.

## Public Methods
virtual UINT | getMaxCharCount ()
| Gets the maximum number of characters that can be entered into this field.
virtual void | setMaxCharCount (UINT count)
| Sets the maximum number of characters that can be entered into this field.
virtual void | setHorizontalAlignment (LFLAG align)
| Sets the horitontal alignment of the text in this field.
virtual LFLAG | getHorizontalAlignment ()
| Gets the horitontal alignment of the text in this field.
virtual void | numberOnly (BOOL num=TRUE)
| Sets whether this field only accepts numbers or not.
virtual BOOL | isNumberOnly ()
| Returns whether this field only accepts numbers or not.
virtual void | lowercaseOnly (BOOL lower=TRUE)
| Sets whether this field converts text to lowercase or not.
virtual BOOL | isLowercaseOnly ()
| Returns whether this field converts text to lowercase or not.
virtual void | uppercaseOnly (BOOL upper=TRUE)
| Sets whether this field converts text to uppercase or not.
virtual BOOL | isUppercaseOnly ()
| Returns whether this field converts text to uppercase or not.
virtual BOOL | create (Control *parent)
| Specifies the manner in which a particular control is to be created.
virtual void | setStyle (LFLAG style, bool extended=false)
| Alters a control's style.
virtual LFLAG | getStyle (bool extended=false)
| Gets a control's style.
virtual LRESULT | sendEventToParent (UINT message, WPARAM wParam, LPARAM lParam)
| Transmits the given event to the parent.
virtual LRESULT | sendEventToChild (HWND child, UINT message, WPARAM wParam, LPARAM lParam)
| Transmits the given event to the child.
virtual LRESULT | sendEventToChild (Component *child, UINT message, WPARAM wParam, LPARAM lParam)
| Transmits the given event to the child.
LRESULT | sendMessage (UINT msg, WPARAM wParam, LPARAM lParam)
| Sends a message to the underlying control.
virtual BOOL | show ()
| Shows the component.
virtual BOOL | hide ()
| Hides the component.
virtual void | setSize (int width, int height)
| Sets the size of the component.
virtual void | setWidth (int width)
| Sets the width of the component.
virtual void | setHeight (int height)
| Sets the height of the component.
virtual int | getWidth ()
| Gets the width of the component.
virtual int | getHeight ()
| Gets the height of the component.
virtual void | setText (const char *label)
| Set the components text.
virtual void | setText (String label)
| Set the components text.
virtual void | getText (char *buf, int buf_len=30)
| Returns the component's text.
virtual void | getText (String &buf, int buf_len=30)
| Returns the component's text.
virtual int | getX ()
| Returns the component's horizontal position.
virtual int | getY ()
| Returns the component's vertical position.
virtual void | setX (int x)
| Sets the component's horizontal position.
virtual void | setY (int y)
| Sets the component's vertical position.
virtual BOOL | autoPositionX ()
| Tells whether x coordinate should be auto positioned by layout manager.
virtual BOOL | autoPositionY ()
| Tells whether y coordinate should be auto positioned by layout manager.
virtual void | setautoPositionX (BOOL a)
| Sets whether x coordinate should be auto positioned by layout manager.
virtual void | setautoPositionY (BOOL a)
| Sets whether y coordinate should be auto positioned by layout manager.
virtual void | setPosition (int x, int y)
| Sets the component's position.
virtual void | setCursor (Cursor *cur)
| Set the cursor that will be used by this window.
virtual Cursor * | getCursor ()
| Get the cursor that is be used by this window.
virtual WNDCLASSEX | getWndClass ()
| Returns the window class structure that represents this window.
virtual String * | getClassName ()
| Returns the window class name of this control.
virtual void | paint ()
| Paints the control to the display.
virtual void | registerComponent (HWND *hwnd, Component *com)
| Allows this component to recieve top level events.
virtual void | registerChild (HWND *hwnd, Component *com)
| Allows this component to propagate an event to the given child.
virtual LRESULT | fireChildEvents (UINT message, WPARAM wParam, LPARAM lParam)
| Propagates the events to the appropriate child/children.
virtual Component * | getParent ()
| Returns a pointer to the parent component.
virtual void | setParent (Component *p)
| Sets the components parent.
virtual HINSTANCE | getInstance ()
| Returns the instance of the application.
virtual HWND | getHwnd ()
| Returns the window handle.
virtual void | setHwnd (HWND h)
| Sets the window handle.
virtual void | addCallBack (COMCALLBACK callback)
| Adds a callback function.
virtual void | addCallBack (CallBack *callback)
| Adds a callback method.
virtual LRESULT | fireEvents (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
| Propagates events to all the callback functions.
## Static Public Methods
UINT | getWndProc ()
| Returns the the address of GlobalProc().
## Protected Methods
| AbstractEdit (SFLAG type, int w, int h, int x=AUTOPOS, int y=AUTOPOS, const char *def_text=NULL)
| Creates a new AbstractEdit Field.
void | createControl (Component *parent, String *classname, String *label, int width, int height, int x, int y, int style, int exstyle)
| Method that does the actual control creation.
void | getCharSize ()
| Gets the average width of a character and the height of a character.
## Protected Attributes
UINT | text_limit
LFLAG | align
Control * | parent
| The parent of the component.
int | showstate
| The state of the window when hidden.
int | width
| The width of the component in pixels.
int | height
| The height of the component in pixels.
int | x
| The horizontal position of the panel.
int | y
| The vertical position of the panel.
BOOL | ax
| Flag saying whether the x is auto positioned.
BOOL | ay
| Flag saying whether the y is auto positioned.
Cursor * | cursor
| The cursor.
String | className
| The name of this class.
String * | label
| The controls label.
WNDCLASSEX | wndclass
| The window class.
DWORD | style
| The style of the control.
DWORD | exstyle
| The extended style of the control.
HINSTANCE | hInstance
| The instance of this application.
HWND | hwnd
| The handle to the component.
std::vector< CHILDCOMPONENT > | clisteners
| A list of the child components that events are to be passed to.
std::vector< COMCALLBACK > | comlisteners
| Stores the callbacks for this component that use functions. Stores the functions given to AddCallBack(). It is used by FireEvents() to notify the callbacks.
std::vector< CallBack * > | classlisteners
| Stores the callbacks for this component that come from classes. Stores the functions given to AddCallBack(). It is used by FireEvents() to notify the callbacks.
## Static Protected Attributes
TEXTMETRIC | finfo
| Information about the font used by the system.
## Friends
LRESULT CALLBACK | globalProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
| Is used to process all the callback functions.

## Detailed Description

This class implements common edit control features.

Author:
  Micheal Nooner

An edit control can generates the following events:

- EN_CHANGE The user has modified text in an edit control. The system updates the display before sending this message (unlike EN_UPDATE).
- EN_ERRSPACE The edit control cannot allocate enough memory to meet a specific request.
- EN_HSCROLL The user has clicked the edit control's horizontal scroll bar. The system sends this message before updating the screen.
- EN_KILLFOCUS The user has selected another control.
- EN_MAXTEXT While inserting text, the user has exceeded the specified number of characters for the edit control. Insertion has been truncated. This message is also sent either when an edit control does not have the ES_AUTOHSCROLL style and the number of characters to be inserted exceeds the width of the edit control or when an edit control does not have the ES_AUTOVSCROLL style and the total number of lines to be inserted exceeds the height of the edit control.
- EN_SETFOCUS The user has selected this edit control.
- EN_UPDATE The user has altered the text in the edit control and the system is about to display the new text. The system sends this message after formatting the text, but before displaying it, so that the application can resize the edit control window.
- EN_VSCROLL The user has clicked the edit control's vertical scroll bar or has scrolled the mouse wheel over the edit control. The system sends this message before updating the screen.

## Constructor & Destructor Documentation

AbstractEdit::AbstractEdit | ( | SFLAG | type,
|  | int | w,
|  | int | h,
|  | int | x = AUTOPOS,
|  | int | y = AUTOPOS,
|  | const char * | def_text = NULL
| ) | `[protected]`

  | Creates a new AbstractEdit Field. Parameters:
  type | the type of edit control it is.
  x | how far left to place the control.
  y | how far down to place the control.
  w | the width of the component (in characters).
  h | the height of the component (in characters).
  def_text | the default text of the control.

## Member Function Documentation

void Component::addCallBack | ( | CallBack * | callback | ) | `[virtual, inherited]`

  | Adds a callback method. The callback must be a method from a class that inheirits from CallBack. Parameters:
  callback | the function to call when an event occurs
See also: FireEvents(), classlisteners

void Component::addCallBack | ( | COMCALLBACK | callback | ) | `[virtual, inherited]`

  | Adds a callback function. Parameters:
  callback | the function to call when an event occurs
See also: FireEvents(), comlisteners

BOOL Control::autoPositionX | ( |  | ) | `[virtual, inherited]`

| Tells whether x coordinate should be auto positioned by layout manager. Returns: The value of ax.

BOOL Control::autoPositionY | ( |  | ) | `[virtual, inherited]`

| Tells whether y coordinate should be auto positioned by layout manager. Returns: The value of ay.

BOOL AbstractEdit::create | ( | Control * | parent | ) | `[virtual]`

  | Specifies the manner in which a particular control is to be created. Parameters:
  parent | Not used by this control.
Returns: TRUE if the control was created, FALSE otherwise. Implements wkgl::Control.

void Control::createControl | ( | Component * | parent,
|  | String * | classname,
|  | String * | label,
|  | int | width,
|  | int | height,
|  | int | x,
|  | int | y,
|  | int | style,
|  | int | exstyle
| ) | `[protected, inherited]`

  | Method that does the actual control creation. Parameters:
  parent | the parent of this component.
  label | the text to associate with the button.
  classname | the name of the registered class to use (see windows docs).
  width | how wide to make the button.
  height | how tall to make the button.
  x | how far left to place the button at.
  y | how far down to place the button at.
  style | the style of the button (see windows docs).
  exstyle | the extended window style (see windows docs).

LRESULT Component::fireChildEvents | ( | UINT | message,
|  | WPARAM | wParam,
|  | LPARAM | lParam
| ) | `[virtual, inherited]`

  | Propagates the events to the appropriate child/children. Parameters:
  message | the windows message to pass to the callback
  wParam | the submessage (see windows docs).
  lParam | the subparameter (see windows docs).
Returns: 0 if the event was handled otherwise what DefWindowProc returns. See also: RegisterChild(), clisteners Reimplemented in wkgl::Dialog.

LRESULT Component::fireEvents | ( | HWND | hwnd,
|  | UINT | message,
|  | WPARAM | wParam,
|  | LPARAM | lParam
| ) | `[virtual, inherited]`

  | Propagates events to all the callback functions. Parameters:
  hwnd | the window handle to the window the events go to.
  message | the windows message to pass to the callback.
  wParam | the submessage (see windows docs).
  lParam | the subparameter (see windows docs).
Returns: 0 if the event was handled otherwise what DefWindowProc returns. See also: AddCallBack(), comlisteners Reimplemented in wkgl::Dialog.

void Control::getCharSize | ( |  | ) | `[protected, inherited]`

| Gets the average width of a character and the height of a character.

String * Control::getClassName | ( |  | ) | `[virtual, inherited]`

| Returns the window class name of this control. Returns: the window class name of this control.

Cursor * Control::getCursor | ( |  | ) | `[virtual, inherited]`

| Get the cursor that is be used by this window. Returns: The cursor that is be used by this window.

int Control::getHeight | ( |  | ) | `[virtual, inherited]`

| Gets the height of the component. Returns: The height of the control. Reimplemented in wkgl::LayoutManager.

LFLAG AbstractEdit::getHorizontalAlignment | ( |  | ) | `[virtual]`

| Gets the horitontal alignment of the text in this field. Returns: Either ALIGN_LEFT (default), ALIGN_RIGHT or ALIGN_CENTER.

HWND Component::getHwnd | ( |  | ) | `[virtual, inherited]`

| Returns the window handle. Returns: the window handle.

HINSTANCE Component::getInstance | ( |  | ) | `[virtual, inherited]`

| Returns the instance of the application. Returns: the instance of the application.

UINT AbstractEdit::getMaxCharCount | ( |  | ) | `[virtual]`

| Gets the maximum number of characters that can be entered into this field. Returns: The text limit for this edit control, if the control has not been created then a value of 0 means that the limit is unset.

Component * Component::getParent | ( |  | ) | `[virtual, inherited]`

| Returns a pointer to the parent component. Returns: A pointer to the parent component.

LFLAG Control::getStyle | ( | bool | extended = false | ) | `[virtual, inherited]`

  | Gets a control's style. Parameters:
  extended | If true then style is an extended style
Returns: The window style.

void Control::getText | ( | String & | buf,
|  | int | buf_len = 30
| ) | `[virtual, inherited]`

  | Returns the component's text. Parameters:
  buf | Where to place the controls text.
  buf_len | the length of the buffer.
Returns: The controls text

void Control::getText | ( | char * | buf,
|  | int | buf_len = 30
| ) | `[virtual, inherited]`

  | Returns the component's text. Parameters:
  buf | Where to place the controls text.
  buf_len | the length of the buffer.
Returns: The controls text

int Control::getWidth | ( |  | ) | `[virtual, inherited]`

| Gets the width of the component. Returns: The width of the control. Reimplemented in wkgl::LayoutManager.

WNDCLASSEX Control::getWndClass | ( |  | ) | `[virtual, inherited]`

| Returns the window class structure that represents this window. Returns: The window class structure used to create this window.

UINT Component::getWndProc | ( |  | ) | `[static, inherited]`

| Returns the the address of GlobalProc(). Returns: the the address of GlobalProc().

int Control::getX | ( |  | ) | `[virtual, inherited]`

| Returns the component's horizontal position. Returns: The control's horizontal position.

int Control::getY | ( |  | ) | `[virtual, inherited]`

| Returns the component's vertical position. Returns: The control's vertical position.

BOOL Control::hide | ( |  | ) | `[virtual, inherited]`

| Hides the component. It still may not be hidden if Window::BeginMessageLoop() has not been called yet, or some callback negates this methods effect. Returns: whether the control was hidden. Reimplemented in wkgl::Dialog, and wkgl::Window.

BOOL AbstractEdit::isLowercaseOnly | ( |  | ) | `[virtual]`

| Returns whether this field converts text to lowercase or not.

BOOL AbstractEdit::isNumberOnly | ( |  | ) | `[virtual]`

| Returns whether this field only accepts numbers or not.

BOOL AbstractEdit::isUppercaseOnly | ( |  | ) | `[virtual]`

| Returns whether this field converts text to uppercase or not.

void AbstractEdit::lowercaseOnly | ( | BOOL | lower = TRUE | ) | `[virtual]`

| Sets whether this field converts text to lowercase or not.

void AbstractEdit::numberOnly | ( | BOOL | num = TRUE | ) | `[virtual]`

  | Sets whether this field only accepts numbers or not. Parameters:
  num | if TRUE then the edit control will be set to accept numbers only, otherwise it will be set to the default behavior.

void Control::paint | ( |  | ) | `[virtual, inherited]`

| Paints the control to the display.

void Component::registerChild | ( | HWND * | hwnd,
|  | Component * | com
| ) | `[virtual, inherited]`

  | Allows this component to propagate an event to the given child. Parameters:
  hwnd | the window handle of the control to register.
  com | the control to register.
See also: CHILDCOMPONENT, clisteners

void Component::registerComponent | ( | HWND * | hwnd,
|  | Component * | com
| ) | `[virtual, inherited]`

  | Allows this component to recieve top level events. Parameters:
  hwnd | the window handle of the control to register.
  com | the control to register.
See also: AddCallBack(), FireEvents(), GlobalProc()

LRESULT Control::sendEventToChild | ( | Component * | child,
|  | UINT | message,
|  | WPARAM | wParam,
|  | LPARAM | lParam
| ) | `[virtual, inherited]`

  | Transmits the given event to the child. Parameters:
  child | the child control to send the event to.
  message | the windows message to pass to the callback
  wParam | the submessage (see windows docs).
  lParam | the subparameter (see windows docs).
Returns: what is returned by the childs FireEvent(). See also: FireEvents()

LRESULT Control::sendEventToChild | ( | HWND | child,
|  | UINT | message,
|  | WPARAM | wParam,
|  | LPARAM | lParam
| ) | `[virtual, inherited]`

  | Transmits the given event to the child. Parameters:
  child | the child control to send the event to.
  message | the windows message to pass to the callback
  wParam | the submessage (see windows docs).
  lParam | the subparameter (see windows docs).
Returns: what is returned by the childs FireEvent(). See also: FireEvents()

LRESULT Control::sendEventToParent | ( | UINT | message,
|  | WPARAM | wParam,
|  | LPARAM | lParam
| ) | `[virtual, inherited]`

  | Transmits the given event to the parent. Parameters:
  message | the windows message to pass to the callback
  wParam | the submessage (see windows docs).
  lParam | the subparameter (see windows docs).
Returns: 0 if the event was handled otherwise what DefWindowProc returns.

LRESULT Control::sendMessage | ( | UINT | msg,
|  | WPARAM | wParam,
|  | LPARAM | lParam
| ) | `[inherited]`

| Sends a message to the underlying control. See the components docs.

void Control::setautoPositionX | ( | BOOL | a | ) | `[virtual, inherited]`

  | Sets whether x coordinate should be auto positioned by layout manager. Parameters:
  a | TRUE specifies that the x coordinate should be autopositioned.

void Control::setautoPositionY | ( | BOOL | a | ) | `[virtual, inherited]`

  | Sets whether y coordinate should be auto positioned by layout manager. Parameters:
  a | TRUE specifies that the y coordinate should be autopositioned.

void Control::setCursor | ( | Cursor * | cur | ) | `[virtual, inherited]`

| Set the cursor that will be used by this window.

void Control::setHeight | ( | int | height | ) | `[virtual, inherited]`

  | Sets the height of the component. Parameters:
  height | the new height of the control.

void AbstractEdit::setHorizontalAlignment | ( | LFLAG | align | ) | `[virtual]`

  | Sets the horitontal alignment of the text in this field. Parameters:
  align | Either ALIGN_LEFT (default), ALIGN_RIGHT or ALIGN_CENTER.

void Component::setHwnd | ( | HWND | h | ) | `[virtual, inherited]`

  | Sets the window handle. Parameters:
  h | The new window handle.

void AbstractEdit::setMaxCharCount | ( | UINT | count | ) | `[virtual]`

  | Sets the maximum number of characters that can be entered into this field. Parameters:
  count | The maximum number of characters this control will accept.

void Component::setParent | ( | Component * | p | ) | `[virtual, inherited]`

  | Sets the components parent. Parameters:
  p | The new parent of this component.

void Control::setPosition | ( | int | x,
|  | int | y
| ) | `[virtual, inherited]`

  | Sets the component's position. This method is most often used by layout managers to set a control's position without affecting wether x or y's value is AUTOPOS. Parameters:
  x | the horizontal position to place the control.
  y | the vertical position to place the control.
Reimplemented in wkgl::LayoutManager.

void Control::setSize | ( | int | width,
|  | int | height
| ) | `[virtual, inherited]`

  | Sets the size of the component. Parameters:
  width | the new width of the control.
  height | the new height of the control.

void Control::setStyle | ( | LFLAG | style,
|  | bool | extended = false
| ) | `[virtual, inherited]`

  | Alters a control's style. Parameters:
  style | The new window style to use.
  extended | If true then style is an extended style

void Control::setText | ( | String | label | ) | `[virtual, inherited]`

  | Set the components text. Parameters:
  label | the text to associate with the button.

void Control::setText | ( | const char * | label | ) | `[virtual, inherited]`

  | Set the components text. Parameters:
  label | the text to associate with the button.
Reimplemented in wkgl::AbstractButton.

void Control::setWidth | ( | int | width | ) | `[virtual, inherited]`

  | Sets the width of the component. Parameters:
  width | the new width of the control.

void Control::setX | ( | int | x | ) | `[virtual, inherited]`

  | Sets the component's horizontal position. Parameters:
  x | what to set the control's horizontal position to.

void Control::setY | ( | int | y | ) | `[virtual, inherited]`

  | Sets the component's vertical position. Parameters:
  y | what to set the control's vertical position to.

BOOL Control::show | ( |  | ) | `[virtual, inherited]`

| Shows the component. It still may not be shown if Window::BeginMessageLoop() has not been called yet, or some callback negates this methods effect. Returns: whether the control was shown. Reimplemented in wkgl::Dialog, and wkgl::Window.

void AbstractEdit::uppercaseOnly | ( | BOOL | upper = TRUE | ) | `[virtual]`

| Sets whether this field converts text to uppercase or not.

## Friends And Related Function Documentation

LRESULT CALLBACK globalProc | ( | HWND | hwnd,
|  | UINT | message,
|  | WPARAM | wParam,
|  | LPARAM | lParam
| ) | `[friend, inherited]`

  | Is used to process all the callback functions. Parameters:
  hwnd | the window handle to the window the events go to
  message | the windows message to pass to the callback
  wParam | the submessage (see windows docs).
  lParam | the subparameter (see windows docs).
Returns: what the appropriate component's FireEvent() method returns otherwise if returns what DefWindowProc() returns. See also: Component::FireEvents

## Member Data Documentation

LFLAG wkgl::AbstractEdit::align`[protected]`

BOOL wkgl::Control::ax`[protected, inherited]`

| Flag saying whether the x is auto positioned.

BOOL wkgl::Control::ay`[protected, inherited]`

| Flag saying whether the y is auto positioned.

std::vector< CallBack* > wkgl::Component::classlisteners`[protected, inherited]`

| Stores the callbacks for this component that come from classes. Stores the functions given to AddCallBack(). It is used by FireEvents() to notify the callbacks. See also: AddCallBack(), FireEvents()

String wkgl::Control::className`[protected, inherited]`

| The name of this class.

std::vector< CHILDCOMPONENT > wkgl::Component::clisteners`[protected, inherited]`

| A list of the child components that events are to be passed to. Stores the children who wish to recieve events. See also: FireChildEvents(), CHILDCOMPONENT

std::vector< COMCALLBACK > wkgl::Component::comlisteners`[protected, inherited]`

| Stores the callbacks for this component that use functions. Stores the functions given to AddCallBack(). It is used by FireEvents() to notify the callbacks. See also: AddCallBack(), FireEvents()

Cursor* wkgl::Control::cursor`[protected, inherited]`

| The cursor.

DWORD wkgl::Control::exstyle`[protected, inherited]`

| The extended style of the control. Reimplemented in wkgl::Window.

TEXTMETRIC Control::finfo`[static, protected, inherited]`

| Information about the font used by the system.

int wkgl::Control::height`[protected, inherited]`

| The height of the component in pixels.

HINSTANCE wkgl::Component::hInstance`[protected, inherited]`

| The instance of this application.

HWND wkgl::Component::hwnd`[protected, inherited]`

| The handle to the component.

String* wkgl::Control::label`[protected, inherited]`

| The controls label.

Control* wkgl::Control::parent`[protected, inherited]`

| The parent of the component. Reimplemented from wkgl::Component.

int wkgl::Control::showstate`[protected, inherited]`

| The state of the window when hidden.

DWORD wkgl::Control::style`[protected, inherited]`

| The style of the control. Reimplemented in wkgl::Window.

UINT wkgl::AbstractEdit::text_limit`[protected]`

int wkgl::Control::width`[protected, inherited]`

| The width of the component in pixels.

WNDCLASSEX wkgl::Control::wndclass`[protected, inherited]`

| The window class.

int wkgl::Control::x`[protected, inherited]`

| The horizontal position of the panel.

int wkgl::Control::y`[protected, inherited]`

| The vertical position of the panel.

The documentation for this class was generated from the following files:

- AbstractEdit.h
- AbstractEdit.cpp