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