Code:
/ Dotnetfx_Vista_SP2 / Dotnetfx_Vista_SP2 / 8.0.50727.4016 / DEVDIV / depot / DevDiv / releases / Orcas / QFE / 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
- PasswordPropertyTextAttribute.cs
- PhysicalFontFamily.cs
- LicenseProviderAttribute.cs
- ArraySubsetEnumerator.cs
- MultiViewDesigner.cs
- AddInSegmentDirectoryNotFoundException.cs
- SymbolMethod.cs
- BaseTemplateCodeDomTreeGenerator.cs
- EFColumnProvider.cs
- Vector.cs
- FontWeight.cs
- AnonymousIdentificationModule.cs
- LogFlushAsyncResult.cs
- ProcessInputEventArgs.cs
- TreeNodeStyleCollection.cs
- XmlSerializerFactory.cs
- DockingAttribute.cs
- MatrixValueSerializer.cs
- AutomationAttributeInfo.cs
- QueryOutputWriter.cs
- WebPartZoneBaseDesigner.cs
- TraceInternal.cs
- AsyncOperationLifetimeManager.cs
- ValidatingPropertiesEventArgs.cs
- ListControl.cs
- DoubleAnimation.cs
- GradientStopCollection.cs
- ProxyWebPartConnectionCollection.cs
- CellParaClient.cs
- GZipStream.cs
- TraceHwndHost.cs
- RecordConverter.cs
- PersistenceMetadataNamespace.cs
- DataFormats.cs
- FullTextBreakpoint.cs
- AppDomainCompilerProxy.cs
- HtmlInputRadioButton.cs
- ClientFormsIdentity.cs
- WSSecurityOneDotOneSendSecurityHeader.cs
- safePerfProviderHandle.cs
- MappingException.cs
- ClientSettingsStore.cs
- SchemaDeclBase.cs
- UnsafeNativeMethods.cs
- AvtEvent.cs
- DataSvcMapFile.cs
- ActivityExecutionContextCollection.cs
- GlyphRunDrawing.cs
- DocumentXmlWriter.cs
- JoinElimination.cs
- WebDisplayNameAttribute.cs
- AdornerDecorator.cs
- FileLoadException.cs
- WindowsGrip.cs
- PrinterUnitConvert.cs
- TemplateFactory.cs
- ReadOnlyObservableCollection.cs
- ACE.cs
- ImageCollectionCodeDomSerializer.cs
- Win32.cs
- AttachedPropertyMethodSelector.cs
- RemotingException.cs
- ProtectedProviderSettings.cs
- ElementProxy.cs
- IndentedWriter.cs
- SmtpClient.cs
- Delay.cs
- WebPartUserCapability.cs
- MenuCommand.cs
- QualificationDataAttribute.cs
- Rotation3DKeyFrameCollection.cs
- BaseTemplateCodeDomTreeGenerator.cs
- XamlReaderHelper.cs
- OleTxTransaction.cs
- UIElement.cs
- OutOfProcStateClientManager.cs
- ThousandthOfEmRealPoints.cs
- RangeValidator.cs
- SBCSCodePageEncoding.cs
- EDesignUtil.cs
- GenericPrincipal.cs
- MasterPageParser.cs
- FixedNode.cs
- XmlLoader.cs
- WebPartMenuStyle.cs
- login.cs
- ProcessManager.cs
- ColorConvertedBitmap.cs
- LocalIdKeyIdentifierClause.cs
- HttpCapabilitiesSectionHandler.cs
- TypeInitializationException.cs
- SqlCommandSet.cs
- QueryCursorEventArgs.cs
- LabelDesigner.cs
- StatusBarAutomationPeer.cs
- DetailsViewDeleteEventArgs.cs
- MouseButton.cs
- EventLogInformation.cs
- ExpressionPrefixAttribute.cs
- GeometryConverter.cs