diff --git a/ebin/clutch.app b/ebin/clutch.app index 2dc3bab..1d2ab4b 100644 --- a/ebin/clutch.app +++ b/ebin/clutch.app @@ -3,8 +3,8 @@ {registered,[]}, {included_applications,[]}, {applications,[stdlib,kernel,sasl,ssl]}, - {vsn,"0.3.0"}, + {vsn,"0.3.1"}, {modules,[clutch,gmc_con,gmc_grids,gmc_gui,gmc_jt, - gmc_key_master,gmc_sup,gmc_v,gmc_v_netman, - gmc_v_wallman]}, + gmc_key_master,gmc_sup,gmc_v,gmc_v_devman, + gmc_v_netman,gmc_v_wallman]}, {mod,{clutch,[]}}]}. diff --git a/src/clutch.erl b/src/clutch.erl index 7f689f1..3ba19e4 100644 --- a/src/clutch.erl +++ b/src/clutch.erl @@ -3,7 +3,7 @@ %%% @end -module(clutch). --vsn("0.3.0"). +-vsn("0.3.1"). -behavior(application). -author("Craig Everett "). -copyright("QPQ AG "). diff --git a/src/gmc_con.erl b/src/gmc_con.erl index 1d03026..e72960f 100644 --- a/src/gmc_con.erl +++ b/src/gmc_con.erl @@ -3,7 +3,7 @@ %%% @end -module(gmc_con). --vsn("0.3.0"). +-vsn("0.3.1"). -author("Craig Everett "). -copyright("QPQ AG "). -license("GPL-3.0-or-later"). diff --git a/src/gmc_grids.erl b/src/gmc_grids.erl index f921706..216e6ae 100644 --- a/src/gmc_grids.erl +++ b/src/gmc_grids.erl @@ -37,7 +37,7 @@ %%% @end -module(gmc_grids). --vsn("0.3.0"). +-vsn("0.3.1"). -author("Craig Everett "). -copyright("QPQ AG "). -license("GPL-3.0-or-later"). diff --git a/src/gmc_gui.erl b/src/gmc_gui.erl index 4af6e5f..82c1812 100644 --- a/src/gmc_gui.erl +++ b/src/gmc_gui.erl @@ -3,7 +3,7 @@ %%% @end -module(gmc_gui). --vsn("0.3.0"). +-vsn("0.3.1"). -author("Craig Everett "). -copyright("QPQ AG "). -license("GPL-3.0-or-later"). diff --git a/src/gmc_jt.erl b/src/gmc_jt.erl index 6815e5e..e6a963b 100644 --- a/src/gmc_jt.erl +++ b/src/gmc_jt.erl @@ -15,7 +15,7 @@ %%% translation library is retained). -module(gmc_jt). --vsn("0.3.0"). +-vsn("0.3.1"). -export([read_translations/1, j/2, oneshot_j/2]). diff --git a/src/gmc_key_master.erl b/src/gmc_key_master.erl index f692caf..71cd692 100644 --- a/src/gmc_key_master.erl +++ b/src/gmc_key_master.erl @@ -8,7 +8,7 @@ %%% @end -module(gmc_key_master). --vsn("0.3.0"). +-vsn("0.3.1"). -export([make_key/2, encode/1, decode/1]). diff --git a/src/gmc_sup.erl b/src/gmc_sup.erl index 40f58d6..9936b01 100644 --- a/src/gmc_sup.erl +++ b/src/gmc_sup.erl @@ -12,7 +12,7 @@ %%% @end -module(gmc_sup). --vsn("0.3.0"). +-vsn("0.3.1"). -behaviour(supervisor). -author("Craig Everett "). -copyright("QPQ AG "). diff --git a/src/gmc_v.erl b/src/gmc_v.erl index b4933be..cfbe801 100644 --- a/src/gmc_v.erl +++ b/src/gmc_v.erl @@ -1,5 +1,5 @@ -module(gmc_v). --vsn("0.3.0"). +-vsn("0.3.1"). -author("Craig Everett "). -copyright("QPQ AG "). -license("GPL-3.0-or-later"). diff --git a/src/gmc_v_devman.erl b/src/gmc_v_devman.erl index 818e250..9b92941 100644 --- a/src/gmc_v_devman.erl +++ b/src/gmc_v_devman.erl @@ -1,5 +1,5 @@ -module(gmc_v_devman). --vsn("0.3.0"). +-vsn("0.3.1"). -author("Craig Everett "). -copyright("QPQ AG "). -license("GPL-3.0-or-later"). @@ -428,12 +428,12 @@ add_code_page2(State = #s{j = J}, {file, File}) -> add_code_page(State, {file, File}, Code); Error -> Message = io_lib:format(J("Opening ~p failed with: ~p"), [File, Error]), - ok = handle_troubling(Message, State), + ok = handle_troubling(State, Message), State end; {error, Reason} -> Message = io_lib:format(J("Opening ~p failed with: ~p"), [File, Reason]), - ok = handle_troubling(Message, State), + ok = handle_troubling(State, Message), State end; add_code_page2(State, {hash, Address}) -> @@ -734,8 +734,20 @@ open_hash(State = #s{frame = Frame, j = J}) -> end, ok = wxDialog:destroy(Dialog), case Choice of - {ok, Address} -> open_hash2(State, Address); - cancel -> State + {ok, Address = "ct_" ++ _} -> open_hash2(State, Address); + {ok, Address = "th_" ++ _} -> get_contract_from_tx(State, Address); + {ok, Turd} -> handle_troubling(State, {bad_address, Turd}); + cancel -> State + end. + +get_contract_from_tx(State, Address) -> + case hz:tx_info(Address) of + {ok, #{"call_info" := #{"contract_id" := Contract}}} -> + open_hash2(State, Contract); + {ok, Other} -> + handle_troubling(State, {bad_address, Other}); + Error -> + handle_troubling(State, Error) end. open_hash2(State, Address) -> @@ -743,7 +755,7 @@ open_hash2(State, Address) -> {ok, Source} -> open_hash3(State, Address, Source); Error -> - ok = handle_troubling(Error, State), + ok = handle_troubling(State, Error), State end. @@ -950,8 +962,20 @@ load(State = #s{frame = Frame, j = J}) -> end, ok = wxDialog:destroy(Dialog), case Choice of - {ok, Address} -> load2(State, Address); - cancel -> State + {ok, Address = "ct_" ++ _} -> load2(State, Address); + {ok, Address = "th_" ++ _} -> load_from_tx(State, Address); + {ok, Turd} -> handle_troubling(State, {bad_address, Turd}); + cancel -> State + end. + +load_from_tx(State, Address) -> + case hz:tx_info(Address) of + {ok, #{"call_info" := #{"contract_id" := Contract}}} -> + load2(State, Contract); + {ok, Other} -> + handle_troubling(State, {bad_address, Other}); + Error -> + handle_troubling(State, Error) end. load2(State, Address) -> @@ -959,7 +983,7 @@ load2(State, Address) -> {ok, Source} -> load3(State, Address, Source); Error -> - ok = handle_troubling(Error, State), + ok = handle_troubling(State, Error), State end. diff --git a/src/gmc_v_netman.erl b/src/gmc_v_netman.erl index f3f0dfa..8b3156e 100644 --- a/src/gmc_v_netman.erl +++ b/src/gmc_v_netman.erl @@ -1,5 +1,5 @@ -module(gmc_v_netman). --vsn("0.3.0"). +-vsn("0.3.1"). -author("Craig Everett "). -copyright("QPQ AG "). -license("GPL-3.0-or-later"). diff --git a/src/gmc_v_wallman.erl b/src/gmc_v_wallman.erl index 3ff978b..d6521ed 100644 --- a/src/gmc_v_wallman.erl +++ b/src/gmc_v_wallman.erl @@ -1,5 +1,5 @@ -module(gmc_v_wallman). --vsn("0.3.0"). +-vsn("0.3.1"). -author("Craig Everett "). -copyright("QPQ AG "). -license("GPL-3.0-or-later"). diff --git a/zomp.meta b/zomp.meta index cd216b8..7acaff8 100644 --- a/zomp.meta +++ b/zomp.meta @@ -2,14 +2,14 @@ {type,gui}. {modules,[]}. {prefix,"gmc"}. -{author,"Craig Everett"}. {desc,"A desktop client for the Gajumaru network of blockchain networks"}. -{package_id,{"otpr","clutch",{0,3,0}}}. -{deps,[{"otpr","sophia",{9,0,0}}, +{author,"Craig Everett"}. +{package_id,{"otpr","clutch",{0,3,1}}}. +{deps,[{"otpr","gmserialization",{0,1,3}}, + {"otpr","sophia",{9,0,0}}, {"otpr","hakuzaru",{0,3,0}}, {"otpr","gmbytecode",{3,4,1}}, {"otpr","lom",{1,0,0}}, - {"otpr","gmserialization",{0,1,2}}, {"otpr","zj",{1,1,0}}, {"otpr","erl_base58",{0,1,0}}, {"otpr","eblake2",{1,0,0}},