summaryrefslogtreecommitdiff
path: root/scene
diff options
context:
space:
mode:
authorvolzhs <volzhs@gmail.com>2016-12-28 22:12:08 +0900
committervolzhs <volzhs@gmail.com>2016-12-28 22:12:08 +0900
commitf33e21e7afc64990bca106e6b349cbe2f7e81c0e (patch)
tree893f63a30f7c004ee489ab854cdd9bc08a80969e /scene
parent792ff11642c0bd0d2c2c647a2cc4d828f47d35d0 (diff)
Show visual notice for visibility on Scene Dock
Diffstat (limited to 'scene')
-rw-r--r--scene/gui/tree.cpp11
-rw-r--r--scene/gui/tree.h4
2 files changed, 13 insertions, 2 deletions
diff --git a/scene/gui/tree.cpp b/scene/gui/tree.cpp
index d974e09275..c5c8b60e0f 100644
--- a/scene/gui/tree.cpp
+++ b/scene/gui/tree.cpp
@@ -569,6 +569,15 @@ void TreeItem::set_button(int p_column,int p_idx,const Ref<Texture>& p_button){
}
+void TreeItem::set_button_color(int p_column,int p_idx,const Color& p_color) {
+
+ ERR_FAIL_INDEX( p_column, cells.size() );
+ ERR_FAIL_INDEX( p_idx, cells[p_column].buttons.size() );
+ cells[p_column].buttons[p_idx].color=p_color;
+ _changed_notify(p_column);
+
+}
+
void TreeItem::set_editable(int p_column,bool p_editable) {
ERR_FAIL_INDEX( p_column, cells.size() );
@@ -1061,7 +1070,7 @@ int Tree::draw_item(const Point2i& p_pos,const Point2& p_draw_ofs, const Size2&
o.y+=(label_h-s.height)/2;
o+=cache.button_pressed->get_offset();
- b->draw(ci,o,p_item->cells[i].buttons[j].disabled?Color(1,1,1,0.5):Color(1,1,1,1));
+ b->draw(ci,o,p_item->cells[i].buttons[j].disabled?Color(1,1,1,0.5):p_item->cells[i].buttons[j].color);
w-=s.width+cache.button_margin;
bw+=s.width+cache.button_margin;
}
diff --git a/scene/gui/tree.h b/scene/gui/tree.h
index 1936f926c8..b115d3b9a4 100644
--- a/scene/gui/tree.h
+++ b/scene/gui/tree.h
@@ -93,7 +93,8 @@ friend class Tree;
int id;
bool disabled;
Ref<Texture> texture;
- Button() { id=0; disabled=false; }
+ Color color;
+ Button() { id=0; disabled=false; color=Color(1,1,1,1); }
};
Vector< Button > buttons;
@@ -189,6 +190,7 @@ public:
int get_button_by_id(int p_column,int p_id) const;
bool is_button_disabled(int p_column,int p_idx) const;
void set_button(int p_column,int p_idx,const Ref<Texture>& p_button);
+ void set_button_color(int p_column,int p_idx,const Color& p_color);
/* range works for mode number or mode combo */