From 3743ed74db874fa478b86833ae8b74cfa665b444 Mon Sep 17 00:00:00 2001 From: Christian Stimming Date: Mon, 24 Oct 2011 20:41:28 +0000 Subject: [PATCH] [Gtkmm] Add another predicate for the string_option of GncBook. git-svn-id: svn+ssh://svn.gnucash.org/repo/gnucash/trunk@21487 57a11ea4-9604-0410-9ed3-97b8803252fd --- src/optional/gtkmm/gncmm/Book.cpp | 12 ++++++++++-- src/optional/gtkmm/gncmm/Book.hpp | 5 +++-- src/optional/gtkmm/test/test-book.cpp | 8 +++++--- 3 files changed, 18 insertions(+), 7 deletions(-) diff --git a/src/optional/gtkmm/gncmm/Book.cpp b/src/optional/gtkmm/gncmm/Book.cpp index 1a6a25c918..4b94bbacb5 100644 --- a/src/optional/gtkmm/gncmm/Book.cpp +++ b/src/optional/gtkmm/gncmm/Book.cpp @@ -115,12 +115,12 @@ GType Book::get_base_type() } -void Book::set_string_option (const Glib::ustring& opt_name, const Glib::ustring& opt_val) +void Book::string_option_set (const Glib::ustring& opt_name, const Glib::ustring& opt_val) { qof_book_set_string_option(gobj(), opt_name.c_str(), opt_val.c_str()); } -Glib::ustring Book::get_string_option (const Glib::ustring& opt_name) const +Glib::ustring Book::string_option_get (const Glib::ustring& opt_name) const { const char* r = qof_book_get_string_option(gobj(), opt_name.c_str()); if (r) @@ -128,6 +128,14 @@ Glib::ustring Book::get_string_option (const Glib::ustring& opt_name) const else return ""; } +bool Book::string_option_exists (const Glib::ustring& opt_name) const +{ + const char* r = qof_book_get_string_option(gobj(), opt_name.c_str()); + if (r) + return true; + else + return false; +} // Account Book::get_root_account() // { diff --git a/src/optional/gtkmm/gncmm/Book.hpp b/src/optional/gtkmm/gncmm/Book.hpp index 139e4a18fb..b5d3c43219 100644 --- a/src/optional/gtkmm/gncmm/Book.hpp +++ b/src/optional/gtkmm/gncmm/Book.hpp @@ -106,8 +106,9 @@ public: { qof_book_mark_readonly(gobj()); } - void set_string_option (const Glib::ustring& opt_name, const Glib::ustring& opt_val); - Glib::ustring get_string_option (const Glib::ustring& opt_name) const; + void string_option_set (const Glib::ustring& opt_name, const Glib::ustring& opt_val); + Glib::ustring string_option_get (const Glib::ustring& opt_name) const; + bool string_option_exists (const Glib::ustring& opt_name) const; }; } // END namespace gnc diff --git a/src/optional/gtkmm/test/test-book.cpp b/src/optional/gtkmm/test/test-book.cpp index 1b68ea2630..a46ca165db 100644 --- a/src/optional/gtkmm/test/test-book.cpp +++ b/src/optional/gtkmm/test/test-book.cpp @@ -160,9 +160,11 @@ test_book_get_string_option( Fixture *fixture, gconstpointer pData ) Glib::ustring opt_name_notset("Not Set"); Glib::RefPtr book = Glib::wrap(fixture->book, true); // "true" is important! g_assert( book ); - book->set_string_option( opt_name, opt_value); - g_assert_cmpstr( book->get_string_option( opt_name ).c_str(), == , opt_value.c_str()); - g_assert( book->get_string_option( opt_name_notset ).empty()); + book->string_option_set( opt_name, opt_value); + g_assert_cmpstr( book->string_option_get( opt_name ).c_str(), == , opt_value.c_str()); + g_assert( book->string_option_exists(opt_name) == true); + g_assert( book->string_option_get( opt_name_notset ).empty()); + g_assert( book->string_option_exists( opt_name_notset ) == false); } void test_suite_gtkmm_book()