From 5954dc57686dfe6eb76bedd4a707309829bc2776 Mon Sep 17 00:00:00 2001 From: zetaPRIME Date: Thu, 16 Mar 2017 20:35:04 -0400 Subject: [PATCH] add OSK preview scrolling, background, fix DrawLayerProxy, make TextConfig.Print string ref const, make form priority float, ScrollField::ScrollIntoView, minor BitmapFont fix --- .../source/starlight/ThemeManager.cpp | 4 +- libstarlight/source/starlight/ThemeManager.h | 4 +- .../source/starlight/datatypes/VRect.h | 2 +- libstarlight/source/starlight/dialog/OSK.cpp | 70 +++++++++++++----- libstarlight/source/starlight/dialog/OSK.h | 5 ++ .../source/starlight/gfx/BitmapFont.cpp | 9 ++- .../source/starlight/ui/DrawLayerProxy.cpp | 1 + libstarlight/source/starlight/ui/Form.h | 2 +- .../source/starlight/ui/ScrollField.cpp | 12 +++ .../source/starlight/ui/ScrollField.h | 4 +- libstarlight/todo.txt | 13 ++-- testbed/source/Core.cpp | 1 + themes/default/decorations/osk.background.png | Bin 0 -> 8034 bytes themes/default/decorations/osk.background.xcf | Bin 0 -> 185906 bytes themes/default/metrics.json | 6 ++ 15 files changed, 98 insertions(+), 35 deletions(-) create mode 100644 themes/default/decorations/osk.background.png create mode 100644 themes/default/decorations/osk.background.xcf diff --git a/libstarlight/source/starlight/ThemeManager.cpp b/libstarlight/source/starlight/ThemeManager.cpp index e0281c9..e53c7ad 100644 --- a/libstarlight/source/starlight/ThemeManager.cpp +++ b/libstarlight/source/starlight/ThemeManager.cpp @@ -347,11 +347,11 @@ TextConfig::TextConfig(const std::string& fontName, Color text, Color border) { textColor = text; borderColor = border; } -void TextConfig::Print(Vector2 position, std::string& text, Vector2 justification) { +void TextConfig::Print(Vector2 position, const std::string& text, Vector2 justification) { if (!justification) justification = this->justification; font->Print(position, text, 1, textColor, justification, borderColor); } -void TextConfig::Print(VRect rect, std::string& text, Vector2 justification) { +void TextConfig::Print(VRect rect, const std::string& text, Vector2 justification) { if (!justification) justification = this->justification; font->Print(rect, text, 1, textColor, justification, borderColor); } diff --git a/libstarlight/source/starlight/ThemeManager.h b/libstarlight/source/starlight/ThemeManager.h index 2795d76..8c0ca7d 100644 --- a/libstarlight/source/starlight/ThemeManager.h +++ b/libstarlight/source/starlight/ThemeManager.h @@ -85,8 +85,8 @@ namespace starlight { TextConfig(const std::string& fontName, Color text, Color border = Color::transparent); ~TextConfig() = default; - void Print(Vector2 position, std::string& text, Vector2 justification = Vector2::invalid); - void Print(VRect rect, std::string& text, Vector2 justification = Vector2::invalid); + void Print(Vector2 position, const std::string& text, Vector2 justification = Vector2::invalid); + void Print(VRect rect, const std::string& text, Vector2 justification = Vector2::invalid); Vector2 Measure(const std::string& text, float maxWidth = 65536*64); diff --git a/libstarlight/source/starlight/datatypes/VRect.h b/libstarlight/source/starlight/datatypes/VRect.h index 58fa7ce..70f12fe 100644 --- a/libstarlight/source/starlight/datatypes/VRect.h +++ b/libstarlight/source/starlight/datatypes/VRect.h @@ -32,7 +32,7 @@ namespace starlight { VRect Intersect(const VRect & o) const; VRect Expand(const Vector2& amount, const Vector2& bias) const; VRect Expand(const Vector2& amount) const { return Expand(amount, Vector2::half); } - VRect Expand(float x, float y) const { return Expand(Vector2(x, y )); } + VRect Expand(float x, float y) const { return Expand(Vector2(x, y)); } VRect Include(const Vector2& point) const; diff --git a/libstarlight/source/starlight/dialog/OSK.cpp b/libstarlight/source/starlight/dialog/OSK.cpp index 8b6b713..93918c1 100644 --- a/libstarlight/source/starlight/dialog/OSK.cpp +++ b/libstarlight/source/starlight/dialog/OSK.cpp @@ -36,13 +36,15 @@ namespace { static auto tc = ThemeManager::GetMetric("/dialogs/OSK/preview"); return tc; } + + const constexpr float textHang = 4; } OSK::OSK(osk::InputHandler* handler) : Form(true), handler(handler) { priority = 1000; // probably don't want all that much displaying above the keyboard handler->parent = this; - auto cover = std::make_shared(touchScreen->rect.Expand(4), "decorations/dialog.modal-cover"); + auto cover = std::make_shared(touchScreen->rect, "decorations/osk.background"); cover->blockTouch = true; touchScreen->Add(cover); @@ -58,7 +60,7 @@ OSK::OSK(osk::InputHandler* handler) : Form(true), handler(handler) { Vector2 bs(24, 32); Vector2 bpen; - Vector2 bpstart(160-bs.x*(12.5/2), 68); + Vector2 bpstart(160-bs.x*(12.5/2), 68+5); int line = -1; float linestart [] = {0, .5, .75, 1.25, 2.75-1}; string chr = "\n1234567890-=\nqwertyuiop[]\nasdfghjkl;\'\nzxcvbnm,./\n` \\"; @@ -106,9 +108,14 @@ OSK::OSK(osk::InputHandler* handler) : Form(true), handler(handler) { key->eOnTap = [this](auto& btn){ this->handler->Enter(); this->OnKey(); }; touchScreen->Add(key); - preview = std::make_shared(VRect::touchScreen.TopEdge(68).Expand(-2), [this](auto& layer){ this->DrawPreview(layer); }, true); + previewSc = std::make_shared(VRect(VRect::touchScreen.TopEdge(66))); + touchScreen->Add(previewSc); + + preview = std::make_shared(VRect::touchScreen.TopEdge(66).Expand(-2, 0), [this](auto& layer){ this->DrawPreview(layer); }, true); preview->eOnTap = [this](auto& layer){ this->OnPreviewTap(layer); }; - touchScreen->Add(preview); + previewSc->Add(preview); + + RefreshPreview(); } void OSK::Update(bool focused) { @@ -117,30 +124,29 @@ void OSK::Update(bool focused) { } if (focused) { if (InputManager::Pressed(Keys::B)) handler->Done(); - if (true || handler->showPreview) { + if (handler->showPreview) { if (InputManager::Pressed(Keys::DPadLeft)) { - handler->SetCursor(handler->GetCursor() - 1); - preview->Refresh(); + auto c = handler->GetCursor(); + if (c > 0) handler->SetCursor(c - 1); + RefreshPreview(); } if (InputManager::Pressed(Keys::DPadRight)) { handler->SetCursor(handler->GetCursor() + 1); - preview->Refresh(); + RefreshPreview(); } auto& tc = PreviewTC(); if (InputManager::Pressed(Keys::DPadUp)) { Vector2 pt = tc.GetCursorPosition(preview->rect, handler->GetPreviewText(), handler->GetCursor()); - string msr = "|"; - pt.y -= tc.Measure(msr).y * 0.5f; + pt.y -= tc.Measure("|").y * 0.5f; handler->SetCursor(tc.GetCursorFromPoint(preview->rect, handler->GetPreviewText(), pt)); - preview->Refresh(); + RefreshPreview(); } if (InputManager::Pressed(Keys::DPadDown)) { Vector2 pt = tc.GetCursorPosition(preview->rect, handler->GetPreviewText(), handler->GetCursor()); - string msr = "|"; - pt.y += tc.Measure(msr).y * 1.5f; + pt.y += tc.Measure("|").y * 1.5f; handler->SetCursor(tc.GetCursorFromPoint(preview->rect, handler->GetPreviewText(), pt)); - preview->Refresh(); + RefreshPreview(); } } @@ -157,23 +163,47 @@ void OSK::Update(bool focused) { } void OSK::OnKey() { + RefreshPreview(); +} + +void OSK::RefreshPreview() { + auto& tc = PreviewTC(); + if (handler->showPreview) { + Vector2 sz = tc.Measure(handler->GetPreviewText(), preview->rect.size.x); + preview->Resize(Vector2(preview->rect.size.x, std::max(sz.y + textHang, previewSc->rect.size.y))); // I guess a magic four will do + + Vector2 cp = tc.GetCursorPosition(preview->rect, handler->GetPreviewText(), handler->GetCursor()); + Vector2 cs = tc.Measure("|") + Vector2(0, textHang); + previewSc->ScrollIntoView(VRect(cp, cs));//*/ + + } else { + preview->Resize(Vector2(preview->rect.size.x, 66)); + } preview->Refresh(); } void OSK::DrawPreview(DrawLayerProxy& layer) { - if (true || handler->showPreview) { + if (handler->showPreview) { auto& tc = PreviewTC(); tc.Print(layer.rect, handler->GetPreviewText(), Vector2::zero); Vector2 cp = tc.GetCursorPosition(layer.rect, handler->GetPreviewText(), handler->GetCursor()); string cc = "|"; - tc.Print(cp, cc, Vector2::zero); + tc.Print(cp, cc); + + //Vector2 cs = tc.Measure("|") + Vector2(0, textHang); + //previewSc->ScrollIntoView(VRect(cp, cs)); + } else { + static auto tc = ThemeManager::GetMetric("/dialogs/OSK/noPreview"); + tc.Print(layer.rect, "(no preview available)"); } } void OSK::OnPreviewTap(DrawLayerProxy& layer) { - Vector2 tpos = InputManager::TouchPos() - layer.ScreenRect().pos; - auto& tc = PreviewTC(); - handler->SetCursor(tc.GetCursorFromPoint(layer.rect, handler->GetPreviewText(), tpos)); - preview->Refresh(); + if (handler->showPreview) { + Vector2 tpos = InputManager::TouchPos() - layer.ScreenRect().pos; + auto& tc = PreviewTC(); + handler->SetCursor(tc.GetCursorFromPoint(layer.rect, handler->GetPreviewText(), tpos)); + RefreshPreview(); + } } diff --git a/libstarlight/source/starlight/dialog/OSK.h b/libstarlight/source/starlight/dialog/OSK.h index e2c88cc..deff676 100644 --- a/libstarlight/source/starlight/dialog/OSK.h +++ b/libstarlight/source/starlight/dialog/OSK.h @@ -6,6 +6,7 @@ #include #include "starlight/ui/Form.h" +#include "starlight/ui/ScrollField.h" #include "starlight/ui/DrawLayerProxy.h" #include "starlight/dialog/osk/InputHandler.h" @@ -15,7 +16,10 @@ namespace starlight { class OSK : public ui::Form, public ui::FormCreator { private: std::shared_ptr setContainer; + std::shared_ptr previewSc; std::shared_ptr preview; + + //Vector2 cursorPos; public: std::unique_ptr handler; @@ -27,6 +31,7 @@ namespace starlight { void OnKey(); + void RefreshPreview(); void DrawPreview(ui::DrawLayerProxy& layer); void OnPreviewTap(ui::DrawLayerProxy& layer); }; diff --git a/libstarlight/source/starlight/gfx/BitmapFont.cpp b/libstarlight/source/starlight/gfx/BitmapFont.cpp index 9ca001d..08a0d5f 100644 --- a/libstarlight/source/starlight/gfx/BitmapFont.cpp +++ b/libstarlight/source/starlight/gfx/BitmapFont.cpp @@ -64,7 +64,9 @@ BitmapFont::CharInfo& BitmapFont::Char(char c) { } Vector2 BitmapFont::MeasureTo(const std::string& msg, bool total, unsigned int end, float maxWidth) { + if (msg == "") return Vector2::zero; if (total) { + if (end == 0) return Vector2(0, lineHeight); Vector2 measure = Vector2::zero; ForChar(msg, [&, this](auto& s){ @@ -81,11 +83,14 @@ Vector2 BitmapFont::MeasureTo(const std::string& msg, bool total, unsigned int e Vector2 measure; bool found = false; - ForChar(msg, [&, this, total, end](auto& s){ + unsigned int et = end - 1; + if (end == 0) et = 0; + ForChar(msg, [&, this, total, end, et](auto& s){ measure = Vector2(s.lineAcc + s.cc->advX, lineHeight * s.lineNum); - if (s.i == end-1) { + if (s.i >= et) { found = true; if (s.i == s.lineEnd) measure = Vector2(0, lineHeight * (s.lineNum + 1)); // linebreak == next line + if (end == 0) measure = Vector2(0, lineHeight * s.lineNum); return true; } diff --git a/libstarlight/source/starlight/ui/DrawLayerProxy.cpp b/libstarlight/source/starlight/ui/DrawLayerProxy.cpp index 5ba4e6e..2c55bfb 100644 --- a/libstarlight/source/starlight/ui/DrawLayerProxy.cpp +++ b/libstarlight/source/starlight/ui/DrawLayerProxy.cpp @@ -29,6 +29,7 @@ void DrawLayerProxy::PreDraw() { void DrawLayerProxy::Draw() { if (canvas) { + auto rect = (this->rect + GFXManager::GetOffset()).IntSnap(); canvas->Draw(VRect(rect.pos, canvas->rect.size)); } else { if (eDraw) eDraw(*this); diff --git a/libstarlight/source/starlight/ui/Form.h b/libstarlight/source/starlight/ui/Form.h index c15d6ab..97cb6a3 100644 --- a/libstarlight/source/starlight/ui/Form.h +++ b/libstarlight/source/starlight/ui/Form.h @@ -58,7 +58,7 @@ namespace starlight { // public: - int priority = 0; + float priority = 0; unsigned int flags = 0; std::shared_ptr touchScreen = nullptr; diff --git a/libstarlight/source/starlight/ui/ScrollField.cpp b/libstarlight/source/starlight/ui/ScrollField.cpp index 977a23a..3b79da0 100644 --- a/libstarlight/source/starlight/ui/ScrollField.cpp +++ b/libstarlight/source/starlight/ui/ScrollField.cpp @@ -38,6 +38,18 @@ void ScrollField::Update() { scrollOffset.y = std::max(0.0f, std::min(scrollOffset.y, scrollMax.y)); } +void ScrollField::ScrollIntoView(Vector2 pt) { + Vector2 sm = pt - rect.size; + + scrollOffset.x = std::max(sm.x, std::min(scrollOffset.x, pt.x)); + scrollOffset.y = std::max(sm.y, std::min(scrollOffset.y, pt.y)); + + // hmm. doesn't play well with pending resizes + //scrollOffset.x = std::max(0.0f, std::min(scrollOffset.x, scrollMax.x)); + //scrollOffset.y = std::max(0.0f, std::min(scrollOffset.y, scrollMax.y)); +} +void ScrollField::ScrollIntoView(VRect box) { ScrollIntoView(box.BottomRight()); ScrollIntoView(box.pos); } + void ScrollField::OnProcessTouchEvent() { // stop when child element touched if (InputManager::Pressed(Keys::Touch)) scrollVel = Vector2::zero; } diff --git a/libstarlight/source/starlight/ui/ScrollField.h b/libstarlight/source/starlight/ui/ScrollField.h index 86f98a3..6a24a06 100644 --- a/libstarlight/source/starlight/ui/ScrollField.h +++ b/libstarlight/source/starlight/ui/ScrollField.h @@ -16,6 +16,9 @@ namespace starlight { void Update() override; + void ScrollIntoView(Vector2 pt); + void ScrollIntoView(VRect box); + // events void OnTouchOn() override; void OnTouchOff() override { } @@ -33,4 +36,3 @@ namespace starlight { }; } } - diff --git a/libstarlight/todo.txt b/libstarlight/todo.txt index 602ac55..b668d3d 100644 --- a/libstarlight/todo.txt +++ b/libstarlight/todo.txt @@ -3,20 +3,21 @@ roadmap to first release, in no particular order { finish implementing OSK! { - enable scrolling preview (and scroll to cursor where applicable) - polish! + - fix cursor-down + polish! { + - background + actual cursor image? + } InputManager::OpenKeyboard } + fix [ offset (-1 it) add generic backdrop assets (and form) - fix lowercase j running into things - adjust monospace line height (and maybe offset) to closer match the vwf of the same size - add license!! (MIT?) ADD README.MD PLS } then consider these before 1.0 "gold" { - should form priority be a float? + - should form priority be a float? make closing forms a bit less finicky (add them to a separate list and let the Application remove them from the list) add customization for Button (alternate idle/press images, optional glyph drawable) ^ use that to spice up the OSK diff --git a/testbed/source/Core.cpp b/testbed/source/Core.cpp index 027b2c8..3f906dc 100644 --- a/testbed/source/Core.cpp +++ b/testbed/source/Core.cpp @@ -78,6 +78,7 @@ void Core::Init() { auto tb = std::make_shared(VRect(0, 64, 320, 24).Expand(-16, 0)); tb->text = "TextBox testing in progress. ij ji lj jl"; + tb->multiLine = true; form->touchScreen->Add(tb); /*label->SetFont("default.16"); diff --git a/themes/default/decorations/osk.background.png b/themes/default/decorations/osk.background.png new file mode 100644 index 0000000000000000000000000000000000000000..ac72c66670ab9cd2ff3c1a6d9a13c4b955749978 GIT binary patch literal 8034 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 G#r;2-ee$XR literal 0 HcmV?d00001 diff --git a/themes/default/decorations/osk.background.xcf b/themes/default/decorations/osk.background.xcf new file mode 100644 index 0000000000000000000000000000000000000000..690281a0ac94fe0a9da8026b095a90ff789239d6 GIT binary patch literal 185906 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 C)lq=} literal 0 HcmV?d00001 diff --git a/themes/default/metrics.json b/themes/default/metrics.json index ebc38d2..48ad86e 100644 --- a/themes/default/metrics.json +++ b/themes/default/metrics.json @@ -45,6 +45,12 @@ "font" : "default.16", "textColor" : "white", "borderColor" : "black" + }, + "noPreview" : { + "font" : "default.16", + "textColor" : "midGray", + "borderColor" : "darkGray", + "justification" : [0.5, 0.5] } } },