5#ifndef DCPP_I_GUI_TAB_CONTROL_HPP_INCLUDED
6#define DCPP_I_GUI_TAB_CONTROL_HPP_INCLUDED
8#include <duckcpp/core/engine/IGUIElement.hpp>
9#include <duckcpp/core/engine/SColor.hpp>
10#include <duckcpp/core/engine/IGUISkin.hpp>
Base class of all GUI elements.
Definition IGUIElement.hpp:24
EGUI_ELEMENT_TYPE getType() const
Returns the type of the gui element.
Definition IGUIElement.hpp:739
IGUIElement * Parent
Pointer to the parent.
Definition IGUIElement.hpp:996
virtual void draw()
Draws the element and its children.
Definition IGUIElement.hpp:331
GUI Environment. Used as factory and manager of all other GUI elements.
Definition IGUIEnvironment.hpp:73
A standard tab control.
Definition IGUITabControl.hpp:23
virtual void setTabMaxWidth(i32 width)=0
set the maximal width of a tab. Per default width is 0 which means "no width restriction".
virtual bool setActiveTab(IGUITab *tab)=0
Brings a tab to front.
virtual bool setActiveTab(i32 idx)=0
Brings a tab to front.
virtual IGUITab * addTab(const wchar_t *caption, i32 id=-1)=0
Adds a tab.
virtual i32 getTabCount() const =0
Returns amount of tabs in the tabcontrol.
virtual gui::EGUI_ALIGNMENT getTabVerticalAlignment() const =0
Get the alignment of the tabs.
virtual i32 getTabAt(i32 xpos, i32 ypos) const =0
get the the id of the tab at the given absolute coordinates
virtual i32 getActiveTab() const =0
Returns which tab is currently active.
virtual void setTabHeight(i32 height)=0
Set the height of the tabs.
virtual void setTabExtraWidth(i32 extraWidth)=0
Set the extra width added to tabs on each side of the text.
virtual IGUITab * insertTab(i32 idx, const wchar_t *caption, i32 id=-1)=0
Insert the tab at the given index.
virtual i32 getTabMaxWidth() const =0
get the maximal width of a tab
virtual i32 addTab(IGUITab *tab)=0
Adds an existing tab.
virtual void removeTab(i32 idx)=0
Removes a tab from the tabcontrol.
virtual i32 getTabHeight() const =0
Get the height of the tabs.
virtual i32 getTabExtraWidth() const =0
Get the extra width added to tabs on each side of the text.
virtual i32 insertTab(i32 idx, IGUITab *tab, bool serializationMode=false)=0
Insert an existing tab.
virtual IGUITab * getTab(i32 idx) const =0
Returns a tab based on zero based index.
virtual void clear()=0
Clears the tabcontrol removing all tabs.
virtual i32 getTabIndex(const IGUIElement *tab) const =0
For given element find if it's a tab and return it's zero-based index (or -1 for not found)
virtual void setTabVerticalAlignment(gui::EGUI_ALIGNMENT alignment)=0
Set the alignment of the tabs.
IGUITabControl(IGUIEnvironment *environment, IGUIElement *parent, i32 id, nub::rect< i32 > rectangle)
constructor
Definition IGUITabControl.hpp:27
A tab-page, onto which other gui elements could be added.
Definition IGUITabControl.hpp:125
virtual void setBackgroundColor(video::SColor c)=0
sets the color of the background, if it should be drawn.
virtual DCPP_DEPRECATED i32 getNumber() const
Returns zero based index of tab if in tabcontrol.
Definition IGUITabControl.hpp:134
IGUITab(IGUIEnvironment *environment, IGUIElement *parent, i32 id, nub::rect< i32 > rectangle)
constructor
Definition IGUITabControl.hpp:129
virtual void setTextColor(video::SColor c)=0
sets the color of it's text in the tab-bar
virtual bool isDrawingBackground() const =0
returns true if the tab is drawing its background, false if not
virtual void setDrawBackground(bool draw=true)=0
sets if the tab should draw its background
virtual video::SColor getTextColor() const =0
gets the color of the text
virtual video::SColor getBackgroundColor() const =0
returns the color of the background
Axis aligned bounding box in 3d dimensional space.
Definition aabbox3d.hpp:22
Class representing a 32 bit ARGB color.
Definition SColor.hpp:317
EGUI_ALIGNMENT
Definition EGUIAlignment.hpp:15
@ EGUIET_TAB
A tab (IGUITab)
Definition EGUIElementTypes.hpp:71
@ EGUIET_TAB_CONTROL
A tab control.
Definition EGUIElementTypes.hpp:74
As of Duckcpp 1.6, position2d is a synonym for vector2d.
Definition vector3d.hpp:11
signed int i32
32 bit signed variable.
Definition irrTypes.hpp:72