Esempio n. 1
0
def show_main():
    gui.create_menu(
        buttons=[("Wallets", wallets_menu), (
            "Master keys",
            xpubs_menu), ("Sign transaction",
                          scan_transaction), ("Verify address", scan_address),
                 ("Use another password", ask_for_password
                  ), ("Switch network (%s)" % network["name"],
                      network_menu), ("Settings", settings_menu)])
Esempio n. 2
0
def xpubs_menu():
    def selector(name, derivation):
        def cb():
            show_xpub("Master "+name, derivation)
        return cb
    buttons = []
    for name, derivation in DEFAULT_XPUBS:
        buttons.append((name, selector(name, derivation)))
    gui.create_menu(buttons=buttons, cb_back=show_main, title="Select the master key")
Esempio n. 3
0
def settings_menu():
    gui.create_menu(buttons=[
        ("Show recovery phrase", show_mnemonic),
        ("Save key to memory", save_entropy),
        ("Delete key from memory", delete_entropy),
        ("Security settings", 
            cb_with_args(popups.show_settings, 
                         {"usb": USB_ENABLED, "developer": DEV_ENABLED}, 
                         save_settings)),
        ], cb_back=show_main,title="Careful. Think twice.")
Esempio n. 4
0
def more_xpubs_menu():
    def selector(name, derivation):
        def cb():
            show_xpub("Master "+name, derivation)
        return cb
    buttons = []
    for name, derivation in ALL_XPUBS:
        buttons.append((name, selector(name, derivation)))
    buttons.append(("Enter custom derivation", get_custom_xpub_path))
    gui.create_menu(buttons=buttons, cb_back=xpubs_menu, title="Select the master key")
Esempio n. 5
0
def wallets_menu():
    buttons = []
    def wrapper(w):
        def cb():
            select_wallet(w)
        return cb
    for wallet in keystore.wallets:
        buttons.append((wallet.name, wrapper(wallet)))
    buttons.append((lv.SYMBOL.PLUS+" Add new wallet (scan)", add_new_wallet))
    gui.create_menu(buttons=buttons, cb_back=show_main, title="Select the wallet")
Esempio n. 6
0
def network_menu():
    def selector(name):
        def cb():
            try:
                select_network(name)
                show_main()
            except Exception as e:
                gui.error("%r" % e)
        return cb
    # could be done with iterator
    # but order is unknown then
    gui.create_menu(buttons=[
        ("Mainnet", selector("main")),
        ("Testnet", selector("test")),
        ("Regtest", selector("regtest")),
        ("Signet", selector("signet"))
    ], title="Select the network")