[mapguide-commits] r7967 - in trunk/Tools/Maestro/Maestro.Editors: LayerDefinition MapDefinition WatermarkDefinition

svn_mapguide at osgeo.org svn_mapguide at osgeo.org
Tue Dec 24 02:52:59 PST 2013


Author: jng
Date: 2013-12-24 02:52:59 -0800 (Tue, 24 Dec 2013)
New Revision: 7967

Modified:
   trunk/Tools/Maestro/Maestro.Editors/LayerDefinition/VectorLayerEditorCtrl.cs
   trunk/Tools/Maestro/Maestro.Editors/MapDefinition/MapDefinitionEditorCtrl.cs
   trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/TilePositionEditor.cs
   trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkCollectionEditorCtrl.cs
   trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkInstanceEditor.cs
   trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkInstanceEditorDialog.cs
   trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkSettingsCtrl.cs
   trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/XYPositionEditor.cs
Log:
#2389: Watermark editor fixes:
 - The X/Y position UI is not properly initialized from the underlying model
 - Editing any position properties does not trigger dirty state on the resource

Modified: trunk/Tools/Maestro/Maestro.Editors/LayerDefinition/VectorLayerEditorCtrl.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/LayerDefinition/VectorLayerEditorCtrl.cs	2013-12-24 10:16:13 UTC (rev 7966)
+++ trunk/Tools/Maestro/Maestro.Editors/LayerDefinition/VectorLayerEditorCtrl.cs	2013-12-24 10:52:59 UTC (rev 7967)
@@ -62,7 +62,7 @@
                 this.Controls.Remove(layerProperties);
                 this.Controls.Remove(layerStyles);
 
-                var wm = new WatermarkCollectionEditorCtrl(service.ResourceService, sl2);
+                var wm = new WatermarkCollectionEditorCtrl(service, sl2);
                 wm.Dock = DockStyle.Top;
 
                 this.Controls.Add(wm);

Modified: trunk/Tools/Maestro/Maestro.Editors/MapDefinition/MapDefinitionEditorCtrl.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/MapDefinition/MapDefinitionEditorCtrl.cs	2013-12-24 10:16:13 UTC (rev 7966)
+++ trunk/Tools/Maestro/Maestro.Editors/MapDefinition/MapDefinitionEditorCtrl.cs	2013-12-24 10:52:59 UTC (rev 7967)
@@ -66,7 +66,7 @@
                 this.Controls.Remove(mapSettingsCtrl);
                 this.Controls.Remove(mapLayersCtrl);
 
-                var wm = new WatermarkCollectionEditorCtrl(service.ResourceService, mp2);
+                var wm = new WatermarkCollectionEditorCtrl(service, mp2);
                 wm.Dock = DockStyle.Fill;
 
                 this.Controls.Add(wm);

Modified: trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/TilePositionEditor.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/TilePositionEditor.cs	2013-12-24 10:16:13 UTC (rev 7966)
+++ trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/TilePositionEditor.cs	2013-12-24 10:52:59 UTC (rev 7967)
@@ -32,13 +32,15 @@
     internal partial class TilePositionEditor : UserControl
     {
         private ITilePosition _pos;
+        private IEditorService _edSvc;
 
         private bool _init = false;
 
-        public TilePositionEditor(ITilePosition pos)
+        public TilePositionEditor(ITilePosition pos, IEditorService service)
         {
             InitializeComponent();
             _pos = pos;
+            _edSvc = service;
 
             try
             {
@@ -72,6 +74,7 @@
                 return;
 
             _pos.TileWidth = Convert.ToDouble(numTileWidth.Value);
+            _edSvc.MarkDirty();
         }
 
         private void numTileHeight_ValueChanged(object sender, EventArgs e)
@@ -80,6 +83,7 @@
                 return;
 
             _pos.TileHeight = Convert.ToDouble(numTileHeight.Value);
+            _edSvc.MarkDirty();
         }
 
         private void numHorizontalOffset_ValueChanged(object sender, EventArgs e)
@@ -88,6 +92,7 @@
                 return;
 
             _pos.HorizontalPosition.Offset = Convert.ToDouble(numHorizontalOffset.Value);
+            _edSvc.MarkDirty();
         }
 
         private void cmbHorizontalUnits_SelectedIndexChanged(object sender, EventArgs e)
