GnuCashew ~ GnuCash Enabled Web
GCW
ToolBar.cpp
Go to the documentation of this file.
1 #line 2 "src/Gui/BillPay/ToolBar.cpp"
2 
3 #include <Wt/WHBoxLayout.h>
4 #include <Wt/WTable.h>
5 #include <Wt/WContainerWidget.h>
6 #include <Wt/WPushButton.h>
7 
8 #include "BillPay.h"
9 
11 ToolBar()
12 {
13  addStyleClass( "ToolBar" );
14 
15  /*
16  ** Always use a layout
17  **
18  */
19  auto lw = setLayout( std::make_unique< Wt::WHBoxLayout >() );
20 
21  auto table = lw-> addWidget( std::make_unique< Wt::WTable >() );
22  table-> setAttributeValue( "style", "border-spacing:10px;border-collapse:separate;" );
23  lw-> addWidget( std::make_unique< Wt::WContainerWidget >(), 1 );
24 
25  /*
26  ** click to add
27  **
28  */
29  auto pbAdd = table-> elementAt( 0, 0 )-> addWidget( std::make_unique< Wt::WPushButton >( "add" ) );
30 
31  pbAdd-> setStyleClass( "btn-xs" );
32  pbAdd-> clicked().connect( [=](){ m_addClicked.emit(); } );
33 
34  /*
35  ** click to edit
36  **
37  */
38  auto pbEdit = table-> elementAt( 0, 1 )-> addWidget( std::make_unique< Wt::WPushButton >( "edit" ) );
39 
40  pbEdit-> setStyleClass( "btn-xs" );
41 
42  /*
43  ** hide and show disabled items
44  **
45  */
46  m_disabled = table-> elementAt( 0, 2 )-> addWidget( std::make_unique< Wt::WCheckBox >( "disabled" ) );
47 
48  m_disabled-> setValueText( configItem()-> getVarString( "showDisabled" ) );
49  m_disabled->
50  clicked().connect( [&]( Wt::WMouseEvent _event )
51  {
52  auto item = configItem();
53  Wt::Dbo::Transaction t( GCW::app()-> gnucashew_session() );
54  item.modify()-> setVar( "showDisabled", m_disabled-> valueText() );
55  item.flush();
56 
57  });
58 
59  /*
60  ** hide and show the summary view
61  **
62  */
63  m_summary = table-> elementAt( 0, 3 )-> addWidget( std::make_unique< Wt::WCheckBox >( "summary" ) );
64  m_summary-> setValueText( configItem()-> getVarString( "showSummary" ) );
65  m_summary->
66  clicked().connect( [&]( Wt::WMouseEvent _event )
67  {
68  auto item = configItem();
69  Wt::Dbo::Transaction t( GCW::app()-> gnucashew_session() );
70  item.modify()-> setVar( "showSummary", m_summary-> valueText() );
71  item.flush();
72 
73  });
74 
75  /*
76  ** import export buttons
77  **
78  */
79 #ifdef NEVER
80  {
81  auto pbImport = table-> elementAt( 0, 4 )-> addWidget( std::make_unique< Wt::WPushButton >( "import" ) );
82  auto pbExport = table-> elementAt( 0, 5 )-> addWidget( std::make_unique< Wt::WPushButton >( "export" ) );
83 
84  pbImport-> setStyleClass( "btn-xs" );
85  pbExport-> setStyleClass( "btn-xs" );
86 
87  pbImport-> clicked().connect( [=]{ m_importClicked.emit(); } );
88  pbExport-> clicked().connect( [=]{ m_exportClicked.emit(); } );
89 
90  }
91 #endif
92 
93 } // endToolBar()
94 
95 bool
97 showDisabled() const
98 {
99  return disabledButton()-> checkState() == Wt::CheckState::Checked? true:false;
100 }
101 
Wt::Signal m_addClicked
Definition: ToolBar.h:31
Wt::Signal m_exportClicked
Definition: ToolBar.h:49
Wt::WCheckBox * m_disabled
Definition: ToolBar.h:45
auto showDisabled() const -> bool
Definition: ToolBar.cpp:97
Wt::WCheckBox * m_summary
Definition: ToolBar.h:46
Wt::Signal m_importClicked
Definition: ToolBar.h:48
auto configItem() -> GCW::Dbo::Vars::Item::Ptr
Config Item.
Definition: BillPay.cpp:7
App * app()
Definition: App.cpp:67