Changeset 3c8c580 in mainline for uspace/lib/ui/test


Ignore:
Timestamp:
2021-06-10T13:22:33Z (4 years ago)
Author:
jxsvoboda <5887334+jxsvoboda@…>
Branches:
master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
c68c18b9
Parents:
d091007
git-author:
Jiri Svoboda <jiri@…> (2021-05-20 15:34:03)
git-committer:
jxsvoboda <5887334+jxsvoboda@…> (2021-06-10 13:22:33)
Message:

Open menu in separate popup window (WIP)

Location:
uspace/lib/ui/test
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/ui/test/main.c

    rd091007 r3c8c580  
    4242PCUT_IMPORT(paint);
    4343PCUT_IMPORT(pbutton);
     44PCUT_IMPORT(popup);
    4445PCUT_IMPORT(rbutton);
    4546PCUT_IMPORT(resource);
  • uspace/lib/ui/test/menu.c

    rd091007 r3c8c580  
    4646PCUT_TEST_SUITE(menu);
    4747
    48 typedef struct {
    49         bool expose;
    50 } test_resp_t;
    51 
    52 static void test_expose(void *);
    53 
    5448/** Create and destroy menu */
    5549PCUT_TEST(create_destroy)
     
    5953        errno_t rc;
    6054
    61         rc = ui_menu_bar_create(NULL, &mbar);
     55        rc = ui_menu_bar_create(NULL, NULL, &mbar);
    6256        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    6357
     
    10296        PCUT_ASSERT_NOT_NULL(resource);
    10397
    104         rc = ui_menu_bar_create(resource, &mbar);
     98        rc = ui_menu_bar_create(NULL, resource, &mbar);
    10599        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    106100        PCUT_ASSERT_NOT_NULL(mbar);
     
    148142        PCUT_ASSERT_NOT_NULL(resource);
    149143
    150         rc = ui_menu_bar_create(resource, &mbar);
     144        rc = ui_menu_bar_create(NULL, resource, &mbar);
    151145        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    152146        PCUT_ASSERT_NOT_NULL(mbar);
     
    188182        PCUT_ASSERT_NOT_NULL(resource);
    189183
    190         rc = ui_menu_bar_create(resource, &mbar);
     184        rc = ui_menu_bar_create(NULL, resource, &mbar);
    191185        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    192186        PCUT_ASSERT_NOT_NULL(mbar);
     
    218212        dummy_gc_t *dgc;
    219213        gfx_context_t *gc;
    220         ui_resource_t *resource = NULL;
    221         ui_menu_bar_t *mbar = NULL;
    222         ui_menu_t *menu = NULL;
     214        ui_t *ui = NULL;
     215        ui_resource_t *resource = NULL;
     216        ui_menu_bar_t *mbar = NULL;
     217        ui_menu_t *menu = NULL;
     218        gfx_rect_t prect;
    223219        gfx_coord2_t pos;
    224220        errno_t rc;
     
    229225        gc = dummygc_get_ctx(dgc);
    230226
    231         rc = ui_resource_create(gc, false, &resource);
    232         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    233         PCUT_ASSERT_NOT_NULL(resource);
    234 
    235         rc = ui_menu_bar_create(resource, &mbar);
    236         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    237         PCUT_ASSERT_NOT_NULL(mbar);
    238 
    239         rc = ui_menu_create(mbar, "Test", &menu);
    240         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    241         PCUT_ASSERT_NOT_NULL(menu);
     227        rc = ui_create_disp(NULL, &ui);
     228        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     229
     230        rc = ui_resource_create(gc, false, &resource);
     231        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     232        PCUT_ASSERT_NOT_NULL(resource);
     233
     234        rc = ui_menu_bar_create(ui, resource, &mbar);
     235        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     236        PCUT_ASSERT_NOT_NULL(mbar);
     237
     238        rc = ui_menu_create(mbar, "Test", &menu);
     239        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     240        PCUT_ASSERT_NOT_NULL(menu);
     241
     242        prect.p0.x = 0;
     243        prect.p0.y = 0;
     244        prect.p1.x = 0;
     245        prect.p1.y = 0;
     246
     247        /* Menu needs to be open to be able to paint it */
     248        rc = ui_menu_open(menu, &prect);
     249        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    242250
    243251        pos.x = 0;
     
    248256        ui_menu_bar_destroy(mbar);
    249257        ui_resource_destroy(resource);
    250         dummygc_destroy(dgc);
    251 }
    252 
    253 /** ui_menu_unpaint() calls expose callback */
    254 PCUT_TEST(unpaint)
    255 {
    256         dummy_gc_t *dgc;
    257         gfx_context_t *gc;
    258         ui_resource_t *resource = NULL;
    259         ui_menu_bar_t *mbar = NULL;
    260         ui_menu_t *menu = NULL;
    261         test_resp_t resp;
    262         errno_t rc;
    263 
    264         rc = dummygc_create(&dgc);
    265         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    266 
    267         gc = dummygc_get_ctx(dgc);
    268 
    269         rc = ui_resource_create(gc, false, &resource);
    270         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    271         PCUT_ASSERT_NOT_NULL(resource);
    272 
    273         rc = ui_menu_bar_create(resource, &mbar);
    274         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    275         PCUT_ASSERT_NOT_NULL(mbar);
    276 
    277         rc = ui_menu_create(mbar, "Test", &menu);
    278         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    279         PCUT_ASSERT_NOT_NULL(menu);
    280 
    281         ui_resource_set_expose_cb(resource, test_expose, &resp);
    282 
    283         resp.expose = false;
    284         rc = ui_menu_unpaint(menu);
    285         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    286         PCUT_ASSERT_TRUE(resp.expose);
    287 
    288         ui_menu_bar_destroy(mbar);
    289         ui_resource_destroy(resource);
     258        ui_destroy(ui);
    290259        dummygc_destroy(dgc);
    291260}
     
    313282        PCUT_ASSERT_NOT_NULL(resource);
    314283
    315         rc = ui_menu_bar_create(resource, &mbar);
     284        rc = ui_menu_bar_create(NULL, resource, &mbar);
    316285        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    317286        PCUT_ASSERT_NOT_NULL(mbar);
     
    334303}
    335304
    336 /** ui_menu_pos_event() outside menu closes it */
    337 PCUT_TEST(pos_event_outside)
    338 {
    339         dummy_gc_t *dgc;
    340         gfx_context_t *gc;
    341         ui_resource_t *resource = NULL;
    342         ui_menu_bar_t *mbar = NULL;
    343         ui_menu_t *menu = NULL;
    344         ui_evclaim_t claimed;
    345         gfx_coord2_t pos;
    346         pos_event_t event;
    347         errno_t rc;
    348 
    349         rc = dummygc_create(&dgc);
    350         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    351 
    352         gc = dummygc_get_ctx(dgc);
    353 
    354         rc = ui_resource_create(gc, false, &resource);
    355         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    356         PCUT_ASSERT_NOT_NULL(resource);
    357 
    358         rc = ui_menu_bar_create(resource, &mbar);
    359         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    360         PCUT_ASSERT_NOT_NULL(mbar);
    361 
    362         rc = ui_menu_create(mbar, "Test", &menu);
    363         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    364         PCUT_ASSERT_NOT_NULL(menu);
    365 
    366         pos.x = 0;
    367         pos.y = 0;
    368         ui_menu_bar_select(mbar, &pos, menu);
    369         PCUT_ASSERT_EQUALS(menu, mbar->selected);
    370 
    371         pos.x = 10;
    372         pos.y = 0;
    373         event.type = POS_PRESS;
    374         event.hpos = 0;
    375         event.vpos = 0;
    376         claimed = ui_menu_pos_event(menu, &pos, &event);
    377         PCUT_ASSERT_EQUALS(ui_unclaimed, claimed);
    378 
    379         /* Press event outside menu should close it */
    380         PCUT_ASSERT_NULL(mbar->selected);
    381 
    382         ui_menu_bar_destroy(mbar);
    383         ui_resource_destroy(resource);
    384         dummygc_destroy(dgc);
    385 }
    386 
    387305/** Computing menu geometry */
    388306PCUT_TEST(get_geom)
     
    406324        PCUT_ASSERT_NOT_NULL(resource);
    407325
    408         rc = ui_menu_bar_create(resource, &mbar);
     326        rc = ui_menu_bar_create(NULL, resource, &mbar);
    409327        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    410328        PCUT_ASSERT_NOT_NULL(mbar);
     
    432350}
    433351
    434 static void test_expose(void *arg)
    435 {
    436         test_resp_t *resp = (test_resp_t *) arg;
    437 
    438         resp->expose = true;
    439 }
    440 
    441352PCUT_EXPORT(menu);
  • uspace/lib/ui/test/menubar.c

    rd091007 r3c8c580  
    5050        errno_t rc;
    5151
    52         rc = ui_menu_bar_create(NULL, &mbar);
     52        rc = ui_menu_bar_create(NULL, NULL, &mbar);
    5353        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    5454        PCUT_ASSERT_NOT_NULL(mbar);
     
    7070        errno_t rc;
    7171
    72         rc = ui_menu_bar_create(NULL, &mbar);
     72        rc = ui_menu_bar_create(NULL, NULL, &mbar);
    7373        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    7474        PCUT_ASSERT_NOT_NULL(mbar);
     
    9999        PCUT_ASSERT_NOT_NULL(resource);
    100100
    101         rc = ui_menu_bar_create(resource, &mbar);
     101        rc = ui_menu_bar_create(NULL, resource, &mbar);
    102102        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    103103        PCUT_ASSERT_NOT_NULL(mbar);
     
    137137        PCUT_ASSERT_NOT_NULL(resource);
    138138
    139         rc = ui_menu_bar_create(resource, &mbar);
     139        rc = ui_menu_bar_create(NULL, resource, &mbar);
    140140        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    141141        PCUT_ASSERT_NOT_NULL(mbar);
     
    154154        dummy_gc_t *dgc;
    155155        gfx_context_t *gc;
     156        ui_t *ui = NULL;
    156157        ui_resource_t *resource = NULL;
    157158        ui_menu_bar_t *mbar = NULL;
     
    167168        gc = dummygc_get_ctx(dgc);
    168169
    169         rc = ui_resource_create(gc, false, &resource);
    170         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    171         PCUT_ASSERT_NOT_NULL(resource);
    172 
    173         rc = ui_menu_bar_create(resource, &mbar);
     170        rc = ui_create_disp(NULL, &ui);
     171        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     172
     173        rc = ui_resource_create(gc, false, &resource);
     174        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     175        PCUT_ASSERT_NOT_NULL(resource);
     176
     177        rc = ui_menu_bar_create(ui, resource, &mbar);
    174178        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    175179        PCUT_ASSERT_NOT_NULL(mbar);
     
    197201        ui_menu_bar_destroy(mbar);
    198202        ui_resource_destroy(resource);
    199         dummygc_destroy(dgc);
    200 }
    201 
    202 /** Position event is forwarded to menu */
    203 PCUT_TEST(pos_event_menu)
    204 {
    205         dummy_gc_t *dgc;
    206         gfx_context_t *gc;
     203        ui_destroy(ui);
     204        dummygc_destroy(dgc);
     205}
     206
     207/** Calling ui_menu_bar_select() with the same menu twice deselects it */
     208PCUT_TEST(select_same)
     209{
     210        dummy_gc_t *dgc;
     211        gfx_context_t *gc;
     212        ui_t *ui = NULL;
    207213        ui_resource_t *resource = NULL;
    208214        ui_menu_bar_t *mbar = NULL;
    209215        ui_menu_t *menu = NULL;
    210         ui_evclaim_t claimed;
    211         pos_event_t event;
    212         gfx_coord2_t pos;
    213216        gfx_rect_t rect;
    214217        errno_t rc;
     
    219222        gc = dummygc_get_ctx(dgc);
    220223
    221         rc = ui_resource_create(gc, false, &resource);
    222         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    223         PCUT_ASSERT_NOT_NULL(resource);
    224 
    225         rc = ui_menu_bar_create(resource, &mbar);
    226         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    227         PCUT_ASSERT_NOT_NULL(mbar);
     224        rc = ui_create_disp(NULL, &ui);
     225        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     226
     227        rc = ui_resource_create(gc, false, &resource);
     228        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     229        PCUT_ASSERT_NOT_NULL(resource);
     230
     231        rc = ui_menu_bar_create(ui, resource, &mbar);
     232        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     233        PCUT_ASSERT_NOT_NULL(mbar);
     234
     235        rc = ui_menu_create(mbar, "Test", &menu);
     236        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     237        PCUT_ASSERT_NOT_NULL(menu);
    228238
    229239        rect.p0.x = 0;
    230240        rect.p0.y = 0;
    231         rect.p1.x = 50;
    232         rect.p1.y = 25;
    233         ui_menu_bar_set_rect(mbar, &rect);
    234 
    235         rc = ui_menu_create(mbar, "Test", &menu);
    236         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    237         PCUT_ASSERT_NOT_NULL(menu);
    238 
    239         pos.x = 0;
    240         pos.y = 0;
    241         ui_menu_bar_select(mbar, &pos, menu);
     241        rect.p1.x = 0;
     242        rect.p1.y = 0;
     243        ui_menu_bar_select(mbar, &rect, menu);
    242244        PCUT_ASSERT_EQUALS(menu, mbar->selected);
    243245
    244         event.type = POS_PRESS;
    245         event.hpos = 4;
    246         event.vpos = 30;
    247         claimed = ui_menu_bar_pos_event(mbar, &event);
    248         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    249         PCUT_ASSERT_EQUALS(ui_claimed, claimed);
    250 
    251         ui_menu_bar_destroy(mbar);
    252         ui_resource_destroy(resource);
    253         dummygc_destroy(dgc);
    254 }
    255 
    256 /* Unfocusing window closes open menu */
    257 PCUT_TEST(unfocus)
    258 {
    259         dummy_gc_t *dgc;
    260         gfx_context_t *gc;
    261         ui_resource_t *resource = NULL;
    262         ui_menu_bar_t *mbar = NULL;
    263         ui_menu_t *menu = NULL;
    264         gfx_coord2_t pos;
    265         errno_t rc;
    266 
    267         rc = dummygc_create(&dgc);
    268         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    269 
    270         gc = dummygc_get_ctx(dgc);
    271 
    272         rc = ui_resource_create(gc, false, &resource);
    273         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    274         PCUT_ASSERT_NOT_NULL(resource);
    275 
    276         rc = ui_menu_bar_create(resource, &mbar);
    277         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    278         PCUT_ASSERT_NOT_NULL(mbar);
    279 
    280         rc = ui_menu_create(mbar, "Test", &menu);
    281         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    282         PCUT_ASSERT_NOT_NULL(menu);
    283 
    284         /*
    285          * Position does not matter here. Probably should get rid of this
    286          * argument, storing the position in the menu itself.
    287          */
    288         pos.x = 0;
    289         pos.y = 0;
    290         ui_menu_bar_select(mbar, &pos, menu);
    291         PCUT_ASSERT_EQUALS(menu, mbar->selected);
    292 
    293         /* This should unselect the menu */
    294         ui_menu_bar_unfocus(mbar);
     246        /* Selecting again should unselect the menu */
     247        ui_menu_bar_select(mbar, &rect, menu);
    295248        PCUT_ASSERT_NULL(mbar->selected);
    296249
    297250        ui_menu_bar_destroy(mbar);
    298251        ui_resource_destroy(resource);
    299         dummygc_destroy(dgc);
    300 }
    301 
    302 /** Calling ui_menu_bar_select() with the same menu twice deselects it */
    303 PCUT_TEST(select_same)
    304 {
    305         dummy_gc_t *dgc;
    306         gfx_context_t *gc;
    307         ui_resource_t *resource = NULL;
    308         ui_menu_bar_t *mbar = NULL;
    309         ui_menu_t *menu = NULL;
    310         gfx_coord2_t pos;
    311         errno_t rc;
    312 
    313         rc = dummygc_create(&dgc);
    314         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    315 
    316         gc = dummygc_get_ctx(dgc);
    317 
    318         rc = ui_resource_create(gc, false, &resource);
    319         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    320         PCUT_ASSERT_NOT_NULL(resource);
    321 
    322         rc = ui_menu_bar_create(resource, &mbar);
    323         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    324         PCUT_ASSERT_NOT_NULL(mbar);
    325 
    326         rc = ui_menu_create(mbar, "Test", &menu);
    327         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    328         PCUT_ASSERT_NOT_NULL(menu);
    329 
    330         pos.x = 0;
    331         pos.y = 0;
    332         ui_menu_bar_select(mbar, &pos, menu);
    333         PCUT_ASSERT_EQUALS(menu, mbar->selected);
    334 
    335         /* Selecting again should unselect the menu */
    336         ui_menu_bar_select(mbar, &pos, menu);
    337         PCUT_ASSERT_NULL(mbar->selected);
    338 
    339         ui_menu_bar_destroy(mbar);
    340         ui_resource_destroy(resource);
     252        ui_destroy(ui);
    341253        dummygc_destroy(dgc);
    342254}
     
    347259        dummy_gc_t *dgc;
    348260        gfx_context_t *gc;
     261        ui_t *ui = NULL;
    349262        ui_resource_t *resource = NULL;
    350263        ui_menu_bar_t *mbar = NULL;
    351264        ui_menu_t *menu1 = NULL;
    352265        ui_menu_t *menu2 = NULL;
    353         gfx_coord2_t pos;
    354         errno_t rc;
    355 
    356         rc = dummygc_create(&dgc);
    357         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    358 
    359         gc = dummygc_get_ctx(dgc);
    360 
    361         rc = ui_resource_create(gc, false, &resource);
    362         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    363         PCUT_ASSERT_NOT_NULL(resource);
    364 
    365         rc = ui_menu_bar_create(resource, &mbar);
     266        gfx_rect_t rect;
     267        errno_t rc;
     268
     269        rc = dummygc_create(&dgc);
     270        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     271
     272        gc = dummygc_get_ctx(dgc);
     273
     274        rc = ui_create_disp(NULL, &ui);
     275        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     276
     277        rc = ui_resource_create(gc, false, &resource);
     278        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     279        PCUT_ASSERT_NOT_NULL(resource);
     280
     281        rc = ui_menu_bar_create(ui, resource, &mbar);
    366282        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    367283        PCUT_ASSERT_NOT_NULL(mbar);
     
    375291        PCUT_ASSERT_NOT_NULL(menu2);
    376292
    377         pos.x = 0;
    378         pos.y = 0;
    379         ui_menu_bar_select(mbar, &pos, menu1);
     293        rect.p0.x = 0;
     294        rect.p0.y = 0;
     295        rect.p1.x = 0;
     296        rect.p1.y = 0;
     297        ui_menu_bar_select(mbar, &rect, menu1);
    380298        PCUT_ASSERT_EQUALS(menu1, mbar->selected);
    381299
    382300        /* Selecting different menu should select it */
    383         ui_menu_bar_select(mbar, &pos, menu2);
     301        ui_menu_bar_select(mbar, &rect, menu2);
    384302        PCUT_ASSERT_EQUALS(menu2, mbar->selected);
    385303
    386304        ui_menu_bar_destroy(mbar);
    387305        ui_resource_destroy(resource);
     306        ui_destroy(ui);
    388307        dummygc_destroy(dgc);
    389308}
  • uspace/lib/ui/test/menuentry.c

    rd091007 r3c8c580  
    7171        PCUT_ASSERT_NOT_NULL(resource);
    7272
    73         rc = ui_menu_bar_create(resource, &mbar);
     73        rc = ui_menu_bar_create(NULL, resource, &mbar);
    7474        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    7575        PCUT_ASSERT_NOT_NULL(mbar);
     
    110110        PCUT_ASSERT_NOT_NULL(resource);
    111111
    112         rc = ui_menu_bar_create(resource, &mbar);
     112        rc = ui_menu_bar_create(NULL, resource, &mbar);
    113113        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    114114        PCUT_ASSERT_NOT_NULL(mbar);
     
    156156        PCUT_ASSERT_NOT_NULL(resource);
    157157
    158         rc = ui_menu_bar_create(resource, &mbar);
     158        rc = ui_menu_bar_create(NULL, resource, &mbar);
    159159        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    160160        PCUT_ASSERT_NOT_NULL(mbar);
     
    201201        PCUT_ASSERT_NOT_NULL(resource);
    202202
    203         rc = ui_menu_bar_create(resource, &mbar);
     203        rc = ui_menu_bar_create(NULL, resource, &mbar);
    204204        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    205205        PCUT_ASSERT_NOT_NULL(mbar);
     
    255255        PCUT_ASSERT_NOT_NULL(resource);
    256256
    257         rc = ui_menu_bar_create(resource, &mbar);
     257        rc = ui_menu_bar_create(NULL, resource, &mbar);
    258258        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    259259        PCUT_ASSERT_NOT_NULL(mbar);
     
    287287        dummy_gc_t *dgc;
    288288        gfx_context_t *gc;
     289        ui_t *ui = NULL;
    289290        ui_resource_t *resource = NULL;
    290291        ui_menu_bar_t *mbar = NULL;
     
    292293        ui_menu_entry_t *mentry = NULL;
    293294        gfx_coord2_t pos;
    294         errno_t rc;
    295 
    296         rc = dummygc_create(&dgc);
    297         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    298 
    299         gc = dummygc_get_ctx(dgc);
    300 
    301         rc = ui_resource_create(gc, false, &resource);
    302         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    303         PCUT_ASSERT_NOT_NULL(resource);
    304 
    305         rc = ui_menu_bar_create(resource, &mbar);
     295        gfx_rect_t prect;
     296        errno_t rc;
     297
     298        rc = dummygc_create(&dgc);
     299        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     300
     301        gc = dummygc_get_ctx(dgc);
     302
     303        rc = ui_create_disp(NULL, &ui);
     304        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     305
     306        rc = ui_resource_create(gc, false, &resource);
     307        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     308        PCUT_ASSERT_NOT_NULL(resource);
     309
     310        rc = ui_menu_bar_create(ui, resource, &mbar);
    306311        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    307312        PCUT_ASSERT_NOT_NULL(mbar);
     
    314319        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    315320        PCUT_ASSERT_NOT_NULL(mentry);
     321
     322        prect.p0.x = 0;
     323        prect.p0.y = 0;
     324        prect.p1.x = 0;
     325        prect.p1.y = 0;
     326
     327        rc = ui_menu_open(menu, &prect);
     328        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    316329
    317330        pos.x = 0;
     
    322335        ui_menu_bar_destroy(mbar);
    323336        ui_resource_destroy(resource);
     337        ui_destroy(ui);
    324338        dummygc_destroy(dgc);
    325339}
     
    330344        dummy_gc_t *dgc;
    331345        gfx_context_t *gc;
     346        ui_t *ui = NULL;
    332347        ui_resource_t *resource = NULL;
    333348        ui_menu_bar_t *mbar = NULL;
     
    335350        ui_menu_entry_t *mentry = NULL;
    336351        gfx_coord2_t pos;
     352        gfx_rect_t prect;
    337353        test_resp_t resp;
    338354        errno_t rc;
     
    343359        gc = dummygc_get_ctx(dgc);
    344360
    345         rc = ui_resource_create(gc, false, &resource);
    346         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    347         PCUT_ASSERT_NOT_NULL(resource);
    348 
    349         rc = ui_menu_bar_create(resource, &mbar);
     361        rc = ui_create_disp(NULL, &ui);
     362        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     363
     364        rc = ui_resource_create(gc, false, &resource);
     365        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     366        PCUT_ASSERT_NOT_NULL(resource);
     367
     368        rc = ui_menu_bar_create(ui, resource, &mbar);
    350369        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    351370        PCUT_ASSERT_NOT_NULL(mbar);
     
    361380        ui_menu_entry_set_cb(mentry, test_entry_cb, &resp);
    362381        resp.activated = false;
     382
     383        prect.p0.x = 0;
     384        prect.p0.y = 0;
     385        prect.p1.x = 0;
     386        prect.p1.y = 0;
     387
     388        rc = ui_menu_open(menu, &prect);
     389        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    363390
    364391        pos.x = 0;
     
    375402        ui_menu_bar_destroy(mbar);
    376403        ui_resource_destroy(resource);
     404        ui_destroy(ui);
    377405        dummygc_destroy(dgc);
    378406}
     
    383411        dummy_gc_t *dgc;
    384412        gfx_context_t *gc;
     413        ui_t *ui = NULL;
    385414        ui_resource_t *resource = NULL;
    386415        ui_menu_bar_t *mbar = NULL;
     
    388417        ui_menu_entry_t *mentry = NULL;
    389418        gfx_coord2_t pos;
     419        gfx_rect_t prect;
    390420        test_resp_t resp;
    391421        errno_t rc;
     
    396426        gc = dummygc_get_ctx(dgc);
    397427
    398         rc = ui_resource_create(gc, false, &resource);
    399         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    400         PCUT_ASSERT_NOT_NULL(resource);
    401 
    402         rc = ui_menu_bar_create(resource, &mbar);
     428        rc = ui_create_disp(NULL, &ui);
     429        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     430
     431        rc = ui_resource_create(gc, false, &resource);
     432        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     433        PCUT_ASSERT_NOT_NULL(resource);
     434
     435        rc = ui_menu_bar_create(ui, resource, &mbar);
    403436        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    404437        PCUT_ASSERT_NOT_NULL(mbar);
     
    414447        ui_menu_entry_set_cb(mentry, test_entry_cb, &resp);
    415448        resp.activated = false;
     449
     450        prect.p0.x = 0;
     451        prect.p0.y = 0;
     452        prect.p1.x = 0;
     453        prect.p1.y = 0;
     454
     455        rc = ui_menu_open(menu, &prect);
     456        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    416457
    417458        pos.x = 0;
     
    433474        ui_menu_bar_destroy(mbar);
    434475        ui_resource_destroy(resource);
     476        ui_destroy(ui);
    435477        dummygc_destroy(dgc);
    436478}
     
    441483        dummy_gc_t *dgc;
    442484        gfx_context_t *gc;
     485        ui_t *ui = NULL;
    443486        ui_resource_t *resource = NULL;
    444487        ui_menu_bar_t *mbar = NULL;
     
    446489        ui_menu_entry_t *mentry = NULL;
    447490        gfx_coord2_t pos;
     491        gfx_rect_t prect;
    448492        test_resp_t resp;
    449493        errno_t rc;
     
    454498        gc = dummygc_get_ctx(dgc);
    455499
    456         rc = ui_resource_create(gc, false, &resource);
    457         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    458         PCUT_ASSERT_NOT_NULL(resource);
    459 
    460         rc = ui_menu_bar_create(resource, &mbar);
     500        rc = ui_create_disp(NULL, &ui);
     501        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     502
     503        rc = ui_resource_create(gc, false, &resource);
     504        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     505        PCUT_ASSERT_NOT_NULL(resource);
     506
     507        rc = ui_menu_bar_create(ui, resource, &mbar);
    461508        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    462509        PCUT_ASSERT_NOT_NULL(mbar);
     
    472519        ui_menu_entry_set_cb(mentry, test_entry_cb, &resp);
    473520        resp.activated = false;
     521
     522        prect.p0.x = 0;
     523        prect.p0.y = 0;
     524        prect.p1.x = 0;
     525        prect.p1.y = 0;
     526
     527        rc = ui_menu_open(menu, &prect);
     528        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    474529
    475530        pos.x = 0;
     
    496551        ui_menu_bar_destroy(mbar);
    497552        ui_resource_destroy(resource);
     553        ui_destroy(ui);
    498554        dummygc_destroy(dgc);
    499555}
     
    504560        dummy_gc_t *dgc;
    505561        gfx_context_t *gc;
     562        ui_t *ui = NULL;
    506563        ui_resource_t *resource = NULL;
    507564        ui_menu_bar_t *mbar = NULL;
     
    509566        ui_menu_entry_t *mentry = NULL;
    510567        gfx_coord2_t pos;
     568        gfx_rect_t prect;
    511569        pos_event_t event;
    512570        errno_t rc;
     
    517575        gc = dummygc_get_ctx(dgc);
    518576
    519         rc = ui_resource_create(gc, false, &resource);
    520         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    521         PCUT_ASSERT_NOT_NULL(resource);
    522 
    523         rc = ui_menu_bar_create(resource, &mbar);
     577        rc = ui_create_disp(NULL, &ui);
     578        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     579
     580        rc = ui_resource_create(gc, false, &resource);
     581        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     582        PCUT_ASSERT_NOT_NULL(resource);
     583
     584        rc = ui_menu_bar_create(ui, resource, &mbar);
    524585        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    525586        PCUT_ASSERT_NOT_NULL(mbar);
     
    532593        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    533594        PCUT_ASSERT_NOT_NULL(mentry);
     595
     596        prect.p0.x = 0;
     597        prect.p0.y = 0;
     598        prect.p1.x = 0;
     599        prect.p1.y = 0;
     600
     601        rc = ui_menu_open(menu, &prect);
     602        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    534603
    535604        pos.x = 0;
     
    546615        ui_menu_bar_destroy(mbar);
    547616        ui_resource_destroy(resource);
     617        ui_destroy(ui);
    548618        dummygc_destroy(dgc);
    549619}
     
    554624        dummy_gc_t *dgc;
    555625        gfx_context_t *gc;
     626        ui_t *ui = NULL;
    556627        ui_resource_t *resource = NULL;
    557628        ui_menu_bar_t *mbar = NULL;
     
    559630        ui_menu_entry_t *mentry = NULL;
    560631        gfx_coord2_t pos;
     632        gfx_rect_t prect;
    561633        pos_event_t event;
    562634        errno_t rc;
     
    567639        gc = dummygc_get_ctx(dgc);
    568640
    569         rc = ui_resource_create(gc, false, &resource);
    570         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    571         PCUT_ASSERT_NOT_NULL(resource);
    572 
    573         rc = ui_menu_bar_create(resource, &mbar);
     641        rc = ui_create_disp(NULL, &ui);
     642        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     643
     644        rc = ui_resource_create(gc, false, &resource);
     645        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     646        PCUT_ASSERT_NOT_NULL(resource);
     647
     648        rc = ui_menu_bar_create(ui, resource, &mbar);
    574649        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    575650        PCUT_ASSERT_NOT_NULL(mbar);
     
    582657        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    583658        PCUT_ASSERT_NOT_NULL(mentry);
     659
     660        prect.p0.x = 0;
     661        prect.p0.y = 0;
     662        prect.p1.x = 0;
     663        prect.p1.y = 0;
     664
     665        rc = ui_menu_open(menu, &prect);
     666        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    584667
    585668        pos.x = 0;
     
    596679        ui_menu_bar_destroy(mbar);
    597680        ui_resource_destroy(resource);
     681        ui_destroy(ui);
    598682        dummygc_destroy(dgc);
    599683}
     
    604688        dummy_gc_t *dgc;
    605689        gfx_context_t *gc;
     690        ui_t *ui = NULL;
    606691        ui_resource_t *resource = NULL;
    607692        ui_menu_bar_t *mbar = NULL;
     
    609694        ui_menu_entry_t *mentry = NULL;
    610695        gfx_coord2_t pos;
     696        gfx_rect_t prect;
    611697        pos_event_t event;
    612698        errno_t rc;
     
    617703        gc = dummygc_get_ctx(dgc);
    618704
    619         rc = ui_resource_create(gc, false, &resource);
    620         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    621         PCUT_ASSERT_NOT_NULL(resource);
    622 
    623         rc = ui_menu_bar_create(resource, &mbar);
     705        rc = ui_create_disp(NULL, &ui);
     706        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     707
     708        rc = ui_resource_create(gc, false, &resource);
     709        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     710        PCUT_ASSERT_NOT_NULL(resource);
     711
     712        rc = ui_menu_bar_create(ui, resource, &mbar);
    624713        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    625714        PCUT_ASSERT_NOT_NULL(mbar);
     
    632721        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    633722        PCUT_ASSERT_NOT_NULL(mentry);
     723
     724        prect.p0.x = 0;
     725        prect.p0.y = 0;
     726        prect.p1.x = 0;
     727        prect.p1.y = 0;
     728
     729        rc = ui_menu_open(menu, &prect);
     730        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    634731
    635732        pos.x = 0;
     
    649746        ui_menu_bar_destroy(mbar);
    650747        ui_resource_destroy(resource);
     748        ui_destroy(ui);
    651749        dummygc_destroy(dgc);
    652750}
     
    657755        dummy_gc_t *dgc;
    658756        gfx_context_t *gc;
     757        ui_t *ui = NULL;
    659758        ui_resource_t *resource = NULL;
    660759        ui_menu_bar_t *mbar = NULL;
     
    662761        ui_menu_entry_t *mentry = NULL;
    663762        gfx_coord2_t pos;
     763        gfx_rect_t prect;
    664764        pos_event_t event;
    665765        errno_t rc;
     
    670770        gc = dummygc_get_ctx(dgc);
    671771
    672         rc = ui_resource_create(gc, false, &resource);
    673         PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    674         PCUT_ASSERT_NOT_NULL(resource);
    675 
    676         rc = ui_menu_bar_create(resource, &mbar);
     772        rc = ui_create_disp(NULL, &ui);
     773        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     774
     775        rc = ui_resource_create(gc, false, &resource);
     776        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
     777        PCUT_ASSERT_NOT_NULL(resource);
     778
     779        rc = ui_menu_bar_create(ui, resource, &mbar);
    677780        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    678781        PCUT_ASSERT_NOT_NULL(mbar);
     
    685788        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    686789        PCUT_ASSERT_NOT_NULL(mentry);
     790
     791        prect.p0.x = 0;
     792        prect.p0.y = 0;
     793        prect.p1.x = 0;
     794        prect.p1.y = 0;
     795
     796        rc = ui_menu_open(menu, &prect);
     797        PCUT_ASSERT_ERRNO_VAL(EOK, rc);
    687798
    688799        event.type = POS_UPDATE;
     
    699810        ui_menu_bar_destroy(mbar);
    700811        ui_resource_destroy(resource);
     812        ui_destroy(ui);
    701813        dummygc_destroy(dgc);
    702814}
Note: See TracChangeset for help on using the changeset viewer.