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
- OleStrCAMarshaler.cs
- HttpProxyTransportBindingElement.cs
- RNGCryptoServiceProvider.cs
- ProxyFragment.cs
- SubMenuStyleCollection.cs
- SubstitutionResponseElement.cs
- AdditionalEntityFunctions.cs
- MetadataUtilsSmi.cs
- ContentValidator.cs
- PageRequestManager.cs
- TemplateBindingExpression.cs
- SecureUICommand.cs
- LogLogRecord.cs
- SqlUDTStorage.cs
- Code.cs
- AttributeCollection.cs
- GeometryCombineModeValidation.cs
- EdmItemCollection.OcAssemblyCache.cs
- OdbcEnvironment.cs
- MemberExpression.cs
- DPCustomTypeDescriptor.cs
- WCFBuildProvider.cs
- ViewManager.cs
- CombinedGeometry.cs
- ConfigurationManagerInternal.cs
- SkewTransform.cs
- NamespaceCollection.cs
- controlskin.cs
- RtfToXamlReader.cs
- TableColumnCollection.cs
- SizeAnimationClockResource.cs
- DataView.cs
- SqlTransaction.cs
- AspProxy.cs
- ReadOnlyHierarchicalDataSourceView.cs
- TextEndOfParagraph.cs
- ConstNode.cs
- ValidationErrorEventArgs.cs
- ApplicationContext.cs
- XmlArrayItemAttributes.cs
- IUnknownConstantAttribute.cs
- ProjectionPruner.cs
- IconEditor.cs
- MessageBox.cs
- CachedResourceDictionaryExtension.cs
- ConfigXmlText.cs
- Model3DCollection.cs
- HostingMessageProperty.cs
- ProviderUtil.cs
- DataSet.cs
- CopyOnWriteList.cs
- TextEndOfParagraph.cs
- SoapConverter.cs
- EventArgs.cs
- LayoutTableCell.cs
- RadioButtonList.cs
- ToolStripMenuItemCodeDomSerializer.cs
- AudienceUriMode.cs
- WindowsTab.cs
- _Win32.cs
- PointAnimationBase.cs
- HttpModuleAction.cs
- TraceListener.cs
- DrawingVisual.cs
- designeractionbehavior.cs
- LinkLabel.cs
- CodePageEncoding.cs
- CollectionChangedEventManager.cs
- SQLInt64.cs
- ResourceSet.cs
- XPathArrayIterator.cs
- TabControlEvent.cs
- BulletChrome.cs
- HMACSHA256.cs
- ServiceElementCollection.cs
- ProfileGroupSettingsCollection.cs
- TableLayout.cs
- HtmlTableCellCollection.cs
- TextOutput.cs
- TabPanel.cs
- OpenFileDialog.cs
- NamedPermissionSet.cs
- CodeTypeMemberCollection.cs
- SQLInt64Storage.cs
- SHA256Managed.cs
- ChildrenQuery.cs
- OleDbCommand.cs
- UnauthorizedAccessException.cs
- TakeQueryOptionExpression.cs
- DrawingDrawingContext.cs
- WebResourceAttribute.cs
- ListMarkerLine.cs
- HttpDebugHandler.cs
- Form.cs
- DataGridComponentEditor.cs
- ResourceCodeDomSerializer.cs
- Tile.cs
- MemoryStream.cs
- ProjectionCamera.cs
- ApplicationDirectory.cs