WINDEX
|
A widget where user can select which panel to display by clicking a tab button. More...
#include <wex.h>
Public Member Functions | |
tabbed (gui *parent) | |
void | add (const std::string &tabname, gui &panel) |
add panel that can be displayed More... | |
void | select (int i) |
select panel to displayed | |
int | select () const |
zero-based index of panel currently selected | |
void | tabWidth (int w) |
set width of tab buttons | |
void | tabChanging (std::function< void(int tabIndex)> f) |
register function to call when tab is about to change This is only called when user changes the tab, not when app code call select() function Zero-based new tab index passed to registered function when called | |
void | tabChanged (std::function< void(int tabIndex)> f) |
register function to call when tab has changed This is only called when user changes the tab, not when app code call select() function Zero-based tab index passed to registered function when called | |
Public Member Functions inherited from wex::panel | |
panel (gui *parent) | |
Public Member Functions inherited from wex::gui | |
gui () | |
Construct top level window with no parent. More... | |
gui (gui *parent, const char *window_class="windex", unsigned long style=WS_CHILD, unsigned long exstyle=WS_EX_CONTROLPARENT) | |
Construct child of a parent. More... | |
void | child (gui *w) |
register child on this window | |
children_t & | children () |
get vector of children | |
gui * | parent () |
gui * | find (int id) |
find child window with specified id | |
void | focus () |
void | bgcolor (int color) |
Change background color. More... | |
void | nobgerase () |
void | enable (bool f=true) |
Enable/Disable, default enable. | |
bool | isEnabled () const |
void | fontHeight (int h) |
Change font height for this and all child windows. | |
void | fontName (const std::string &name) |
void | icon (const std::string &iconfilename) |
Change icon. More... | |
void | cursor (char *cursorID) |
int | id () |
int | bgcolor () const |
void | textColor (int c) |
Set text color. More... | |
void | text (const std::string &text) |
std::string | text () const |
void | scroll (bool fHoriz=true) |
Add scrollbars. More... | |
void | scrollRange (int width, int height) |
Set the scrolling range. More... | |
sMouse | getMouseStatus () |
Get mouse status. More... | |
void | run () |
Run the windows message loop. More... | |
void | tooltip (const std::string &text, int width=0) |
Add tooltip that pops up helpfully when mouse cursor hovers over widget. More... | |
virtual LRESULT | WindowMessageHandler (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam) |
virtual void | show (bool f=true) |
Show window and all children. | |
void | showModal (gui &appWindow) |
Show this window and suspend all other windows interactions until this is closed. More... | |
void | endModal () |
Stop modal interaction and close window. | |
void | update () |
force widget to redraw completely More... | |
void | move (const std::vector< int > &r) |
Move the window. More... | |
void | size (int w, int h) |
Change size without moving top left corner. More... | |
void | move (int x, int y) |
Change position without changing size. More... | |
void | move (int x, int y, int w, int h) |
std::vector< int > | size () |
Size of window client area. More... | |
std::vector< int > | lefttop () |
eventhandler & | events () |
Get event handler. | |
HWND | handle () |
get window handle | |
void | delete_list (std::vector< HWND > *list) |
set delete list for when gui is detroyed | |
void | setfont (LOGFONT &logfont, HFONT &font) |
change font for this and all child windows | |
void | setAsyncReadCompleteMsgID (int id) |
Additional Inherited Members | |
Protected Member Functions inherited from wex::gui | |
void | Create (HWND parent, const char *window_class, DWORD style, DWORD exstyle=0, int id=0) |
Create the managed window. More... | |
void | font (LOGFONT &logfont, HFONT &font) |
get font details More... | |
void | createNewFont () |
Replace font used by this and child windows from logfont. | |
virtual void | draw (PAINTSTRUCT &ps) |
int | NewID () |
Create new, unique ID for gui element. More... | |
int | scrollMove (SCROLLINFO &si, int code) |
Protected Attributes inherited from wex::gui | |
HWND | myHandle |
gui * | myParent |
eventhandler | myEvents |
int | myBGColor |
int | myTextColor |
HBRUSH | myBGBrush |
LOGFONT | myLogFont |
HFONT | myFont |
std::vector< HWND > * | myDeleteList |
std::string | myText |
int | myID |
std::vector< gui * > | myChild |
gui elements to be displayed in this window | |
bool | myfModal |
true if element is being shown as modal | |
bool | myfEnabled |
true if not disabled | |
bool | myfnobgerase |
HWND | myToolTip |
unsigned int | myAsyncReadCompleteMsgID |
handle to tooltip control for this gui element | |
char * | myCursorID |
bool | myfScrollHoriz |
A widget where user can select which panel to display by clicking a tab button.
Usage:
// construct top level window gui& form = wex::maker::make(); form.move({ 50,50,400,400}); form.text("Tabbed Panel demo"); // construct tabbed panel tabbed& tabs = maker::make<tabbed>( form ); tabs.move( 50,50, 300, 200 ); // add some demo panels panel& cam1panel = maker::make<panel>( tabs ); label& cam1label = maker::make<label>( cam1panel ); cam1label.move(30,100, 100,20 ); cam1label.text("CAM1 panel"); tabs.add( "CAM1", cam1panel ); panel& cam2panel = maker::make<panel>( tabs ); label& cam2label = maker::make<label>( cam2panel ); cam2label.move(30,100, 100,20 ); cam2label.text("CAM2 panel"); tabs.add( "CAM2", cam2panel ); panel& cam3panel = maker::make<panel>( tabs ); label& cam3label = maker::make<label>( cam3panel ); cam3label.move(30,100, 100,20 ); cam3label.text("CAM3 panel"); tabs.add( "CAM3", cam3panel ); form.show(); // initially show the first panel // must be donw after call to show, which displays the last panel added tabs.select( 0 );
|
inline |
add panel that can be displayed
[in] | tabname | text for button that brings up the panel |
[in] | panel | to be displayed when tab selected. |
Panel will be resized to fit neatly