Default font example
This commit is contained in:
parent
6de328c127
commit
e114e71741
|
@ -8,6 +8,7 @@ uiArea *area;
|
||||||
uiAreaHandler handler;
|
uiAreaHandler handler;
|
||||||
uiFontButton *fontButton;
|
uiFontButton *fontButton;
|
||||||
uiCombobox *alignment;
|
uiCombobox *alignment;
|
||||||
|
uiCheckbox *systemFont;
|
||||||
|
|
||||||
uiAttributedString *attrstr;
|
uiAttributedString *attrstr;
|
||||||
|
|
||||||
|
@ -97,16 +98,24 @@ static void handlerDraw(uiAreaHandler *a, uiArea *area, uiAreaDrawParams *p)
|
||||||
uiDrawTextLayout *textLayout;
|
uiDrawTextLayout *textLayout;
|
||||||
uiFontDescriptor defaultFont;
|
uiFontDescriptor defaultFont;
|
||||||
uiDrawTextLayoutParams params;
|
uiDrawTextLayoutParams params;
|
||||||
|
int useSystemFont = uiCheckboxChecked(systemFont);
|
||||||
|
|
||||||
params.String = attrstr;
|
params.String = attrstr;
|
||||||
|
if(useSystemFont) {
|
||||||
|
uiDrawLoadDefaultFont(&defaultFont);
|
||||||
|
} else {
|
||||||
uiFontButtonFont(fontButton, &defaultFont);
|
uiFontButtonFont(fontButton, &defaultFont);
|
||||||
|
}
|
||||||
|
printf("%s\n", defaultFont.Family);
|
||||||
params.DefaultFont = &defaultFont;
|
params.DefaultFont = &defaultFont;
|
||||||
params.Width = p->AreaWidth;
|
params.Width = p->AreaWidth;
|
||||||
params.Align = (uiDrawTextAlign) uiComboboxSelected(alignment);
|
params.Align = (uiDrawTextAlign) uiComboboxSelected(alignment);
|
||||||
textLayout = uiDrawNewTextLayout(¶ms);
|
textLayout = uiDrawNewTextLayout(¶ms);
|
||||||
uiDrawText(p->Context, textLayout, 0, 0);
|
uiDrawText(p->Context, textLayout, 0, 0);
|
||||||
uiDrawFreeTextLayout(textLayout);
|
uiDrawFreeTextLayout(textLayout);
|
||||||
|
if(!useSystemFont) {
|
||||||
uiFreeFontButtonFont(&defaultFont);
|
uiFreeFontButtonFont(&defaultFont);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void handlerMouseEvent(uiAreaHandler *a, uiArea *area, uiAreaMouseEvent *e)
|
static void handlerMouseEvent(uiAreaHandler *a, uiArea *area, uiAreaMouseEvent *e)
|
||||||
|
@ -140,6 +149,11 @@ static void onComboboxSelected(uiCombobox *b, void *data)
|
||||||
uiAreaQueueRedrawAll(area);
|
uiAreaQueueRedrawAll(area);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void onCheckboxToggled(uiCheckbox *b, void *data)
|
||||||
|
{
|
||||||
|
uiAreaQueueRedrawAll(area);
|
||||||
|
}
|
||||||
|
|
||||||
static int onClosing(uiWindow *w, void *data)
|
static int onClosing(uiWindow *w, void *data)
|
||||||
{
|
{
|
||||||
uiControlDestroy(uiControl(mainwin));
|
uiControlDestroy(uiControl(mainwin));
|
||||||
|
@ -208,6 +222,10 @@ int main(void)
|
||||||
uiComboboxOnSelected(alignment, onComboboxSelected, NULL);
|
uiComboboxOnSelected(alignment, onComboboxSelected, NULL);
|
||||||
uiFormAppend(form, "Alignment", uiControl(alignment), 0);
|
uiFormAppend(form, "Alignment", uiControl(alignment), 0);
|
||||||
|
|
||||||
|
systemFont = uiNewCheckbox("");
|
||||||
|
uiCheckboxOnToggled(systemFont, onCheckboxToggled, NULL);
|
||||||
|
uiFormAppend(form, "System Font", uiControl(systemFont), 0);
|
||||||
|
|
||||||
area = uiNewArea(&handler);
|
area = uiNewArea(&handler);
|
||||||
uiBoxAppend(hbox, uiControl(area), 1);
|
uiBoxAppend(hbox, uiControl(area), 1);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue