GnuCash c935c2f+
Loading...
Searching...
No Matches
Public Member Functions
GncAccountSelector Class Reference

C++ wrapper for GncAccounSel, see gnucash/gnome-utils/gnc-account-sel.h. More...

Public Member Functions

 GncAccountSelector (GtkBuilder *builder, AccountTypeList types, gnc_commodity *currency, Account *default_acct)
 
void attach (GtkBuilder *builder, const char *table_id, const char *label_ID, int row)
 
void connect (StockTransactionEntry *)
 
void set (Account *acct)
 
void set_sensitive (bool sensitive)
 
Accountget ()
 

Detailed Description

C++ wrapper for GncAccounSel, see gnucash/gnome-utils/gnc-account-sel.h.

Definition at line 1631 of file assistant-stock-transaction.cpp.

Constructor & Destructor Documentation

◆ GncAccountSelector()

GncAccountSelector::GncAccountSelector ( GtkBuilder *  builder,
AccountTypeList  types,
gnc_commodity *  currency,
Account default_acct 
)

Definition at line 1652 of file assistant-stock-transaction.cpp.

1653 :
1654 m_selector{gnc_account_sel_new ()}
1655{
1656 auto accum = [](auto a, auto b) { return g_list_prepend(a, (gpointer)b); };
1657 auto null_glist = static_cast<GList *>(nullptr);
1658 auto acct_list = std::accumulate(types.begin(), types.end(), null_glist, accum);
1659 auto curr_list = accum(null_glist, currency);
1660 gnc_account_sel_set_new_account_ability(GNC_ACCOUNT_SEL(m_selector), true);
1661 gnc_account_sel_set_acct_filters(GNC_ACCOUNT_SEL(m_selector), acct_list, curr_list);
1662 gnc_account_sel_set_default_new_commodity(GNC_ACCOUNT_SEL(m_selector), currency);
1663 gnc_account_sel_set_new_account_modal (GNC_ACCOUNT_SEL(m_selector), true);
1664 if (default_acct)
1665 gnc_account_sel_set_account (GNC_ACCOUNT_SEL(m_selector), default_acct, true);
1666 g_list_free(acct_list);
1667 g_list_free(curr_list);
1668}

Member Function Documentation

◆ attach()

void GncAccountSelector::attach ( GtkBuilder *  builder,
const char *  table_id,
const char *  label_ID,
int  row 
)

Definition at line 1671 of file assistant-stock-transaction.cpp.

1673{
1674 auto table = get_widget(builder, table_ID);
1675 auto label = get_widget(builder, label_ID);
1676 gtk_grid_attach(GTK_GRID(table), m_selector, 1, row, 1, 1);
1677 gtk_widget_show(m_selector);
1678 gtk_label_set_mnemonic_widget(GTK_LABEL(label), m_selector);
1679}

◆ connect()

void GncAccountSelector::connect ( StockTransactionEntry entry)

Definition at line 1682 of file assistant-stock-transaction.cpp.

1683{
1684 g_signal_connect(m_selector, "account_sel_changed", G_CALLBACK (gnc_account_sel_changed_cb), entry);
1685}

◆ get()

Account * GncAccountSelector::get ( )
inline

Definition at line 1642 of file assistant-stock-transaction.cpp.

1642{ return gnc_account_sel_get_account (GNC_ACCOUNT_SEL (m_selector)); }

◆ set()

void GncAccountSelector::set ( Account acct)
inline

Definition at line 1640 of file assistant-stock-transaction.cpp.

1640{ gnc_account_sel_set_account (GNC_ACCOUNT_SEL (m_selector), acct, TRUE); }

◆ set_sensitive()

void GncAccountSelector::set_sensitive ( bool  sensitive)

Definition at line 1688 of file assistant-stock-transaction.cpp.

1689{
1690 gtk_widget_set_sensitive(m_selector, sensitive);
1691}

The documentation for this class was generated from the following file: