summaryrefslogtreecommitdiff
path: root/scene/gui/tabs.h
diff options
context:
space:
mode:
Diffstat (limited to 'scene/gui/tabs.h')
-rw-r--r--scene/gui/tabs.h22
1 files changed, 13 insertions, 9 deletions
diff --git a/scene/gui/tabs.h b/scene/gui/tabs.h
index efcb291a52..7f85280853 100644
--- a/scene/gui/tabs.h
+++ b/scene/gui/tabs.h
@@ -45,10 +45,9 @@ public:
enum CloseButtonDisplayPolicy {
- SHOW_ALWAYS,
- SHOW_ACTIVE_ONLY,
- SHOW_HOVER,
- SHOW_NEVER
+ CLOSE_BUTTON_SHOW_NEVER,
+ CLOSE_BUTTON_SHOW_ACTIVE_ONLY,
+ CLOSE_BUTTON_SHOW_ALWAYS,
};
private:
@@ -59,10 +58,13 @@ private:
Ref<Texture> icon;
int ofs_cache;
int size_cache;
+ int x_cache;
+ int x_size_cache;
+
Ref<Texture> right_button;
Rect2 rb_rect;
- Ref<Texture> close_button;
Rect2 cb_rect;
+
};
@@ -85,6 +87,8 @@ private:
int hover; // hovered tab
+ int get_tab_width(int p_idx) const;
+
protected:
void _input_event(const InputEvent& p_event);
@@ -104,13 +108,11 @@ public:
void set_tab_right_button(int p_tab,const Ref<Texture>& p_right_button);
Ref<Texture> get_tab_right_button(int p_tab) const;
- void set_tab_close_button(int p_tab, const Ref<Texture>& p_close_button);
- Ref<Texture> get_tab_close_button(int p_tab) const;
- void set_tab_close_display_policy(CloseButtonDisplayPolicy p_cb_displaypolicy);
-
void set_tab_align(TabAlign p_align);
TabAlign get_tab_align() const;
+ void set_tab_close_display_policy(CloseButtonDisplayPolicy p_policy);
+
int get_tab_count() const;
void set_current_tab(int p_current);
int get_current_tab() const;
@@ -119,6 +121,8 @@ public:
void clear_tabs();
+ void ensure_tab_visible(int p_idx);
+
Size2 get_minimum_size() const;
Tabs();