Merge pull request #2639 from MarianoGnu/origin

Fix ButtonGroup broken layout
This commit is contained in:
Juan Linietsky 2015-11-18 19:14:25 -03:00
commit a8f18e1bae
4 changed files with 25 additions and 23 deletions

View file

@ -155,6 +155,6 @@ void ButtonGroup::_bind_methods() {
}
ButtonGroup::ButtonGroup()
ButtonGroup::ButtonGroup() : BoxContainer(true)
{
}

View file

@ -29,14 +29,14 @@
#ifndef BUTTON_GROUP_H
#define BUTTON_GROUP_H
#include "scene/gui/control.h"
#include "scene/gui/box_container.h"
class BaseButton;
class ButtonGroup : public Control {
class ButtonGroup : public BoxContainer {
OBJ_TYPE(ButtonGroup,Control);
OBJ_TYPE(ButtonGroup,BoxContainer);
Set<BaseButton*> buttons;

View file

@ -322,6 +322,10 @@ void make_default_theme() {
t->set_constant("hseparation","MenuButton", 3 );
// ButtonGroup
t->set_stylebox("panel","ButtonGroup", memnew( StyleBoxEmpty ));
// CheckBox
Ref<StyleBox> cbx_empty = memnew( StyleBoxEmpty );

View file

@ -568,26 +568,24 @@ ThemeEditor::ThemeEditor() {
CheckButton *cb = memnew( CheckButton );
cb->set_text("CheckButton");
first_vb->add_child(cb );
CheckBox *cbx = memnew( CheckBox );
cbx->set_text("CheckBox");
first_vb->add_child(cbx );
CheckBox *cbx = memnew( CheckBox );
cbx->set_text("CheckBox");
first_vb->add_child(cbx );
/* TODO: This is not working properly, controls are overlapping*/
/*
ButtonGroup *bg = memnew( ButtonGroup );
bg->set_v_size_flags(SIZE_EXPAND_FILL);
VBoxContainer *gbvb = memnew( VBoxContainer );
gbvb->set_v_size_flags(SIZE_EXPAND_FILL);
CheckBox *rbx1 = memnew( CheckBox );
rbx1->set_text("CheckBox Radio1");
rbx1->set_pressed(true);
gbvb->add_child(rbx1);
CheckBox *rbx2 = memnew( CheckBox );
rbx2->set_text("CheckBox Radio2");
gbvb->add_child(rbx2);
bg->add_child(gbvb);
first_vb->add_child(bg);
*/
ButtonGroup *bg = memnew( ButtonGroup );
bg->set_v_size_flags(SIZE_EXPAND_FILL);
VBoxContainer *gbvb = memnew( VBoxContainer );
gbvb->set_v_size_flags(SIZE_EXPAND_FILL);
CheckBox *rbx1 = memnew( CheckBox );
rbx1->set_text("CheckBox Radio1");
rbx1->set_pressed(true);
gbvb->add_child(rbx1);
CheckBox *rbx2 = memnew( CheckBox );
rbx2->set_text("CheckBox Radio2");
gbvb->add_child(rbx2);
bg->add_child(gbvb);
first_vb->add_child(bg);
MenuButton* test_menu_button = memnew( MenuButton );
test_menu_button->set_text("MenuButton");