* Correct edit / launch behavior of 4 row toolbar
    - removed dependency on 2 bar selection of alternate
      macro set
pull/4/head
David Freese 2016-01-03 07:29:12 -06:00
rodzic 94f83626f9
commit 22514a5774
3 zmienionych plików z 14 dodań i 7 usunięć

Wyświetl plik

@ -1831,10 +1831,14 @@ void macro_cb(Fl_Widget *w, void *v)
int b = (int)(reinterpret_cast<long> (v));
if (progdefaults.mbar_scheme > MACRO_SINGLE_BAR_MAX) {
if (b >= NUMMACKEYS) b += (altMacros - 1) * NUMMACKEYS;
if (b & 0x80) { // 4 bar docked macros
b &= 0x7F;
} else {
b += altMacros * NUMMACKEYS;
if (progdefaults.mbar_scheme > MACRO_SINGLE_BAR_MAX) {
if (b >= NUMMACKEYS) b += (altMacros - 1) * NUMMACKEYS;
} else {
b += altMacros * NUMMACKEYS;
}
}
int mouse = Fl::event_button();
@ -5431,7 +5435,7 @@ static void add_docked(dockgroup *dock)
((i % 12) == 11) ? w - xpos - 4 : Wbtn, Hbtn, "");
btnDockMacro[i]->box(FL_THIN_UP_BOX);
btnDockMacro[i]->tooltip(_("Left Click - execute\nRight Click - edit"));
btnDockMacro[i]->callback(macro_cb, reinterpret_cast<void *>(i));
btnDockMacro[i]->callback(macro_cb, reinterpret_cast<void *>(i | 0x80));
xpos += Wbtn;
if (i == 11 || i == 23 || i == 35) {

Wyświetl plik

@ -88,6 +88,7 @@ extern PWRmeter *pwrmeter;
extern Fl_Button *btnMacro[];
extern Fl_Button *btnAltMacros1;
extern Fl_Button *btnAltMacros2;
extern Fl_Button *btnDockMacro[];
extern Fl_Group *macroFrame1;
extern Fl_Group *macroFrame2;
extern Fl_Input2 *inpFreq;

Wyświetl plik

@ -310,9 +310,9 @@ void update_macro_button(int iMacro, const char *text, const char *name)
if (progdefaults.mbar_scheme > MACRO_SINGLE_BAR_MAX) {
if (iMacro < NUMMACKEYS) {
btnMacro[iMacro % NUMMACKEYS]->label( macros.name[iMacro].c_str() );
btnMacro[iMacro % NUMMACKEYS]->redraw_label();
} else {
btnMacro[iMacro]->label( macros.name[iMacro].c_str() );
btnMacro[iMacro]->redraw_label();
} else if ((iMacro / NUMMACKEYS) == altMacros) {
btnMacro[(iMacro % NUMMACKEYS) + NUMMACKEYS]->label( macros.name[iMacro].c_str() );
btnMacro[(iMacro % NUMMACKEYS) + NUMMACKEYS]->redraw_label();
}
@ -320,6 +320,8 @@ void update_macro_button(int iMacro, const char *text, const char *name)
btnMacro[iMacro % NUMMACKEYS]->label( macros.name[iMacro].c_str() );
btnMacro[iMacro % NUMMACKEYS]->redraw_label();
}
btnDockMacro[iMacro]->label(macros.name[iMacro].c_str());
btnDockMacro[iMacro]->redraw_label();
macros.changed = true;
}