public static void PushModalDialog(Window window, string windowId) { window.PushModal(); if (string.IsNullOrEmpty(windowId)) { return; } WindowSettings settings = WindowSettings.GetByWindowId(windowId); if (settings == null) { return; } window.Resize(settings.Width, settings.Height); foreach (Paned pane in ComponentHelper.GetChildWidgetsByType <Paned> (window)) { PaneSettings pair = settings.Panes.FirstOrDefault(p => p.Name == pane.Name); if (pair != null) { pane.Position = pair.Position; } } ColumnSerializer.LoadColumnSettings(window, settings); }
public override void Serialize(TextWriter writer, IEnumerable <World> worlds, SectorSerializeOptions options) { List <string> cols = new List <string> { "Hex", "Name", "UWP", "Remarks", "{Ix}", "(Ex)", "[Cx]", "N", "B", "Z", "PBG", "W", "A", "Stellar" }; if (options.includeRoutes) { cols.Add("Routes"); } ColumnSerializer formatter = new ColumnSerializer(cols); formatter.SetMinimumWidth("Name", 20); formatter.SetMinimumWidth("Remarks", 20); foreach (World world in worlds.OrderBy(world => world.SS)) { List <string> row = new List <string> { options.sscoords?world.SubsectorHex : world.Hex, world.Name, world.UWP, world.Remarks, world.Importance ?? "", world.Economic ?? "", world.Cultural ?? "", DashIfEmpty(world.Nobility ?? ""), DashIfEmpty(world.Bases), DashIfEmpty(world.Zone), world.PBG, world.Worlds > 0 ? world.Worlds.ToString() : "", world.Allegiance, world.Stellar }; if (options.includeRoutes) { row.Add(world.Routes ?? ""); } formatter.AddRow(row); } formatter.Serialize(writer, options.includeHeader); }
public void Serialize_AddsTypeAttribute() { var propertyDefinition = GetPropertyDefinition((ClassWithAllDataTypes _) => _.Int32Property); var classDefinition = propertyDefinition.ClassDefinition; var columnSerializer = new ColumnSerializer(); var actual = columnSerializer.Serialize(propertyDefinition, GetRdbmsPersistenceModelProvider(classDefinition)).Single(); Assert.That(actual.Attributes().Select(a => a.Name.LocalName), Contains.Item("dbType")); Assert.That(actual.Attribute("dbType").Value, Is.EqualTo("Int32")); }
public void Serialize_CreatesColumnElement() { var propertyDefinition = GetPropertyDefinition((ClassWithAllDataTypes _) => _.Int32Property); var classDefinition = propertyDefinition.ClassDefinition; var columnSerializer = new ColumnSerializer(); var actual = columnSerializer.Serialize(propertyDefinition, GetRdbmsPersistenceModelProvider(classDefinition)).ToArray(); Assert.That(actual.Length, Is.EqualTo(1)); Assert.That(actual[0].Name.LocalName, Is.EqualTo("column")); }
public void CanReadXmlForColumn() { using (var r = TestXmlReader.Create("<Column name=\"colb\" dbType=\"int\" clrType=\"System.Int32\" />")) { var c = new ColumnSerializer().Deserialize(r.Reader); Assert.IsNotNull(c); Assert.AreEqual("colb", c.Name); Assert.AreEqual("int", c.DbType); Assert.AreSame(typeof(System.Int32), c.ClrType); } }
public void Serialize_RelationProperty() { var propertyDefinition = GetPropertyDefinition((Ceo _) => _.Company); var classDefinition = propertyDefinition.ClassDefinition; var columnSerializer = new ColumnSerializer(); var actual = columnSerializer.Serialize(propertyDefinition, GetRdbmsPersistenceModelProvider(classDefinition)).ToArray(); Assert.That(actual.Length, Is.EqualTo(2)); Assert.That(actual[0].Attribute("name").Value, Is.EqualTo("CompanyID")); Assert.That(actual[0].Attribute("dbType").Value, Is.EqualTo("Guid")); Assert.That(actual[1].Attribute("name").Value, Is.EqualTo("CompanyIDClassID")); Assert.That(actual[1].Attribute("dbType").Value, Is.EqualTo("String")); }
private IReadOnlyList <ColumnSerializer> GetColumnSerializers() { var result = new ColumnSerializer[_columnMappings.Length]; for (int i = 0; i < _columnMappings.Length; i++) { var column = _columnMappings[i].Value; if (column == IGNORE) { continue; } result[i] = _sourcePresenter.GetSerializer(column); } return(result); }
public void ColumnFormatterTest() { ColumnSerializer formatter = new ColumnSerializer(new string[] { "1", "2", "3", "4" }); formatter.AddRow(new string[] { "a", "bb", "ccc", "dddd" }); formatter.AddRow(new string[] { " A ", " BB ", " CCC ", " DDDD " }); formatter.AddRow(new string[] { "w", "x", "y", "z" }); StringWriter writer = new StringWriter(); formatter.Serialize(writer); Assert.AreEqual( "1 2 3 4 \r\n" + "- -- --- ----\r\n" + "a bb ccc dddd\r\n" + "A BB CCC DDDD\r\n" + "w x y z \r\n", writer.ToString()); }
private ColumnSerializer[] GetColumnSerializers() { var result = new ColumnSerializer[ColumnsCount]; var model = DataPresenter.DataSet.Model; var columns = model.GetColumns(); var localColumns = model.GetLocalColumns(); for (int i = 0; i < columns.Count; i++) { result[i] = DataPresenter.GetSerializer(columns[i]); } for (int i = 0; i < localColumns.Count; i++) { result[i + columns.Count] = DataPresenter.GetSerializer(localColumns[i]); } return(result); }
public List <ColumnSerializer> GetColumns(object serializer) { var propList = new List <ColumnSerializer>(); foreach (var prop in serializer.GetType().GetProperties()) { if (prop.CustomAttributes.Count() > 0) { ColumnSerializer cs = new ColumnSerializer(); cs.name = char.ToLowerInvariant(prop.Name[0]) + prop.Name.Substring(1); var attr = prop.CustomAttributes.First(); cs.title = attr.NamedArguments.First(x => x.MemberName == "Name").TypedValue.ToString().Replace("\"", ""); cs.breakpoints = attr.NamedArguments.FirstOrDefault(x => x.MemberName == "Description").TypedValue.ToString().Replace("\"", ""); propList.Add(cs); } } return(propList); }
public void SetUp() { _column = new ColumnBuilder() .WithId(1) .WithIndex(0) .WithName("Test") .WithDataType(typeof(Boolean)) .WithSemanticType(SemanticType.Unknown) .Build(); _rows = new List <Row>(); _xColumn = new XElement("column", new XElement("id", _column.Id), new XElement("index", _column.Index), new XElement("name", _column.Name), new XElement("data-type", "Boolean"), new XElement("semantic-type", _column.SemanticType)); _serializer = new ColumnSerializer( new PropertySerializer( new DataTypeSerializer()), new ColumnFactory()); }
public static void PopModalDialog(Window window, string windowId) { window.PopModal(); if (string.IsNullOrEmpty(windowId)) { return; } WindowSettings settings = WindowSettings.GetByWindowId(windowId) ?? new WindowSettings { WindowId = windowId }; settings.Width = window.Allocation.Width; settings.Height = window.Allocation.Height; settings.Panes.Clear(); foreach (Paned pane in ComponentHelper.GetChildWidgetsByType <Paned> (window)) { settings.Panes.Add(new PaneSettings { Name = pane.Name, Position = pane.Position }); } ColumnSerializer.SaveColumnSettings(window, settings); }
private ColumnSerializer[] GetSelectedColumnSerializers() { var presenter = DataPresenter.GetService <Presenter>(); var startBindingIndex = presenter.StartSelectedBindingIndex; Debug.Assert(startBindingIndex >= 0); var endBindingIndex = presenter.EndSelectedBindingIndex; var gridCellBindings = presenter.GridCellBindings; var result = new ColumnSerializer[SelectedColumnsCount]; int index = 0; for (int i = startBindingIndex; i <= endBindingIndex; i++) { var rowBinding = gridCellBindings[i]; var serializableColumns = rowBinding.SerializableColumns; for (int j = 0; j < serializableColumns.Count; j++) { result[index++] = DataPresenter.GetSerializer(serializableColumns[j]); } } return(result); }