| 2073 | |
| 2074 | |
| 2075 | int Viewer::DoMainMenuBar() |
| 2076 | { |
| 2077 | const ImGuiStyle& style = ImGui::GetStyle(); |
| 2078 | |
| 2079 | // File requests. |
| 2080 | bool openFilePressed = Request_OpenFileModal; Request_OpenFileModal = false; |
| 2081 | bool openDirPressed = Request_OpenDirModal; Request_OpenDirModal = false; |
| 2082 | bool saveCurrentPressed = Request_SaveCurrentModal; Request_SaveCurrentModal = false; |
| 2083 | bool saveAsPressed = Request_SaveAsModal; Request_SaveAsModal = false; |
| 2084 | bool saveAllPressed = Request_SaveAllModal; Request_SaveAllModal = false; |
| 2085 | bool saveContactSheetPressed = Request_ContactSheetModal; Request_ContactSheetModal = false; |
| 2086 | bool saveMultiFramePressed = Request_MultiFrameModal; Request_MultiFrameModal = false; |
| 2087 | bool saveExtractFramesPressed = Request_ExtractFramesModal; Request_ExtractFramesModal = false; |
| 2088 | bool snapMessageNoFileBrowse = Request_SnapMessage_NoFileBrowse; Request_SnapMessage_NoFileBrowse = false; |
| 2089 | bool snapMessageNoFrameTrans = Request_SnapMessage_NoFrameTrans; Request_SnapMessage_NoFrameTrans = false; |
| 2090 | bool deleteFilePressed = Request_DeleteFileModal; Request_DeleteFileModal = false; |
| 2091 | bool deleteFileNoRecycPressed = Request_DeleteFileNoRecycleModal; Request_DeleteFileNoRecycleModal = false; |
| 2092 | bool renamePressed = Request_RenameModal; Request_RenameModal = false; |
| 2093 | |
| 2094 | // Edit requests. |
| 2095 | bool resizeImagePressed = Request_ResizeImageModal; Request_ResizeImageModal = false; |
| 2096 | bool resizeCanvasPressed = Request_ResizeCanvasModal; Request_ResizeCanvasModal = false; |
| 2097 | bool rotateImagePressed = Request_RotateImageModal; Request_RotateImageModal = false; |
| 2098 | bool levelsPressed = Request_LevelsModal; Request_LevelsModal = false; |
| 2099 | bool quantizePressed = Request_QuantizeModal; Request_QuantizeModal = false; |
| 2100 | LosslessTransformMode |
| 2101 | losslessTransformPressed = Request_LosslessTrnsModal; Request_LosslessTrnsModal = LosslessTransformMode::None; |
| 2102 | |
| 2103 | int menuBarHeight = 0; |
| 2104 | Config::ProfileData& profile = Config::GetProfileData(); |
| 2105 | if (profile.ShowMenuBar) |
| 2106 | { |
| 2107 | ImGui::SetNextWindowPos(tVector2(0.0f, 0.0f)); |
| 2108 | ImGui::BeginMainMenuBar(); |
| 2109 | |
| 2110 | tVector2 colourButtonSize = Gutil::GetUIParamExtent(tVector2(26.0f, 26.0f), tVector2(64.0f, 64.0f)); |
| 2111 | tVector2 toolImageSize = Gutil::GetUIParamExtent(tVector2(24.0f, 24.0f), tVector2(62.0f, 62.0f)); |
| 2112 | float zoomComboWidth = Gutil::GetUIParamScaled(70.0f, 2.5f); |
| 2113 | |
| 2114 | ImGuiWindow* window = ImGui::GetCurrentWindow(); |
| 2115 | if (window) |
| 2116 | window->MenuBarImageButtonHeight = toolImageSize.y; |
| 2117 | |
| 2118 | Config::ProfileData::ZoomModeEnum zoomMode = GetZoomMode(); |
| 2119 | |
| 2120 | // |
| 2121 | // File Menu. |
| 2122 | // |
| 2123 | if (ImGui::BeginMenu("File")) |
| 2124 | { |
| 2125 | // Show file menu items... |
| 2126 | ImGui::PushStyleVar(ImGuiStyleVar_FramePadding, tVector2(4.0f, 3.0f)); // Push F |
| 2127 | bool imgAvail = CurrImage && CurrImage->IsLoaded(); |
| 2128 | |
| 2129 | tString openFileKey = profile.InputBindings.FindModKeyText(Bindings::Operation::OpenFile); |
| 2130 | if (ImGui::MenuItem("Open File...", openFileKey.Chz())) |
| 2131 | openFilePressed = true; |
| 2132 |
nothing calls this directly
no test coverage detected