lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [5249] Prefer an enumerative return code


From: Greg Chicares
Subject: [lmi-commits] [5249] Prefer an enumerative return code
Date: Sun, 14 Aug 2011 14:16:19 +0000

Revision: 5249
          http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=5249
Author:   chicares
Date:     2011-08-14 14:16:19 +0000 (Sun, 14 Aug 2011)
Log Message:
-----------
Prefer an enumerative return code

Modified Paths:
--------------
    lmi/trunk/census_view.cpp
    lmi/trunk/census_view.hpp
    lmi/trunk/edit_mvc_docview_parameters.hpp
    lmi/trunk/illustration_view.cpp
    lmi/trunk/illustration_view.hpp
    lmi/trunk/mec_view.cpp
    lmi/trunk/mec_view.hpp
    lmi/trunk/oecumenic_enumerations.hpp

Modified: lmi/trunk/census_view.cpp
===================================================================
--- lmi/trunk/census_view.cpp   2011-08-14 13:40:29 UTC (rev 5248)
+++ lmi/trunk/census_view.cpp   2011-08-14 14:16:19 UTC (rev 5249)
@@ -321,14 +321,14 @@
     return safely_dereference_as<CensusDocument>(GetDocument());
 }
 
-int CensusView::edit_parameters
+oenum_mvc_dv_rc CensusView::edit_parameters
     (Input&             parameters
     ,std::string const& title
     )
 {
     if(is_invalid())
         {
-        return wxID_CANCEL;
+        return oe_mvc_dv_cancelled;
         }
 
     return edit_mvc_docview_parameters<DefaultView>
@@ -615,7 +615,7 @@
     Input& original_parms = cell_parms()[cell_number];
     Input temp_parms(original_parms);
 
-    if(wxID_CANCEL == edit_parameters(temp_parms, cell_title(cell_number)))
+    if(oe_mvc_dv_cancelled == edit_parameters(temp_parms, 
cell_title(cell_number)))
         {
         return;
         }
@@ -637,7 +637,7 @@
     Input& original_parms = *class_parms_from_class_name(class_name);
     Input temp_parms(original_parms);
 
-    if(wxID_CANCEL == edit_parameters(temp_parms, class_title(cell_number)))
+    if(oe_mvc_dv_cancelled == edit_parameters(temp_parms, 
class_title(cell_number)))
         {
         return;
         }
@@ -663,7 +663,8 @@
 {
     Input& original_parms = case_parms()[0];
     Input temp_parms(original_parms);
-    if(wxID_CANCEL == edit_parameters(temp_parms, "Default parameters for 
case"))
+
+    if(oe_mvc_dv_cancelled == edit_parameters(temp_parms, "Default parameters 
for case"))
         {
         return;
         }

Modified: lmi/trunk/census_view.hpp
===================================================================
--- lmi/trunk/census_view.hpp   2011-08-14 13:40:29 UTC (rev 5248)
+++ lmi/trunk/census_view.hpp   2011-08-14 14:16:19 UTC (rev 5249)
@@ -30,13 +30,14 @@
 
 #include "input.hpp"
 #include "ledger.hpp"
-#include "mc_enum_type_enums.hpp" // enum mcenum_emission
+#include "mc_enum_type_enums.hpp"       // enum mcenum_emission
 #include "obstruct_slicing.hpp"
+#include "oecumenic_enumerations.hpp"
 #include "uncopyable_lmi.hpp"
 
 #include <boost/shared_ptr.hpp>
 
-#include <wx/defs.h> // wx shared-library 'attributes'
+#include <wx/defs.h>                    // WXDLLIMPEXP*
 
 #include <string>
 #include <vector>
@@ -116,7 +117,7 @@
         ,std::vector<Input> const& cells
         ) const;
 
-    int edit_parameters
+    oenum_mvc_dv_rc edit_parameters
         (Input&             parameters
         ,std::string const& title
         );

Modified: lmi/trunk/edit_mvc_docview_parameters.hpp
===================================================================
--- lmi/trunk/edit_mvc_docview_parameters.hpp   2011-08-14 13:40:29 UTC (rev 
5248)
+++ lmi/trunk/edit_mvc_docview_parameters.hpp   2011-08-14 14:16:19 UTC (rev 
5249)
@@ -1,4 +1,4 @@
-// Edit parameters of a wx docview class using lmi's MVC framework.
+// Edit input parameters using lmi's MVC framework with wx docview.
 //
 // Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 
2010, 2011 Gregory W. Chicares.
 //
@@ -27,16 +27,18 @@
 #include "config.hpp"
 
 #include "mvc_controller.hpp"
+#include "oecumenic_enumerations.hpp"
 
 #include <wx/docview.h>
 #include <wx/window.h>
 
+#include <stdexcept>
 #include <string>
 
-/// Edit parameters of a wx docview class using lmi's MVC framework.
+/// Edit input parameters using lmi's MVC framework with wx docview.
 
 template<typename ViewT, typename ModelT>
-int edit_mvc_docview_parameters
+oenum_mvc_dv_rc edit_mvc_docview_parameters
     (ModelT&            parameters
     ,wxDocument&        document
     ,wxWindow*          frame
@@ -48,11 +50,17 @@
     ViewT const view;
     MvcController controller(frame, edited_parameters, view);
     controller.SetTitle(title);
-    int rc = controller.ShowModal();
-    if(wxID_OK == rc)
+    int const z = controller.ShowModal();
+    oenum_mvc_dv_rc rc =
+          (wxID_CANCEL == z) ? oe_mvc_dv_cancelled
+        : (wxID_OK     == z) ? oe_mvc_dv_unchanged
+        : throw std::logic_error("Unexpected ShowModal() return code.")
+        ;
+    if(wxID_OK == z)
         {
         if(parameters != edited_parameters)
             {
+            rc = oe_mvc_dv_changed;
             parameters = edited_parameters;
             dirty = true;
             }

Modified: lmi/trunk/illustration_view.cpp
===================================================================
--- lmi/trunk/illustration_view.cpp     2011-08-14 13:40:29 UTC (rev 5248)
+++ lmi/trunk/illustration_view.cpp     2011-08-14 14:16:19 UTC (rev 5249)
@@ -123,12 +123,12 @@
     return html_window_ = new(wx) wxHtmlWindow(GetFrame());
 }
 
-int IllustrationView::EditProperties()
+oenum_mvc_dv_rc IllustrationView::edit_parameters()
 {
     if(is_phony_)
         {
 warning() << "That command should have been disabled." << LMI_FLUSH;
-        return wxID_CANCEL;
+        return oe_mvc_dv_cancelled;
         }
 
     return edit_mvc_docview_parameters<DefaultView>
@@ -173,7 +173,7 @@
             return has_view_been_created;
             }
 
-        if(wxID_CANCEL == EditProperties())
+        if(oe_mvc_dv_cancelled == edit_parameters())
             {
             return has_view_been_created;
             }
@@ -240,7 +240,7 @@
 //        return;
         }
 
-    if(wxID_OK == EditProperties())
+    if(oe_mvc_dv_changed == edit_parameters())
         {
         Run();
         }

Modified: lmi/trunk/illustration_view.hpp
===================================================================
--- lmi/trunk/illustration_view.hpp     2011-08-14 13:40:29 UTC (rev 5248)
+++ lmi/trunk/illustration_view.hpp     2011-08-14 14:16:19 UTC (rev 5249)
@@ -37,6 +37,7 @@
 #include "view_ex.hpp"
 
 #include "obstruct_slicing.hpp"
+#include "oecumenic_enumerations.hpp"
 #include "uncopyable_lmi.hpp"
 
 #include <boost/shared_ptr.hpp>
@@ -73,7 +74,7 @@
   private:
     IllustrationDocument& document() const;
 
-    int EditProperties();
+    oenum_mvc_dv_rc edit_parameters();
 
     // ViewEx required implementation.
     virtual wxWindow* CreateChildWindow();

Modified: lmi/trunk/mec_view.cpp
===================================================================
--- lmi/trunk/mec_view.cpp      2011-08-14 13:40:29 UTC (rev 5248)
+++ lmi/trunk/mec_view.cpp      2011-08-14 14:16:19 UTC (rev 5249)
@@ -116,7 +116,7 @@
     return html_window_ = new(wx) wxHtmlWindow(GetFrame());
 }
 
-int mec_view::EditProperties()
+oenum_mvc_dv_rc mec_view::edit_parameters()
 {
     return edit_mvc_docview_parameters<mec_mvc_view>
         (input_data()
@@ -146,7 +146,7 @@
     bool has_view_been_created = false;
     try
         {
-        if(wxID_CANCEL == EditProperties())
+        if(oe_mvc_dv_cancelled == edit_parameters())
             {
             return has_view_been_created;
             }
@@ -176,7 +176,7 @@
 
 void mec_view::UponProperties(wxCommandEvent&)
 {
-    if(wxID_OK == EditProperties())
+    if(oe_mvc_dv_changed == edit_parameters())
         {
         Run();
         }

Modified: lmi/trunk/mec_view.hpp
===================================================================
--- lmi/trunk/mec_view.hpp      2011-08-14 13:40:29 UTC (rev 5248)
+++ lmi/trunk/mec_view.hpp      2011-08-14 14:16:19 UTC (rev 5249)
@@ -30,6 +30,7 @@
 #include "view_ex.hpp"
 
 #include "obstruct_slicing.hpp"
+#include "oecumenic_enumerations.hpp"
 #include "uncopyable_lmi.hpp"
 
 #include <wx/event.h>
@@ -75,7 +76,7 @@
   private:
     mec_document& document() const;
 
-    int EditProperties();
+    oenum_mvc_dv_rc edit_parameters();
     void Run();
 
     // ViewEx required implementation.

Modified: lmi/trunk/oecumenic_enumerations.hpp
===================================================================
--- lmi/trunk/oecumenic_enumerations.hpp        2011-08-14 13:40:29 UTC (rev 
5248)
+++ lmi/trunk/oecumenic_enumerations.hpp        2011-08-14 14:16:19 UTC (rev 
5249)
@@ -61,6 +61,14 @@
     ,oe_modal_table
     };
 
+/// Return code for MVC-docview editing.
+
+enum oenum_mvc_dv_rc
+    {oe_mvc_dv_cancelled
+    ,oe_mvc_dv_unchanged
+    ,oe_mvc_dv_changed
+    };
+
 enum oenum_preferred_class_name
     {oe_called_preferred
     ,oe_called_select




reply via email to

[Prev in Thread] Current Thread [Next in Thread]