--- cui_midi.c- Mon Apr 7 00:00:00 2014 +++ cui_midi.c Wed Apr 9 00:00:00 2014 @@ -8,6 +8,7 @@ #include "cui/handler.h" #include "cui/menu.h" #include "cui/num.h" +#include "cui/tab.h" typedef struct hex_in{ struct cui_base base; @@ -188,15 +189,15 @@ cui_scpanel scp = (cui_scpanel)root; cui quit = cui_button_new(scp->view, 2, 1, "Quit"); - int y = cui_y2(quit) + 1; - cui hxi = hex_in_new(scp->view, 2, y, 0); - cui add = cui_button_new(scp->view, cui_x2(hxi)+2, y, "Add"); - cui out = cui_button_new(scp->view, cui_x2(add)+2, y, "Out"); + cui bs1 = cui_base_new(scp->view, quit->x, cui_y2(quit)+1, 0, 0); + cui hxi = hex_in_new(bs1, 0, 0, 0); + cui add = cui_button_new(bs1, cui_x2(hxi)+2, 0, "Add"); + cui out = cui_button_new(bs1, cui_x2(add)+2, 0, "Out"); char lb_buf[ BUFN ]; - cui lb = cui_label_new(scp->view, 2, cui_y2(hxi)+1, ""); + cui lb = cui_label_new(bs1, 2, cui_y2(hxi)+1, ""); cui prm_arr[] = { hxi, lb }; - cui bs2 = cui_base_new(scp->view, 2, cui_y2(lb)+1, 0, 0); + cui bs2 = cui_base_new(scp->view, quit->x, cui_y2(quit)+1, 0, 0); char *ch_lst[] = {"0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15",NULL}; char *note_lst[] = {"on", "off", "on/off", NULL}; struct test2 t2; @@ -205,6 +206,10 @@ int div = 96; int i; + cui tab_sheets[] = { bs1, bs2 }; + cui_hide(bs1); + cui_hide(bs2); + t2.lb_ch = cui_label_new(bs2, 0, 0, "midi ch : "); t2.mn_ch = cui_menu_popup_new(bs2, cui_x2(t2.lb_ch), 0, 4, ch_lst, 0); t2.lb_prog = cui_label_new(bs2, 2, 2, "prog num : "); @@ -235,6 +240,11 @@ lb_buf[0] = '\0'; cui_label_str_set(lb, lb_buf); + cui_show(bs2); + cui_tab_new(scp->view, cui_x2(quit)+2, quit->y, -1, + (char *[]){"1st ", "2nd ", NULL}, + tab_sheets, 1); + cui_bind(quit, CUI_EVT_BUTTON, btn_hdr, prm_arr); cui_bind(add, CUI_EVT_BUTTON, btn_hdr, prm_arr); cui_bind(out, CUI_EVT_BUTTON, btn_hdr, prm_arr); @@ -244,9 +254,11 @@ cui_bind(t2.note_out, CUI_EVT_BUTTON, t2_btn_hdr, &t2); cui_bind(t2.mn_note, CUI_EVT_BUTTON, t2_btn_hdr, &t2); + cui_wh_fit(bs1); cui_wh_fit(t2.bs_note_len); cui_wh_fit(bs2); cui_wh_fit(scp->view); + cui_wh_exp(bs1); cui_wh_set(root, scp->view->w+3, scp->view->h+3); cui_xy_set(scp->rszbox, root->w-1, root->h-1); cui_hide(t2.bs_note_len);