diff --git a/src/gui_2.py b/src/gui_2.py index 0a1134c..b721d20 100644 --- a/src/gui_2.py +++ b/src/gui_2.py @@ -902,40 +902,42 @@ class App: for w in self.show_windows.keys(): _, self.show_windows[w] = imgui.menu_item(w, "", self.show_windows[w]) with imscope.menu("Project") as (active): - if active and imgui.menu_item("Save All", "", False)[0]: - self._flush_to_project() - self._flush_to_config() - models.save_config(self.config) - self.ai_status = "config saved" - if imgui.menu_item("Reset Session", "", False)[0]: - ai_client.reset_session() - ai_client.clear_comms_log() - self._tool_log.clear() - self._comms_log.clear() - self.ai_status = "session reset" - self.ai_response = "" - if imgui.menu_item("Generate MD Only", "", False)[0]: - try: - md, path, *_ = self._do_generate() - self.last_md = md - self.last_md_path = path - self.ai_status = f"md written: {path.name}" - except Exception as e: - self.ai_status = f"error: {e}" + if active: + if imgui.menu_item("Save All", "", False)[0]: + self._flush_to_project() + self._flush_to_config() + models.save_config(self.config) + self.ai_status = "config saved" + if imgui.menu_item("Reset Session", "", False)[0]: + ai_client.reset_session() + ai_client.clear_comms_log() + self._tool_log.clear() + self._comms_log.clear() + self.ai_status = "session reset" + self.ai_response = "" + if imgui.menu_item("Generate MD Only", "", False)[0]: + try: + md, path, *_ = self._do_generate() + self.last_md = md + self.last_md_path = path + self.ai_status = f"md written: {path.name}" + except Exception as e: + self.ai_status = f"error: {e}" with imscope.menu("Layout") as (active): - if active and imgui.menu_item("Save Current...", "", False)[0]: - self._show_save_workspace_profile_modal = True - self._new_workspace_profile_name = "" - imgui.separator() - for profile_id, profile in self.workspace_profiles.items(): - if imgui.menu_item(profile.name, "", False)[0]: - self.controller._cb_load_workspace_profile(profile_id) - imgui.separator() - with imscope.menu("Delete Profile") as (active): - if active: - for profile_id, profile in self.workspace_profiles.items(): - if imgui.menu_item(profile.name, "", False)[0]: - self.controller._cb_delete_workspace_profile(profile_id, self._new_workspace_profile_scope) + if active: + if imgui.menu_item("Save Current...", "", False)[0]: + self._show_save_workspace_profile_modal = True + self._new_workspace_profile_name = "" + imgui.separator() + for profile_id, profile in self.workspace_profiles.items(): + if imgui.menu_item(profile.name, "", False)[0]: + self.controller._cb_load_workspace_profile(profile_id) + imgui.separator() + with imscope.menu("Delete Profile") as (active): + if active: + for profile_id, profile in self.workspace_profiles.items(): + if imgui.menu_item(profile.name, "", False)[0]: + self.controller._cb_delete_workspace_profile(profile_id, self._new_workspace_profile_scope) # RAG status indicator if self.controller.rag_config and self.controller.rag_config.enabled: @@ -3294,13 +3296,13 @@ class App: def _render_discussion_hub(self) -> None: with imscope.tab_bar("discussion_hub_tabs"): - with imscope.tab_item("Discussion") as (exp, _): + with imscope.tab_item("Discussion") as (exp, opened): if exp: self._render_discussion_tab() - with imscope.tab_item("Context Composition") as (exp, _): + with imscope.tab_item("Context Composition") as (exp, opened): if exp: self._render_context_composition_panel() - with imscope.tab_item("Snapshot") as (exp, _): + with imscope.tab_item("Snapshot") as (exp, opened): if exp: self._render_snapshot_tab() - with imscope.tab_item("Takes") as (exp, _): + with imscope.tab_item("Takes") as (exp, opened): if exp: self._render_takes_panel() def _render_discussion_entries(self) -> None: