// // mxToolKit (c) 1999 by Mete Ciragan // // file: mxWidget.h // implementation: all // last modified: Apr 28 1999, Mete Ciragan // copyright: The programs and associated files contained in this // distribution were developed by Mete Ciragan. The programs // are not in the public domain, but they are freely // distributable without licensing fees. These programs are // provided without guarantee or warrantee expressed or // implied. // #ifndef INCLUDED_MXWIDGET #define INCLUDED_MXWIDGET #include "tier0/platform.h" enum { MX_BUTTON, MX_CHECKBOX, MX_CHOICE, MX_GLWINDOW, MX_MATSYSWINDOW, MX_GROUPBOX, MX_LABEL, MX_LINEEDIT, MX_LISTBOX, MX_MENU, MX_MENUBAR, MX_POPUPMENU, MX_PROGRESSBAR, MX_RADIOBUTTON, MX_SLIDER, MX_SCROLLBAR, MX_TAB, MX_TOGGLEBUTTON, MX_TREEVIEW, MX_WINDOW, MX_LISTVIEW, }; class mxWindow; class mxWidget_i; class mxWidget { mxWidget_i *d_this; protected: void setHandle (void *handle); void setType (int type); void setParent (mxWindow *parentWindow); public: // CREATORS mxWidget (mxWindow *parent, int x, int y, int w, int h, const char *label = 0); virtual ~mxWidget (); // Called just before deletion during shutdown // Closing of application aborted if any control returns false virtual bool CanClose(); virtual void OnDelete(); // MANIPULATORS // void setBounds (int x, int y, int w, int h); // // void setBounds (int x, int y, int w, int h); // void setLabel (const char *label); // // void setLabel (const char *format, ... ); void setVisible (bool b); void setEnabled (bool b); void setId (int id); void setUserData (void *userData); // ACCESSORS void *getHandle () const; int getType () const; mxWindow *getParent () const; int x () const; int y () const; int w () const; int h () const; int w2 () const; int h2 () const; const char *getLabel () const; bool isVisible () const; bool isEnabled () const; int getId () const; void *getUserData () const; private: // NOT IMPLEMENTED mxWidget (const mxWidget&); mxWidget& operator= (const mxWidget&); }; #endif // INCLUDED_MXWIDGET