void OnGUI_Version(AgentSetVersion version) { GUIStyle version_style; EditorGUILayout.LabelField("All Plugins", BoldLabel); scroll = EditorGUILayout.BeginScrollView(scroll, GUILayout.Height(180)); for (int i = 0; i < plugins.Agents.Count; i++) { EditorGUILayout.BeginHorizontal(); if (version.hasPlugin(plugins.Agents[i].filename)) { AgentVersion v = version.getVersionOfPlugin(plugins.Agents[i].filename); v.status = EditorGUILayout.Toggle(v.status, GUILayout.MaxWidth(50)); if (v.status == false) { version_style = NormalLabel; } else { { if (v.isVersionReady(version)) { if (v.isManifestReady(manifest) && v.isStringsReady(exist_strings)) { version_style = GreenLabel; } else { version_style = YellowLabel; } } else { version_style = RedLabel; } } } } else { bool status = EditorGUILayout.Toggle(false, GUILayout.MaxWidth(50)); if (status == true) { version.addPlugin().ImportFromManifest(plugins.Agents[i], true); version_style = RedLabel; } else { version_style = NormalLabel; } } EditorGUILayout.LabelField(plugins.Agents[i].filename, version_style); if (GUILayout.Button("...", PositiveButton)) { agent = plugins.Agents[i]; } EditorGUILayout.EndHorizontal(); } EditorGUILayout.EndScrollView(); }
private void RemoveDependencies(AgentManifest mans) { if (mans.hasResources()) { ResFolder resfolder = new ResFolder(mans.ResFolder); resfolder.ClearHierarchyFrom(Manifest.ResFolder); } ResFolder libfolder = new ResFolder(mans.LibraryFolder); libfolder.ClearHierarchyFrom(Manifest.LibsFolder); foreach (ManifestMetaData mmd in mans.MetaData) { if (manifest.application.hasMetaData(mmd.name)) { manifest.application.meta_data.Remove(manifest.application.getMetaData(mmd.name)); } } }
public AgentManifest addAgent() { AgentManifest am = new AgentManifest(); Agents.Add(am); return am; }
public void ImportFromManifest(AgentManifest am, bool status) { filename = am.filename; this.status = status; MetaData.Clear(); Strings.Clear(); importMetaDataFrom(am.MetaData, false); foreach (ManifestActivity act in am.Activity) importMetaDataFrom(act.meta_data, true); ManifestSource = am; }
public UnityGUI_AgentManifest(AgentManifest agent) { Target = agent; guiActivity = new UnityGUI_Activity(null); guiPermission = new UnityGUI_Permission(null); }
private void RemoveDependencies(AgentManifest mans) { if (mans.hasResources()) { ResFolder resfolder = new ResFolder(mans.ResFolder); resfolder.ClearHierarchyFrom(Manifest.ResFolder); } ResFolder libfolder = new ResFolder(mans.LibraryFolder); libfolder.ClearHierarchyFrom(Manifest.LibsFolder); foreach (ManifestMetaData mmd in mans.MetaData) { if (manifest.application.hasMetaData(mmd.name)) manifest.application.meta_data.Remove(manifest.application.getMetaData(mmd.name)); } }
void OnGUI_Version(AgentSetVersion version) { GUIStyle version_style; EditorGUILayout.LabelField("All Plugins", BoldLabel); scroll = EditorGUILayout.BeginScrollView(scroll, GUILayout.Height(180)); for (int i = 0; i < plugins.Agents.Count; i++) { EditorGUILayout.BeginHorizontal(); if (version.hasPlugin(plugins.Agents[i].filename)) { AgentVersion v = version.getVersionOfPlugin(plugins.Agents[i].filename); v.status = EditorGUILayout.Toggle(v.status, GUILayout.MaxWidth(50)); if (v.status == false) version_style = NormalLabel; else { { if (v.isVersionReady(version)) { if (v.isManifestReady(manifest) && v.isStringsReady(exist_strings)) version_style = GreenLabel; else version_style = YellowLabel; } else version_style = RedLabel; } } } else { bool status = EditorGUILayout.Toggle(false, GUILayout.MaxWidth(50)); if (status == true) { version.addPlugin().ImportFromManifest(plugins.Agents[i], true); version_style = RedLabel; } else version_style = NormalLabel; } EditorGUILayout.LabelField(plugins.Agents[i].filename, version_style); if (GUILayout.Button("...", PositiveButton)) { agent = plugins.Agents[i]; } EditorGUILayout.EndHorizontal(); } EditorGUILayout.EndScrollView(); }
void OnGUI() { window_scroll = EditorGUILayout.BeginScrollView(window_scroll); EditorGUILayout.LabelField("Plugins ( version = " + agents.VersionName + " )", BoldLabel); EditorGUILayout.BeginHorizontal(); new_agent = EditorGUILayout.TextField("Plugin Filename", new_agent); if (GUILayout.Button("+", PositiveButton)) { if (!new_agent.EndsWith(".cs")) { new_agent += ".cs"; } agents.addAgent().filename = new_agent; new_agent = ""; editing_plugin = -1; } EditorGUILayout.EndHorizontal(); plugins_scorll = EditorGUILayout.BeginScrollView(plugins_scorll, GUILayout.Height(180)); for (int i = 0; i < agents.Agents.Count; i++) { EditorGUILayout.BeginHorizontal("Box"); if (GUILayout.Button("-", NegetiveButton)) { agents.Agents.RemoveAt(i); i--; editing_plugin = -1; continue; } EditorGUILayout.LabelField(agents.Agents[i].filename + " Permissions: " + agents.Agents[i].Permission.Count + " Activities: " + agents.Agents[i].Activity.Count + " Meta-Datas: " + agents.Agents[i].MetaData.Count ); if (GUILayout.Button("...", PositiveButton)) { editing_plugin = i; } EditorGUILayout.EndHorizontal(); } EditorGUILayout.EndScrollView(); EditorGUILayout.Space(); if (editing_plugin >= 0) { EditorGUILayout.LabelField("Edit Plugin Dependencies", BoldLabel); AgentManifest am = agents.Agents[editing_plugin]; guiAgent.Target = am; guiAgent.OnGUI(); } EditorGUILayout.EndScrollView(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.Space(); if (GUILayout.Button("Export Dependencies.xml")) { SaveAgentsToFile(AgentDependency.AgentsFile, agents); } if (GUILayout.Button("Discard and reset")) { LoadAgentsFromFile(AgentDependency.AgentsFile); } if (GUILayout.Button("Close")) { this.Close(); } EditorGUILayout.Space(); EditorGUILayout.EndHorizontal(); EditorGUILayout.Space(); }