public override global::System.Data.DataSet Clone() { SharedTables cln = ((SharedTables)(base.Clone())); cln.InitVars(); cln.SchemaSerializationMode = this.SchemaSerializationMode; return(cln); }
public static global::System.Xml.Schema.XmlSchemaComplexType GetTypedDataSetSchema(global::System.Xml.Schema.XmlSchemaSet xs) { SharedTables ds = new SharedTables(); global::System.Xml.Schema.XmlSchemaComplexType type = new global::System.Xml.Schema.XmlSchemaComplexType(); global::System.Xml.Schema.XmlSchemaSequence sequence = new global::System.Xml.Schema.XmlSchemaSequence(); global::System.Xml.Schema.XmlSchemaAny any = new global::System.Xml.Schema.XmlSchemaAny(); any.Namespace = ds.Namespace; sequence.Items.Add(any); type.Particle = sequence; global::System.Xml.Schema.XmlSchema dsSchema = ds.GetSchemaSerializable(); if (xs.Contains(dsSchema.TargetNamespace)) { global::System.IO.MemoryStream s1 = new global::System.IO.MemoryStream(); global::System.IO.MemoryStream s2 = new global::System.IO.MemoryStream(); try { global::System.Xml.Schema.XmlSchema schema = null; dsSchema.Write(s1); for (global::System.Collections.IEnumerator schemas = xs.Schemas(dsSchema.TargetNamespace).GetEnumerator(); schemas.MoveNext();) { schema = ((global::System.Xml.Schema.XmlSchema)(schemas.Current)); s2.SetLength(0); schema.Write(s2); if ((s1.Length == s2.Length)) { s1.Position = 0; s2.Position = 0; for (; ((s1.Position != s1.Length) && (s1.ReadByte() == s2.ReadByte()));) { ; } if ((s1.Position == s1.Length)) { return(type); } } } } finally { if ((s1 != null)) { s1.Close(); } if ((s2 != null)) { s2.Close(); } } } xs.Add(dsSchema); return(type); }
public override void OnInspectorGUI() { SharedTables ss = target as SharedTables; bool wasRemoveEmptySeats = ss.RemoveEmptySeats; int wasMaxSeats = ss.MaxSeatsPerTable; base.OnInspectorGUI(); //Pour s'assurer que ça "apply" sur les tables if (ss.RemoveEmptySeats != wasRemoveEmptySeats) { ss.RemoveEmptySeats = ss.RemoveEmptySeats; } if (ss.MaxSeatsPerTable != wasMaxSeats) { ss.MaxSeatsPerTable = ss.MaxSeatsPerTable; } if (!EditorApplication.isPlaying) { if (ss.GetTableCount() != ss.GetStartingTableCount() || (Event.current.type == EventType.Layout && resetNextLayout)) { resetNextLayout = false; ss.Reset(); } } EditorGUILayout.Space(); GUI.enabled = false; List <SharedTables.Table> tables = ss.GetTables(); int count = tables.Count; for (int i = 0; i < count; i++) { EditorGUILayout.LabelField("Table " + i, EditorStyles.boldLabel); if (tables[i].SeatCount == 0) { EditorGUILayout.LabelField(" No seats", EditorStyles.miniLabel); } else { if (!EditorApplication.isPlaying) { resetNextLayout = true; } for (int j = 0; j < tables[i].SeatCount; j++) { object obj = tables[i].seats[j]; string name; if (obj == null) { name = "Null"; } else { if (obj is Object) { Object unityObj = (Object)obj; name = unityObj == null ? "Null" : unityObj.name; } else { name = obj.ToString(); } } EditorGUILayout.LabelField(" Seat " + j + ": " + name); } } } GUI.enabled = true; }