@@ -96,6 +101,7 @@
                 return;
 
             _pos.HorizontalPosition.Unit = (UnitType)cmbHorizontalUnits.SelectedItem;
+            _edSvc.MarkDirty();
         }
 
         private void cmbHorizontalAlignment_SelectedIndexChanged(object sender, EventArgs e)
@@ -104,6 +110,7 @@
                 return;
 
             _pos.HorizontalPosition.Alignment = (HorizontalAlignmentType)cmbHorizontalAlignment.SelectedItem;
+            _edSvc.MarkDirty();
         }
 
         private void numVerticalOffset_ValueChanged(object sender, EventArgs e)
@@ -112,6 +119,7 @@
                 return;
 
             _pos.VerticalPosition.Offset = Convert.ToDouble(numVerticalOffset.Value);
+            _edSvc.MarkDirty();
         }
 
         private void cmbVerticalUnits_SelectedIndexChanged(object sender, EventArgs e)
@@ -120,6 +128,7 @@
                 return;
 
             _pos.VerticalPosition.Unit = (UnitType)cmbVerticalUnits.SelectedItem;
+            _edSvc.MarkDirty();
         }
 
         private void cmbVerticalAlignment_SelectedIndexChanged(object sender, EventArgs e)
@@ -128,6 +137,7 @@
                 return;
 
             _pos.VerticalPosition.Alignment = (VerticalAlignmentType)cmbVerticalAlignment.SelectedItem;
+            _edSvc.MarkDirty();
         }
     }
 }

Modified: trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkCollectionEditorCtrl.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkCollectionEditorCtrl.cs	2013-12-24 10:16:13 UTC (rev 7966)
+++ trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkCollectionEditorCtrl.cs	2013-12-24 10:52:59 UTC (rev 7967)
@@ -40,14 +40,14 @@
 
         private BindingList<IWatermark> _list;
 
-        private IResourceService _resSvc;
+        private IEditorService _edSvc;
 
