|
|
|
|
@ -734,7 +734,48 @@ void TileMapEditor::_update_transform_buttons(Object *p_button) {
|
|
|
|
|
ERR_FAIL_NULL(p_button);
|
|
|
|
|
ToolButton *b=p_button->cast_to<ToolButton>();
|
|
|
|
|
ERR_FAIL_COND(!b);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mirror_x->set_block_signals(true);
|
|
|
|
|
mirror_y->set_block_signals(true);
|
|
|
|
|
transpose->set_block_signals(true);
|
|
|
|
|
rotate_0->set_block_signals(true);
|
|
|
|
|
rotate_90->set_block_signals(true);
|
|
|
|
|
rotate_180->set_block_signals(true);
|
|
|
|
|
rotate_270->set_block_signals(true);
|
|
|
|
|
|
|
|
|
|
if (b == rotate_0) {
|
|
|
|
|
mirror_x->set_pressed(false);
|
|
|
|
|
mirror_y->set_pressed(false);
|
|
|
|
|
transpose->set_pressed(false);
|
|
|
|
|
}
|
|
|
|
|
else if (b == rotate_90) {
|
|
|
|
|
mirror_x->set_pressed(false);
|
|
|
|
|
mirror_y->set_pressed(true);
|
|
|
|
|
transpose->set_pressed(true);
|
|
|
|
|
}
|
|
|
|
|
else if (b == rotate_180) {
|
|
|
|
|
mirror_x->set_pressed(true);
|
|
|
|
|
mirror_y->set_pressed(true);
|
|
|
|
|
transpose->set_pressed(false);
|
|
|
|
|
}
|
|
|
|
|
else if (b == rotate_270) {
|
|
|
|
|
mirror_x->set_pressed(true);
|
|
|
|
|
mirror_y->set_pressed(false);
|
|
|
|
|
transpose->set_pressed(true);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
rotate_0->set_pressed(!mirror_x->is_pressed() && !mirror_y->is_pressed() && !transpose->is_pressed());
|
|
|
|
|
rotate_90->set_pressed(!mirror_x->is_pressed() && mirror_y->is_pressed() && transpose->is_pressed());
|
|
|
|
|
rotate_180->set_pressed(mirror_x->is_pressed() && mirror_y->is_pressed() && !transpose->is_pressed());
|
|
|
|
|
rotate_270->set_pressed(mirror_x->is_pressed() && !mirror_y->is_pressed() && transpose->is_pressed());
|
|
|
|
|
|
|
|
|
|
mirror_x->set_block_signals(false);
|
|
|
|
|
mirror_y->set_block_signals(false);
|
|
|
|
|
transpose->set_block_signals(false);
|
|
|
|
|
rotate_0->set_block_signals(false);
|
|
|
|
|
rotate_90->set_block_signals(false);
|
|
|
|
|
rotate_180->set_block_signals(false);
|
|
|
|
|
rotate_270->set_block_signals(false);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
TileMapEditor::TileMapEditor(EditorNode *p_editor) {
|
|
|
|
|
@ -802,7 +843,8 @@ TileMapEditor::TileMapEditor(EditorNode *p_editor) {
|
|
|
|
|
rotate_270->connect("pressed", this, "_update_transform_buttons", make_binds(rotate_270));
|
|
|
|
|
canvas_item_editor_hb->add_child(rotate_270);
|
|
|
|
|
canvas_item_editor_hb->hide();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rotate_0->set_pressed(true);
|
|
|
|
|
tool=TOOL_NONE;
|
|
|
|
|
selection_active=false;
|
|
|
|
|
mouse_over=false;
|
|
|
|
|
|