Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Framework / System / Windows / Documents / ColumnResizeUndoUnit.cs / 1 / ColumnResizeUndoUnit.cs
//---------------------------------------------------------------------------- // // File: ColumnResizeUndoUnit.cs // // Description: Undo unit for resizing columns // // History: // 01/27/2005 : GHermann - Created // //--------------------------------------------------------------------------- using MS.Internal.Documents; namespace System.Windows.Documents { internal class ColumnResizeUndoUnit : ParentUndoUnit { #region Constructors internal ColumnResizeUndoUnit(TextPointer textPointerTable, int columnIndex, double[] columnWidths, double resizeAmount) : base("ColumnResize") { _textContainer = textPointerTable.TextContainer; _cpTable = _textContainer.Start.GetOffsetToPosition(textPointerTable); _columnWidths = columnWidths; _columnIndex = columnIndex; _resizeAmount = resizeAmount; } #endregion Constructors #region Public Methods ////// Perform the appropriate action for this unit. If this is a parent undo unit, the /// parent must create an appropriate parent undo unit to contain the redo units. /// public override void Do() { UndoManager undoManager; IParentUndoUnit redo; TextPointer textPointerTable; Table table; undoManager = TopContainer as UndoManager; redo = null; textPointerTable = new TextPointer(_textContainer.Start, _cpTable, LogicalDirection.Forward); table = (Table) textPointerTable.Parent; _columnWidths[_columnIndex] -= _resizeAmount; if(_columnIndex < table.ColumnCount - 1) { _columnWidths[_columnIndex + 1] += _resizeAmount; } if(undoManager != null && undoManager.IsEnabled) { redo = new ColumnResizeUndoUnit(textPointerTable, _columnIndex, _columnWidths, -_resizeAmount); undoManager.Open(redo); } TextRangeEditTables.EnsureTableColumnsAreFixedSize(table, _columnWidths); if(redo != null) { undoManager.Close(redo, UndoCloseAction.Commit); } } #endregion Public Methods #region Private Data private TextContainer _textContainer; private double[] _columnWidths; private int _cpTable; private int _columnIndex; private double _resizeAmount; #endregion Private Data } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // // File: ColumnResizeUndoUnit.cs // // Description: Undo unit for resizing columns // // History: // 01/27/2005 : GHermann - Created // //--------------------------------------------------------------------------- using MS.Internal.Documents; namespace System.Windows.Documents { internal class ColumnResizeUndoUnit : ParentUndoUnit { #region Constructors internal ColumnResizeUndoUnit(TextPointer textPointerTable, int columnIndex, double[] columnWidths, double resizeAmount) : base("ColumnResize") { _textContainer = textPointerTable.TextContainer; _cpTable = _textContainer.Start.GetOffsetToPosition(textPointerTable); _columnWidths = columnWidths; _columnIndex = columnIndex; _resizeAmount = resizeAmount; } #endregion Constructors #region Public Methods ////// Perform the appropriate action for this unit. If this is a parent undo unit, the /// parent must create an appropriate parent undo unit to contain the redo units. /// public override void Do() { UndoManager undoManager; IParentUndoUnit redo; TextPointer textPointerTable; Table table; undoManager = TopContainer as UndoManager; redo = null; textPointerTable = new TextPointer(_textContainer.Start, _cpTable, LogicalDirection.Forward); table = (Table) textPointerTable.Parent; _columnWidths[_columnIndex] -= _resizeAmount; if(_columnIndex < table.ColumnCount - 1) { _columnWidths[_columnIndex + 1] += _resizeAmount; } if(undoManager != null && undoManager.IsEnabled) { redo = new ColumnResizeUndoUnit(textPointerTable, _columnIndex, _columnWidths, -_resizeAmount); undoManager.Open(redo); } TextRangeEditTables.EnsureTableColumnsAreFixedSize(table, _columnWidths); if(redo != null) { undoManager.Close(redo, UndoCloseAction.Commit); } } #endregion Public Methods #region Private Data private TextContainer _textContainer; private double[] _columnWidths; private int _cpTable; private int _columnIndex; private double _resizeAmount; #endregion Private Data } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- SoapExtensionStream.cs
- UIHelper.cs
- ListViewUpdatedEventArgs.cs
- Size.cs
- CqlParser.cs
- DataGridViewRowCollection.cs
- DiagnosticEventProvider.cs
- SchemaImporterExtensionElement.cs
- FormViewPagerRow.cs
- AssemblyName.cs
- WinEventTracker.cs
- BrowserTree.cs
- EventMap.cs
- PathStreamGeometryContext.cs
- RuntimeHelpers.cs
- SecurityResources.cs
- UIElementHelper.cs
- RenamedEventArgs.cs
- GridViewCommandEventArgs.cs
- DataGridColumnReorderingEventArgs.cs
- MultipleViewPattern.cs
- XmlnsDictionary.cs
- SizeF.cs
- KnownColorTable.cs
- PageSettings.cs
- XsltContext.cs
- GlobalProxySelection.cs
- SizeIndependentAnimationStorage.cs
- SqlTypeSystemProvider.cs
- HtmlControlDesigner.cs
- DoubleAnimationUsingKeyFrames.cs
- DirectionalLight.cs
- SystemFonts.cs
- NamedPipeConnectionPoolSettingsElement.cs
- Normalization.cs
- SizeChangedInfo.cs
- StrokeCollection.cs
- Shared.cs
- QueryOperatorEnumerator.cs
- ChtmlPageAdapter.cs
- StructureChangedEventArgs.cs
- SqlDataRecord.cs
- FileInfo.cs
- WebServiceEnumData.cs
- HttpAsyncResult.cs
- cookieexception.cs
- DataTable.cs
- SafeCoTaskMem.cs
- TextPointerBase.cs
- GeometryModel3D.cs
- GroupItem.cs
- TemplateDefinition.cs
- DataStorage.cs
- SecurityElement.cs
- DbInsertCommandTree.cs
- ReadOnlyTernaryTree.cs
- AppDomainFactory.cs
- CodeAttributeDeclaration.cs
- RectangleConverter.cs
- ZipPackage.cs
- XamlToRtfParser.cs
- ErrorTableItemStyle.cs
- GB18030Encoding.cs
- MessageQuerySet.cs
- MobileDeviceCapabilitiesSectionHandler.cs
- DropSource.cs
- WorkflowMarkupSerializationManager.cs
- HandlerWithFactory.cs
- DisplayNameAttribute.cs
- HttpRuntimeSection.cs
- OdbcReferenceCollection.cs
- ConstNode.cs
- MappingModelBuildProvider.cs
- ApplicationServiceHelper.cs
- Solver.cs
- IsolatedStorageFilePermission.cs
- SqlTypeSystemProvider.cs
- TextContainerChangedEventArgs.cs
- AuthenticodeSignatureInformation.cs
- CacheDependency.cs
- VectorCollectionConverter.cs
- WebBrowserProgressChangedEventHandler.cs
- MultiBindingExpression.cs
- ObjectDataSourceStatusEventArgs.cs
- httpserverutility.cs
- MemberAccessException.cs
- ProbeMatchesApril2005.cs
- XmlElementAttributes.cs
- RectangleHotSpot.cs
- DBSqlParserTable.cs
- PseudoWebRequest.cs
- BindingNavigator.cs
- XslTransform.cs
- NumericUpDownAccelerationCollection.cs
- SpecularMaterial.cs
- ObfuscationAttribute.cs
- XmlSequenceWriter.cs
- Knowncolors.cs
- WorkflowPageSetupDialog.cs
- AttributeExtensions.cs