Example #1
0
 void ScriptSubsystemManaged_IsReloading(object sender, EventArgs e)
 {
     Application.Current.Dispatcher.BeginInvoke(new Action(() =>
     {
         mmw = new Controls.ModernModalWindow("Compiling Scripts...");
     }));
 }
Example #2
0
 void ScriptSubsystemManaged_HasReloaded(object sender, EventArgs e)
 {
     Application.Current.Dispatcher.BeginInvoke(new Action(() =>
     {
         if (mmw != null)
         {
             mmw.Close();
         }
         mmw = null;
     }));
 }
Example #3
0
    public static void Paste(object dest)
    {
        if (dest == null || stored_type == null)
        {
            return;
        }

        if ((dest as MochaInterface.Component).myType == "CScript")
        {
            MochaInterface.CScript        cscript = MochaEditor.CastingHelper.CastTo <MochaInterface.CScript>((MochaInterface.Component)dest);
            MochaScriptSystem.BoundScript bs      = MochaScriptSystem.ScriptSubsystemManaged.getInstance().GetBoundScriptFromCScript(cscript);
            if (bs.scriptObject.GetType() != stored_type)
            {
                MochaEditor.Controls.ModernModalWindow mmw = new MochaEditor.Controls.ModernModalWindow("Copy/Paste types do not match.");
                return;
            }

            foreach (var pi in bs.scriptObject.GetType().GetProperties())
            {
                if (pi.Name == "gameObject")
                {
                    continue;                           //do not copy the gameObject this is bound to
                }
                foreach (CopyPasteData data in clipboard)
                {
                    if (pi.Name == data.name && pi.PropertyType == data.value.GetType())
                    {
                        pi.SetValue(bs.scriptObject, data.value);
                    }
                }
            }
            return;
        }

        if (dest.GetType() != stored_type)
        {
            MochaEditor.Controls.ModernModalWindow mmw = new MochaEditor.Controls.ModernModalWindow("Copy/Paste types do not match.");
            return;
        }

        MochaEditor.PropertyValueConverter pvc = new MochaEditor.PropertyValueConverter();
        var pilist = (ObservableCollection <MochaEditor.PropertyValueConverter.PropertyInfo>)pvc.Convert(dest, null, "Component", null);

        foreach (CopyPasteData data in clipboard)
        {
            foreach (MochaEditor.PropertyValueConverter.PropertyInfo pi in pilist)
            {
                if (pi.PropertyName == data.name && pi.PropertyType == data.value.GetType())
                {
                    pi.PropertyValue = data.value;
                }
            }
        }
    }
Example #4
0
    public static void Paste(object dest)
    {
        if (dest == null || stored_type == null)
            return;

        if ((dest as MochaInterface.Component).myType == "CScript")
        {
            MochaInterface.CScript cscript = MochaEditor.CastingHelper.CastTo<MochaInterface.CScript>((MochaInterface.Component)dest);
            MochaScriptSystem.BoundScript bs = MochaScriptSystem.ScriptSubsystemManaged.getInstance().GetBoundScriptFromCScript(cscript);
            if (bs.scriptObject.GetType() != stored_type)
            {
                MochaEditor.Controls.ModernModalWindow mmw = new MochaEditor.Controls.ModernModalWindow("Copy/Paste types do not match.");
                return;
            }

            foreach (var pi in bs.scriptObject.GetType().GetProperties())
            {
                if (pi.Name == "gameObject") continue;  //do not copy the gameObject this is bound to

                foreach (CopyPasteData data in clipboard)
                {
                    if (pi.Name == data.name && pi.PropertyType == data.value.GetType())
                    {
                        pi.SetValue(bs.scriptObject, data.value);
                    }
                }
            }
            return;
        }

        if (dest.GetType() != stored_type)
        {
            MochaEditor.Controls.ModernModalWindow mmw = new MochaEditor.Controls.ModernModalWindow("Copy/Paste types do not match.");
            return;
        }

        MochaEditor.PropertyValueConverter pvc = new MochaEditor.PropertyValueConverter();
        var pilist = (ObservableCollection<MochaEditor.PropertyValueConverter.PropertyInfo>)pvc.Convert(dest, null, "Component", null);
        foreach (CopyPasteData data in clipboard)
        {
            foreach (MochaEditor.PropertyValueConverter.PropertyInfo pi in pilist)
            {
                if (pi.PropertyName == data.name && pi.PropertyType == data.value.GetType())
                {
                    pi.PropertyValue = data.value;
                }
            }
        }
    }
        private void MakePrefabButton_Click(object sender, RoutedEventArgs e)
        {
            StringBuilder ss = new StringBuilder();

            EditorSubsystemManaged.getInstance().QueueActionAndBlock(new Action(() =>
            {
                foreach (GameObject g in Models.EngineManagerModel.instance._selectedGameObjects)
                {
                    MochaInterface.Prefab.MakePrefabFrom(g);
                    ss.AppendLine(g.GetName());
                }
            }));

            Controls.ModernModalWindow mmw = new Controls.ModernModalWindow("Prefabs created: " + ss.ToString());
            mmw.ShowDialog();
        }
Example #6
0
 void ScriptSubsystemManaged_IsReloading(object sender, EventArgs e)
 {
     Application.Current.Dispatcher.BeginInvoke(new Action(() =>
     {
         mmw = new Controls.ModernModalWindow("Compiling Scripts...");
     }));
 }
Example #7
0
 void ScriptSubsystemManaged_HasReloaded(object sender, EventArgs e)
 {
     Application.Current.Dispatcher.BeginInvoke(new Action(() =>
     {
         if (mmw != null)
             mmw.Close();
         mmw = null;
     }));
 }
Example #8
0
        private void MakePrefabButton_Click(object sender, RoutedEventArgs e)
        {
            StringBuilder ss = new StringBuilder();
            EditorSubsystemManaged.getInstance().QueueActionAndBlock(new Action(() =>
            {
                foreach (GameObject g in Models.EngineManagerModel.instance._selectedGameObjects)
                {
                    MochaInterface.Prefab.MakePrefabFrom(g);
                    ss.AppendLine(g.GetName());
                }
            }));

            Controls.ModernModalWindow mmw = new Controls.ModernModalWindow("Prefabs created: " + ss.ToString());
            mmw.ShowDialog();
        }