Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / Orcas / NetFXw7 / wpf / src / Core / CSharp / System / Windows / Input / Command / ApplicationCommands.cs / 1 / ApplicationCommands.cs
//---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: The ApplicationCommands class defines a standard set of commands that are required in most applications. // The goal of these commands is to unify input, programming model and UI for the most common actions in // Windows applications thus providing a standard interface for such common commands. // // See spec at : http://avalon/CoreUI/Specs%20%20Eventing%20and%20Commanding/CommandLibrarySpec.mht // // // History: // 03/31/2004 : chandras - Created // 04/28/2004 : Added Accelerator table loading from Resource // 02/02/2005 : Created ApplicationCommands class from CommandLibrary class. // //--------------------------------------------------------------------------- using System; using System.Windows; using System.Windows.Input; using System.Collections; using System.ComponentModel; using System.Security; using System.Security.Permissions; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; using MS.Internal; // CommandHelper namespace System.Windows.Input { ////// ApplicationCommands - Set of Standard Commands /// public static class ApplicationCommands { //----------------------------------------------------- // // Public Methods // //----------------------------------------------------- #region Public Methods ////// CutCommand - action to cut selection /// public static RoutedUICommand Cut { get { return _EnsureCommand(CommandId.Cut); } } ////// CopyCommand /// public static RoutedUICommand Copy { get { return _EnsureCommand(CommandId.Copy); } } ////// PasteCommand /// public static RoutedUICommand Paste { get { return _EnsureCommand(CommandId.Paste); } } ////// DeleteCommand /// public static RoutedUICommand Delete { get { return _EnsureCommand(CommandId.Delete); } } ////// UndoCommand /// public static RoutedUICommand Undo { get { return _EnsureCommand(CommandId.Undo); } } ////// RedoCommand /// public static RoutedUICommand Redo { get { return _EnsureCommand(CommandId.Redo); } } ////// SelectAllCommand /// public static RoutedUICommand Find { get { return _EnsureCommand(CommandId.Find); } } ////// ReplaceCommand /// public static RoutedUICommand Replace { get { return _EnsureCommand(CommandId.Replace); } } ////// SelectAllCommand /// public static RoutedUICommand SelectAll { get { return _EnsureCommand(CommandId.SelectAll); } } ////// HelpCommand /// public static RoutedUICommand Help { get { return _EnsureCommand(CommandId.Help); } } ////// NewCommand /// public static RoutedUICommand New { get { return _EnsureCommand(CommandId.New); } } ////// OpenCommand /// public static RoutedUICommand Open { get { return _EnsureCommand(CommandId.Open); } } ////// CloseCommand /// public static RoutedUICommand Close { get { return _EnsureCommand(CommandId.Close); } } ////// SaveCommand /// public static RoutedUICommand Save { get { return _EnsureCommand(CommandId.Save); } } ////// SaveAsCommand /// public static RoutedUICommand SaveAs { get { return _EnsureCommand(CommandId.SaveAs); } } ////// PrintCommand /// public static RoutedUICommand Print { get { return _EnsureCommand(CommandId.Print); } } ////// CancelPrintCommand /// public static RoutedUICommand CancelPrint { get { return _EnsureCommand(CommandId.CancelPrint); } } ////// PrintPreviewCommand /// public static RoutedUICommand PrintPreview { get { return _EnsureCommand(CommandId.PrintPreview); } } ////// PropertiesCommand /// public static RoutedUICommand Properties { get { return _EnsureCommand(CommandId.Properties); } } ////// ContextMenuCommand /// public static RoutedUICommand ContextMenu { get { return _EnsureCommand(CommandId.ContextMenu); } } ////// StopCommand /// public static RoutedUICommand Stop { get { return _EnsureCommand(CommandId.Stop); } } ////// CorrectionListCommand /// public static RoutedUICommand CorrectionList { get { return _EnsureCommand(CommandId.CorrectionList); } } ////// NotACommand command. /// ////// This "command" is always ignored, without handling the input event /// that caused it. This provides a way to turn off an input binding /// built into an existing control. /// public static RoutedUICommand NotACommand { get { return _EnsureCommand(CommandId.NotACommand); } } #endregion Public Methods //------------------------------------------------------ // // Private Methods // //----------------------------------------------------- #region Private Methods ////// Critical - determines the permission to be applied for a command /// TreatAsSafe - callers don't need to worry, but we need to review /// any changes to this. /// [SecurityCritical, SecurityTreatAsSafe] private static PermissionSet GetRequiredPermissions(CommandId commandId) { PermissionSet permissions; switch (commandId) { case CommandId.Paste: permissions = new PermissionSet(PermissionState.None); permissions.AddPermission(new UIPermission(UIPermissionClipboard.AllClipboard)); break; default: permissions = null; break; } return permissions; } private static string GetPropertyName(CommandId commandId) { string propertyName = String.Empty; switch (commandId) { case CommandId.Cut: propertyName = "Cut"; break; case CommandId.Copy: propertyName = "Copy"; break; case CommandId.Paste: propertyName = "Paste"; break; case CommandId.Undo: propertyName = "Undo"; break; case CommandId.Redo: propertyName = "Redo"; break; case CommandId.Delete: propertyName = "Delete"; break; case CommandId.Find: propertyName = "Find"; break; case CommandId.Replace: propertyName = "Replace"; break; case CommandId.Help: propertyName = "Help"; break; case CommandId.New: propertyName = "New"; break; case CommandId.Open: propertyName = "Open"; break; case CommandId.Save: propertyName = "Save"; break; case CommandId.SaveAs: propertyName = "SaveAs"; break; case CommandId.Close: propertyName = "Close"; break; case CommandId.Print: propertyName = "Print"; break; case CommandId.CancelPrint: propertyName = "CancelPrint"; break; case CommandId.PrintPreview: propertyName = "PrintPreview"; break; case CommandId.Properties: propertyName = "Properties"; break; case CommandId.ContextMenu: propertyName = "ContextMenu"; break; case CommandId.CorrectionList: propertyName = "CorrectionList"; break; case CommandId.SelectAll: propertyName = "SelectAll"; break; case CommandId.Stop: propertyName = "Stop"; break; case CommandId.NotACommand: propertyName = "NotACommand"; break; } return propertyName; } internal static string GetUIText(byte commandId) { string uiText = String.Empty; switch ((CommandId)commandId) { case CommandId.Cut: uiText = SR.Get(SRID.CutText); break; case CommandId.Copy: uiText = SR.Get(SRID.CopyText);break; case CommandId.Paste: uiText = SR.Get(SRID.PasteText);break; case CommandId.Undo: uiText = SR.Get(SRID.UndoText);break; case CommandId.Redo: uiText = SR.Get(SRID.RedoText); break; case CommandId.Delete: uiText = SR.Get(SRID.DeleteText); break; case CommandId.Find: uiText = SR.Get(SRID.FindText); break; case CommandId.Replace: uiText = SR.Get(SRID.ReplaceText); break; case CommandId.SelectAll: uiText = SR.Get(SRID.SelectAllText); break; case CommandId.Help: uiText = SR.Get(SRID.HelpText); break; case CommandId.New: uiText = SR.Get(SRID.NewText); break; case CommandId.Open: uiText = SR.Get(SRID.OpenText); break; case CommandId.Save: uiText = SR.Get(SRID.SaveText); break; case CommandId.SaveAs: uiText = SR.Get(SRID.SaveAsText); break; case CommandId.Print: uiText = SR.Get(SRID.PrintText); break; case CommandId.CancelPrint: uiText = SR.Get(SRID.CancelPrintText); break; case CommandId.PrintPreview: uiText = SR.Get(SRID.PrintPreviewText); break; case CommandId.Close: uiText = SR.Get(SRID.CloseText); break; case CommandId.ContextMenu: uiText = SR.Get(SRID.ContextMenuText); break; case CommandId.CorrectionList: uiText = SR.Get(SRID.CorrectionListText); break; case CommandId.Properties: uiText = SR.Get(SRID.PropertiesText); break; case CommandId.Stop: uiText = SR.Get(SRID.StopText); break; case CommandId.NotACommand: uiText = SR.Get(SRID.NotACommandText); break; } return uiText; } internal static InputGestureCollection LoadDefaultGestureFromResource(byte commandId) { InputGestureCollection gestures = new InputGestureCollection(); //Standard Commands switch ((CommandId)commandId) { case CommandId.Cut: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.CutKey), SR.Get(SRID.CutKeyDisplayString), gestures); break; case CommandId.Copy: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.CopyKey), SR.Get(SRID.CopyKeyDisplayString), gestures); break; case CommandId.Paste: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.PasteKey), SR.Get(SRID.PasteKeyDisplayString), gestures); break; case CommandId.Undo: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.UndoKey), SR.Get(SRID.UndoKeyDisplayString), gestures); break; case CommandId.Redo: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.RedoKey), SR.Get(SRID.RedoKeyDisplayString), gestures); break; case CommandId.Delete: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.DeleteKey), SR.Get(SRID.DeleteKeyDisplayString), gestures); break; case CommandId.Find: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.FindKey), SR.Get(SRID.FindKeyDisplayString), gestures); break; case CommandId.Replace: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.ReplaceKey), SR.Get(SRID.ReplaceKeyDisplayString), gestures); break; case CommandId.SelectAll: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.SelectAllKey), SR.Get(SRID.SelectAllKeyDisplayString), gestures); break; case CommandId.Help: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.HelpKey), SR.Get(SRID.HelpKeyDisplayString), gestures); break; case CommandId.New: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.NewKey), SR.Get(SRID.NewKeyDisplayString), gestures); break; case CommandId.Open: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.OpenKey), SR.Get(SRID.OpenKeyDisplayString), gestures); break; case CommandId.Save: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.SaveKey), SR.Get(SRID.SaveKeyDisplayString), gestures); break; case CommandId.SaveAs: break; // there are no default bindings for CommandId.SaveAs case CommandId.Print: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.PrintKey), SR.Get(SRID.PrintKeyDisplayString), gestures); break; case CommandId.CancelPrint: break; // there are no default bindings for CommandId.CancelPrint case CommandId.PrintPreview: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.PrintPreviewKey), SR.Get(SRID.PrintPreviewKeyDisplayString), gestures); break; case CommandId.Close: break; // there are no default bindings for CommandId.Close case CommandId.ContextMenu: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.ContextMenuKey), SR.Get(SRID.ContextMenuKeyDisplayString), gestures); break; case CommandId.CorrectionList: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.CorrectionListKey), SR.Get(SRID.CorrectionListKeyDisplayString), gestures); break; case CommandId.Properties: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.PropertiesKey), SR.Get(SRID.PropertiesKeyDisplayString), gestures); break; case CommandId.Stop: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.StopKey), SR.Get(SRID.StopKeyDisplayString), gestures); break; case CommandId.NotACommand: break; // there are no default bindings for CommandId.NotACommand } return gestures; } private static RoutedUICommand _EnsureCommand(CommandId idCommand) { if (idCommand >= 0 && idCommand < CommandId.Last) { lock (_internalCommands.SyncRoot) { if (_internalCommands[(int)idCommand] == null) { RoutedUICommand newCommand = CommandLibraryHelper.CreateUICommand( GetPropertyName(idCommand), typeof(ApplicationCommands), (byte)idCommand, GetRequiredPermissions(idCommand)); _internalCommands[(int)idCommand] = newCommand; } } return _internalCommands[(int)idCommand]; } return null; } #endregion Private Methods //------------------------------------------------------ // // Private Fields // //------------------------------------------------------ #region Private Fields // these constants will go away in future, its just to index into the right one. private enum CommandId : byte { Cut=0, Copy=1, Paste=2, Undo=3, Redo=4, Delete=5, Find=6, Replace=7, Help=8, SelectAll=9, New=10, Open=11, Save=12, SaveAs=13, Print = 14, CancelPrint = 15, PrintPreview = 16, Close = 17, Properties=18, ContextMenu=19, CorrectionList=20, Stop=21, NotACommand=22, // Last Last=23 } private static RoutedUICommand[] _internalCommands = new RoutedUICommand[(int)CommandId.Last]; #endregion Private Fields } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. // Copyright (c) Microsoft Corporation. All rights reserved. //---------------------------------------------------------------------------- // //// Copyright (C) Microsoft Corporation. All rights reserved. // // // // Description: The ApplicationCommands class defines a standard set of commands that are required in most applications. // The goal of these commands is to unify input, programming model and UI for the most common actions in // Windows applications thus providing a standard interface for such common commands. // // See spec at : http://avalon/CoreUI/Specs%20%20Eventing%20and%20Commanding/CommandLibrarySpec.mht // // // History: // 03/31/2004 : chandras - Created // 04/28/2004 : Added Accelerator table loading from Resource // 02/02/2005 : Created ApplicationCommands class from CommandLibrary class. // //--------------------------------------------------------------------------- using System; using System.Windows; using System.Windows.Input; using System.Collections; using System.ComponentModel; using System.Security; using System.Security.Permissions; using SR=MS.Internal.PresentationCore.SR; using SRID=MS.Internal.PresentationCore.SRID; using MS.Internal; // CommandHelper namespace System.Windows.Input { ////// ApplicationCommands - Set of Standard Commands /// public static class ApplicationCommands { //----------------------------------------------------- // // Public Methods // //----------------------------------------------------- #region Public Methods ////// CutCommand - action to cut selection /// public static RoutedUICommand Cut { get { return _EnsureCommand(CommandId.Cut); } } ////// CopyCommand /// public static RoutedUICommand Copy { get { return _EnsureCommand(CommandId.Copy); } } ////// PasteCommand /// public static RoutedUICommand Paste { get { return _EnsureCommand(CommandId.Paste); } } ////// DeleteCommand /// public static RoutedUICommand Delete { get { return _EnsureCommand(CommandId.Delete); } } ////// UndoCommand /// public static RoutedUICommand Undo { get { return _EnsureCommand(CommandId.Undo); } } ////// RedoCommand /// public static RoutedUICommand Redo { get { return _EnsureCommand(CommandId.Redo); } } ////// SelectAllCommand /// public static RoutedUICommand Find { get { return _EnsureCommand(CommandId.Find); } } ////// ReplaceCommand /// public static RoutedUICommand Replace { get { return _EnsureCommand(CommandId.Replace); } } ////// SelectAllCommand /// public static RoutedUICommand SelectAll { get { return _EnsureCommand(CommandId.SelectAll); } } ////// HelpCommand /// public static RoutedUICommand Help { get { return _EnsureCommand(CommandId.Help); } } ////// NewCommand /// public static RoutedUICommand New { get { return _EnsureCommand(CommandId.New); } } ////// OpenCommand /// public static RoutedUICommand Open { get { return _EnsureCommand(CommandId.Open); } } ////// CloseCommand /// public static RoutedUICommand Close { get { return _EnsureCommand(CommandId.Close); } } ////// SaveCommand /// public static RoutedUICommand Save { get { return _EnsureCommand(CommandId.Save); } } ////// SaveAsCommand /// public static RoutedUICommand SaveAs { get { return _EnsureCommand(CommandId.SaveAs); } } ////// PrintCommand /// public static RoutedUICommand Print { get { return _EnsureCommand(CommandId.Print); } } ////// CancelPrintCommand /// public static RoutedUICommand CancelPrint { get { return _EnsureCommand(CommandId.CancelPrint); } } ////// PrintPreviewCommand /// public static RoutedUICommand PrintPreview { get { return _EnsureCommand(CommandId.PrintPreview); } } ////// PropertiesCommand /// public static RoutedUICommand Properties { get { return _EnsureCommand(CommandId.Properties); } } ////// ContextMenuCommand /// public static RoutedUICommand ContextMenu { get { return _EnsureCommand(CommandId.ContextMenu); } } ////// StopCommand /// public static RoutedUICommand Stop { get { return _EnsureCommand(CommandId.Stop); } } ////// CorrectionListCommand /// public static RoutedUICommand CorrectionList { get { return _EnsureCommand(CommandId.CorrectionList); } } ////// NotACommand command. /// ////// This "command" is always ignored, without handling the input event /// that caused it. This provides a way to turn off an input binding /// built into an existing control. /// public static RoutedUICommand NotACommand { get { return _EnsureCommand(CommandId.NotACommand); } } #endregion Public Methods //------------------------------------------------------ // // Private Methods // //----------------------------------------------------- #region Private Methods ////// Critical - determines the permission to be applied for a command /// TreatAsSafe - callers don't need to worry, but we need to review /// any changes to this. /// [SecurityCritical, SecurityTreatAsSafe] private static PermissionSet GetRequiredPermissions(CommandId commandId) { PermissionSet permissions; switch (commandId) { case CommandId.Paste: permissions = new PermissionSet(PermissionState.None); permissions.AddPermission(new UIPermission(UIPermissionClipboard.AllClipboard)); break; default: permissions = null; break; } return permissions; } private static string GetPropertyName(CommandId commandId) { string propertyName = String.Empty; switch (commandId) { case CommandId.Cut: propertyName = "Cut"; break; case CommandId.Copy: propertyName = "Copy"; break; case CommandId.Paste: propertyName = "Paste"; break; case CommandId.Undo: propertyName = "Undo"; break; case CommandId.Redo: propertyName = "Redo"; break; case CommandId.Delete: propertyName = "Delete"; break; case CommandId.Find: propertyName = "Find"; break; case CommandId.Replace: propertyName = "Replace"; break; case CommandId.Help: propertyName = "Help"; break; case CommandId.New: propertyName = "New"; break; case CommandId.Open: propertyName = "Open"; break; case CommandId.Save: propertyName = "Save"; break; case CommandId.SaveAs: propertyName = "SaveAs"; break; case CommandId.Close: propertyName = "Close"; break; case CommandId.Print: propertyName = "Print"; break; case CommandId.CancelPrint: propertyName = "CancelPrint"; break; case CommandId.PrintPreview: propertyName = "PrintPreview"; break; case CommandId.Properties: propertyName = "Properties"; break; case CommandId.ContextMenu: propertyName = "ContextMenu"; break; case CommandId.CorrectionList: propertyName = "CorrectionList"; break; case CommandId.SelectAll: propertyName = "SelectAll"; break; case CommandId.Stop: propertyName = "Stop"; break; case CommandId.NotACommand: propertyName = "NotACommand"; break; } return propertyName; } internal static string GetUIText(byte commandId) { string uiText = String.Empty; switch ((CommandId)commandId) { case CommandId.Cut: uiText = SR.Get(SRID.CutText); break; case CommandId.Copy: uiText = SR.Get(SRID.CopyText);break; case CommandId.Paste: uiText = SR.Get(SRID.PasteText);break; case CommandId.Undo: uiText = SR.Get(SRID.UndoText);break; case CommandId.Redo: uiText = SR.Get(SRID.RedoText); break; case CommandId.Delete: uiText = SR.Get(SRID.DeleteText); break; case CommandId.Find: uiText = SR.Get(SRID.FindText); break; case CommandId.Replace: uiText = SR.Get(SRID.ReplaceText); break; case CommandId.SelectAll: uiText = SR.Get(SRID.SelectAllText); break; case CommandId.Help: uiText = SR.Get(SRID.HelpText); break; case CommandId.New: uiText = SR.Get(SRID.NewText); break; case CommandId.Open: uiText = SR.Get(SRID.OpenText); break; case CommandId.Save: uiText = SR.Get(SRID.SaveText); break; case CommandId.SaveAs: uiText = SR.Get(SRID.SaveAsText); break; case CommandId.Print: uiText = SR.Get(SRID.PrintText); break; case CommandId.CancelPrint: uiText = SR.Get(SRID.CancelPrintText); break; case CommandId.PrintPreview: uiText = SR.Get(SRID.PrintPreviewText); break; case CommandId.Close: uiText = SR.Get(SRID.CloseText); break; case CommandId.ContextMenu: uiText = SR.Get(SRID.ContextMenuText); break; case CommandId.CorrectionList: uiText = SR.Get(SRID.CorrectionListText); break; case CommandId.Properties: uiText = SR.Get(SRID.PropertiesText); break; case CommandId.Stop: uiText = SR.Get(SRID.StopText); break; case CommandId.NotACommand: uiText = SR.Get(SRID.NotACommandText); break; } return uiText; } internal static InputGestureCollection LoadDefaultGestureFromResource(byte commandId) { InputGestureCollection gestures = new InputGestureCollection(); //Standard Commands switch ((CommandId)commandId) { case CommandId.Cut: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.CutKey), SR.Get(SRID.CutKeyDisplayString), gestures); break; case CommandId.Copy: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.CopyKey), SR.Get(SRID.CopyKeyDisplayString), gestures); break; case CommandId.Paste: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.PasteKey), SR.Get(SRID.PasteKeyDisplayString), gestures); break; case CommandId.Undo: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.UndoKey), SR.Get(SRID.UndoKeyDisplayString), gestures); break; case CommandId.Redo: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.RedoKey), SR.Get(SRID.RedoKeyDisplayString), gestures); break; case CommandId.Delete: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.DeleteKey), SR.Get(SRID.DeleteKeyDisplayString), gestures); break; case CommandId.Find: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.FindKey), SR.Get(SRID.FindKeyDisplayString), gestures); break; case CommandId.Replace: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.ReplaceKey), SR.Get(SRID.ReplaceKeyDisplayString), gestures); break; case CommandId.SelectAll: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.SelectAllKey), SR.Get(SRID.SelectAllKeyDisplayString), gestures); break; case CommandId.Help: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.HelpKey), SR.Get(SRID.HelpKeyDisplayString), gestures); break; case CommandId.New: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.NewKey), SR.Get(SRID.NewKeyDisplayString), gestures); break; case CommandId.Open: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.OpenKey), SR.Get(SRID.OpenKeyDisplayString), gestures); break; case CommandId.Save: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.SaveKey), SR.Get(SRID.SaveKeyDisplayString), gestures); break; case CommandId.SaveAs: break; // there are no default bindings for CommandId.SaveAs case CommandId.Print: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.PrintKey), SR.Get(SRID.PrintKeyDisplayString), gestures); break; case CommandId.CancelPrint: break; // there are no default bindings for CommandId.CancelPrint case CommandId.PrintPreview: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.PrintPreviewKey), SR.Get(SRID.PrintPreviewKeyDisplayString), gestures); break; case CommandId.Close: break; // there are no default bindings for CommandId.Close case CommandId.ContextMenu: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.ContextMenuKey), SR.Get(SRID.ContextMenuKeyDisplayString), gestures); break; case CommandId.CorrectionList: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.CorrectionListKey), SR.Get(SRID.CorrectionListKeyDisplayString), gestures); break; case CommandId.Properties: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.PropertiesKey), SR.Get(SRID.PropertiesKeyDisplayString), gestures); break; case CommandId.Stop: KeyGesture.AddGesturesFromResourceStrings( SR.Get(SRID.StopKey), SR.Get(SRID.StopKeyDisplayString), gestures); break; case CommandId.NotACommand: break; // there are no default bindings for CommandId.NotACommand } return gestures; } private static RoutedUICommand _EnsureCommand(CommandId idCommand) { if (idCommand >= 0 && idCommand < CommandId.Last) { lock (_internalCommands.SyncRoot) { if (_internalCommands[(int)idCommand] == null) { RoutedUICommand newCommand = CommandLibraryHelper.CreateUICommand( GetPropertyName(idCommand), typeof(ApplicationCommands), (byte)idCommand, GetRequiredPermissions(idCommand)); _internalCommands[(int)idCommand] = newCommand; } } return _internalCommands[(int)idCommand]; } return null; } #endregion Private Methods //------------------------------------------------------ // // Private Fields // //------------------------------------------------------ #region Private Fields // these constants will go away in future, its just to index into the right one. private enum CommandId : byte { Cut=0, Copy=1, Paste=2, Undo=3, Redo=4, Delete=5, Find=6, Replace=7, Help=8, SelectAll=9, New=10, Open=11, Save=12, SaveAs=13, Print = 14, CancelPrint = 15, PrintPreview = 16, Close = 17, Properties=18, ContextMenu=19, CorrectionList=20, Stop=21, NotACommand=22, // Last Last=23 } private static RoutedUICommand[] _internalCommands = new RoutedUICommand[(int)CommandId.Last]; #endregion Private Fields } } // 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
- RightsManagementInformation.cs
- DataFormats.cs
- CfgParser.cs
- KerberosRequestorSecurityToken.cs
- ThreadExceptionEvent.cs
- SupportsEventValidationAttribute.cs
- _ServiceNameStore.cs
- Font.cs
- RefExpr.cs
- ElementUtil.cs
- TemplateInstanceAttribute.cs
- QilTernary.cs
- MessageBodyDescription.cs
- SamlAssertion.cs
- GroupBox.cs
- TypeUsageBuilder.cs
- PenLineJoinValidation.cs
- UnsafeNativeMethods.cs
- Rotation3DAnimationBase.cs
- GenericTypeParameterBuilder.cs
- CommonGetThemePartSize.cs
- ServiceReflector.cs
- ProtocolElementCollection.cs
- ManagementPath.cs
- HttpContext.cs
- SpeakProgressEventArgs.cs
- UserControlBuildProvider.cs
- CodeSnippetStatement.cs
- BitmapEncoder.cs
- sapiproxy.cs
- ExpressionPrefixAttribute.cs
- FollowerQueueCreator.cs
- QueryPageSettingsEventArgs.cs
- DataColumnMappingCollection.cs
- WorkflowPersistenceContext.cs
- ConnectionStringSettings.cs
- HttpCookiesSection.cs
- WindowProviderWrapper.cs
- ReflectPropertyDescriptor.cs
- SpellCheck.cs
- SystemBrushes.cs
- ArcSegment.cs
- TraceListeners.cs
- Condition.cs
- HttpHandlerActionCollection.cs
- TypedReference.cs
- ArithmeticLiteral.cs
- EndEvent.cs
- WebScriptServiceHost.cs
- WebPartConnection.cs
- MexHttpsBindingElement.cs
- Operator.cs
- Rect.cs
- PartitionedDataSource.cs
- UnsafeNativeMethods.cs
- RuleRef.cs
- TemplateEditingVerb.cs
- TableCellCollection.cs
- XPathNodeList.cs
- EditorBrowsableAttribute.cs
- SmtpTransport.cs
- HybridObjectCache.cs
- UIElement.cs
- NetworkInterface.cs
- WebPartVerbCollection.cs
- ColorMap.cs
- CustomAttributeBuilder.cs
- RequestQueue.cs
- _Connection.cs
- EdmItemError.cs
- FixedSOMTable.cs
- Switch.cs
- MdiWindowListItemConverter.cs
- ValueOfAction.cs
- MSHTMLHost.cs
- Executor.cs
- CodeAttributeArgument.cs
- _LocalDataStoreMgr.cs
- ParentUndoUnit.cs
- FindSimilarActivitiesVerb.cs
- arabicshape.cs
- HTMLTagNameToTypeMapper.cs
- ImageInfo.cs
- TextEffect.cs
- ContentFilePart.cs
- RegexCharClass.cs
- HtmlTitle.cs
- ManagementOperationWatcher.cs
- MessageRpc.cs
- DBBindings.cs
- FixedPageStructure.cs
- LongValidatorAttribute.cs
- TextElementEditingBehaviorAttribute.cs
- DataGridViewTopRowAccessibleObject.cs
- JobPageOrder.cs
- MatrixTransform.cs
- SqlNodeAnnotations.cs
- OrthographicCamera.cs
- SafePEFileHandle.cs
- ConfigurationPropertyAttribute.cs