mirror of
https://github.com/gnosygnu/xowa.git
synced 2026-03-02 03:49:30 +00:00
Cfg: Add 'Gui - Shortcuts'
This commit is contained in:
@@ -36,6 +36,14 @@ public class Xog_bnd_box_ {
|
||||
return ary;
|
||||
} private static Xog_bnd_box[] ary;
|
||||
private static void ary_init(Xog_bnd_box[] ary, int tid, String key) {ary[tid] = new Xog_bnd_box(tid, key);}
|
||||
public static String To_gui_str(String key) {
|
||||
int tid = Xto_sys_int(key);
|
||||
return Xto_gui_str(tid);
|
||||
}
|
||||
public static String To_key_str(String gui) {
|
||||
int tid = Xby_gui_str(gui);
|
||||
return Xto_sys_str(tid);
|
||||
}
|
||||
public static int[] Xto_sys_int_ary(String s) {
|
||||
String[] ary = String_.Split(s, "|");
|
||||
int len = ary.length;
|
||||
|
||||
@@ -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.*;
|
||||
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.*;
|
||||
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_bnd_box[] boxs = Xog_bnd_box_.Ary();
|
||||
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_or_null(String v) {return (Xog_bnd_itm)regy.Get_by(v);}
|
||||
public void Init_by_kit(Xoae_app app) {
|
||||
this.app = app;
|
||||
Add_system_bnds();
|
||||
Add_custom_bnds(); // NOTE: should go after Add_system_bnds in case user overrides any;
|
||||
Bind_all();
|
||||
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) {
|
||||
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_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;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user