[options] Implement gnc_register_internal_option.

This commit is contained in:
John Ralls 2022-07-21 17:11:51 -07:00
parent 0e9ed8cf0a
commit 552aa438ff
3 changed files with 26 additions and 10 deletions

View File

@ -771,8 +771,6 @@ wrap_unique_ptr(GncOptionDBPtr, GncOptionDB);
%ignore gnc_register_date_option(GncOptionDB*, const char*, const char*, const char*, const char*, RelativeDatePeriodVec, bool);
%ignore gnc_register_start_date_option(GncOptionDB*, const char*, const char*, const char*, const char*, bool);
%ignore gnc_register_end_date_option(GncOptionDB*, const char*, const char*, const char*, const char*, bool);
%ignore gnc_register_internal_option(GncOptionDBPtr&, const char*, const char*, const char*, const char*, const std::string&);
%ignore gnc_register_internal_option(GncOptionDBPtr&, const char*, const char*, const char*, const char*, bool);
%typemap(in) GncOption* "$1 = scm_is_true($input) ? static_cast<GncOption*>(scm_to_pointer($input)) : nullptr;"
%typemap(out) GncOption* "$result = ($1) ? scm_from_pointer($1, nullptr) : SCM_BOOL_F;"

View File

@ -1003,6 +1003,28 @@ gnc_register_report_placement_option(GncOptionDBPtr& db,
db->register_option(section, std::move(option));
}
void
gnc_register_internal_option(GncOptionDBPtr& db,
const char* section, const char* name,
const std::string& value)
{
GncOption option{
GncOptionValue<std::string>{section, name, "", "", value,
GncOptionUIType::INTERNAL}};
db->register_option(section, std::move(option));
}
void
gnc_register_internal_option(GncOptionDBPtr& db,
const char* section, const char* name,
bool value)
{
GncOption option{
GncOptionValue<bool>{section, name, "", "", value,
GncOptionUIType::INTERNAL}};
db->register_option(section, std::move(option));
}
GncOptionDB*
gnc_option_db_new(void)
{

View File

@ -593,16 +593,12 @@ inline void gnc_register_color_option(GncOptionDBPtr& db, const char* section,
}
void gnc_register_internal_option(GncOptionDBPtr& db,
const char* section, const char* name,
const char* key,
const char* doc_string,
const std::string& value);
const char* section, const char* name,
const std::string& value);
void gnc_register_internal_option(GncOptionDBPtr& db,
const char* section, const char* name,
const char* key,
const char* doc_string,
bool value);
const char* section, const char* name,
bool value);
void gnc_register_report_placement_option(GncOptionDBPtr& db,
const char* section, const char* name);