Merge pull request #51186 from lawnjelly/portals_fix_ui_default

This commit is contained in:
Rémi Verschelde 2021-08-02 17:20:52 +02:00 committed by GitHub
commit 8f3ec04811
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 26 additions and 19 deletions

View file

@ -4319,28 +4319,31 @@ void SpatialEditor::show_advanced_portal_tools(bool p_show) {
}
void SpatialEditor::update_portal_tools() {
// the view portal culling toggle
int view_portal_item_index = view_menu->get_popup()->get_item_index(MENU_VIEW_PORTAL_CULLING);
if (RoomManager::active_room_manager) {
view_menu->get_popup()->set_item_disabled(view_portal_item_index, false);
// just some protection against calling null pointers, hopefully not needed
if (view_menu && view_menu->get_popup()) {
// the view portal culling toggle
int view_portal_item_index = view_menu->get_popup()->get_item_index(MENU_VIEW_PORTAL_CULLING);
if (RoomManager::active_room_manager) {
view_menu->get_popup()->set_item_disabled(view_portal_item_index, false);
bool active = RoomManager::static_rooms_get_active();
view_menu->get_popup()->set_item_checked(view_portal_item_index, active);
} else {
view_menu->get_popup()->set_item_disabled(view_portal_item_index, true);
}
bool active = RoomManager::static_rooms_get_active();
view_menu->get_popup()->set_item_checked(view_portal_item_index, active);
} else {
view_menu->get_popup()->set_item_disabled(view_portal_item_index, true);
}
// toolbar button
Button *const button = tool_button[TOOL_CONVERT_ROOMS];
// toolbar button
Button *const button = tool_button[TOOL_CONVERT_ROOMS];
if (RoomManager::active_room_manager) {
button->show();
} else {
button->hide();
}
if (RoomManager::active_room_manager) {
button->show();
} else {
button->hide();
}
for (uint32_t i = 0; i < VIEWPORTS_COUNT; i++) {
viewports[i]->_update_name();
for (uint32_t i = 0; i < VIEWPORTS_COUNT; i++) {
viewports[i]->_update_name();
}
}
}
@ -6593,6 +6596,10 @@ SpatialEditor::SpatialEditor(EditorNode *p_editor) {
EDITOR_DEF("editors/3d/navigation/show_viewport_rotation_gizmo", true);
over_gizmo_handle = -1;
// make sure the portal tools are off by default
// (when no RoomManager is present)
update_portal_tools();
}
SpatialEditor::~SpatialEditor() {

View file

@ -652,7 +652,7 @@ private:
MenuButton *transform_menu;
PopupMenu *gizmos_menu;
MenuButton *view_menu;
MenuButton *view_menu = nullptr;
AcceptDialog *accept;