In file include/csws/csdialog.h:

class csDialog : public csComponent

The Dialog class is a single-colored canvas which contains a number of child controls

Inheritance:


Public Methods

csDialog(csComponent *iParent, csDialogFrameStyle iFrameStyle = csdfsNone)
Create dialog object
virtual void Draw()
Draw the button
virtual void FixSize(int &newW, int &newH)
Fix dialog size when resizing
void GetBorderSize(int &w, int &h)
Return border width and height
virtual bool HandleEvent(csEvent &Event)
Handle input events
void SetAutoGrid(int iDeltaX, int iDeltaY, bool iSnapSize)
Enable/disable(dx<0||dy<0) automatic control placement in a grid fashion
virtual bool SetRect(int xmin, int ymin, int xmax, int ymax)
Do auto-placement work if enabled
virtual void SuggestSize(int &w, int &h)
Return the recommended minimal size of dialog

Protected Fields

int BorderWidth
Border width and height

Protected Methods

static bool do_topleft(csComponent *comp, void *param)
Used by SuggestSize

Private Fields

csComponent* first
First component
csDialogFrameStyle FrameStyle
Dialog frame style
int GridX
Automatical grid placement parameters
bool SnapSizeToGrid
Automatically snap dialog size to grid?

Inherited from csComponent:

Public Fields

csApp* app
csRect bound
csVector clipchildren
csComponent* focused
unsigned int id
csComponent* next
csComponent* parent
csComponent* top

Public Methods

void Box(int xmin, int ymin, int xmax, int ymax, int colindx)
void Center(bool iHoriz = true, bool iVert = true)
virtual void Close()
virtual void Delete(csComponent *comp)
void DeleteAll()
void DeleteClipChild(csComponent *clipchild)
void Drag(int x, int y, int DragMode)
void FindMaxFreeRect(csRect &area)
virtual void FixPosition(int &newX, int &newY)
csComponent* ForEach(bool (*func) (csComponent *child, void *param), void *param = NULL, bool Zorder = false)
csComponent* GetChild(int find_id)
csComponent* GetClipParent()
int GetColor(int Index)
csComponent* GetDefault()
int GetDragStyle()
csComponent* GetFocused()
int GetFont()
int GetState(int mask)
virtual void GetText(char *oText, int iTextSize)
virtual char* GetText()
csComponent* GetTop()
void GlobalToLocal(int &x, int &y)
bool HandleDragEvent(csEvent &Event, int BorderW, int BorderH)
virtual void Hide()
virtual void Insert(csComponent *comp)
void InsertClipChild(csComponent *clipchild)
void Invalidate(csRect &area, bool IncludeChildren = false)
void Invalidate(int xmin, int ymin, int xmax, int ymax, bool IncludeChildren = false)
void Invalidate(bool IncludeChildren = false)
void Line(float x1, float y1, float x2, float y2, int colindx)
void LocalToGlobal(int &x, int &y)
virtual bool Maximize()
virtual csComponent* NextChild(csComponent *start = NULL, bool disabled = false)
virtual csComponent* NextControl(csComponent *start = NULL)
virtual csComponent* NextGroup(csComponent *start = NULL)
void ObliqueRect3D(int xmin, int ymin, int xmax, int ymax, int cornersize, int darkindx, int lightindx)
void Pixel(int x, int y, int colindx)
virtual bool PostHandleEvent(csEvent &Event)
virtual bool PreHandleEvent(csEvent &Event)
virtual csComponent* PrevChild(csComponent *start = NULL, bool disabled = false)
virtual csComponent* PrevControl(csComponent *start = NULL)
virtual csComponent* PrevGroup(csComponent *start = NULL)
void Rect3D(int xmin, int ymin, int xmax, int ymax, int darkindx, int lightindx)
void Redraw()
virtual bool Restore()
bool Select()
void* SendCommand(int CommandCode, void *Info = NULL)
void SetApp(csApp *newapp)
void SetClipRect()
void SetClipRect(int xmin, int ymin, int xmax, int ymax)
void SetColor(int Index, int Color)
bool SetDragRect(int xmin, int ymin, int xmax, int ymax)
void SetDragStyle(int iDragStyle)
bool SetFocused(csComponent *comp)
void SetFont(int iFont, bool IncludeChildren = false)
void SetMouse(csMouseCursorID Cursor)
void SetPalette(int iPaletteID)
void SetPalette(int *iPalette, int iPaletteSize)
void SetPos(int x, int y)
void SetSize(int w, int h)
void SetSizingCursor(int dragtype)
virtual void SetState(int mask, bool enable)
virtual void SetSuggestedSize(int dw, int dh)
virtual void SetText(char *iText)
bool SetZorder(csComponent *comp, csComponent *below)
virtual void Show(bool focused = false)
void Sprite2D(csSprite2D *s2d, int x, int y, int w, int h)
void Sprite2D(csSprite2D *s2d, int x, int y)
void Text(int x, int y, int fgindx, int bgindx, char *s)
int TextHeight()
int TextWidth(char *text)

Public

Protected Fields

csRect clip
csComponent* clipparent
csRect dirty
static csRect dragBound
int DragStyle
static int dragX
int Font
bool Maximized
csRect OrgBound
bool originalpalette
int* palette
int state
char* text

Protected Methods

void Clip(csObjVector &rect, csComponent *last)
void ClipAlienChildren(csObjVector &rect, csComponent *child)
void DrawUnderline(int iX, int iY, char *iText, int iUnderlinePos, int iColor)
static void PrepareLabel(char *iLabel, char * &oLabel, int &oUnderlinePos)
static int WordLeft(char *iText, int StartPos)
static int WordRight(char *iText, int StartPos)

Inherited from csBase:


Documentation

The Dialog class is a single-colored canvas which contains a number of child controls. The dialog can perform a number of operations on its childs such as switching between them using Tab/ShiftTab key, activating the default button when Enter is pressed etc.

Other uses for csDialog class are for floating toolbars. They can be even resizeable; to create a floating toolbar you should create a stand-alone dialog object, setting his DragStyle to CS_DRAG_MOVEABLE and, possibly, CS_DRAG_SIZEABLE. In this case dialog will act as a standalone window; it would be good if you specify its frame style to csdfsAround: in this case it will look like a usual window but without titlebar.

csDialogFrameStyle FrameStyle
Dialog frame style

int GridX
Automatical grid placement parameters

bool SnapSizeToGrid
Automatically snap dialog size to grid?

csComponent* first
First component

int BorderWidth
Border width and height

csDialog(csComponent *iParent, csDialogFrameStyle iFrameStyle = csdfsNone)
Create dialog object

virtual void Draw()
Draw the button

virtual bool HandleEvent(csEvent &Event)
Handle input events

void SetAutoGrid(int iDeltaX, int iDeltaY, bool iSnapSize)
Enable/disable(dx<0||dy<0) automatic control placement in a grid fashion. DeltaX and DeltaY is the horizontal and vertical distance between controls; SnapSize tells dialog object whenever dialog size should snap when it is resized to the maximal x/y coordinates of all controls.

virtual bool SetRect(int xmin, int ymin, int xmax, int ymax)
Do auto-placement work if enabled

virtual void SuggestSize(int &w, int &h)
Return the recommended minimal size of dialog

void GetBorderSize(int &w, int &h)
Return border width and height

virtual void FixSize(int &newW, int &newH)
Fix dialog size when resizing

static bool do_topleft(csComponent *comp, void *param)
Used by SuggestSize


This class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++

(c)opyright by Malte Zöckler, Roland Wunderling
contact: doc++@zib.de