Просмотр исходного кода

Removed requirement from inspectable fields to return if changes were made during field refresh

BearishSun 10 лет назад
Родитель
Сommit
7945b75dd7

+ 3 - 14
MBansheeEditor/GUI/GUIListField.cs

@@ -130,22 +130,13 @@ namespace BansheeEditor
         /// <summary>
         /// Refreshes contents of all list rows and checks if anything was modified.
         /// </summary>
-        /// <returns>True if any entry in the list was modified, false otherwise.</returns>
-        public bool Refresh()
+        public void Refresh()
         {
-            bool anythingModified = false;
-
             for (int i = 0; i < rows.Count; i++)
             {
-                bool updateGUI;
-
-                anythingModified |= rows[i].Refresh(out updateGUI);
-
-                if (updateGUI)
+                if (rows[i].Refresh())
                     rows[i].BuildGUI(this, guiContentLayout, i, depth);
             }
-
-            return anythingModified;
         }
 
         /// <summary>
@@ -673,11 +664,9 @@ namespace BansheeEditor
         /// <summary>
         /// Refreshes the GUI for the list row and checks if anything was modified.
         /// </summary>
-        /// <param name="rebuildGUI">Determines should the field's GUI elements be updated due to modifications.</param>
         /// <returns>True if any modifications were made, false otherwise.</returns>
-        internal protected virtual bool Refresh(out bool rebuildGUI)
+        internal protected virtual bool Refresh()
         {
-            rebuildGUI = false;
             return false;
         }
 

+ 7 - 13
MBansheeEditor/Inspector/InspectableArray.cs

@@ -51,18 +51,12 @@ namespace BansheeEditor
         }
 
         /// <inheritdoc/>
-        public override bool Refresh(int layoutIndex)
+        public override void Refresh(int layoutIndex)
         {
-            bool anythingModified = false;
-
             if (IsModified())
-            {
                 Update(layoutIndex);
-                anythingModified = true;
-            }
 
-            anythingModified |= arrayGUIField.Refresh();
-            return anythingModified;
+            arrayGUIField.Refresh();
         }
 
         /// <inheritdoc/>
@@ -273,16 +267,16 @@ namespace BansheeEditor
             }
 
             /// <inheritdoc/>
-            protected internal override bool Refresh(out bool rebuildGUI)
+            protected internal override bool Refresh()
             {
                 if (field.IsModified())
                 {
-                    rebuildGUI = field.ShouldRebuildOnModify();
-                    return field.Refresh(0);
+                    field.Refresh(0);
+                    return field.ShouldRebuildOnModify();
                 }
 
-                rebuildGUI = false;
-                return field.Refresh(0);
+                field.Refresh(0);
+                return false;
             }
         }
     }

+ 1 - 9
MBansheeEditor/Inspector/InspectableField.cs

@@ -37,18 +37,10 @@ namespace BansheeEditor
         /// </summary>
         /// <param name="layoutIndex">Index in the parent's layout at which to insert the GUI elements for this field.
         ///                           </param>
-        /// <returns>True if there were any modifications in this field, or any child fields.</returns>
-        public virtual bool Refresh(int layoutIndex)
+        public virtual void Refresh(int layoutIndex)
         {
-            bool anythingModified = false;
-
             if (IsModified())
-            {
                 Update(layoutIndex);
-                anythingModified = true;
-            }
-                
-            return anythingModified;
         }
 
         /// <summary>

+ 7 - 13
MBansheeEditor/Inspector/InspectableList.cs

@@ -53,18 +53,12 @@ namespace BansheeEditor
         }
 
         /// <inheritdoc/>
-        public override bool Refresh(int layoutIndex)
+        public override void Refresh(int layoutIndex)
         {
-            bool anythingModified = false;
-
             if (IsModified())
-            {
                 Update(layoutIndex);
-                anythingModified = true;
-            }
 
-            anythingModified |= listGUIField.Refresh();
-            return anythingModified;
+            listGUIField.Refresh();
         }
 
         /// <inheritdoc/>
@@ -246,16 +240,16 @@ namespace BansheeEditor
             }
 
             /// <inheritdoc/>
-            protected internal override bool Refresh(out bool rebuildGUI)
+            protected internal override bool Refresh()
             {
                 if (field.IsModified())
                 {
-                    rebuildGUI = field.ShouldRebuildOnModify();
-                    return field.Refresh(0);
+                    field.Refresh(0);
+                    return field.ShouldRebuildOnModify();
                 }
 
-                rebuildGUI = false;
-                return field.Refresh(0);
+                field.Refresh(0);
+                return false;
             }
         }
     }

+ 3 - 5
MBansheeEditor/Inspector/InspectableObject.cs

@@ -56,18 +56,16 @@ namespace BansheeEditor
         }
 
         /// <inheritdoc/>
-        public override bool Refresh(int layoutIndex)
+        public override void Refresh(int layoutIndex)
         {
-            bool anythingModified = base.Refresh(layoutIndex);
+            base.Refresh(layoutIndex);
 
             int currentIndex = 0;
             for (int i = 0; i < children.Count; i++)
             {
-                anythingModified |= children[i].Refresh(currentIndex);
+                children[i].Refresh(currentIndex);
                 currentIndex += children[i].GetNumLayoutElements();
             }
-
-            return anythingModified;
         }
 
         /// <inheritdoc/>

+ 6 - 27
MBansheeEditor/Inspectors/FontInspector.cs

@@ -173,17 +173,9 @@ namespace BansheeEditor
             }
 
             /// <inheritdoc/>
-            internal protected override bool Refresh(out bool rebuildGUI)
+            internal protected override bool Refresh()
             {
-                rebuildGUI = false;
-
-                int newValue = GetValue<int>();
-                if (sizeField.Value != newValue)
-                {
-                    sizeField.Value = newValue;
-                    return true;
-                }
-
+                sizeField.Value = GetValue<int>();
                 return false;
             }
         }
@@ -225,26 +217,13 @@ namespace BansheeEditor
             }
 
             /// <inheritdoc/>
-            internal protected override bool Refresh(out bool rebuildGUI)
+            internal protected override bool Refresh()
             {
-                rebuildGUI = false;
-
-                bool anythingModified = false;
-
                 CharRange newValue = GetValue<CharRange>();
-                if (rangeStartField.Value != newValue.start)
-                {
-                    rangeStartField.Value = newValue.start;
-                    anythingModified = true;
-                }
-
-                if (rangeEndField.Value != newValue.end)
-                {
-                    rangeEndField.Value = newValue.end;
-                    anythingModified = true;
-                }
+                rangeStartField.Value = newValue.start;
+                rangeEndField.Value = newValue.end;
 
-                return anythingModified;
+                return false;
             }
         }
     }

+ 2 - 11
MBansheeEditor/Inspectors/RenderableInspector.cs

@@ -164,18 +164,9 @@ namespace BansheeEditor
             }
 
             /// <inheritdoc/>
-            internal protected override bool Refresh(out bool rebuildGUI)
+            internal protected override bool Refresh()
             {
-                rebuildGUI = false;
-
-                Material newValue = GetValue<Material>();
-                if (materialField.Value != newValue)
-                {
-                    materialField.Value = newValue;
-
-                    return true;
-                }
-
+                materialField.Value = GetValue<Material>();
                 return false;
             }
         }