summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAldrik Ramaekers <aldrik@mailbox.org>2026-01-09 10:23:23 +0100
committerAldrik Ramaekers <aldrik@mailbox.org>2026-01-09 10:23:23 +0100
commit8bdab613289e2626173de8bff31e7078dd03a16e (patch)
tree699eca9f0f0af00b1d337a372b5aefedb115ddf9 /src
parent6555d97f2eaf5b3829543624f6b0a3394715c71b (diff)
setup window work
Diffstat (limited to 'src')
-rw-r--r--src/main_linux.cpp5
-rw-r--r--src/ui/imgui_extensions.cpp1
-rw-r--r--src/ui/ui_setup.cpp30
3 files changed, 30 insertions, 6 deletions
diff --git a/src/main_linux.cpp b/src/main_linux.cpp
index a7619b0..9e91f7c 100644
--- a/src/main_linux.cpp
+++ b/src/main_linux.cpp
@@ -63,8 +63,8 @@ static void _create_window(bool is_setup_window)
if (is_setup_window) {
glfwWindowHint(GLFW_RESIZABLE, false);
- windowWidth = (int)(500 * main_scale);
- windowHeight = (int)(400 * main_scale);
+ windowWidth = (int)(300 * main_scale);
+ windowHeight = (int)(300 * main_scale);
}
else {
glfwWindowHint(GLFW_RESIZABLE, true);
@@ -111,6 +111,7 @@ static void _create_window(bool is_setup_window)
ui::fontBold = io.Fonts->AddFontFromFileTTF("/home/aldrik/Projects/open-books/build/Roboto-Bold.ttf", 0);
ui::fontBig = io.Fonts->AddFontFromFileTTF("/home/aldrik/Projects/open-books/build/Roboto-Bold.ttf", 30);
+ ui::fontSmall = io.Fonts->AddFontFromFileTTF("/home/aldrik/Projects/open-books/build/Roboto-Regular.ttf", 12);
io.Fonts->Build();
}
diff --git a/src/ui/imgui_extensions.cpp b/src/ui/imgui_extensions.cpp
index dca73f2..4268746 100644
--- a/src/ui/imgui_extensions.cpp
+++ b/src/ui/imgui_extensions.cpp
@@ -13,6 +13,7 @@
namespace ui {
ImFont* fontBold;
ImFont* fontBig;
+ ImFont* fontSmall;
}
namespace ImGui
diff --git a/src/ui/ui_setup.cpp b/src/ui/ui_setup.cpp
index a386e72..8693b60 100644
--- a/src/ui/ui_setup.cpp
+++ b/src/ui/ui_setup.cpp
@@ -16,6 +16,8 @@
#include "ui.hpp"
#include "imgui.h"
+#include "strops.hpp"
+#include "config.hpp"
#include "locales.hpp"
#include "administration_writer.hpp"
#include "administration_reader.hpp"
@@ -65,14 +67,24 @@ void ui::draw_setup()
ImGui::PushStyleVar(ImGuiStyleVar_ButtonTextAlign, ImVec2(0.0f, 0.5f));
ImGui::PushStyleVar(ImGuiStyleVar_FramePadding, ImVec2(10.0f, 10.0f));
- if (ImGui::Button(ICON_FA_FILE_IMPORT " Load administration", ImVec2(200, 0))) { // @locale
+ ImGui::PushFont(ui::fontBig);
+ const char* title = "OpenBooks";
+ ImVec2 textSize = ImGui::CalcTextSize(title);
+ ImGui::SetCursorPos(ImVec2((area.x - textSize.x) * 0.5f, 20));
+ ImGui::Text(title);
+ ImGui::PopFont();
+
+ ImGui::Spacing();
+ ImGui::Spacing();
+
+ if (ImGui::Button(ICON_FA_FILE_IMPORT " Load administration", ImVec2(area.x, 0))) { // @locale
if (administration_reader::open_existing(NULL)) {
ui::set_state(ui::main_state::UI_SETTINGS);
ui::recreate_window_for_main_views();
}
}
- if (ImGui::Button(ICON_FA_FOLDER_PLUS " Create administration", ImVec2(200, 0))) { // @locale
+ if (ImGui::Button(ICON_FA_FOLDER_PLUS " Create administration", ImVec2(area.x, 0))) { // @locale
if (administration_reader::open_existing(NULL)) {
ui::set_state(ui::main_state::UI_SETTINGS);
ui::recreate_window_for_main_views();
@@ -81,8 +93,18 @@ void ui::draw_setup()
ImGui::PopStyleVar();
ImGui::PopStyleVar();
- int imageW = 360;
- int imageH = 360;
+ char version_txt[100];
+ strops::format(version_txt, sizeof(version_txt), "VERSION: %s %s", config::PROGRAM_VERSION, _DATE_);
+
+ textSize = ImGui::CalcTextSize(version_txt);
+ ImGui::SetCursorPos(ImVec2(5, area.y));
+
+ ImGui::PushFont(ui::fontSmall);
+ ImGui::Text(version_txt);
+ ImGui::PopFont();
+
+ int imageW = 150;
+ int imageH = 150;
ImGui::SetCursorScreenPos(ImVec2(area.x - imageW + 20, area.y - imageH + 20));
ImGui::Image(img, ImVec2(imageW, imageH));
}