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
- SpnegoTokenAuthenticator.cs
- TextEditorMouse.cs
- TypeDescriptionProvider.cs
- Documentation.cs
- MoveSizeWinEventHandler.cs
- ResolveCriteria11.cs
- TypeCacheManager.cs
- ContentType.cs
- NullableLongSumAggregationOperator.cs
- SoapIncludeAttribute.cs
- Psha1DerivedKeyGenerator.cs
- BufferedResponseStream.cs
- RtfNavigator.cs
- XamlFigureLengthSerializer.cs
- SafeRegistryHandle.cs
- PackageDigitalSignature.cs
- FacetDescriptionElement.cs
- AddInToken.cs
- DataObjectAttribute.cs
- IFlowDocumentViewer.cs
- ClientConfigPaths.cs
- RoutedEventArgs.cs
- SafeHGlobalHandleCritical.cs
- ComProxy.cs
- OneWayChannelListener.cs
- HitTestParameters3D.cs
- ProtectedProviderSettings.cs
- InvalidFilterCriteriaException.cs
- PathSegmentCollection.cs
- CompilerTypeWithParams.cs
- WebControl.cs
- SecurityHelper.cs
- TransactionChannelFactory.cs
- EncoderReplacementFallback.cs
- DataRecordInternal.cs
- EnvironmentPermission.cs
- WindowsPen.cs
- TaskFileService.cs
- ManualResetEvent.cs
- RemotingException.cs
- WebZone.cs
- InkCanvasAutomationPeer.cs
- DemultiplexingDispatchMessageFormatter.cs
- Cursor.cs
- TextChangedEventArgs.cs
- TextModifier.cs
- NewItemsContextMenuStrip.cs
- InheritanceAttribute.cs
- FieldMetadata.cs
- ChannelTerminatedException.cs
- EditingMode.cs
- WebBrowserSiteBase.cs
- EndEvent.cs
- QueryOperator.cs
- GregorianCalendarHelper.cs
- ScrollContentPresenter.cs
- SQlBooleanStorage.cs
- ReadOnlyCollection.cs
- TimeSpanValidator.cs
- ConfigurationSection.cs
- MetadataPropertyvalue.cs
- IdentifierCollection.cs
- XmlMemberMapping.cs
- StylusPointProperty.cs
- Region.cs
- ServiceMetadataExtension.cs
- BasicExpandProvider.cs
- TextSelection.cs
- ObjectStateFormatter.cs
- SvcMapFileLoader.cs
- SafeEventLogWriteHandle.cs
- MobileComponentEditorPage.cs
- ImmutableCollection.cs
- IisTraceWebEventProvider.cs
- ProxyFragment.cs
- HotSpot.cs
- Transform3DGroup.cs
- HttpListenerRequestUriBuilder.cs
- ComplexObject.cs
- PreProcessInputEventArgs.cs
- SqlPersonalizationProvider.cs
- ExtentKey.cs
- CompressionTracing.cs
- WebPartTracker.cs
- GridViewActionList.cs
- MatrixUtil.cs
- EdmMember.cs
- DateTimeParse.cs
- ReturnEventArgs.cs
- SqlFactory.cs
- SqlMethodAttribute.cs
- BaseAppDomainProtocolHandler.cs
- FactoryMaker.cs
- IPPacketInformation.cs
- QilBinary.cs
- cookieexception.cs
- dsa.cs
- ColorAnimationBase.cs
- ListItemsCollectionEditor.cs
- GenericTextProperties.cs