public MatrixObjectMenu(Designer designer) : base(designer) { FMatrix = Designer.SelectedObjects[0] as MatrixObject; MyRes res = new MyRes("ComponentMenu,MatrixObject"); miAutoSize = CreateMenuItem(Res.Get("ComponentMenu,TableRow,AutoSize"), new EventHandler(miAutoSize_Click)); miAutoSize.BeginGroup = true; miAutoSize.AutoCheckOnClick = true; miShowTitle = CreateMenuItem(res.Get("ShowTitle"), new EventHandler(miShowTitle_Click)); miShowTitle.AutoCheckOnClick = true; miCellsSideBySide = CreateMenuItem(res.Get("CellsSideBySide"), new EventHandler(miCellsSideBySide_Click)); miCellsSideBySide.AutoCheckOnClick = true; miStyle = CreateMenuItem(Res.GetImage(87), res.Get("Style"), null); miStyle.BeginGroup = true; int insertIndex = Items.IndexOf(miRepeatHeaders); Items.Insert(insertIndex, miAutoSize); Items.Insert(insertIndex + 1, miShowTitle); Items.Insert(insertIndex + 3, miCellsSideBySide); Items.Insert(insertIndex + 4, miStyle); miRepeatHeaders.BeginGroup = false; miCanBreak.Visible = false; miGrowToBottom.Visible = false; miAutoSize.Checked = FMatrix.AutoSize; miShowTitle.Checked = FMatrix.ShowTitle; miCellsSideBySide.Checked = FMatrix.CellsSideBySide; BuildStyleMenu(); }
internal MatrixData(MatrixObject matrix) { columns = new MatrixHeader(matrix); columns.Name = "MatrixColumns"; rows = new MatrixHeader(matrix); rows.Name = "MatrixRows"; cells = new MatrixCells(); cells.Name = "MatrixCells"; }
public MatrixHelper(MatrixObject matrix) { this.matrix = matrix; titleDescriptor = new MatrixDescriptor(); cellHeaderDescriptor = new MatrixDescriptor(); cellHeaderDescriptor.Expression = "Data"; noColumnsDescriptor = new MatrixHeaderDescriptor("", false); noRowsDescriptor = new MatrixHeaderDescriptor("", false); noCellsDescriptor = new MatrixCellDescriptor(); }
public MatrixHelper(MatrixObject matrix) { FMatrix = matrix; FTitleDescriptor = new MatrixDescriptor(); FCellHeaderDescriptor = new MatrixDescriptor(); FCellHeaderDescriptor.Expression = "Data"; FNoColumnsDescriptor = new MatrixHeaderDescriptor("", false); FNoRowsDescriptor = new MatrixHeaderDescriptor("", false); FNoCellsDescriptor = new MatrixCellDescriptor(); }
public MatrixCellSmartTag(MatrixObject matrix, MatrixDescriptor descriptor) : base(descriptor.TemplateCell) { FMatrix = matrix; FDescriptor = descriptor; string expression = descriptor.Expression; if (expression.StartsWith("[") && expression.EndsWith("]")) { expression = expression.Substring(1, expression.Length - 2); } DataColumn = expression; }
/// <inheritdoc/> public override void Assign(Base source) { base.Assign(source); MatrixObject src = source as MatrixObject; AutoSize = src.AutoSize; CellsSideBySide = src.CellsSideBySide; KeepCellsSideBySide = src.KeepCellsSideBySide; DataSource = src.DataSource; Filter = src.Filter; ShowTitle = src.ShowTitle; Style = src.Style; MatrixEvenStylePriority = src.MatrixEvenStylePriority; }
public MatrixHeaderMenu(MatrixObject matrix, MatrixElement element, MatrixDescriptor descriptor) : base(matrix, element, descriptor) { MyRes res = new MyRes("ComponentMenu,MatrixCell"); miSort = CreateMenuItem(null, Res.Get("Forms,DataBandEditor,Sort"), null); miSortAsc = CreateMenuItem(null, Res.Get("Forms,GroupBandEditor,Ascending"), Sort_Click); miSortAsc.AutoCheckOnClick = true; miSortAsc.Tag = SortOrder.Ascending; miSortDesc = CreateMenuItem(null, Res.Get("Forms,GroupBandEditor,Descending"), Sort_Click); miSortDesc.AutoCheckOnClick = true; miSortDesc.Tag = SortOrder.Descending; miSortNone = CreateMenuItem(null, Res.Get("Forms,GroupBandEditor,NoSort"), Sort_Click); miSortNone.AutoCheckOnClick = true; miSortNone.Tag = SortOrder.None; miTotals = CreateMenuItem(null, res.Get("Totals"), miTotals_Click); miTotals.AutoCheckOnClick = true; miPageBreak = CreateMenuItem(null, Res.Get("ComponentMenu,Band,StartNewPage"), miPageBreak_Click); miPageBreak.AutoCheckOnClick = true; miSuppressTotals = CreateMenuItem(null, res.Get("SuppressTotals"), miSuppressTotals_Click); miSuppressTotals.AutoCheckOnClick = true; miTotalsFirst = CreateMenuItem(null, res.Get("TotalsFirst"), miTotalsFirst_Click); miTotalsFirst.AutoCheckOnClick = true; miSort.SubItems.AddRange(new BaseItem[] { miSortAsc, miSortDesc, miSortNone }); int insertIndex = Items.IndexOf(miDelete); Items.Insert(insertIndex, miSort); Items.Insert(insertIndex + 1, miTotals); Items.Insert(insertIndex + 2, miPageBreak); Items.Insert(insertIndex + 3, miSuppressTotals); Items.Insert(insertIndex + 4, miTotalsFirst); SortOrder sort = (Descriptor as MatrixHeaderDescriptor).Sort; miSortAsc.Checked = sort == SortOrder.Ascending; miSortDesc.Checked = sort == SortOrder.Descending; miSortNone.Checked = sort == SortOrder.None; miTotals.Checked = (Descriptor as MatrixHeaderDescriptor).Totals; miTotals.Enabled = !matrix.IsAncestor; miPageBreak.Checked = (Descriptor as MatrixHeaderDescriptor).PageBreak; miSuppressTotals.Checked = (Descriptor as MatrixHeaderDescriptor).SuppressTotals; miTotalsFirst.Checked = (Descriptor as MatrixHeaderDescriptor).TotalsFirst; }
public MatrixCellMenuBase(MatrixObject matrix, MatrixElement element, MatrixDescriptor descriptor) : base(matrix.Report.Designer) { FMatrix = matrix; FElement = element; FDescriptor = descriptor; miEdit = CreateMenuItem(null, Res.Get("ComponentMenu,Component,Edit"), new EventHandler(miEdit_Click)); miFormat = CreateMenuItem(Res.GetImage(168), Res.Get("ComponentMenu,TextObject,Format"), new EventHandler(miFormat_Click)); miHyperlink = CreateMenuItem(Res.GetImage(167), Res.Get("ComponentMenu,ReportComponent,Hyperlink"), new EventHandler(miHyperlink_Click)); miDelete = CreateMenuItem(Res.GetImage(51), Res.Get("Designer,Menu,Edit,Delete"), new EventHandler(miDelete_Click)); miDelete.BeginGroup = true; Items.AddRange(new BaseItem[] { miEdit, miFormat, miHyperlink, miDelete }); bool enabled = Designer.SelectedObjects.Count == 1; miEdit.Enabled = enabled; miDelete.Enabled = enabled && descriptor != null && !matrix.IsAncestor; }
/// <inheritdoc/> public override void Serialize(FRWriter writer) { if (writer.SerializeTo != SerializeTo.SourcePages) { writer.Write(Data.Columns); writer.Write(Data.Rows); writer.Write(Data.Cells); } else { RefreshTemplate(true); } base.Serialize(writer); MatrixObject c = writer.DiffObject as MatrixObject; if (AutoSize != c.AutoSize) { writer.WriteBool("AutoSize", AutoSize); } if (CellsSideBySide != c.CellsSideBySide) { writer.WriteBool("CellsSideBySide", CellsSideBySide); } if (KeepCellsSideBySide != c.KeepCellsSideBySide) { writer.WriteBool("KeepCellsSideBySide", KeepCellsSideBySide); } if (DataSource != c.DataSource) { writer.WriteRef("DataSource", DataSource); } if (Filter != c.Filter) { writer.WriteStr("Filter", Filter); } if (ShowTitle != c.ShowTitle) { writer.WriteBool("ShowTitle", ShowTitle); } if (Style != c.Style) { writer.WriteStr("Style", Style); } if (MatrixEvenStylePriority != c.MatrixEvenStylePriority) { writer.WriteValue("MatrixEvenStylePriority", MatrixEvenStylePriority); } if (SplitRows != c.SplitRows) { writer.WriteValue("SplitRows", SplitRows); } if (ManualBuildEvent != c.ManualBuildEvent) { writer.WriteStr("ManualBuildEvent", ManualBuildEvent); } if (ModifyResultEvent != c.ModifyResultEvent) { writer.WriteStr("ModifyResultEvent", ModifyResultEvent); } if (AfterTotalsEvent != c.AfterTotalsEvent) { writer.WriteStr("AfterTotalsEvent", AfterTotalsEvent); } }
public MatrixTotalMenu(MatrixObject matrix, MatrixElement element, MatrixDescriptor descriptor) : base(matrix, element, descriptor) { }
public MatrixCellMenu(MatrixObject matrix, MatrixElement element, MatrixDescriptor descriptor) : base(matrix, element, descriptor) { MyRes res = new MyRes("Forms,TotalEditor"); miFunction = CreateMenuItem(Res.GetImage(132), Res.Get("ComponentMenu,MatrixCell,Function"), null); miFunctionNone = CreateMenuItem(null, Res.Get("Misc,None"), new EventHandler(Function_Click)); miFunctionNone.AutoCheckOnClick = true; miFunctionNone.Tag = MatrixAggregateFunction.None; miFunctionSum = CreateMenuItem(null, res.Get("Sum"), new EventHandler(Function_Click)); miFunctionSum.AutoCheckOnClick = true; miFunctionSum.Tag = MatrixAggregateFunction.Sum; miFunctionMin = CreateMenuItem(null, res.Get("Min"), new EventHandler(Function_Click)); miFunctionMin.AutoCheckOnClick = true; miFunctionMin.Tag = MatrixAggregateFunction.Min; miFunctionMax = CreateMenuItem(null, res.Get("Max"), new EventHandler(Function_Click)); miFunctionMax.AutoCheckOnClick = true; miFunctionMax.Tag = MatrixAggregateFunction.Max; miFunctionAvg = CreateMenuItem(null, res.Get("Avg"), new EventHandler(Function_Click)); miFunctionAvg.AutoCheckOnClick = true; miFunctionAvg.Tag = MatrixAggregateFunction.Avg; miFunctionCount = CreateMenuItem(null, res.Get("Count"), new EventHandler(Function_Click)); miFunctionCount.AutoCheckOnClick = true; miFunctionCount.Tag = MatrixAggregateFunction.Count; miFunctionCustom = CreateMenuItem(null, res.Get("Custom"), new EventHandler(Function_Click)); miFunctionCustom.AutoCheckOnClick = true; miFunctionCustom.Tag = MatrixAggregateFunction.Custom; miFunction.SubItems.AddRange(new BaseItem[] { miFunctionNone, miFunctionSum, miFunctionMin, miFunctionMax, miFunctionAvg, miFunctionCount, miFunctionCustom }); res = new MyRes("ComponentMenu,MatrixCell"); miPercent = CreateMenuItem(null, res.Get("Percent"), null); miPercentNone = CreateMenuItem(null, Res.Get("Misc,None"), new EventHandler(Percent_Click)); miPercentNone.AutoCheckOnClick = true; miPercentNone.Tag = MatrixPercent.None; miPercentColumnTotal = CreateMenuItem(null, res.Get("PercentColumnTotal"), new EventHandler(Percent_Click)); miPercentColumnTotal.AutoCheckOnClick = true; miPercentColumnTotal.Tag = MatrixPercent.ColumnTotal; miPercentRowTotal = CreateMenuItem(null, res.Get("PercentRowTotal"), new EventHandler(Percent_Click)); miPercentRowTotal.AutoCheckOnClick = true; miPercentRowTotal.Tag = MatrixPercent.RowTotal; miPercentGrandTotal = CreateMenuItem(null, res.Get("PercentGrandTotal"), new EventHandler(Percent_Click)); miPercentGrandTotal.AutoCheckOnClick = true; miPercentGrandTotal.Tag = MatrixPercent.GrandTotal; miPercent.SubItems.AddRange(new BaseItem[] { miPercentNone, miPercentColumnTotal, miPercentRowTotal, miPercentGrandTotal }); int insertIndex = Items.IndexOf(miDelete); Items.Insert(insertIndex, miFunction); Items.Insert(insertIndex + 1, miPercent); MatrixAggregateFunction function = (Descriptor as MatrixCellDescriptor).Function; foreach (BaseItem item in miFunction.SubItems) { if ((MatrixAggregateFunction)item.Tag == function) { (item as ButtonItem).Checked = true; break; } } MatrixPercent percent = (Descriptor as MatrixCellDescriptor).Percent; foreach (BaseItem item in miPercent.SubItems) { if ((MatrixPercent)item.Tag == percent) { (item as ButtonItem).Checked = true; break; } } }
internal MatrixHeader(MatrixObject matrix) { rootItem = new MatrixHeaderItem(null); this.matrix = matrix; }