Documentation

Index

Constants

View Source
const Break1 = 48
View Source
const ZeroAddress = "1111111111111111111114oLvT2"

Variables

View Source
var F, E, W, I, D, T log.LevelPrinter = log.GetLogPrinterSet(subsystem)

Functions

func Main

func Main(cx *pod.State) (e error)

    Main is the entrypoint for the wallet GUI

    Types

    type AddressEntry

    type AddressEntry struct {
    	Address  string     `json:"address"`
    	Message  string     `json:"message,omitempty"`
    	Label    string     `json:"label,omitempty"`
    	Amount   amt.Amount `json:"amount"`
    	Created  time.Time  `json:"created"`
    	Modified time.Time  `json:"modified"`
    	TxID     string     `json:txid,omitempty'`
    }

    type BoolMap

    type BoolMap map[string]*gel.Bool

    type CategoryFilter

    type CategoryFilter struct {
    	Send     bool
    	Generate bool
    	Immature bool
    	Receive  bool
    	Unknown  bool
    }

      CategoryFilter marks which transactions to omit from the filtered transaction list

      func (*CategoryFilter) Filter

      func (c *CategoryFilter) Filter(s string) (include bool)

      type CheckableMap

      type CheckableMap map[string]*gel.Checkable

      type ClickableMap

      type ClickableMap map[string]*gel.Clickable

      type Console

      type Console struct {
      	*gel.Window
      	// contains filtered or unexported fields
      }

      func (*Console) Fn

      func (c *Console) Fn(gtx l.Context) l.Dimensions

      func (*Console) JSONWidget

      func (c *Console) JSONWidget(color string, j []byte) (out []l.Widget)

      type IncDecMap

      type IncDecMap map[string]*gel.IncDec

      type Inputs

      type Inputs map[string]*gel.Input

      type JSONElement

      type JSONElement struct {
      	// contains filtered or unexported fields
      }

      type JSONElements

      type JSONElements []JSONElement

      func GetJSONElements

      func GetJSONElements(in map[string]interface{}) (je JSONElements)

      func (JSONElements) Len

      func (je JSONElements) Len() int

      func (JSONElements) Less

      func (je JSONElements) Less(i, j int) bool

      func (JSONElements) Swap

      func (je JSONElements) Swap(i, j int)

      type ListMap

      type ListMap map[string]*gel.List

      type Marshalled

      type Marshalled struct {
      	LastUpdated        time.Time
      	BestBlockHeight    int32
      	BestBlockHash      chainhash.Hash
      	Balance            float64
      	BalanceUnconfirmed float64
      	AllTxs             []btcjson.ListTransactionsResult
      	Filter             CategoryFilter
      	ReceivingAddress   string
      	ActivePage         string
      	ReceiveAddressBook []AddressEntry
      	SendAddressBook    []AddressEntry
      }

      func (*Marshalled) Unmarshal

      func (m *Marshalled) Unmarshal(s *State)

      type Passwords

      type Passwords map[string]*gel.Password

      type ReceivePage

      type ReceivePage struct {
      	// contains filtered or unexported fields
      }

      func (*ReceivePage) AddressbookHeader

      func (rp *ReceivePage) AddressbookHeader() l.Widget

      func (*ReceivePage) AmountInput

      func (rp *ReceivePage) AmountInput() l.Widget

      func (*ReceivePage) Fn

      func (rp *ReceivePage) Fn(gtx l.Context) l.Dimensions

      func (*ReceivePage) GetAddressbookHistoryCards

      func (rp *ReceivePage) GetAddressbookHistoryCards(bg string) (widgets []l.Widget)

      func (*ReceivePage) GetQRText

      func (rp *ReceivePage) GetQRText() string

      func (*ReceivePage) InputMessage

      func (rp *ReceivePage) InputMessage() l.Widget

      func (*ReceivePage) MediumList

      func (rp *ReceivePage) MediumList(gtx l.Context) l.Dimensions

      func (*ReceivePage) MessageInput

      func (rp *ReceivePage) MessageInput() l.Widget

      func (*ReceivePage) QRButton

      func (rp *ReceivePage) QRButton() l.Widget

      func (*ReceivePage) QRMessage

      func (rp *ReceivePage) QRMessage() l.Widget

      func (*ReceivePage) RegenerateButton

      func (rp *ReceivePage) RegenerateButton() l.Widget

      func (*ReceivePage) SmallList

      func (rp *ReceivePage) SmallList(gtx l.Context) l.Dimensions

      func (*ReceivePage) Spacer

      func (rp *ReceivePage) Spacer() l.Widget

      type SendPage

      type SendPage struct {
      	// contains filtered or unexported fields
      }

      func (*SendPage) AddressInput

      func (sp *SendPage) AddressInput() l.Widget

      func (*SendPage) AddressbookHeader

      func (sp *SendPage) AddressbookHeader() l.Widget

      func (*SendPage) AmountInput

      func (sp *SendPage) AmountInput() l.Widget

      func (*SendPage) Fn

      func (sp *SendPage) Fn(gtx l.Context) l.Dimensions

      func (*SendPage) GetAddressbookHistoryCards

      func (sp *SendPage) GetAddressbookHistoryCards(bg string) (widgets []l.Widget)

      func (*SendPage) InputMessage

      func (sp *SendPage) InputMessage() l.Widget

      func (*SendPage) MediumList

      func (sp *SendPage) MediumList(gtx l.Context) l.Dimensions

      func (*SendPage) MessageInput

      func (sp *SendPage) MessageInput() l.Widget

      func (*SendPage) PasteButton

      func (sp *SendPage) PasteButton() l.Widget

      func (*SendPage) SaveButton

      func (sp *SendPage) SaveButton() l.Widget

      func (*SendPage) SendButton

      func (sp *SendPage) SendButton() l.Widget

      func (*SendPage) SmallList

      func (sp *SendPage) SmallList(gtx l.Context) l.Dimensions

      type State

      type State struct {
      	// contains filtered or unexported fields
      }

      func GetNewState

      func GetNewState(params *chaincfg.Params, activePage *uberatomic.String) *State

      func (*State) ActivePage

      func (s *State) ActivePage() string

      func (*State) Balance

      func (s *State) Balance() float64

      func (*State) BalanceUnconfirmed

      func (s *State) BalanceUnconfirmed() float64

      func (*State) BestBlockHash

      func (s *State) BestBlockHash() *chainhash.Hash

      func (*State) BestBlockHeight

      func (s *State) BestBlockHeight() int32

      func (*State) BumpLastUpdated

      func (s *State) BumpLastUpdated()

      func (*State) Goroutines

      func (s *State) Goroutines() []l.Widget

      func (*State) IsReceivingAddress

      func (s *State) IsReceivingAddress() bool

      func (*State) LastUpdated

      func (s *State) LastUpdated() time.Time

      func (*State) Load

      func (s *State) Load(filename string, pass []byte) (e error)

        Load in the configuration from the specified file and decrypt using the given password

        func (*State) Marshal

        func (s *State) Marshal() (out *Marshalled)

        func (*State) Save

        func (s *State) Save(filename string, pass []byte, debug bool) (e error)

          Save the state to the specified file

          func (*State) SetActivePage

          func (s *State) SetActivePage(page string)

          func (*State) SetAllTxs

          func (s *State) SetAllTxs(atxs []btcjson.ListTransactionsResult)

          func (*State) SetBalance

          func (s *State) SetBalance(total float64)

          func (*State) SetBalanceUnconfirmed

          func (s *State) SetBalanceUnconfirmed(unconfirmed float64)

          func (*State) SetBestBlockHash

          func (s *State) SetBestBlockHash(h *chainhash.Hash)

          func (*State) SetBestBlockHeight

          func (s *State) SetBestBlockHeight(height int32)

          func (*State) SetGoroutines

          func (s *State) SetGoroutines(gr []l.Widget)

          func (*State) SetReceivingAddress

          func (s *State) SetReceivingAddress(addr btcaddr.Address)

          type WalletGUI

          type WalletGUI struct {
          	State *State
          
          	ChainMutex, WalletMutex   sync.Mutex
          	ChainClient, WalletClient *rpcclient.Client
          	WalletWatcher             qu.C
          	*gel.Window
          	Size    *uberatomic.Int32
          	MainApp *gel.App
          
          	RecentTxsWidget, TxHistoryWidget l.Widget
          
          	// ReceiveAddressbook l.Widget
          	// SendAddressbook    l.Widget
          	ReceivePage *ReceivePage
          	SendPage    *SendPage
          	// contains filtered or unexported fields
          }

          func (*WalletGUI) Advertise

          func (wg *WalletGUI) Advertise() (e error)

          func (*WalletGUI) ChainNotifications

          func (wg *WalletGUI) ChainNotifications() *rpcclient.NotificationHandlers

          func (*WalletGUI) ConsolePage

          func (wg *WalletGUI) ConsolePage() *Console

          func (*WalletGUI) CreateWalletPage

          func (wg *WalletGUI) CreateWalletPage(gtx l.Context) l.Dimensions

          func (*WalletGUI) GetAppWidget

          func (wg *WalletGUI) GetAppWidget() (a *gel.App)

          func (*WalletGUI) GetBools

          func (wg *WalletGUI) GetBools() BoolMap

          func (*WalletGUI) GetButtons

          func (wg *WalletGUI) GetButtons()

          func (*WalletGUI) GetCheckables

          func (wg *WalletGUI) GetCheckables() CheckableMap

          func (*WalletGUI) GetClickables

          func (wg *WalletGUI) GetClickables() ClickableMap

          func (*WalletGUI) GetIncDecs

          func (wg *WalletGUI) GetIncDecs() IncDecMap

          func (*WalletGUI) GetInputs

          func (wg *WalletGUI) GetInputs() Inputs

          func (*WalletGUI) GetLists

          func (wg *WalletGUI) GetLists() (o ListMap)

          func (*WalletGUI) GetNewReceivingAddress

          func (wg *WalletGUI) GetNewReceivingAddress()

          func (*WalletGUI) GetNewReceivingQRCode

          func (wg *WalletGUI) GetNewReceivingQRCode(qrText string)

          func (*WalletGUI) GetPasswords

          func (wg *WalletGUI) GetPasswords() (passwords Passwords)

            GetPasswords returns the passwords used in the wallet GUI

            func (*WalletGUI) GetReceivePage

            func (wg *WalletGUI) GetReceivePage() (rp *ReceivePage)

            func (*WalletGUI) GetRunUnit

            func (wg *WalletGUI) GetRunUnit(name string, before, after func(), args ...string) *rununit.RunUnit

            func (*WalletGUI) GetSendPage

            func (wg *WalletGUI) GetSendPage() (sp *SendPage)

            func (*WalletGUI) HelpPage

            func (wg *WalletGUI) HelpPage() func(gtx l.Context) l.Dimensions

            func (*WalletGUI) HistoryPage

            func (wg *WalletGUI) HistoryPage() l.Widget

            func (*WalletGUI) HistoryPageStatusFilter

            func (wg *WalletGUI) HistoryPageStatusFilter() l.Widget

            func (*WalletGUI) HistoryPageView

            func (wg *WalletGUI) HistoryPageView() l.Widget

            func (*WalletGUI) OverviewPage

            func (wg *WalletGUI) OverviewPage() l.Widget

            func (*WalletGUI) Page

            func (wg *WalletGUI) Page(title string, widget gel.Widgets) func(gtx l.Context) l.Dimensions

            func (*WalletGUI) PageTopBarButton

            func (wg *WalletGUI) PageTopBarButton(
            	name string, index int, ico *[]byte, onClick func(string), app *gel.App,
            	highlightColor string,
            ) func(gtx l.Context) l.Dimensions

            func (*WalletGUI) RecentTransactions

            func (wg *WalletGUI) RecentTransactions(n int, listName string) l.Widget

              RecentTransactions generates a display showing recent transactions

              fields to use: Address, Amount, BlockIndex, BlockTime, Category, Confirmations, Generated

              func (*WalletGUI) Run

              func (wg *WalletGUI) Run() (e error)

              func (*WalletGUI) RunStatusPanel

              func (wg *WalletGUI) RunStatusPanel(gtx l.Context) l.Dimensions

              func (*WalletGUI) SetNodeRunState

              func (wg *WalletGUI) SetNodeRunState(b bool)

              func (*WalletGUI) SetWalletRunState

              func (wg *WalletGUI) SetWalletRunState(b bool)

              func (*WalletGUI) ShuffleSeed

              func (wg *WalletGUI) ShuffleSeed()

              func (*WalletGUI) SideBarButton

              func (wg *WalletGUI) SideBarButton(title, page string, index int) func(gtx l.Context) l.Dimensions

              func (*WalletGUI) StatusBarButton

              func (wg *WalletGUI) StatusBarButton(
              	name string,
              	index int,
              	ico *[]byte,
              	onClick func(string),
              	app *gel.App,
              ) func(gtx l.Context) l.Dimensions

              func (*WalletGUI) WalletAndClientRunning

              func (wg *WalletGUI) WalletAndClientRunning() bool

              func (*WalletGUI) WalletNotifications

              func (wg *WalletGUI) WalletNotifications() *rpcclient.NotificationHandlers

              func (*WalletGUI) Watcher

              func (wg *WalletGUI) Watcher() qu.C

                Watcher keeps the chain and wallet and rpc clients connected

                Directories

                Path Synopsis