Browse Source

Set default line height to 1.2 in Label and Tooltip.

tags/v2.0.0
Andrew Belt 3 years ago
parent
commit
55aa05bb89
5 changed files with 11 additions and 1 deletions
  1. +1
    -0
      include/ui/Label.hpp
  2. +2
    -0
      src/ui/Label.cpp
  3. +2
    -0
      src/ui/TextField.cpp
  4. +4
    -0
      src/ui/Tooltip.cpp
  5. +2
    -1
      src/window.cpp

+ 1
- 0
include/ui/Label.hpp View File

@@ -16,6 +16,7 @@ struct Label : widget::Widget {


std::string text; std::string text;
float fontSize; float fontSize;
float lineHeight;
NVGcolor color; NVGcolor color;
Alignment alignment = LEFT_ALIGNMENT; Alignment alignment = LEFT_ALIGNMENT;




+ 2
- 0
src/ui/Label.cpp View File

@@ -8,6 +8,7 @@ namespace ui {
Label::Label() { Label::Label() {
box.size.y = BND_WIDGET_HEIGHT; box.size.y = BND_WIDGET_HEIGHT;
fontSize = 13; fontSize = 13;
lineHeight = 1.2;
color = bndGetTheme()->regularTheme.textColor; color = bndGetTheme()->regularTheme.textColor;
} }


@@ -28,6 +29,7 @@ void Label::draw(const DrawArgs& args) {
} break; } break;
} }


nvgTextLineHeight(args.vg, lineHeight);
bndIconLabelValue(args.vg, x, 0.0, box.size.x, box.size.y, -1, color, BND_LEFT, fontSize, text.c_str(), NULL); bndIconLabelValue(args.vg, x, 0.0, box.size.x, box.size.y, -1, color, BND_LEFT, fontSize, text.c_str(), NULL);
} }




+ 2
- 0
src/ui/TextField.cpp View File

@@ -68,7 +68,9 @@ void TextField::draw(const DrawArgs& args) {


int begin = std::min(cursor, selection); int begin = std::min(cursor, selection);
int end = std::max(cursor, selection); int end = std::max(cursor, selection);

bndTextField(args.vg, 0.0, 0.0, box.size.x, box.size.y, BND_CORNER_NONE, state, -1, text.c_str(), begin, end); bndTextField(args.vg, 0.0, 0.0, box.size.x, box.size.y, BND_CORNER_NONE, state, -1, text.c_str(), begin, end);

// Draw placeholder text // Draw placeholder text
if (text.empty()) { if (text.empty()) {
bndIconLabelCaret(args.vg, 0.0, 0.0, box.size.x, box.size.y, -1, bndGetTheme()->textFieldTheme.itemColor, 13, placeholder.c_str(), bndGetTheme()->textFieldTheme.itemColor, 0, -1); bndIconLabelCaret(args.vg, 0.0, 0.0, box.size.x, box.size.y, -1, bndGetTheme()->textFieldTheme.itemColor, 13, placeholder.c_str(), bndGetTheme()->textFieldTheme.itemColor, 0, -1);


+ 4
- 0
src/ui/Tooltip.cpp View File

@@ -9,6 +9,8 @@ namespace ui {


void Tooltip::step() { void Tooltip::step() {
// Wrap size to contents // Wrap size to contents
nvgSave(APP->window->vg);
nvgTextLineHeight(APP->window->vg, 1.2);
box.size.x = bndLabelWidth(APP->window->vg, -1, text.c_str()) + 10.0; box.size.x = bndLabelWidth(APP->window->vg, -1, text.c_str()) + 10.0;
box.size.y = bndLabelHeight(APP->window->vg, -1, text.c_str(), INFINITY); box.size.y = bndLabelHeight(APP->window->vg, -1, text.c_str(), INFINITY);
// Position near cursor. This assumes that `this` is added to the root widget. // Position near cursor. This assumes that `this` is added to the root widget.
@@ -16,12 +18,14 @@ void Tooltip::step() {
// Fit inside parent // Fit inside parent
assert(parent); assert(parent);
box = box.nudge(parent->box.zeroPos()); box = box.nudge(parent->box.zeroPos());
nvgRestore(APP->window->vg);


Widget::step(); Widget::step();
} }


void Tooltip::draw(const DrawArgs& args) { void Tooltip::draw(const DrawArgs& args) {
bndTooltipBackground(args.vg, 0.0, 0.0, box.size.x, box.size.y); bndTooltipBackground(args.vg, 0.0, 0.0, box.size.x, box.size.y);
nvgTextLineHeight(args.vg, 1.2);
bndMenuLabel(args.vg, 0.0, 0.0, box.size.x, box.size.y, -1, text.c_str()); bndMenuLabel(args.vg, 0.0, 0.0, box.size.x, box.size.y, -1, text.c_str());
Widget::draw(args); Widget::draw(args);
} }


+ 2
- 1
src/window.cpp View File

@@ -385,8 +385,9 @@ void Window::step() {
// DEBUG("%.2lf Hz", 1.0 / internal->lastFrameDuration); // DEBUG("%.2lf Hz", 1.0 / internal->lastFrameDuration);
internal->lastFrameTime = frameTime; internal->lastFrameTime = frameTime;


// Make event handlers and step() have a clean nanovg context
// Make event handlers and step() have a clean NanoVG context
nvgReset(vg); nvgReset(vg);

bndSetFont(uiFont->handle); bndSetFont(uiFont->handle);


// Poll events // Poll events


Loading…
Cancel
Save