mirror of
https://github.com/kunkundi/crossdesk.git
synced 2025-10-26 12:15:34 +08:00
91 lines
2.7 KiB
C++
91 lines
2.7 KiB
C++
#include "IconsFontAwesome6.h"
|
|
#include "layout_style.h"
|
|
#include "localization.h"
|
|
#include "rd_log.h"
|
|
#include "render.h"
|
|
|
|
int Render::MenuWindow() {
|
|
ImGui::PushStyleColor(ImGuiCol_MenuBarBg, ImVec4(255, 255, 255, 1));
|
|
static bool a, b, c, d, e;
|
|
ImGui::SetNextWindowPos(ImVec2(0, 0 + title_bar_height_), ImGuiCond_Always);
|
|
ImGui::SetWindowFontScale(0.8f);
|
|
ImGui::BeginChild(
|
|
"MenuWindow", ImVec2(main_window_width_, menu_window_height_),
|
|
ImGuiChildFlags_Border,
|
|
ImGuiWindowFlags_MenuBar | ImGuiWindowFlags_NoBringToFrontOnFocus);
|
|
ImGui::PopStyleColor();
|
|
|
|
ImGui::SetWindowFontScale(1.0f);
|
|
if (ImGui::BeginMenuBar()) {
|
|
if (ImGui::BeginMenu(ICON_FA_BARS, true)) {
|
|
ImGui::SetWindowFontScale(0.5f);
|
|
if (ImGui::MenuItem(
|
|
localization::about[localization_language_index_].c_str())) {
|
|
show_about_window_ = true;
|
|
}
|
|
ImGui::SetWindowFontScale(1.0f);
|
|
ImGui::EndMenu();
|
|
}
|
|
|
|
ImGui::Dummy(ImVec2(main_window_width_ - 97, 0));
|
|
|
|
SettingButton();
|
|
|
|
if (show_about_window_) {
|
|
AboutWindow();
|
|
}
|
|
}
|
|
|
|
ImGui::EndChild();
|
|
|
|
return 0;
|
|
}
|
|
|
|
int Render::AboutWindow() {
|
|
const ImGuiViewport *viewport = ImGui::GetMainViewport();
|
|
|
|
ImGui::SetNextWindowPos(ImVec2(
|
|
(viewport->WorkSize.x - viewport->WorkPos.x - about_window_width_) / 2,
|
|
(viewport->WorkSize.y - viewport->WorkPos.y - about_window_height_) / 2));
|
|
|
|
ImGui::SetNextWindowSize(ImVec2(about_window_width_, about_window_height_));
|
|
|
|
ImGui::PushStyleColor(ImGuiCol_WindowBg, ImVec4(1.0f, 1.0f, 1.0f, 1.0f));
|
|
ImGui::PushStyleVar(ImGuiStyleVar_WindowBorderSize, 1.0f);
|
|
ImGui::PushStyleVar(ImGuiStyleVar_WindowRounding, 5.0f);
|
|
ImGui::PushStyleVar(ImGuiStyleVar_FrameRounding, 3.0f);
|
|
ImGui::SetWindowFontScale(0.5f);
|
|
ImGui::Begin(localization::about[localization_language_index_].c_str(),
|
|
nullptr,
|
|
ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoCollapse |
|
|
ImGuiWindowFlags_NoMove | ImGuiWindowFlags_NoSavedSettings);
|
|
ImGui::SetWindowFontScale(1.0f);
|
|
ImGui::SetWindowFontScale(0.5f);
|
|
|
|
std::string version;
|
|
#ifdef RD_VERSION
|
|
version = RD_VERSION;
|
|
#else
|
|
version = "Unknown";
|
|
#endif
|
|
|
|
std::string text =
|
|
localization::version[localization_language_index_] + ": " + version;
|
|
ImGui::Text("%s", text.c_str());
|
|
|
|
ImGui::SetCursorPosX(about_window_width_ * 0.42f);
|
|
ImGui::SetCursorPosY(about_window_height_ * 0.75f);
|
|
// OK
|
|
if (ImGui::Button(localization::ok[localization_language_index_].c_str())) {
|
|
show_about_window_ = false;
|
|
}
|
|
|
|
ImGui::SetWindowFontScale(1.0f);
|
|
ImGui::SetWindowFontScale(0.5f);
|
|
ImGui::End();
|
|
ImGui::SetWindowFontScale(1.0f);
|
|
ImGui::PopStyleVar(3);
|
|
ImGui::PopStyleColor();
|
|
|
|
return 0;
|
|
} |