|
@ -1880,6 +1880,8 @@ enum { |
|
|
Set_grid_dims_form_id, |
|
|
Set_grid_dims_form_id, |
|
|
Autofit_menu_id, |
|
|
Autofit_menu_id, |
|
|
Confirm_new_file_menu_id, |
|
|
Confirm_new_file_menu_id, |
|
|
|
|
|
Cosmetics_menu_id, |
|
|
|
|
|
Set_soft_margins_form_id, |
|
|
#ifdef FEAT_PORTMIDI |
|
|
#ifdef FEAT_PORTMIDI |
|
|
Portmidi_output_device_menu_id, |
|
|
Portmidi_output_device_menu_id, |
|
|
#endif |
|
|
#endif |
|
@ -1916,6 +1918,7 @@ enum { |
|
|
Main_menu_set_grid_dims, |
|
|
Main_menu_set_grid_dims, |
|
|
Main_menu_autofit_grid, |
|
|
Main_menu_autofit_grid, |
|
|
Main_menu_about, |
|
|
Main_menu_about, |
|
|
|
|
|
Main_menu_cosmetics, |
|
|
#ifdef FEAT_PORTMIDI |
|
|
#ifdef FEAT_PORTMIDI |
|
|
Main_menu_choose_portmidi_output, |
|
|
Main_menu_choose_portmidi_output, |
|
|
#endif |
|
|
#endif |
|
@ -1937,9 +1940,10 @@ void push_main_menu(void) { |
|
|
qmenu_add_choice(qm, Main_menu_choose_portmidi_output, "MIDI Output..."); |
|
|
qmenu_add_choice(qm, Main_menu_choose_portmidi_output, "MIDI Output..."); |
|
|
qmenu_add_spacer(qm); |
|
|
qmenu_add_spacer(qm); |
|
|
#endif |
|
|
#endif |
|
|
|
|
|
qmenu_add_choice(qm, Main_menu_cosmetics, "Appearance..."); |
|
|
qmenu_add_choice(qm, Main_menu_controls, "Controls..."); |
|
|
qmenu_add_choice(qm, Main_menu_controls, "Controls..."); |
|
|
qmenu_add_choice(qm, Main_menu_opers_guide, "Operators..."); |
|
|
qmenu_add_choice(qm, Main_menu_opers_guide, "Operators..."); |
|
|
qmenu_add_choice(qm, Main_menu_about, "About..."); |
|
|
qmenu_add_choice(qm, Main_menu_about, "About ORCA..."); |
|
|
qmenu_add_spacer(qm); |
|
|
qmenu_add_spacer(qm); |
|
|
qmenu_add_choice(qm, Main_menu_quit, "Quit"); |
|
|
qmenu_add_choice(qm, Main_menu_quit, "Quit"); |
|
|
qmenu_push_to_nav(qm); |
|
|
qmenu_push_to_nav(qm); |
|
@ -1968,6 +1972,28 @@ void push_autofit_menu(void) { |
|
|
qmenu_push_to_nav(qm); |
|
|
qmenu_push_to_nav(qm); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
enum { |
|
|
|
|
|
Cosmetics_soft_margins_id = 1, |
|
|
|
|
|
}; |
|
|
|
|
|
enum { |
|
|
|
|
|
Soft_margins_text_line_id = 1, |
|
|
|
|
|
}; |
|
|
|
|
|
void push_cosmetics_menu(void) { |
|
|
|
|
|
Qmenu *qm = qmenu_create(Cosmetics_menu_id); |
|
|
|
|
|
qmenu_set_title(qm, "Appearance"); |
|
|
|
|
|
qmenu_add_choice(qm, Cosmetics_soft_margins_id, "Margins..."); |
|
|
|
|
|
qmenu_push_to_nav(qm); |
|
|
|
|
|
} |
|
|
|
|
|
void push_soft_margins_form(int init_y, int init_x) { |
|
|
|
|
|
Qform *qf = qform_create(Set_soft_margins_form_id); |
|
|
|
|
|
char buff[128]; |
|
|
|
|
|
int snres = snprintf(buff, sizeof buff, "%dx%d", init_x, init_y); |
|
|
|
|
|
char const *inistr = snres > 0 && (Usz)snres < sizeof buff ? buff : "2x1"; |
|
|
|
|
|
qform_set_title(qf, "Set Margins"); |
|
|
|
|
|
qform_add_text_line(qf, Soft_margins_text_line_id, inistr); |
|
|
|
|
|
qform_push_to_nav(qf); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
void push_about_msg(void) { |
|
|
void push_about_msg(void) { |
|
|
// clang-format off
|
|
|
// clang-format off
|
|
|
static char const* logo[] = { |
|
|
static char const* logo[] = { |
|
@ -2638,13 +2664,10 @@ int main(int argc, char **argv) { |
|
|
bool use_gui_cboard = true; |
|
|
bool use_gui_cboard = true; |
|
|
Midi_mode midi_mode; |
|
|
Midi_mode midi_mode; |
|
|
midi_mode_init_null(&midi_mode); |
|
|
midi_mode_init_null(&midi_mode); |
|
|
|
|
|
int softmargin_y = 1, softmargin_x = 2; |
|
|
|
|
|
int hardmargin_y = 0, hardmargin_x = 0; |
|
|
|
|
|
|
|
|
int softmargin_y = 1; |
|
|
|
|
|
int softmargin_x = 2; |
|
|
|
|
|
int hardmargin_y = 0; |
|
|
|
|
|
int hardmargin_x = 0; |
|
|
|
|
|
int longindex = 0; |
|
|
int longindex = 0; |
|
|
|
|
|
|
|
|
for (;;) { |
|
|
for (;;) { |
|
|
int c = getopt_long(argc, argv, "h", tui_options, &longindex); |
|
|
int c = getopt_long(argc, argv, "h", tui_options, &longindex); |
|
|
if (c == -1) |
|
|
if (c == -1) |
|
@ -3138,6 +3161,9 @@ int main(int argc, char **argv) { |
|
|
switch (act.picked.id) { |
|
|
switch (act.picked.id) { |
|
|
case Main_menu_quit: |
|
|
case Main_menu_quit: |
|
|
goto quit; |
|
|
goto quit; |
|
|
|
|
|
case Main_menu_cosmetics: |
|
|
|
|
|
push_cosmetics_menu(); |
|
|
|
|
|
break; |
|
|
case Main_menu_controls: |
|
|
case Main_menu_controls: |
|
|
push_controls_msg(); |
|
|
push_controls_msg(); |
|
|
break; |
|
|
break; |
|
@ -3242,6 +3268,14 @@ int main(int argc, char **argv) { |
|
|
} break; |
|
|
} break; |
|
|
} |
|
|
} |
|
|
} break; |
|
|
} break; |
|
|
|
|
|
case Cosmetics_menu_id: { |
|
|
|
|
|
switch (act.picked.id) { |
|
|
|
|
|
case Cosmetics_soft_margins_id: { |
|
|
|
|
|
push_soft_margins_form(softmargin_y, softmargin_x); |
|
|
|
|
|
break; |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
} break; |
|
|
#ifdef FEAT_PORTMIDI |
|
|
#ifdef FEAT_PORTMIDI |
|
|
case Portmidi_output_device_menu_id: { |
|
|
case Portmidi_output_device_menu_id: { |
|
|
ged_stop_all_sustained_notes(&ged_state); |
|
|
ged_stop_all_sustained_notes(&ged_state); |
|
@ -3353,6 +3387,21 @@ int main(int argc, char **argv) { |
|
|
} |
|
|
} |
|
|
osofree(tmpstr); |
|
|
osofree(tmpstr); |
|
|
} break; |
|
|
} break; |
|
|
|
|
|
case Set_soft_margins_form_id: { |
|
|
|
|
|
oso *tmpstr = NULL; |
|
|
|
|
|
if (qform_get_text_line(qf, Soft_margins_text_line_id, &tmpstr) && |
|
|
|
|
|
osolen(tmpstr) > 0) { |
|
|
|
|
|
int newy, newx; |
|
|
|
|
|
if (sscanf(osoc(tmpstr), "%dx%d", &newx, &newy) == 2 && |
|
|
|
|
|
newy >= 0 && newx >= 0) { |
|
|
|
|
|
softmargin_y = newy; |
|
|
|
|
|
softmargin_x = newx; |
|
|
|
|
|
ungetch(KEY_RESIZE); // kinda lame but whatever
|
|
|
|
|
|
} |
|
|
|
|
|
qnav_stack_pop(); |
|
|
|
|
|
} |
|
|
|
|
|
osofree(tmpstr); |
|
|
|
|
|
} break; |
|
|
} |
|
|
} |
|
|
} break; |
|
|
} break; |
|
|
} |
|
|
} |
|
|