Changes in uspace/lib/ui/src/pbutton.c [3c54869:174be87] in mainline
- File:
-
- 1 edited
-
uspace/lib/ui/src/pbutton.c (modified) (9 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/ui/src/pbutton.c
r3c54869 r174be87 1 1 /* 2 * Copyright (c) 202 3Jiri Svoboda2 * Copyright (c) 2022 Jiri Svoboda 3 3 * All rights reserved. 4 4 * … … 54 54 enum { 55 55 ui_pb_press_dx = 1, 56 ui_pb_press_dy = 1, 57 ui_pb_pad_x = 2, 58 ui_pb_pad_x_text = 1 56 ui_pb_press_dy = 1 59 57 }; 60 58 … … 116 114 117 115 ui_control_delete(pbutton->control); 118 free(pbutton->caption);119 116 free(pbutton); 120 117 } … … 186 183 { 187 184 pbutton->isdefault = isdefault; 188 }189 190 /** Get button light status.191 *192 * @param pbutton Button193 * @return @c true iff light is on194 */195 bool ui_pbutton_get_light(ui_pbutton_t *pbutton)196 {197 return pbutton->light;198 }199 200 /** Turn button light on or off.201 *202 * @param pbutton Button203 * @param light @c true iff button should be lit204 */205 void ui_pbutton_set_light(ui_pbutton_t *pbutton, bool light)206 {207 pbutton->light = light;208 }209 210 /** Set push button caption.211 *212 * @param pbutton Button213 * @param caption New caption214 * @return EOK on success, ENOMEM if out of memory215 */216 errno_t ui_pbutton_set_caption(ui_pbutton_t *pbutton, const char *caption)217 {218 char *dcaption;219 220 dcaption = str_dup(caption);221 if (dcaption == NULL)222 return ENOMEM;223 224 free(pbutton->caption);225 pbutton->caption = dcaption;226 return EOK;227 185 } 228 186 … … 345 303 gfx_text_fmt_t fmt; 346 304 gfx_rect_t rect; 347 gfx_rect_t irect;348 305 gfx_coord_t thickness; 349 gfx_color_t *color;350 306 bool depressed; 351 307 errno_t rc; … … 359 315 rect.p1.y = pbutton->rect.p1.y - thickness; 360 316 361 color = pbutton->light ? pbutton->res->btn_face_lit_color : 362 pbutton->res->btn_face_color; 363 364 rc = gfx_set_color(pbutton->res->gc, color); 317 rc = gfx_set_color(pbutton->res->gc, pbutton->res->btn_face_color); 365 318 if (rc != EOK) 366 319 goto error; … … 387 340 } else { 388 341 /* Text decoration */ 389 ui_paint_get_inset_frame_inside(pbutton->res, &rect, &irect);390 342 gfx_text_fmt_init(&fmt); 391 343 fmt.font = pbutton->res->font; … … 393 345 fmt.halign = gfx_halign_center; 394 346 fmt.valign = gfx_valign_center; 395 fmt.abbreviate = true;396 fmt.width = irect.p1.x - irect.p0.x - 2 * ui_pb_pad_x;397 347 398 348 rc = gfx_puttext(&pos, &fmt, pbutton->caption); … … 472 422 fmt.halign = gfx_halign_center; 473 423 fmt.valign = gfx_valign_center; 474 fmt.abbreviate = true;475 fmt.width = rect.p1.x - rect.p0.x - 2 * ui_pb_pad_x_text;476 if (fmt.width < 1)477 fmt.width = 1;478 424 479 425 rc = gfx_puttext(&pos, &fmt, pbutton->caption);
Note:
See TracChangeset
for help on using the changeset viewer.