-        public WatermarkCollectionEditorCtrl(IResourceService resSvc, IWatermarkCollection watermarks)
+        public WatermarkCollectionEditorCtrl(IEditorService service, IWatermarkCollection watermarks)
         {
             InitializeComponent();
             grdWatermarks.AutoGenerateColumns = false;
             _watermarks = watermarks;
-            _resSvc = resSvc;
+            _edSvc = service;
             _list = new BindingList<IWatermark>();
             foreach (var wm in _watermarks.Watermarks)
             {
@@ -58,15 +58,15 @@
 
         private void btnAdd_Click(object sender, EventArgs e)
         {
-            using (var picker = new ResourcePicker(_resSvc, ResourceTypes.WatermarkDefinition, ResourcePickerMode.OpenResource))
+            using (var picker = new ResourcePicker(_edSvc.ResourceService, ResourceTypes.WatermarkDefinition, ResourcePickerMode.OpenResource))
             {
                 if (picker.ShowDialog() == DialogResult.OK)
                 {
                     LastSelectedFolder.FolderId = picker.SelectedFolder;
-                    var wdf = (IWatermarkDefinition)_resSvc.GetResource(picker.ResourceID);
+                    var wdf = (IWatermarkDefinition)_edSvc.ResourceService.GetResource(picker.ResourceID);
                     //var wm = wdf.CreateInstance();
                     var wm = _watermarks.AddWatermark(wdf);
-                    var diag = new WatermarkInstanceEditorDialog(_resSvc, wm);
+                    var diag = new WatermarkInstanceEditorDialog(_edSvc, wm);
                     if (diag.ShowDialog() == DialogResult.OK)
                     {
                         _list.Add(wm);
@@ -86,7 +86,7 @@
                 var wm = grdWatermarks.SelectedRows[0].DataBoundItem as IWatermark;
                 if (wm != null)
                 {
-                    var diag = new WatermarkInstanceEditorDialog(_resSvc, wm);
+                    var diag = new WatermarkInstanceEditorDialog(_edSvc, wm);
                     diag.ShowDialog();
                 }
             }

Modified: trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkInstanceEditor.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkInstanceEditor.cs	2013-12-24 10:16:13 UTC (rev 7966)
+++ trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkInstanceEditor.cs	2013-12-24 10:52:59 UTC (rev 7967)
@@ -36,7 +36,7 @@
     internal partial class WatermarkInstanceEditor : UserControl
     {
         private IWatermark _watermark;
-        private IResourceService _resSvc;
+        private IEditorService _edSvc;
 
         private IWatermarkAppearance _ovAppearance;
         private ITilePosition _ovTilePosition;
@@ -44,11 +44,11 @@
 
         private bool _init = false;
 
-        public WatermarkInstanceEditor(IResourceService resSvc, IWatermark watermark)
+        public WatermarkInstanceEditor(IEditorService service, IWatermark watermark)
         {
             InitializeComponent();
+            _edSvc = service;
             _watermark = watermark;
-            _resSvc = resSvc;
             
             try
             {
@@ -110,11 +110,11 @@
             Control c = null;
             if (rdOvPosXY.Checked) 
             {
-                c = new XYPositionEditor(_ovXyPosition);
+                c = new XYPositionEditor(_ovXyPosition, _edSvc);
             }
             else if (rdOvTilePos.Checked)
             {
-                c = new TilePositionEditor(_ovTilePosition);
+                c = new TilePositionEditor(_ovTilePosition, _edSvc);
             }
 
             if (c != null)
@@ -126,7 +126,7 @@
 
         private void btnBrowse_Click(object sender, EventArgs e)
         {
-            using (var picker = new ResourcePicker(_resSvc, ResourceTypes.WatermarkDefinition, ResourcePickerMode.OpenResource))
+            using (var picker = new ResourcePicker(_edSvc.ResourceService, ResourceTypes.WatermarkDefinition, ResourcePickerMode.OpenResource))
             {
                 if (picker.ShowDialog() == DialogResult.OK)
                 {

Modified: trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkInstanceEditorDialog.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkInstanceEditorDialog.cs	2013-12-24 10:16:13 UTC (rev 7966)
+++ trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkInstanceEditorDialog.cs	2013-12-24 10:52:59 UTC (rev 7967)
@@ -33,10 +33,10 @@
     {
         private WatermarkInstanceEditor _ed;
 
-        public WatermarkInstanceEditorDialog(IResourceService resSvc, IWatermark watermark)
+        public WatermarkInstanceEditorDialog(IEditorService service, IWatermark watermark)
         {
             InitializeComponent();
-            _ed = new WatermarkInstanceEditor(resSvc, watermark);
+            _ed = new WatermarkInstanceEditor(service, watermark);
             _ed.Dock = DockStyle.Fill;
             panel1.Controls.Add(_ed);
         }

Modified: trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkSettingsCtrl.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkSettingsCtrl.cs	2013-12-24 10:16:13 UTC (rev 7966)
+++ trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/WatermarkSettingsCtrl.cs	2013-12-24 10:52:59 UTC (rev 7967)
@@ -41,10 +41,12 @@
         private IWatermarkDefinition _wm;
         private ITilePosition _tile;
         private IXYPosition _xy;
+        private IEditorService _edSvc;
 
         public override void Bind(IEditorService service)
         {
-            service.RegisterCustomNotifier(this);
+            _edSvc = service;
+            _edSvc.RegisterCustomNotifier(this);
             _wm = (IWatermarkDefinition)service.GetEditedResource();
 
             NumericBinder.BindValueChanged(numRotation, _wm.Appearance, "Rotation");
@@ -72,9 +74,9 @@
             grpPositionSettings.Controls.Clear();
             Control c = null;
             if (rdTile.Checked)
-                c = new TilePositionEditor(_tile);
+                c = new TilePositionEditor(_tile, _edSvc);
             else if (rdXY.Checked)
-                c = new XYPositionEditor(_xy);
+                c = new XYPositionEditor(_xy, _edSvc);
 
             if (c != null)
             {

Modified: trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/XYPositionEditor.cs
===================================================================
--- trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/XYPositionEditor.cs	2013-12-24 10:16:13 UTC (rev 7966)
+++ trunk/Tools/Maestro/Maestro.Editors/WatermarkDefinition/XYPositionEditor.cs	2013-12-24 10:52:59 UTC (rev 7967)
@@ -32,22 +32,24 @@
     internal partial class XYPositionEditor : UserControl
     {
         private IXYPosition _pos;
+        private IEditorService _edSvc;
         private bool _init = false;
 
-        public XYPositionEditor(IXYPosition pos)
+        public XYPositionEditor(IXYPosition pos, IEditorService service)
         {
             InitializeComponent();
             _pos = pos;
+            _edSvc = service;
 
-            cmbHorizontalAlignment.DataSource = Enum.GetValues(typeof(HorizontalAlignmentType));
-            cmbVerticalAlignment.DataSource = Enum.GetValues(typeof(VerticalAlignmentType));
-            cmbHorizontalUnits.DataSource = Enum.GetValues(typeof(UnitType));
-            cmbVerticalUnits.DataSource = Enum.GetValues(typeof(UnitType));
-
             try
             {
                 _init = true;
 
+                cmbHorizontalAlignment.DataSource = Enum.GetValues(typeof(HorizontalAlignmentType));
+                cmbVerticalAlignment.DataSource = Enum.GetValues(typeof(VerticalAlignmentType));
+                cmbHorizontalUnits.DataSource = Enum.GetValues(typeof(UnitType));
+                cmbVerticalUnits.DataSource = Enum.GetValues(typeof(UnitType));
+
                 cmbVerticalAlignment.SelectedItem = _pos.YPosition.Alignment;
                 cmbVerticalUnits.SelectedItem = _pos.YPosition.Unit;
                 numVerticalOffset.Value = Convert.ToDecimal(_pos.YPosition.Offset);
@@ -68,6 +70,7 @@
                 return;
 
             _pos.XPosition.Offset = Convert.ToDouble(numHorizontalOffset.Value);
+            _edSvc.MarkDirty();
         }
 
         private void cmbHorizontalUnits_SelectedIndexChanged(object sender, EventArgs e)
@@ -76,6 +79,7 @@
                 return;
 
             _pos.XPosition.Unit = (UnitType)cmbHorizontalUnits.SelectedItem;
+            _edSvc.MarkDirty();
         }
 
         private void cmbHorizontalAlignment_SelectedIndexChanged(object sender, EventArgs e)
@@ -84,6 +88,7 @@
                 return;
 
             _pos.XPosition.Alignment = (HorizontalAlignmentType)cmbHorizontalAlignment.SelectedItem;
+            _edSvc.MarkDirty();
         }
 
         private void numVerticalOffset_ValueChanged(object sender, EventArgs e)
@@ -92,6 +97,7 @@
                 return;
 
             _pos.YPosition.Offset = Convert.ToDouble(numVerticalOffset.Value);
+            _edSvc.MarkDirty();
         }
 
         private void cmbVerticalUnits_SelectedIndexChanged(object sender, EventArgs e)
@@ -100,6 +106,7 @@
                 return;
 
             _pos.YPosition.Unit = (UnitType)cmbVerticalUnits.SelectedItem;
+            _edSvc.MarkDirty();
         }
 
         private void cmbVerticalAlignment_SelectedIndexChanged(object sender, EventArgs e)
@@ -108,6 +115,7 @@
                 return;
 
             _pos.YPosition.Alignment = (VerticalAlignmentType)cmbVerticalAlignment.SelectedItem;
+            _edSvc.MarkDirty();
         }
     }
 }



More information about the mapguide-commits mailing list