[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [5748] Fix defect committed 20130414T1847Z, while fixing a
From: |
Greg Chicares |
Subject: |
[lmi-commits] [5748] Fix defect committed 20130414T1847Z, while fixing another defect |
Date: |
Wed, 17 Jul 2013 12:33:24 +0000 |
Revision: 5748
http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=5748
Author: chicares
Date: 2013-07-17 12:31:24 +0000 (Wed, 17 Jul 2013)
Log Message:
-----------
Fix defect committed 20130414T1847Z, while fixing another defect
Modified Paths:
--------------
lmi/trunk/ChangeLog
lmi/trunk/configurable_settings.cpp
lmi/trunk/configurable_settings.hpp
lmi/trunk/ledger_text_formats.cpp
lmi/trunk/preferences_model.cpp
Modified: lmi/trunk/ChangeLog
===================================================================
--- lmi/trunk/ChangeLog 2013-07-16 22:50:21 UTC (rev 5747)
+++ lmi/trunk/ChangeLog 2013-07-17 12:31:24 UTC (rev 5748)
@@ -32437,3 +32437,15 @@
are to be used instead. This change temporarily reintroduces the
defect noted 20130414T1341Z.
+20130717T1228Z <address@hidden> [541]
+
+ configurable_settings.cpp
+ configurable_settings.hpp
+ ledger_text_formats.cpp
+ preferences_model.cpp
+Fix defect committed 20130414T1847Z, while fixing another defect.
+Checking "Use built-in calculation summary" defectively caused the
+built-in defaults to overwrite the columns selected in the GUI, so
+that careful selections were irretrievably lost. Now, as before, the
+selections are preserved when grayed out.
+
Modified: lmi/trunk/configurable_settings.cpp
===================================================================
--- lmi/trunk/configurable_settings.cpp 2013-07-16 22:50:21 UTC (rev 5747)
+++ lmi/trunk/configurable_settings.cpp 2013-07-17 12:31:24 UTC (rev 5748)
@@ -418,14 +418,11 @@
return xsl_fo_command_;
}
-std::vector<std::string> parsed_calculation_summary_columns()
+namespace
{
- configurable_settings const& z = configurable_settings::instance();
- std::istringstream iss
- (z.use_builtin_calculation_summary()
- ? default_calculation_summary_columns()
- : z.calculation_summary_columns()
- );
+std::vector<std::string> parse_calculation_summary_columns(std::string const&
s)
+{
+ std::istringstream iss(s);
std::vector<std::string> const& allowable =
all_strings<mcenum_report_column>();
std::vector<std::string> columns;
std::istream_iterator<std::string> i(iss);
@@ -448,4 +445,21 @@
}
return columns;
}
+} // Unnamed namespace.
+std::vector<std::string> input_calculation_summary_columns()
+{
+ configurable_settings const& z = configurable_settings::instance();
+ return parse_calculation_summary_columns(z.calculation_summary_columns());
+}
+
+std::vector<std::string> effective_calculation_summary_columns()
+{
+ configurable_settings const& z = configurable_settings::instance();
+ return parse_calculation_summary_columns
+ (z.use_builtin_calculation_summary()
+ ? default_calculation_summary_columns()
+ : z.calculation_summary_columns()
+ );
+}
+
Modified: lmi/trunk/configurable_settings.hpp
===================================================================
--- lmi/trunk/configurable_settings.hpp 2013-07-16 22:50:21 UTC (rev 5747)
+++ lmi/trunk/configurable_settings.hpp 2013-07-17 12:31:24 UTC (rev 5748)
@@ -118,7 +118,8 @@
~configurable_settings();
};
-std::vector<std::string> parsed_calculation_summary_columns();
+std::vector<std::string> input_calculation_summary_columns();
+std::vector<std::string> effective_calculation_summary_columns();
#endif // configurable_settings_hpp
Modified: lmi/trunk/ledger_text_formats.cpp
===================================================================
--- lmi/trunk/ledger_text_formats.cpp 2013-07-16 22:50:21 UTC (rev 5747)
+++ lmi/trunk/ledger_text_formats.cpp 2013-07-17 12:31:24 UTC (rev 5748)
@@ -33,7 +33,7 @@
#include "authenticity.hpp"
#include "calendar_date.hpp"
#include "comma_punct.hpp"
-#include "configurable_settings.hpp" // parsed_calculation_summary_columns()
+#include "configurable_settings.hpp" //
effective_calculation_summary_columns()
#include "contains.hpp"
#include "global_settings.hpp"
#include "ledger.hpp"
@@ -167,13 +167,13 @@
,invar_ (ledger_values.GetLedgerInvariant())
,max_length_(ledger_values.GetMaxLength())
{
- columns_ = parsed_calculation_summary_columns();
+ columns_ = effective_calculation_summary_columns();
std::vector<std::string>::iterator p = std::find
(columns_.begin()
,columns_.end()
,"PolicyYear"
);
- // TODO ?? This should be done in parsed_calculation_summary_columns(),
+ // TODO ?? This should be done in effective_calculation_summary_columns(),
// but that requires a difficult-to-test change in 'ledger_xml_io2.cpp'.
// As long as "PolicyYear" is always the first column, it shouldn't be
// offered for selection anyway.
Modified: lmi/trunk/preferences_model.cpp
===================================================================
--- lmi/trunk/preferences_model.cpp 2013-07-16 22:50:21 UTC (rev 5747)
+++ lmi/trunk/preferences_model.cpp 2013-07-17 12:31:24 UTC (rev 5748)
@@ -182,7 +182,7 @@
// CALCULATION_SUMMARY Apparently unneeded: ctor calls Load().
// unchanged.Load();
// Unfortunately, construction of 'unchanged' therefore causes any
-// parsed_calculation_summary_columns() diagnostics to be repeated.
+// parse_calculation_summary_columns() diagnostics to be repeated.
// It would seem better to permit copying, and then use a copy.
if(unchanged.UseBuiltinCalculationSummary != UseBuiltinCalculationSummary)
{
@@ -195,7 +195,7 @@
}
// This test duplicates the preceding one. This one may be what
// is ultimately wanted, but for now at least it doesn't detect
- // parsed_calculation_summary_columns()'s removal of invalid
+ // parse_calculation_summary_columns()'s removal of invalid
// substrings.
std::vector<std::string>::const_iterator i;
for(i = member_names().begin(); i != member_names().end(); ++i)
@@ -210,15 +210,9 @@
void PreferencesModel::Load()
{
- configurable_settings const& z = configurable_settings::instance();
- std::istringstream iss(z.calculation_summary_columns());
- std::vector<std::string> columns;
- std::copy
- (std::istream_iterator<std::string>(iss)
- ,std::istream_iterator<std::string>()
- ,std::back_inserter(columns)
- );
+ std::vector<std::string> columns(input_calculation_summary_columns());
+ configurable_settings const& z = configurable_settings::instance();
bool b = z.use_builtin_calculation_summary();
UseBuiltinCalculationSummary = b ? "Yes" : "No";
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [lmi-commits] [5748] Fix defect committed 20130414T1847Z, while fixing another defect,
Greg Chicares <=