From b0a681964a5db50b970e59a90c89a09f568f5447 Mon Sep 17 00:00:00 2001 From: dec05eba Date: Thu, 1 Dec 2022 21:03:59 +0100 Subject: Add more texts to config font size, set colors for all text from theme, add dark and light theme, choose icons based on theme brightness Remove matrix logo from matrix chat --- src/Entry.cpp | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) (limited to 'src/Entry.cpp') diff --git a/src/Entry.cpp b/src/Entry.cpp index af35de0..8357216 100644 --- a/src/Entry.cpp +++ b/src/Entry.cpp @@ -13,20 +13,20 @@ namespace QuickMedia { return (int)v; } - static const float background_margin_horizontal = floor(5.0f * get_config().scale * get_config().spacing_scale); - static const float padding_vertical = floor(5.0f * get_config().scale * get_config().spacing_scale); - static const float background_margin_vertical = floor(0.0f * get_config().scale * get_config().spacing_scale); + static const float background_margin_horizontal = 5.0f + floor(get_config().input.font_size * get_config().scale * get_config().font_scale * 0.6f); + static const float background_margin_vertical = 2.0f + floor(get_config().input.font_size * get_config().scale * get_config().font_scale * 0.25f); Entry::Entry(const std::string &placeholder_text, mgl::Shader *rounded_rectangle_shader) : on_submit_callback(nullptr), draw_background(true), text("", false, floor(get_config().input.font_size * get_config().scale * get_config().font_scale), 0.0f), width(0.0f), - background(mgl::vec2f(1.0f, 1.0f), 10.0f * get_config().scale, get_theme().selected_color, rounded_rectangle_shader), + background(mgl::vec2f(1.0f, 1.0f), 10.0f * get_config().scale, get_theme().shade_color, rounded_rectangle_shader), placeholder(placeholder_text, *FontLoader::get_font(FontLoader::FontType::LATIN, get_config().input.font_size * get_config().scale * get_config().font_scale)), mouse_left_inside(false) { text.setEditable(true); + text.set_color(get_theme().text_color); placeholder.set_color(get_theme().placeholder_text_color); } @@ -109,13 +109,13 @@ namespace QuickMedia { void Entry::set_position(const mgl::vec2f &pos) { background.set_position(pos); - text.set_position(pos + mgl::vec2f(background_margin_horizontal, background_margin_vertical)); - placeholder.set_position(pos + mgl::vec2f(background_margin_horizontal, background_margin_vertical + floor(3.0f * get_config().scale))); + text.set_position(pos + mgl::vec2f(background_margin_horizontal * padding_scale, background_margin_vertical * padding_scale - text.get_character_size() * 0.3f).floor()); + placeholder.set_position(pos + mgl::vec2f(background_margin_horizontal * padding_scale, background_margin_vertical * padding_scale - text.get_character_size() * 0.005f).floor()); } void Entry::set_max_width(float width) { this->width = width; - text.setMaxWidth(this->width - background_margin_horizontal * 2.0f); + text.setMaxWidth(this->width - background_margin_horizontal * padding_scale * 2.0f); } bool Entry::is_editable() const { @@ -124,10 +124,19 @@ namespace QuickMedia { float Entry::get_height() { text.updateGeometry(); - return floor(text.getHeight() + background_margin_vertical * 2.0f + padding_vertical * 2.0f); + return floor(text.getHeight() + background_margin_vertical * padding_scale * 2.0f); } const std::string& Entry::get_text() const { return text.getString(); } + + void Entry::set_background_color(mgl::Color color) { + background.set_color(color); + } + + void Entry::set_padding_scale(float scale) { + padding_scale = scale; + set_max_width(width); + } } \ No newline at end of file -- cgit v1.2.3