Esempio n. 1
0
void PAGE_TrimEditInit(int page)
{
    struct Trim *trim = MIXER_GetAllTrims();
    tp->index = page;
    tp->trim = trim[tp->index];

    PAGE_ShowHeader(_tr("Trim"));
    PAGE_CreateOkButton(LCD_WIDTH-56, 4, okcancel_cb);

    enum {
        COL1 = (64 + ((LCD_WIDTH - 320) / 2)),
        COL2 = (160 + ((LCD_WIDTH - 320) / 2)),
        ROW1 = (80 + ((LCD_HEIGHT - 240) / 2)),
        ROW2 = (ROW1 + 24),
        ROW3 = (ROW1 + 48),
        ROW4 = (ROW1 + 72),
        ROW5 = (ROW1 + 96),
    };
    //Row 1
    GUI_CreateLabel(&gui_ed->srclbl, COL1, ROW1, NULL, DEFAULT_FONT, _tr("Input"));
    GUI_CreateTextSource(&gui_ed->src, COL2, ROW1, TEXTSELECT_96, NULL, set_source_cb, set_input_source_cb, &tp->trim.src);
    //Row 2
    GUI_CreateLabel(&gui_ed->steplbl, COL1, ROW2, NULL, DEFAULT_FONT, _tr("Trim Step"));
    GUI_CreateTextSelect(&gui_ed->step, COL2, ROW2, TEXTSELECT_96, NULL,
                         set_trimstep_cb, (void *)(long)(tp->index + 0x100)); //0x100: Use tp->trim
    //Row 3
    GUI_CreateLabelBox(&gui_ed->neglbl, COL1, ROW3, COL2-COL1, ROW4-ROW3, &DEFAULT_FONT, NULL, NULL, _tr("Trim -"));
    GUI_CreateTextSelect(&gui_ed->neg, COL2, ROW3, TEXTSELECT_96, NULL, set_trim_cb, &tp->trim.neg);
    //Row 4
    GUI_CreateLabel(&gui_ed->poslbl, COL1, ROW4, NULL, DEFAULT_FONT, _tr("Trim +"));
    GUI_CreateTextSelect(&gui_ed->pos, COL2, ROW4, TEXTSELECT_96, NULL, set_trim_cb, &tp->trim.pos);
    //Row 5
    GUI_CreateLabelBox(&gui_ed->swlbl, COL1, ROW5, COL2-COL1, ROW5-ROW4, &DEFAULT_FONT, NULL, NULL, _tr("Switch"));
    GUI_CreateTextSource(&gui_ed->sw, COL2, ROW5, TEXTSELECT_96, NULL, set_switch_cb, set_input_switch_cb, &tp->trim.sw);
}
Esempio n. 2
0
const char *trimsource_name_cb(guiObject_t *obj, const void *data)
{
    (void)obj;
    u8 i = (long)data;
    struct Trim *trim = MIXER_GetAllTrims();
    return INPUT_SourceName(tp->tmpstr, MIXER_MapChannel(trim[i].src));
}
Esempio n. 3
0
static const char *negtrim_str(guiObject_t *obj, const void *data)
{
    (void)obj;
    int i = (long)data;
    if(Model.trims[i].step == TRIM_MOMENTARY || Model.trims[i].step == TRIM_TOGGLE)
        return _tr("None");
    struct Trim *trim = MIXER_GetAllTrims();
    return INPUT_ButtonName(trim[i].neg);
}
Esempio n. 4
0
static int row_cb(int absrow, int relrow, int y, void *data)
{
    (void)data;
    struct Trim *trim = MIXER_GetAllTrims();
    GUI_CreateButtonPlateText(&gui->src[relrow], BUTTON_X, y, BUTTON_WIDTH, LINE_HEIGHT,
            &BUTTON_FONT, trimsource_name_cb, edit_trim_cb, (void *)((long)absrow));
    GUI_CreateTextSelectPlate(&gui->item[relrow], TEXTSEL_X, y,
            TEXTSEL_WIDTH, LINE_HEIGHT, &TINY_FONT,  NULL, set_trimstep_cb, (void *)(long)(absrow + 0x000)); //0x000: Use Model.trims
    GUI_CreateLabelBox(&gui->name[relrow], LABEL_X, y, LABEL_WIDTH, LINE_HEIGHT,
            &TINY_FONT, GUI_Localize, NULL,  (void *)INPUT_ButtonName(trim[absrow].pos));
    return 2;
}
Esempio n. 5
0
void PAGE_TrimEditInit(int page)
{
    struct Trim *trim = MIXER_GetAllTrims();
    tp->index = page;
    tp->trim = trim[tp->index];
    GUI_CreateLabelBox(&guit->header, 0, 0, LABEL2_WIDTH, HEADER_HEIGHT, &TITLE_FONT, GUI_Localize, NULL, _tr_noop("Edit"));
    GUI_CreateButtonPlateText(&guit->save, BUTTON2_X, BUTTON2_Y, BUTTON2_WIDTH, LINE_HEIGHT,
            &BUTTON_FONT, GUI_Localize, okcancel_cb, _tr_noop("Save"));
    GUI_CreateScrollable(&gui->scrollable, 0, HEADER_HEIGHT, LCD_WIDTH, LCD_HEIGHT - HEADER_HEIGHT,
                         LINE_SPACE, ITEM_LAST, row2_cb, getobj2_cb, NULL, NULL);
    GUI_SetSelected(GUI_ShowScrollableRowOffset(&gui->scrollable, 0));
}
Esempio n. 6
0
static int row_cb(int absrow, int relrow, int y, void *data)
{
    (void)data;
    struct Trim *trim = MIXER_GetAllTrims();
    GUI_CreateButton(&gui->src[relrow], PCOL1, y, BUTTON_64x16,
        trimsource_name_cb, 0x0000, _edit_cb, (void *)((long)absrow));
    GUI_CreateLabelBox(&gui->neg[relrow], PCOL2 + 6, y, PCOL3 - PCOL2, 24, &DEFAULT_FONT, negtrim_str, NULL, (void *)(long)absrow);
    GUI_CreateLabel(&gui->pos[relrow], PCOL3 + 6, y, NULL, DEFAULT_FONT, (void *)INPUT_ButtonName(trim[absrow].pos));
    GUI_CreateTextSelect(&gui->step[relrow], PCOL4 + 6, y, TEXTSELECT_96, NULL,
                         set_trimstep_cb, (void *)(long)(absrow + 0x000)); //0x000: Use Model.trims
    return 2;
}
Esempio n. 7
0
static void okcancel_cb(guiObject_t *obj, const void *data)
{
    (void)obj;
    if (data) {
        //Save trim here
        struct Trim *trim = MIXER_GetAllTrims();
        trim[tp->index] = tp->trim;
        MIXER_RegisterTrimButtons();
    }
    PAGE_RemoveAllObjects();
    PAGE_TrimInit(0);
}
Esempio n. 8
0
static int row_cb(int absrow, int relrow, int y, void *data)
{
    (void)data;
    u8 w = 30;
    struct Trim *trim = MIXER_GetAllTrims();
    GUI_CreateButtonPlateText(&gui->src[relrow], 0, y, w, ITEM_HEIGHT,
            &DEFAULT_FONT, trimsource_name_cb, 0x0000, _edit_cb, (void *)((long)absrow));
    GUI_CreateTextSelectPlate(&gui->item[relrow], 32, y,
            40, ITEM_HEIGHT, &TINY_FONT,  NULL, set_trimstep_cb, (void *)(long)(absrow+0x000)); //0x000: Use Model.trims
    GUI_CreateLabelBox(&gui->name[relrow], 75, y, 50, ITEM_HEIGHT,
            &DEFAULT_FONT, NULL, NULL,  (void *)INPUT_ButtonName(trim[absrow].pos));
    return 1;
}
Esempio n. 9
0
static void _edit_cb(guiObject_t *obj, const void *data)
{
    (void)obj;
    PAGE_SetActionCB(_sub_action_cb);
    struct Trim *trim = MIXER_GetAllTrims();
    PAGE_SetModal(1);
    tp->index = (long)data;
    tp->trim = trim[tp->index];
    PAGE_RemoveAllObjects();
    PAGE_ShowHeader(""); // to draw a line only

    u8 w = 50;
    GUI_CreateButtonPlateText(&guit->save, LCD_WIDTH - w -1, 0, w, ITEM_HEIGHT,
            &DEFAULT_FONT, NULL, 0x0000, okcancel_cb, (void *)_tr("Save"));
    GUI_CreateScrollable(&gui->scrollable, 0, ITEM_HEIGHT + 1, LCD_WIDTH, LCD_HEIGHT - ITEM_HEIGHT -1,
                         ITEM_SPACE, ITEM_LAST, row2_cb, getobj2_cb, NULL, NULL);
    GUI_SetSelected(GUI_ShowScrollableRowOffset(&gui->scrollable, 0));
}
Esempio n. 10
0
static void _edit_cb(guiObject_t *obj, const void *data)
{
    (void)obj;
    struct Trim *trim = MIXER_GetAllTrims();
    PAGE_SetModal(1);
    tp->index = (long)data;
    tp->trim = trim[tp->index];

    PAGE_RemoveAllObjects();
    PAGE_CreateCancelButton(LCD_WIDTH-160, 4, okcancel_cb);
    PAGE_CreateOkButton(LCD_WIDTH-56, 4, okcancel_cb);

    enum {
         COL1 = (64 + ((LCD_WIDTH - 320) / 2)),
         COL2 = (160 + ((LCD_WIDTH - 320) / 2)),
         ROW1 = (80 + ((LCD_HEIGHT - 240) / 2)),
         ROW2 = (ROW1 + 24),
         ROW3 = (ROW1 + 48),
         ROW4 = (ROW1 + 72),
         ROW5 = (ROW1 + 96),
    };
    //Row 1
    GUI_CreateLabel(&gui_ed->srclbl, COL1, ROW1, NULL, DEFAULT_FONT, _tr("Input"));
    GUI_CreateTextSelect(&gui_ed->src, COL2, ROW1, TEXTSELECT_96, NULL, set_source_cb, &tp->trim.src);
    //Row 2
    GUI_CreateLabel(&gui_ed->steplbl, COL1, ROW2, NULL, DEFAULT_FONT, _tr("Trim Step"));
    GUI_CreateTextSelect(&gui_ed->step, COL2, ROW2, TEXTSELECT_96, NULL,
                         set_trimstep_cb, (void *)(long)(tp->index + 0x100)); //0x100: Use tp->trim
    //Row 3
    GUI_CreateLabelBox(&gui_ed->neglbl, COL1, ROW3, COL2-COL1, ROW4-ROW3, &DEFAULT_FONT, NULL, NULL, _tr("Trim -"));
    GUI_CreateTextSelect(&gui_ed->neg, COL2, ROW3, TEXTSELECT_96, NULL, set_trim_cb, &tp->trim.neg);
    //Row 4
    GUI_CreateLabel(&gui_ed->poslbl, COL1, ROW4, NULL, DEFAULT_FONT, _tr("Trim +"));
    GUI_CreateTextSelect(&gui_ed->pos, COL2, ROW4, TEXTSELECT_96, NULL, set_trim_cb, &tp->trim.pos);
    //Row 5
    GUI_CreateLabelBox(&gui_ed->swlbl, COL1, ROW5, COL2-COL1, ROW5-ROW4, &DEFAULT_FONT, NULL, NULL, _tr("Switch"));
    GUI_CreateTextSelect(&gui_ed->sw, COL2, ROW5, TEXTSELECT_96, NULL, set_switch_cb, &tp->trim.sw);
}