1 #line 2 "src/Gui/MainWidget.cpp"
3 #include <Wt/WDialog.h>
4 #include <Wt/WComboBox.h>
5 #include <Wt/WPushButton.h>
6 #include <Wt/WVBoxLayout.h>
7 #include <Wt/Json/Serializer.h>
10 #include "../GnuCashew.h"
18 addStyleClass(
"MainWidget" );
20 auto lw = setLayout( std::make_unique< Wt::WVBoxLayout >() );
23 m_navBar = lw-> addWidget( std::make_unique< Wt::WNavigationBar >() );
24 m_navBar-> addStyleClass(
"NavBar" );
26 m_toolBar = lw-> addWidget( std::make_unique< Wt::WToolBar >() );
29 m_centralWidget = lw-> addWidget( std::make_unique< GCW::Gui::CentralWidget >(), 1 );
31 m_statusBar = lw-> addWidget( std::make_unique< Wt::WContainerWidget >() );
46 auto link = Wt::WLink(
TR8(
"gcw_gui.doxygen_link") );
47 link.setTarget( Wt::LinkTarget::NewWindow );
48 navBar()-> setResponsive(
true );
49 navBar()-> addStyleClass(
"navbar-light bg-light" );
50 navBar()-> setTitle(
"GCW", link );
56 auto w_ = std::make_unique< GCW::Gui::MainMenu >(
this );
57 m_mainMenu = w_.get();
58 navBar()-> addMenu( std::move( w_ ) );
64 navBar()-> addWidget( std::make_unique< LanguagePicker >(), Wt::AlignmentFlag::Right );
66 toolBar()-> addButton( std::make_unique< Wt::WPushButton >(
TR(
"gcw.MainWidget.tb.save" ) ) );
67 toolBar()-> addButton( std::make_unique< Wt::WPushButton >(
TR(
"gcw.MainWidget.tb.close" ) ) );
68 toolBar()-> addButton( std::make_unique< Wt::WPushButton >(
TR(
"gcw.MainWidget.tb.newInvoice" ) ) );
69 toolBar()-> addButton( std::make_unique< Wt::WPushButton >(
TR(
"gcw.MainWidget.tb.open" ) ) );
72 auto b = std::make_unique< Wt::WPushButton >(
TR(
"gcw.MainWidget.tb.edit" ) );
74 toolBar()-> addButton( std::move(b) );
75 e-> clicked().connect( [=](){ openSelectedAccount(); });
78 toolBar()-> addButton( std::make_unique< Wt::WPushButton >(
TR(
"gcw.MainWidget.tb.new" ) ) );
79 toolBar()-> addButton( std::make_unique< Wt::WPushButton >(
TR(
"gcw.MainWidget.tb.delete" ) ) );
82 auto b = std::make_unique< Wt::WPushButton >(
"devtest" );
84 toolBar()-> addButton( std::move(b) );
85 e-> clicked().connect( [=](){ test(); });
88 statusBar()-> addNew< Wt::WText >(
"status bar" );
96 if( !
GCW::app()-> gnucashew_session().isOpen() )
99 auto u_ = std::make_unique< Wt::WDialog >(
TR(
"gcw.PropertiesWidget.titleBar" ) );
100 auto dialog = u_.get();
101 addChild( std::move( u_ ) );
103 dialog-> rejectWhenEscapePressed(
true );
104 dialog-> contents()-> addNew< GCW::Gui::FilePropertiesWidget >();
110 dialog-> finished().connect( [&]( Wt::DialogCode _code ) { removeChild( dialog ); });
119 centralWidget()-> accountsTreeView()-> editSelectedAccount();
auto test_gnucash() -> void
auto openSelectedAccount() -> void
auto open_properties() -> void
CentralWidget * m_centralWidget
Wt::WContainerWidget * m_statusBar
Wt::WNavigationBar * m_navBar
auto load(const std::string &_guid) -> Item::Ptr
Load Account by GUID.