diff options
Diffstat (limited to 'src/ui/util.c')
-rw-r--r-- | src/ui/util.c | 37 |
1 files changed, 27 insertions, 10 deletions
diff --git a/src/ui/util.c b/src/ui/util.c index 05b3c930..e638e596 100644 --- a/src/ui/util.c +++ b/src/ui/util.c | |||
@@ -126,6 +126,7 @@ iWidget *makePadding_Widget(int size) { | |||
126 | iLabelWidget *makeHeading_Widget(const char *text) { | 126 | iLabelWidget *makeHeading_Widget(const char *text) { |
127 | iLabelWidget *heading = new_LabelWidget(text, 0, 0, NULL); | 127 | iLabelWidget *heading = new_LabelWidget(text, 0, 0, NULL); |
128 | setFlags_Widget(as_Widget(heading), frameless_WidgetFlag | fixedSize_WidgetFlag, iTrue); | 128 | setFlags_Widget(as_Widget(heading), frameless_WidgetFlag | fixedSize_WidgetFlag, iTrue); |
129 | setBackgroundColor_Widget(as_Widget(heading), none_ColorId); | ||
129 | return heading; | 130 | return heading; |
130 | } | 131 | } |
131 | 132 | ||
@@ -166,7 +167,7 @@ static iBool menuHandler_(iWidget *menu, const char *cmd) { | |||
166 | iWidget *makeMenu_Widget(iWidget *parent, const iMenuItem *items, size_t n) { | 167 | iWidget *makeMenu_Widget(iWidget *parent, const iMenuItem *items, size_t n) { |
167 | iWidget *menu = new_Widget(); | 168 | iWidget *menu = new_Widget(); |
168 | setFrameColor_Widget(menu, black_ColorId); | 169 | setFrameColor_Widget(menu, black_ColorId); |
169 | setBackgroundColor_Widget(menu, gray25_ColorId); | 170 | setBackgroundColor_Widget(menu, uiBackground_ColorId); |
170 | setFlags_Widget(menu, | 171 | setFlags_Widget(menu, |
171 | keepOnTop_WidgetFlag | collapse_WidgetFlag | hidden_WidgetFlag | | 172 | keepOnTop_WidgetFlag | collapse_WidgetFlag | hidden_WidgetFlag | |
172 | arrangeVertical_WidgetFlag | arrangeSize_WidgetFlag | | 173 | arrangeVertical_WidgetFlag | arrangeSize_WidgetFlag | |
@@ -477,7 +478,7 @@ iWidget *makeSheet_Widget(const char *id) { | |||
477 | iWidget *sheet = new_Widget(); | 478 | iWidget *sheet = new_Widget(); |
478 | setId_Widget(sheet, id); | 479 | setId_Widget(sheet, id); |
479 | setFrameColor_Widget(sheet, black_ColorId); | 480 | setFrameColor_Widget(sheet, black_ColorId); |
480 | setBackgroundColor_Widget(sheet, gray25_ColorId); | 481 | setBackgroundColor_Widget(sheet, uiBackground_ColorId); |
481 | setFlags_Widget( | 482 | setFlags_Widget( |
482 | sheet, keepOnTop_WidgetFlag | arrangeVertical_WidgetFlag | arrangeHeight_WidgetFlag, iTrue); | 483 | sheet, keepOnTop_WidgetFlag | arrangeVertical_WidgetFlag | arrangeHeight_WidgetFlag, iTrue); |
483 | const iInt2 rootSize = rootSize_Window(get_Window()); | 484 | const iInt2 rootSize = rootSize_Window(get_Window()); |
@@ -600,7 +601,7 @@ iWidget *makeValueInput_Widget(iWidget *parent, const iString *initialValue, con | |||
600 | setFlags_Widget(div, arrangeHorizontal_WidgetFlag | arrangeSize_WidgetFlag, iTrue); | 601 | setFlags_Widget(div, arrangeHorizontal_WidgetFlag | arrangeSize_WidgetFlag, iTrue); |
601 | addChild_Widget(div, iClob(new_LabelWidget("Cancel", SDLK_ESCAPE, 0, "cancel"))); | 602 | addChild_Widget(div, iClob(new_LabelWidget("Cancel", SDLK_ESCAPE, 0, "cancel"))); |
602 | addChild_Widget(div, | 603 | addChild_Widget(div, |
603 | iClob(new_LabelWidget(acceptLabel ? acceptLabel : cyan_ColorEscape "OK", | 604 | iClob(new_LabelWidget(acceptLabel ? acceptLabel : uiTextAction_ColorEscape "OK", |
604 | SDLK_RETURN, | 605 | SDLK_RETURN, |
605 | 0, | 606 | 0, |
606 | "valueinput.accept"))); | 607 | "valueinput.accept"))); |
@@ -641,8 +642,8 @@ iWidget *makeQuestion_Widget(const char *title, | |||
641 | // processEvents_App(postedEventsOnly_AppEventMode); | 642 | // processEvents_App(postedEventsOnly_AppEventMode); |
642 | iWidget *dlg = makeSheet_Widget(""); | 643 | iWidget *dlg = makeSheet_Widget(""); |
643 | setCommandHandler_Widget(dlg, messageHandler_); | 644 | setCommandHandler_Widget(dlg, messageHandler_); |
644 | addChild_Widget(dlg, iClob(new_LabelWidget(title, 0, 0, NULL))); | 645 | addChildFlags_Widget(dlg, iClob(new_LabelWidget(title, 0, 0, NULL)), frameless_WidgetFlag); |
645 | addChild_Widget(dlg, iClob(new_LabelWidget(msg, 0, 0, NULL))); | 646 | addChildFlags_Widget(dlg, iClob(new_LabelWidget(msg, 0, 0, NULL)), frameless_WidgetFlag); |
646 | addChild_Widget(dlg, iClob(makePadding_Widget(gap_UI))); | 647 | addChild_Widget(dlg, iClob(makePadding_Widget(gap_UI))); |
647 | iWidget *div = new_Widget(); { | 648 | iWidget *div = new_Widget(); { |
648 | setFlags_Widget(div, arrangeHorizontal_WidgetFlag | arrangeSize_WidgetFlag, iTrue); | 649 | setFlags_Widget(div, arrangeHorizontal_WidgetFlag | arrangeSize_WidgetFlag, iTrue); |
@@ -685,14 +686,25 @@ iWidget *makeToggle_Widget(const char *id) { | |||
685 | 686 | ||
686 | iWidget *makePreferences_Widget(void) { | 687 | iWidget *makePreferences_Widget(void) { |
687 | iWidget *dlg = makeSheet_Widget("prefs"); | 688 | iWidget *dlg = makeSheet_Widget("prefs"); |
688 | addChild_Widget(dlg, iClob(new_LabelWidget(cyan_ColorEscape "PREFERENCES", 0, 0, NULL))); | 689 | addChildFlags_Widget(dlg, |
690 | iClob(new_LabelWidget(uiHeading_ColorEscape "PREFERENCES", 0, 0, NULL)), | ||
691 | frameless_WidgetFlag); | ||
689 | iWidget *page = new_Widget(); | 692 | iWidget *page = new_Widget(); |
690 | addChild_Widget(dlg, iClob(page)); | 693 | addChild_Widget(dlg, iClob(page)); |
691 | setFlags_Widget(page, arrangeHorizontal_WidgetFlag | arrangeSize_WidgetFlag, iTrue); | 694 | setFlags_Widget(page, arrangeHorizontal_WidgetFlag | arrangeSize_WidgetFlag, iTrue); |
692 | iWidget *headings = addChildFlags_Widget( | 695 | iWidget *headings = addChildFlags_Widget( |
693 | page, iClob(new_Widget()), arrangeVertical_WidgetFlag | arrangeSize_WidgetFlag); | 696 | page, iClob(new_Widget()), arrangeVertical_WidgetFlag | arrangeSize_WidgetFlag); |
694 | iWidget *values = addChildFlags_Widget( | 697 | iWidget *values = addChildFlags_Widget( |
695 | page, iClob(new_Widget()), arrangeVertical_WidgetFlag | arrangeSize_WidgetFlag); | 698 | page, iClob(new_Widget()), arrangeVertical_WidgetFlag | arrangeSize_WidgetFlag); |
699 | // setBackgroundColor_Widget(headings, none_ColorId); | ||
700 | // setBackgroundColor_Widget(values, none_ColorId); | ||
701 | addChild_Widget(headings, iClob(makeHeading_Widget("Theme:"))); | ||
702 | iWidget *themes = new_Widget(); | ||
703 | /* Themes. */ { | ||
704 | setId_Widget(addChild_Widget(themes, iClob(new_LabelWidget("Dark", 0, 0, "theme.set arg:0"))), "prefs.theme.0"); | ||
705 | setId_Widget(addChild_Widget(themes, iClob(new_LabelWidget("Light", 0, 0, "theme.set arg:1"))), "prefs.theme.1"); | ||
706 | } | ||
707 | addChildFlags_Widget(values, iClob(themes), arrangeHorizontal_WidgetFlag | arrangeSize_WidgetFlag); | ||
696 | addChild_Widget(headings, iClob(makeHeading_Widget("Retain window size:"))); | 708 | addChild_Widget(headings, iClob(makeHeading_Widget("Retain window size:"))); |
697 | addChild_Widget(values, iClob(makeToggle_Widget("prefs.retainwindow"))); | 709 | addChild_Widget(values, iClob(makeToggle_Widget("prefs.retainwindow"))); |
698 | addChild_Widget(headings, iClob(makeHeading_Widget("UI scale factor:"))); | 710 | addChild_Widget(headings, iClob(makeHeading_Widget("UI scale factor:"))); |
@@ -711,7 +723,9 @@ iWidget *makePreferences_Widget(void) { | |||
711 | 723 | ||
712 | iWidget *makeBookmarkEditor_Widget(void) { | 724 | iWidget *makeBookmarkEditor_Widget(void) { |
713 | iWidget *dlg = makeSheet_Widget("bmed"); | 725 | iWidget *dlg = makeSheet_Widget("bmed"); |
714 | addChild_Widget(dlg, iClob(new_LabelWidget(cyan_ColorEscape "EDIT BOOKMARK", 0, 0, NULL))); | 726 | addChildFlags_Widget(dlg, |
727 | iClob(new_LabelWidget(uiHeading_ColorEscape "EDIT BOOKMARK", 0, 0, NULL)), | ||
728 | frameless_WidgetFlag); | ||
715 | iWidget *page = new_Widget(); | 729 | iWidget *page = new_Widget(); |
716 | addChild_Widget(dlg, iClob(page)); | 730 | addChild_Widget(dlg, iClob(page)); |
717 | setFlags_Widget(page, arrangeHorizontal_WidgetFlag | arrangeSize_WidgetFlag, iTrue); | 731 | setFlags_Widget(page, arrangeHorizontal_WidgetFlag | arrangeSize_WidgetFlag, iTrue); |
@@ -720,13 +734,16 @@ iWidget *makeBookmarkEditor_Widget(void) { | |||
720 | iWidget *values = addChildFlags_Widget( | 734 | iWidget *values = addChildFlags_Widget( |
721 | page, iClob(new_Widget()), arrangeVertical_WidgetFlag | arrangeSize_WidgetFlag); | 735 | page, iClob(new_Widget()), arrangeVertical_WidgetFlag | arrangeSize_WidgetFlag); |
722 | iInputWidget *inputs[4]; | 736 | iInputWidget *inputs[4]; |
723 | addChild_Widget(headings, iClob(makeHeading_Widget("Title:"))); | 737 | iWidget *hd; |
738 | addChild_Widget(headings, iClob(hd = makeHeading_Widget("Title:"))); | ||
724 | setId_Widget(addChild_Widget(values, iClob(inputs[0] = new_InputWidget(0))), "bmed.title"); | 739 | setId_Widget(addChild_Widget(values, iClob(inputs[0] = new_InputWidget(0))), "bmed.title"); |
725 | addChild_Widget(headings, iClob(makeHeading_Widget("URL:"))); | 740 | addChild_Widget(headings, iClob(makeHeading_Widget("URL:"))); |
726 | setId_Widget(addChild_Widget(values, iClob(inputs[1] = new_InputWidget(0))), "bmed.url"); | 741 | setId_Widget(addChild_Widget(values, iClob(inputs[1] = new_InputWidget(0))), "bmed.url"); |
727 | addChild_Widget(headings, iClob(makeHeading_Widget("Tags:"))); | 742 | addChild_Widget(headings, iClob(makeHeading_Widget("Tags:"))); |
728 | setId_Widget(addChild_Widget(values, iClob(inputs[2] = new_InputWidget(0))), "bmed.tags"); | 743 | setId_Widget(addChild_Widget(values, iClob(inputs[2] = new_InputWidget(0))), "bmed.tags"); |
729 | arrange_Widget(dlg); | 744 | arrange_Widget(dlg); |
745 | /* TODO: Heights don't match here. */ | ||
746 | printf("hd:%d inp:%d\n", hd->rect.size.y, as_Widget(inputs[0])->rect.size.y); fflush(stdout); | ||
730 | for (int i = 0; i < 3; ++i) { | 747 | for (int i = 0; i < 3; ++i) { |
731 | as_Widget(inputs[i])->rect.size.x = dlg->rect.size.x - headings->rect.size.x - 3 * gap_UI; | 748 | as_Widget(inputs[i])->rect.size.x = dlg->rect.size.x - headings->rect.size.x - 3 * gap_UI; |
732 | } | 749 | } |
@@ -736,7 +753,7 @@ iWidget *makeBookmarkEditor_Widget(void) { | |||
736 | addChild_Widget( | 753 | addChild_Widget( |
737 | div, | 754 | div, |
738 | iClob(new_LabelWidget( | 755 | iClob(new_LabelWidget( |
739 | orange_ColorEscape "Save", SDLK_RETURN, KMOD_PRIMARY, "bmed.accept"))); | 756 | uiTextCaution_ColorEscape "Save", SDLK_RETURN, KMOD_PRIMARY, "bmed.accept"))); |
740 | } | 757 | } |
741 | addChild_Widget(dlg, iClob(div)); | 758 | addChild_Widget(dlg, iClob(div)); |
742 | addChild_Widget(get_Window()->root, iClob(dlg)); | 759 | addChild_Widget(get_Window()->root, iClob(dlg)); |