void SaveProject() { WorkingProject.DesignerObjects.IsEditModeEnabled = false; WorkingProject.Position = new Point2(0f, 0f); try { WorkingProject.Behaviors.GroupBehaviors.RemovePolicy(GroupBehaviors.EditModeBehaviors); foreach (Widget widget in WorkingProject.AllContainedWidgets) { if (widget.Behaviors.HasBehaviorOfType(typeof(GetEditModeDropDowns))) { throw new Exception(); } } WorkingProject.SaveToXML(WorkingXMLFile); File.WriteAllText(WorkingDUWDFile, ProjectCodeInterface.MakeDuwdCode(WorkingProject, widget_code_namespace, widget_code_class)); } catch (Exception ex) { MessageBox.Show("Failed to save project. Error;\n\n" + ex.Message); } WorkingProject.DesignerObjects.IsEditModeEnabled = true; WorkingProject.Position = new Point2(20f, 20f); }
bool LoadProject() { Widget loaded_widget = null; string[] names; try { if (File.Exists(WorkingCSFile)) { names = ProjectCodeInterface.GetCodeNames(File.ReadAllText(WorkingCSFile)); } else { throw new Exception("CS file " + WorkingCSFile + " not found."); } bool update_duwdl = false; if (File.Exists(WorkingXMLFile)) { loaded_widget = Widget.LoadFromXML(WorkingXMLFile); loaded_widget.DesignerObjects.IsEditModeEnabled = true; loaded_widget.DesignerObjects.UserRepositionPolicy = Widget.UserResizePolicyType.disallow; loaded_widget.DesignerObjects.AllowedResizingDirections = Directions2D.DR; loaded_widget.Position = new Point2(20f, 20f); loaded_widget.Behaviors.GroupBehaviors.ImplementPolicy(GroupBehaviors.EditModeBehaviors); update_duwdl = true; } WorkingProject = loaded_widget; widget_code_class = names[0]; widget_code_namespace = names[1]; if (update_duwdl) { ProjectCodeInterface.UpdateDUWDL(widget_code_class, widget_code_namespace, WorkingXMLFile); } return(true); } catch (Exception ex) { MessageBox.Show("Failed to load project. Error;\n\n" + ex.Message); } return(false); }
void CreateNewCSFile() { File.WriteAllText(WorkingCSFile, ProjectCodeInterface.MakeCSCode(widget_code_namespace, widget_code_class)); }