Changeset 252d03c in mainline for uspace/app/uidemo/uidemo.c
- Timestamp:
- 2021-04-28T09:22:39Z (3 years ago)
- Branches:
- master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 7470d97
- Parents:
- de227aba
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/app/uidemo/uidemo.c
rde227aba r252d03c 46 46 #include <ui/menuentry.h> 47 47 #include <ui/menu.h> 48 #include <ui/msgdialog.h> 48 49 #include <ui/pbutton.h> 49 50 #include <ui/resource.h> … … 84 85 }; 85 86 87 static void uidemo_file_message(ui_menu_entry_t *, void *); 86 88 static void uidemo_file_exit(ui_menu_entry_t *, void *); 89 90 static void msg_dialog_button(ui_msg_dialog_t *, void *, unsigned); 91 static void msg_dialog_close(ui_msg_dialog_t *, void *); 92 93 static ui_msg_dialog_cb_t msg_dialog_cb = { 94 .button = msg_dialog_button, 95 .close = msg_dialog_close 96 }; 87 97 88 98 /** Window close button was clicked. … … 190 200 } 191 201 192 /** File/ exitmenu entry selected.202 /** File/message menu entry selected. 193 203 * 194 204 * @param mentry Menu entry 195 205 * @param arg Argument (demo) 196 206 */ 207 static void uidemo_file_message(ui_menu_entry_t *mentry, void *arg) 208 { 209 ui_demo_t *demo = (ui_demo_t *) arg; 210 ui_msg_dialog_params_t mdparams; 211 ui_msg_dialog_t *dialog; 212 errno_t rc; 213 214 ui_msg_dialog_params_init(&mdparams); 215 mdparams.caption = "Message For You"; 216 mdparams.text = "Hello, world!"; 217 218 rc = ui_msg_dialog_create(demo->ui, &mdparams, &dialog); 219 if (rc != EOK) { 220 printf("Error creating message dialog.\n"); 221 return; 222 } 223 224 ui_msg_dialog_set_cb(dialog, &msg_dialog_cb, &demo); 225 226 } 227 228 /** File/exit menu entry selected. 229 * 230 * @param mentry Menu entry 231 * @param arg Argument (demo) 232 */ 197 233 static void uidemo_file_exit(ui_menu_entry_t *mentry, void *arg) 198 234 { … … 200 236 201 237 ui_quit(demo->ui); 238 } 239 240 /** Message dialog button press. 241 * 242 * @param dialog Message dialog 243 * @param arg Argument (ui_demo_t *) 244 * @param bnum Button number 245 */ 246 static void msg_dialog_button(ui_msg_dialog_t *dialog, void *arg, 247 unsigned bnum) 248 { 249 ui_demo_t *demo = (ui_demo_t *) arg; 250 251 (void) demo; 252 ui_msg_dialog_destroy(dialog); 253 } 254 255 /** Message dialog close request. 256 * 257 * @param dialog Message dialog 258 * @param arg Argument (ui_demo_t *) 259 */ 260 static void msg_dialog_close(ui_msg_dialog_t *dialog, void *arg) 261 { 262 ui_demo_t *demo = (ui_demo_t *) arg; 263 264 (void) demo; 265 ui_msg_dialog_destroy(dialog); 202 266 } 203 267 … … 215 279 gfx_bitmap_t *bitmap; 216 280 gfx_coord2_t off; 281 ui_menu_entry_t *mmsg; 217 282 ui_menu_entry_t *mfoo; 218 283 ui_menu_entry_t *mbar; … … 228 293 } 229 294 295 memset((void *) &demo, 0, sizeof(demo)); 296 demo.ui = ui; 297 230 298 ui_wnd_params_init(¶ms); 231 299 params.caption = "UI Demo"; 232 300 params.style |= ui_wds_resizable; 233 params.rect.p0.x = 0; 234 params.rect.p0.y = 0; 235 params.rect.p1.x = 220; 236 params.rect.p1.y = 350; 237 238 memset((void *) &demo, 0, sizeof(demo)); 239 demo.ui = ui; 301 302 /* FIXME: Auto layout */ 303 if (ui_is_textmode(ui)) { 304 params.rect.p0.x = 0; 305 params.rect.p0.y = 0; 306 params.rect.p1.x = 80; 307 params.rect.p1.y = 25; 308 } else { 309 params.rect.p0.x = 0; 310 params.rect.p0.y = 0; 311 params.rect.p1.x = 220; 312 params.rect.p1.y = 350; 313 } 240 314 241 315 rc = ui_window_create(ui, ¶ms, &window); … … 269 343 } 270 344 345 rc = ui_menu_entry_create(demo.mfile, "Message", "", &mmsg); 346 if (rc != EOK) { 347 printf("Error creating menu.\n"); 348 return rc; 349 } 350 351 ui_menu_entry_set_cb(mmsg, uidemo_file_message, (void *) &demo); 352 271 353 rc = ui_menu_entry_create(demo.mfile, "Foo", "Ctrl-Alt-Del", &mfoo); 272 354 if (rc != EOK) { … … 325 407 } 326 408 327 rect.p0.x = 4; 328 rect.p0.y = 30; 329 rect.p1.x = 216; 330 rect.p1.y = 52; 409 /* FIXME: Auto layout */ 410 if (ui_is_textmode(ui)) { 411 rect.p0.x = 1; 412 rect.p0.y = 2; 413 rect.p1.x = 79; 414 rect.p1.y = 3; 415 } else { 416 rect.p0.x = 4; 417 rect.p0.y = 30; 418 rect.p1.x = 216; 419 rect.p1.y = 52; 420 } 331 421 ui_menu_bar_set_rect(demo.mbar, &rect); 332 422
Note:
See TracChangeset
for help on using the changeset viewer.