|
|
@ -18,7 +18,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
package gplx.xowa.guis.bnds; import gplx.*; import gplx.xowa.*; import gplx.xowa.guis.*;
|
|
|
|
package gplx.xowa.guis.bnds; import gplx.*; import gplx.xowa.*; import gplx.xowa.guis.*;
|
|
|
|
import gplx.gfui.*; import gplx.gfui.ipts.*; import gplx.gfui.controls.elems.*;
|
|
|
|
import gplx.gfui.*; import gplx.gfui.ipts.*; import gplx.gfui.controls.elems.*;
|
|
|
|
import gplx.xowa.guis.views.*; import gplx.xowa.guis.cmds.*; import gplx.xowa.guis.menus.dom.*;
|
|
|
|
import gplx.xowa.guis.views.*; import gplx.xowa.guis.cmds.*; import gplx.xowa.guis.menus.dom.*;
|
|
|
|
public class Xog_bnd_mgr {
|
|
|
|
public class Xog_bnd_mgr implements Gfo_invk {
|
|
|
|
|
|
|
|
private Xoae_app app;
|
|
|
|
private Xog_win_itm win; private Xog_cmd_mgr_invk invk_mgr;
|
|
|
|
private Xog_win_itm win; private Xog_cmd_mgr_invk invk_mgr;
|
|
|
|
private Xog_bnd_box[] boxs = Xog_bnd_box_.Ary();
|
|
|
|
private Xog_bnd_box[] boxs = Xog_bnd_box_.Ary();
|
|
|
|
private List_adp startup_itms = List_adp_.New();
|
|
|
|
private List_adp startup_itms = List_adp_.New();
|
|
|
@ -29,10 +30,126 @@ public class Xog_bnd_mgr {
|
|
|
|
public Xog_bnd_itm Get_at(int i) {return (Xog_bnd_itm)regy.Get_at(i);}
|
|
|
|
public Xog_bnd_itm Get_at(int i) {return (Xog_bnd_itm)regy.Get_at(i);}
|
|
|
|
public Xog_bnd_itm Get_or_null(String v) {return (Xog_bnd_itm)regy.Get_by(v);}
|
|
|
|
public Xog_bnd_itm Get_or_null(String v) {return (Xog_bnd_itm)regy.Get_by(v);}
|
|
|
|
public void Init_by_kit(Xoae_app app) {
|
|
|
|
public void Init_by_kit(Xoae_app app) {
|
|
|
|
|
|
|
|
this.app = app;
|
|
|
|
Add_system_bnds();
|
|
|
|
Add_system_bnds();
|
|
|
|
Add_custom_bnds(); // NOTE: should go after Add_system_bnds in case user overrides any;
|
|
|
|
Add_custom_bnds(); // NOTE: should go after Add_system_bnds in case user overrides any;
|
|
|
|
Bind_all();
|
|
|
|
Bind_all();
|
|
|
|
app.Cfg_regy().App().Gui_mgr().Bnd_mgr().Init();
|
|
|
|
app.Cfg_regy().App().Gui_mgr().Bnd_mgr().Init();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app.Cfg().Bind_many_app(this
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.app.exit-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.go_bwd-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.go_fwd-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.cfg.main-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.cfg.menus-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.wiki.main_page-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.wiki.sandbox-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.wiki.sandbox-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.wiki.random-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.help.help-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.help.about-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.help.change_log-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.help.diagnostics-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.xowa_main-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.xowa_blog-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.setup.download_central-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.setup.import_from_list-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.setup.import_from_script-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.setup.maintenance-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.setup.download-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.system_data.log_session-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.system_data.cfg_app-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.system_data.cfg_lang-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.system_data.cfg_user-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.system_data.cfg_custom-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.nav.system_data.usr_history-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.font.increase-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.font.decrease-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.font.reset-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.view.mode_read-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.view.mode_edit-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.view.mode_html-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.view.mode_html-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.view.refresh-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.view.reload-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.view.save_as-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.view.print-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.edit.save-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.edit.save_draft-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.edit.focus_edit_box-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.edit.preview-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.edit.dbg_tmpl-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.edit.dbg_tmpl-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.edit.dbg_html-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.edit.exec-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.selection.select_all-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.selection.copy-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.page.selection.save_file_as-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.url.focus-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.url.focus-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.url.exec-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.url.exec-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.url.exec_by_paste-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.url.exec_by_paste-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.url.exec_by_paste-3"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.url.exec_new_tab_by_paste-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.url.exec_new_tab_by_paste-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.url.restore-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.search.focus-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.search.exec-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.search.exec-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.html.focus-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.html.focus-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.html.focus-3"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.html.focus-4"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.html.selection_focus_toggle-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.find.show-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.find.show_by_paste-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.find.hide-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.find.exec-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.find.exec-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.find.find_fwd-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.find.find_bwd-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.find.case_toggle-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.find.wrap_toggle-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.prog.focus-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.prog_log.show-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.prog_log.show-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.info.focus-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.browser.info.clear-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.new_dflt__at_dflt__focus_y-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.new_link__at_dflt__focus_n-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.new_link__at_dflt__focus_y-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_bwd-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_bwd-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_fwd-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_fwd-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_1-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_2-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_3-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_4-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_5-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_6-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_7-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_8-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.select_by_idx_9-2"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.move_bwd-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.move_fwd-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.close_cur-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.close_others-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.close_to_bgn-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.close_to_end-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.close_undo-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.gui.tabs.pin_toggle-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.html.tidy.toggle-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.net.enable_n_-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.net.enable_y_-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.net.enable_x_-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.usr.bookmarks.add-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.usr.bookmarks.show-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.usr.history.goto_recent-1"
|
|
|
|
|
|
|
|
, "xowa.gui.shortcuts.xowa.usr.history.show-1"
|
|
|
|
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
public Xog_bnd_itm Set(Xog_bnd_itm itm, int new_box, IptArg new_ipt) {
|
|
|
|
public Xog_bnd_itm Set(Xog_bnd_itm itm, int new_box, IptArg new_ipt) {
|
|
|
|
if (win.Win_box() == null) { // kit not built yet; occurs when restoring bindings through cfg file; DATE:2014-05-16
|
|
|
|
if (win.Win_box() == null) { // kit not built yet; occurs when restoring bindings through cfg file; DATE:2014-05-16
|
|
|
@ -233,4 +350,13 @@ public class Xog_bnd_mgr {
|
|
|
|
this.Bind(Xog_bnd_box_.Tid_browser_prog , win.Prog_box());
|
|
|
|
this.Bind(Xog_bnd_box_.Tid_browser_prog , win.Prog_box());
|
|
|
|
this.Bind(Xog_bnd_box_.Tid_browser_info , win.Info_box());
|
|
|
|
this.Bind(Xog_bnd_box_.Tid_browser_info , win.Info_box());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
public Object Invk(GfsCtx ctx, int ikey, String k, GfoMsg m) {
|
|
|
|
|
|
|
|
String[] flds = gplx.xowa.addons.apps.cfgs.enums.Xoitm_gui_binding.To_ary(m.ReadStr("v"));
|
|
|
|
|
|
|
|
int box = Xog_bnd_box_.Xto_sys_int(flds[0]);
|
|
|
|
|
|
|
|
String key = String_.Replace(k, "xowa.gui.shortcuts.", "");
|
|
|
|
|
|
|
|
Xog_bnd_itm bnd = app.Gui_mgr().Bnd_mgr().Get_or_null(key);
|
|
|
|
|
|
|
|
Set(bnd, box, IptArg_.parse(flds[1]));
|
|
|
|
|
|
|
|
return this;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|