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
- COAUTHIDENTITY.cs
- COM2ExtendedBrowsingHandler.cs
- Viewport3DAutomationPeer.cs
- InboundActivityHelper.cs
- HierarchicalDataSourceConverter.cs
- OpenFileDialog.cs
- BaseCAMarshaler.cs
- OpenTypeLayoutCache.cs
- ConfigurationStrings.cs
- InternalBase.cs
- EntityDataSourceSelectedEventArgs.cs
- GenericAuthenticationEventArgs.cs
- FixedDocumentSequencePaginator.cs
- WorkflowInstanceTerminatedRecord.cs
- FormatException.cs
- ImportCatalogPart.cs
- BamlTreeUpdater.cs
- NameSpaceExtractor.cs
- SplitContainer.cs
- ReadOnlyHierarchicalDataSource.cs
- TimeIntervalCollection.cs
- Transform.cs
- FolderLevelBuildProviderCollection.cs
- ClientSettings.cs
- MSAANativeProvider.cs
- WebConfigurationHostFileChange.cs
- TemplateControlParser.cs
- ExceptionUtility.cs
- WebControlParameterProxy.cs
- NativeMethods.cs
- AutoResetEvent.cs
- SamlAuthorityBinding.cs
- SQLSingle.cs
- TraceContextRecord.cs
- Transform3DGroup.cs
- HostedHttpRequestAsyncResult.cs
- SqlConnectionFactory.cs
- Types.cs
- CodeGeneratorOptions.cs
- XmlSchemaDocumentation.cs
- TagMapCollection.cs
- EntityDataSourceQueryBuilder.cs
- ApplicationInterop.cs
- ValueConversionAttribute.cs
- ListView.cs
- AdapterDictionary.cs
- PlanCompilerUtil.cs
- BodyGlyph.cs
- UpdateExpressionVisitor.cs
- BindingContext.cs
- InternalConfigSettingsFactory.cs
- Root.cs
- XsdValidatingReader.cs
- MsmqQueue.cs
- UnauthorizedWebPart.cs
- CompatibleComparer.cs
- XmlHierarchyData.cs
- AnimationClock.cs
- LaxModeSecurityHeaderElementInferenceEngine.cs
- KeyValueConfigurationCollection.cs
- NotImplementedException.cs
- CompilerState.cs
- CompressedStack.cs
- CssStyleCollection.cs
- CharUnicodeInfo.cs
- BridgeDataReader.cs
- DoubleAnimationUsingKeyFrames.cs
- ResourceDisplayNameAttribute.cs
- EventData.cs
- KeyFrames.cs
- ResolveMatchesMessage11.cs
- AllMembershipCondition.cs
- DataBindingHandlerAttribute.cs
- ObjectDataSourceEventArgs.cs
- StaticTextPointer.cs
- ContentPosition.cs
- Serializer.cs
- DiscreteKeyFrames.cs
- VirtualPathProvider.cs
- Directory.cs
- ApplyTemplatesAction.cs
- ClientTargetCollection.cs
- CodeIdentifiers.cs
- _SingleItemRequestCache.cs
- EntityDesignerUtils.cs
- ToolStripDropDownButton.cs
- ProviderConnectionPoint.cs
- Image.cs
- FontUnitConverter.cs
- SiteMapDataSource.cs
- TimeZone.cs
- CrossContextChannel.cs
- TypedElement.cs
- BaseParser.cs
- NativeMethods.cs
- DocumentReference.cs
- TransactionInformation.cs
- PermissionSetTriple.cs
- UrlAuthFailedErrorFormatter.cs
- CaseExpr.cs