G-Wallet - Desktop Bitshares Wallet
G-Wallet is a Bitshares desktop(Linux, Windows, MAC) wallet program written in C++ using wxWidgets.
G-Wallet code is EXPERIMENTAL.
G-Wallet is currently not a complete program. It is the building blocks for one, with scaling in mind. The final goal is to support all the cli_wallet functionality and more.
For this, we separated the development in different classes, files and directories. All the classes can communicate with the others when they need by pointers to instances.
GWallet class is the main class and it is in charge of managing the program menu, toolbar, statusbar and other elements outside the client area. Everything inside the client area haves its own class, rest is managed by
GWallet class will also manage the state of the wallet, the state decides what the user will see.
The program use the same wallet file format as the
cli_wallet software, you can import a wallet file or create new one by having account and private key pair.
The program will display a welcome window when started:
If we already have an account and connect the main mode of the program will open with 3 different
wxAUI(advanced user interface) panes:
The top left pane(
Wallet) is a list of commands the program currently supports. You need to be unlocked to use the commands.
Top right pane(
Commands) will display command input forms and outputs. You can move your tabs and create new notebooks inside this area to match your visualization needs.
Cli) pane provides the same functionality as the
The connection stuff is done in a
G-Wallet makes use of
wxConfig to store some data that will help the user when starting the program next time.
Ubuntu instructions assuming you already have all needed to install bitshares-core software.
Add wxWidgets to your system:
sudo apt-get install libwxgtk3.0-dev
Get the code and build:
git clone https://github.com/bitshares/gwallet cd gwallet git submodule update --init --recursive cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo . make
Run the following to get started:
Use the File -> New (CTRL-N) to start the configuration wizard when running the first time:
To reduce the size of the generated executable do:
strip --strip-all gwallet
Use File -> Change language to translate the wallet, English, Spanish and Chinese are supported.
The interface is pretty straight forward, in the following short video a transfer is made: