Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / Orcas / SP / wpf / src / Core / CSharp / System / Windows / Input / Command / MediaCommands.cs / 2 / MediaCommands.cs
//----------------------------------------------------------------------------
//
//
// Copyright (C) Microsoft Corporation. All rights reserved.
//
//
//
// Description: The MediaCommands class defines a standard set of commands that act on Media.
//
// 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 MediaCommands class from CommandLibrary class.
//
//---------------------------------------------------------------------------
using System;
using System.Windows;
using System.Windows.Input;
using System.Collections;
using System.ComponentModel;
using SR=MS.Internal.PresentationCore.SR;
using SRID=MS.Internal.PresentationCore.SRID;
namespace System.Windows.Input
{
///
/// MediaCommands - Set of Standard Commands
///
public static class MediaCommands
{
//-----------------------------------------------------
//
// Public Methods
//
//-----------------------------------------------------
#region Public Methods
///
/// Play Command
///
public static RoutedUICommand Play
{
get { return _EnsureCommand(CommandId.Play); }
}
///
/// Pause Command
///
public static RoutedUICommand Pause
{
get { return _EnsureCommand(CommandId.Pause); }
}
///
/// Stop Command
///
public static RoutedUICommand Stop
{
get { return _EnsureCommand(CommandId.Stop); }
}
///
/// Record Command
///
public static RoutedUICommand Record
{
get { return _EnsureCommand(CommandId.Record); }
}
///
/// NextTrack Command
///
public static RoutedUICommand NextTrack
{
get { return _EnsureCommand(CommandId.NextTrack); }
}
///
/// PreviousTrack Command
///
public static RoutedUICommand PreviousTrack
{
get { return _EnsureCommand(CommandId.PreviousTrack); }
}
///
/// FastForward Command
///
public static RoutedUICommand FastForward
{
get { return _EnsureCommand(CommandId.FastForward); }
}
///
/// Rewind Command
///
public static RoutedUICommand Rewind
{
get { return _EnsureCommand(CommandId.Rewind); }
}
///
/// ChannelUp Command
///
public static RoutedUICommand ChannelUp
{
get { return _EnsureCommand(CommandId.ChannelUp); }
}
///
/// ChannelDown Command
///
public static RoutedUICommand ChannelDown
{
get { return _EnsureCommand(CommandId.ChannelDown); }
}
///
/// TogglePlayPause Command
///
public static RoutedUICommand TogglePlayPause
{
get {return _EnsureCommand(CommandId.TogglePlayPause);}
}
///
/// Select Command
///
public static RoutedUICommand Select
{
get {return _EnsureCommand(CommandId.Select);}
}
///
/// IncreaseVolume Command
///
public static RoutedUICommand IncreaseVolume
{
get { return _EnsureCommand(CommandId.IncreaseVolume); }
}
///
/// DecreaseVolume Command
///
public static RoutedUICommand DecreaseVolume
{
get { return _EnsureCommand(CommandId.DecreaseVolume); }
}
///
/// MuteVolume Command
///
public static RoutedUICommand MuteVolume
{
get { return _EnsureCommand(CommandId.MuteVolume); }
}
///
/// IncreaseTreble Command
///
public static RoutedUICommand IncreaseTreble
{
get { return _EnsureCommand(CommandId.IncreaseTreble); }
}
///
/// DecreaseTreble Command
///
public static RoutedUICommand DecreaseTreble
{
get { return _EnsureCommand(CommandId.DecreaseTreble); }
}
///
/// IncreaseBass Command
///
public static RoutedUICommand IncreaseBass
{
get { return _EnsureCommand(CommandId.IncreaseBass); }
}
///
/// DecreaseBass Command
///
public static RoutedUICommand DecreaseBass
{
get { return _EnsureCommand(CommandId.DecreaseBass); }
}
///
/// BoostBass Command
///
public static RoutedUICommand BoostBass
{
get { return _EnsureCommand(CommandId.BoostBass); }
}
///
/// IncreaseMicrophoneVolume Command
///
public static RoutedUICommand IncreaseMicrophoneVolume
{
get { return _EnsureCommand(CommandId.IncreaseMicrophoneVolume); }
}
///
/// DecreaseMicrophoneVolume Command
///
public static RoutedUICommand DecreaseMicrophoneVolume
{
get { return _EnsureCommand(CommandId.DecreaseMicrophoneVolume); }
}
///
/// MuteMicrophoneVolume Command
///
public static RoutedUICommand MuteMicrophoneVolume
{
get { return _EnsureCommand(CommandId.MuteMicrophoneVolume); }
}
///
/// ToggleMicrophoneOnOff Command
///
public static RoutedUICommand ToggleMicrophoneOnOff
{
get { return _EnsureCommand(CommandId.ToggleMicrophoneOnOff); }
}
#endregion Public Methods
//------------------------------------------------------
//
// Private Methods
//
//-----------------------------------------------------
#region Private Methods
private static string GetPropertyName(CommandId commandId)
{
string propertyName = String.Empty;
switch (commandId)
{
case CommandId.Play : propertyName = "Play"; break;
case CommandId.Pause: propertyName = "Pause"; break;
case CommandId.Stop : propertyName = "Stop"; break;
case CommandId.Record: propertyName = "Record"; break;
case CommandId.NextTrack: propertyName = "NextTrack"; break;
case CommandId.PreviousTrack: propertyName = "PreviousTrack"; break;
case CommandId.FastForward: propertyName = "FastForward"; break;
case CommandId.Rewind: propertyName = "Rewind"; break;
case CommandId.ChannelUp: propertyName = "ChannelUp"; break;
case CommandId.ChannelDown: propertyName = "ChannelDown"; break;
case CommandId.TogglePlayPause: propertyName = "TogglePlayPause"; break;
case CommandId.IncreaseVolume: propertyName = "IncreaseVolume"; break;
case CommandId.DecreaseVolume: propertyName = "DecreaseVolume"; break;
case CommandId.MuteVolume: propertyName = "MuteVolume"; break;
case CommandId.IncreaseTreble: propertyName = "IncreaseTreble"; break;
case CommandId.DecreaseTreble: propertyName = "DecreaseTreble"; break;
case CommandId.IncreaseBass: propertyName = "IncreaseBass"; break;
case CommandId.DecreaseBass: propertyName = "DecreaseBass"; break;
case CommandId.BoostBass: propertyName = "BoostBass"; break;
case CommandId.IncreaseMicrophoneVolume: propertyName = "IncreaseMicrophoneVolume"; break;
case CommandId.DecreaseMicrophoneVolume: propertyName = "DecreaseMicrophoneVolume"; break;
case CommandId.MuteMicrophoneVolume: propertyName = "MuteMicrophoneVolume"; break;
case CommandId.ToggleMicrophoneOnOff: propertyName = "ToggleMicrophoneOnOff"; break;
case CommandId.Select:propertyName = "Select";break;
}
return propertyName;
}
internal static string GetUIText(byte commandId)
{
string uiText = String.Empty;
switch ((CommandId)commandId)
{
case CommandId.Play: uiText = SR.Get(SRID.MediaPlayText); break;
case CommandId.Pause: uiText = SR.Get(SRID.MediaPauseText); break;
case CommandId.Stop: uiText = SR.Get(SRID.MediaStopText); break;
case CommandId.Record: uiText = SR.Get(SRID.MediaRecordText); break;
case CommandId.NextTrack: uiText = SR.Get(SRID.MediaNextTrackText); break;
case CommandId.PreviousTrack: uiText = SR.Get(SRID.MediaPreviousTrackText); break;
case CommandId.FastForward: uiText = SR.Get(SRID.MediaFastForwardText); break;
case CommandId.Rewind: uiText = SR.Get(SRID.MediaRewindText); break;
case CommandId.ChannelUp: uiText = SR.Get(SRID.MediaChannelUpText); break;
case CommandId.ChannelDown: uiText = SR.Get(SRID.MediaChannelDownText); break;
case CommandId.TogglePlayPause: uiText = SR.Get(SRID.MediaTogglePlayPauseText); break;
case CommandId.IncreaseVolume: uiText = SR.Get(SRID.MediaIncreaseVolumeText); break;
case CommandId.DecreaseVolume: uiText = SR.Get(SRID.MediaDecreaseVolumeText); break;
case CommandId.MuteVolume: uiText = SR.Get(SRID.MediaMuteVolumeText); break;
case CommandId.IncreaseTreble: uiText = SR.Get(SRID.MediaIncreaseTrebleText); break;
case CommandId.DecreaseTreble: uiText = SR.Get(SRID.MediaDecreaseTrebleText); break;
case CommandId.IncreaseBass: uiText = SR.Get(SRID.MediaIncreaseBassText); break;
case CommandId.DecreaseBass: uiText = SR.Get(SRID.MediaDecreaseBassText); break;
case CommandId.BoostBass: uiText = SR.Get(SRID.MediaBoostBassText); break;
case CommandId.IncreaseMicrophoneVolume: uiText = SR.Get(SRID.MediaIncreaseMicrophoneVolumeText); break;
case CommandId.DecreaseMicrophoneVolume: uiText = SR.Get(SRID.MediaDecreaseMicrophoneVolumeText); break;
case CommandId.MuteMicrophoneVolume: uiText = SR.Get(SRID.MediaMuteMicrophoneVolumeText); break;
case CommandId.ToggleMicrophoneOnOff: uiText = SR.Get(SRID.MediaToggleMicrophoneOnOffText); break;
case CommandId.Select:uiText = SR.Get(SRID.MediaSelectText);break;
}
return uiText;
}
internal static InputGestureCollection LoadDefaultGestureFromResource(byte commandId)
{
InputGestureCollection gestures = new InputGestureCollection();
//Standard Commands
switch ((CommandId)commandId)
{
case CommandId.Play:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaPlayKey),
SR.Get(SRID.MediaPlayKeyDisplayString),
gestures);
break;
case CommandId.Pause:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaPauseKey),
SR.Get(SRID.MediaPauseKeyDisplayString),
gestures);
break;
case CommandId.Stop:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaStopKey),
SR.Get(SRID.MediaStopKeyDisplayString),
gestures);
break;
case CommandId.Record:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaRecordKey),
SR.Get(SRID.MediaRecordKeyDisplayString),
gestures);
break;
case CommandId.NextTrack:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaNextTrackKey),
SR.Get(SRID.MediaNextTrackKeyDisplayString),
gestures);
break;
case CommandId.PreviousTrack:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaPreviousTrackKey),
SR.Get(SRID.MediaPreviousTrackKeyDisplayString),
gestures);
break;
case CommandId.FastForward:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaFastForwardKey),
SR.Get(SRID.MediaFastForwardKeyDisplayString),
gestures);
break;
case CommandId.Rewind:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaRewindKey),
SR.Get(SRID.MediaRewindKeyDisplayString),
gestures);
break;
case CommandId.ChannelUp:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaChannelUpKey),
SR.Get(SRID.MediaChannelUpKeyDisplayString),
gestures);
break;
case CommandId.ChannelDown:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaChannelDownKey),
SR.Get(SRID.MediaChannelDownKeyDisplayString),
gestures);
break;
case CommandId.TogglePlayPause:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaTogglePlayPauseKey),
SR.Get(SRID.MediaTogglePlayPauseKeyDisplayString),
gestures);
break;
case CommandId.IncreaseVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaIncreaseVolumeKey),
SR.Get(SRID.MediaIncreaseVolumeKeyDisplayString),
gestures);
break;
case CommandId.DecreaseVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaDecreaseVolumeKey),
SR.Get(SRID.MediaDecreaseVolumeKeyDisplayString),
gestures);
break;
case CommandId.MuteVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaMuteVolumeKey),
SR.Get(SRID.MediaMuteVolumeKeyDisplayString),
gestures);
break;
case CommandId.IncreaseTreble:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaIncreaseTrebleKey),
SR.Get(SRID.MediaIncreaseTrebleKeyDisplayString),
gestures);
break;
case CommandId.DecreaseTreble:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaDecreaseTrebleKey),
SR.Get(SRID.MediaDecreaseTrebleKeyDisplayString),
gestures);
break;
case CommandId.IncreaseBass:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaIncreaseBassKey),
SR.Get(SRID.MediaIncreaseBassKeyDisplayString),
gestures);
break;
case CommandId.DecreaseBass:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaDecreaseBassKey),
SR.Get(SRID.MediaDecreaseBassKeyDisplayString),
gestures);
break;
case CommandId.BoostBass:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaBoostBassKey),
SR.Get(SRID.MediaBoostBassKeyDisplayString),
gestures);
break;
case CommandId.IncreaseMicrophoneVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaIncreaseMicrophoneVolumeKey),
SR.Get(SRID.MediaIncreaseMicrophoneVolumeKeyDisplayString),
gestures);
break;
case CommandId.DecreaseMicrophoneVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaDecreaseMicrophoneVolumeKey),
SR.Get(SRID.MediaDecreaseMicrophoneVolumeKeyDisplayString),
gestures);
break;
case CommandId.MuteMicrophoneVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaMuteMicrophoneVolumeKey),
SR.Get(SRID.MediaMuteMicrophoneVolumeKeyDisplayString),
gestures);
break;
case CommandId.ToggleMicrophoneOnOff:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaToggleMicrophoneOnOffKey),
SR.Get(SRID.MediaToggleMicrophoneOnOffKeyDisplayString),
gestures);
break;
case CommandId.Select:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaSelectKey),
SR.Get(SRID.MediaSelectKeyDisplayString),
gestures);
break;
}
return gestures;
}
private static RoutedUICommand _EnsureCommand(CommandId idCommand)
{
if (idCommand >= 0 && idCommand < CommandId.Last)
{
lock (_internalCommands.SyncRoot)
{
if (_internalCommands[(int)idCommand] == null)
{
RoutedUICommand newCommand = new RoutedUICommand(GetPropertyName(idCommand), typeof(MediaCommands), (byte)idCommand);
newCommand.AreInputGesturesDelayLoaded = true;
_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
{
// Formatting
Play = 1,
Pause = 2,
Stop = 3,
Record = 4,
NextTrack = 5,
PreviousTrack = 6,
FastForward = 7,
Rewind = 8,
ChannelUp = 9,
ChannelDown = 10,
TogglePlayPause = 11,
IncreaseVolume = 12,
DecreaseVolume = 13,
MuteVolume = 14,
IncreaseTreble = 15,
DecreaseTreble = 16,
IncreaseBass = 17,
DecreaseBass = 18,
BoostBass = 19,
IncreaseMicrophoneVolume = 20,
DecreaseMicrophoneVolume = 21,
MuteMicrophoneVolume = 22,
ToggleMicrophoneOnOff = 23,
Select = 24,
// Last
Last = 25
}
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 MediaCommands class defines a standard set of commands that act on Media.
//
// 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 MediaCommands class from CommandLibrary class.
//
//---------------------------------------------------------------------------
using System;
using System.Windows;
using System.Windows.Input;
using System.Collections;
using System.ComponentModel;
using SR=MS.Internal.PresentationCore.SR;
using SRID=MS.Internal.PresentationCore.SRID;
namespace System.Windows.Input
{
///
/// MediaCommands - Set of Standard Commands
///
public static class MediaCommands
{
//-----------------------------------------------------
//
// Public Methods
//
//-----------------------------------------------------
#region Public Methods
///
/// Play Command
///
public static RoutedUICommand Play
{
get { return _EnsureCommand(CommandId.Play); }
}
///
/// Pause Command
///
public static RoutedUICommand Pause
{
get { return _EnsureCommand(CommandId.Pause); }
}
///
/// Stop Command
///
public static RoutedUICommand Stop
{
get { return _EnsureCommand(CommandId.Stop); }
}
///
/// Record Command
///
public static RoutedUICommand Record
{
get { return _EnsureCommand(CommandId.Record); }
}
///
/// NextTrack Command
///
public static RoutedUICommand NextTrack
{
get { return _EnsureCommand(CommandId.NextTrack); }
}
///
/// PreviousTrack Command
///
public static RoutedUICommand PreviousTrack
{
get { return _EnsureCommand(CommandId.PreviousTrack); }
}
///
/// FastForward Command
///
public static RoutedUICommand FastForward
{
get { return _EnsureCommand(CommandId.FastForward); }
}
///
/// Rewind Command
///
public static RoutedUICommand Rewind
{
get { return _EnsureCommand(CommandId.Rewind); }
}
///
/// ChannelUp Command
///
public static RoutedUICommand ChannelUp
{
get { return _EnsureCommand(CommandId.ChannelUp); }
}
///
/// ChannelDown Command
///
public static RoutedUICommand ChannelDown
{
get { return _EnsureCommand(CommandId.ChannelDown); }
}
///
/// TogglePlayPause Command
///
public static RoutedUICommand TogglePlayPause
{
get {return _EnsureCommand(CommandId.TogglePlayPause);}
}
///
/// Select Command
///
public static RoutedUICommand Select
{
get {return _EnsureCommand(CommandId.Select);}
}
///
/// IncreaseVolume Command
///
public static RoutedUICommand IncreaseVolume
{
get { return _EnsureCommand(CommandId.IncreaseVolume); }
}
///
/// DecreaseVolume Command
///
public static RoutedUICommand DecreaseVolume
{
get { return _EnsureCommand(CommandId.DecreaseVolume); }
}
///
/// MuteVolume Command
///
public static RoutedUICommand MuteVolume
{
get { return _EnsureCommand(CommandId.MuteVolume); }
}
///
/// IncreaseTreble Command
///
public static RoutedUICommand IncreaseTreble
{
get { return _EnsureCommand(CommandId.IncreaseTreble); }
}
///
/// DecreaseTreble Command
///
public static RoutedUICommand DecreaseTreble
{
get { return _EnsureCommand(CommandId.DecreaseTreble); }
}
///
/// IncreaseBass Command
///
public static RoutedUICommand IncreaseBass
{
get { return _EnsureCommand(CommandId.IncreaseBass); }
}
///
/// DecreaseBass Command
///
public static RoutedUICommand DecreaseBass
{
get { return _EnsureCommand(CommandId.DecreaseBass); }
}
///
/// BoostBass Command
///
public static RoutedUICommand BoostBass
{
get { return _EnsureCommand(CommandId.BoostBass); }
}
///
/// IncreaseMicrophoneVolume Command
///
public static RoutedUICommand IncreaseMicrophoneVolume
{
get { return _EnsureCommand(CommandId.IncreaseMicrophoneVolume); }
}
///
/// DecreaseMicrophoneVolume Command
///
public static RoutedUICommand DecreaseMicrophoneVolume
{
get { return _EnsureCommand(CommandId.DecreaseMicrophoneVolume); }
}
///
/// MuteMicrophoneVolume Command
///
public static RoutedUICommand MuteMicrophoneVolume
{
get { return _EnsureCommand(CommandId.MuteMicrophoneVolume); }
}
///
/// ToggleMicrophoneOnOff Command
///
public static RoutedUICommand ToggleMicrophoneOnOff
{
get { return _EnsureCommand(CommandId.ToggleMicrophoneOnOff); }
}
#endregion Public Methods
//------------------------------------------------------
//
// Private Methods
//
//-----------------------------------------------------
#region Private Methods
private static string GetPropertyName(CommandId commandId)
{
string propertyName = String.Empty;
switch (commandId)
{
case CommandId.Play : propertyName = "Play"; break;
case CommandId.Pause: propertyName = "Pause"; break;
case CommandId.Stop : propertyName = "Stop"; break;
case CommandId.Record: propertyName = "Record"; break;
case CommandId.NextTrack: propertyName = "NextTrack"; break;
case CommandId.PreviousTrack: propertyName = "PreviousTrack"; break;
case CommandId.FastForward: propertyName = "FastForward"; break;
case CommandId.Rewind: propertyName = "Rewind"; break;
case CommandId.ChannelUp: propertyName = "ChannelUp"; break;
case CommandId.ChannelDown: propertyName = "ChannelDown"; break;
case CommandId.TogglePlayPause: propertyName = "TogglePlayPause"; break;
case CommandId.IncreaseVolume: propertyName = "IncreaseVolume"; break;
case CommandId.DecreaseVolume: propertyName = "DecreaseVolume"; break;
case CommandId.MuteVolume: propertyName = "MuteVolume"; break;
case CommandId.IncreaseTreble: propertyName = "IncreaseTreble"; break;
case CommandId.DecreaseTreble: propertyName = "DecreaseTreble"; break;
case CommandId.IncreaseBass: propertyName = "IncreaseBass"; break;
case CommandId.DecreaseBass: propertyName = "DecreaseBass"; break;
case CommandId.BoostBass: propertyName = "BoostBass"; break;
case CommandId.IncreaseMicrophoneVolume: propertyName = "IncreaseMicrophoneVolume"; break;
case CommandId.DecreaseMicrophoneVolume: propertyName = "DecreaseMicrophoneVolume"; break;
case CommandId.MuteMicrophoneVolume: propertyName = "MuteMicrophoneVolume"; break;
case CommandId.ToggleMicrophoneOnOff: propertyName = "ToggleMicrophoneOnOff"; break;
case CommandId.Select:propertyName = "Select";break;
}
return propertyName;
}
internal static string GetUIText(byte commandId)
{
string uiText = String.Empty;
switch ((CommandId)commandId)
{
case CommandId.Play: uiText = SR.Get(SRID.MediaPlayText); break;
case CommandId.Pause: uiText = SR.Get(SRID.MediaPauseText); break;
case CommandId.Stop: uiText = SR.Get(SRID.MediaStopText); break;
case CommandId.Record: uiText = SR.Get(SRID.MediaRecordText); break;
case CommandId.NextTrack: uiText = SR.Get(SRID.MediaNextTrackText); break;
case CommandId.PreviousTrack: uiText = SR.Get(SRID.MediaPreviousTrackText); break;
case CommandId.FastForward: uiText = SR.Get(SRID.MediaFastForwardText); break;
case CommandId.Rewind: uiText = SR.Get(SRID.MediaRewindText); break;
case CommandId.ChannelUp: uiText = SR.Get(SRID.MediaChannelUpText); break;
case CommandId.ChannelDown: uiText = SR.Get(SRID.MediaChannelDownText); break;
case CommandId.TogglePlayPause: uiText = SR.Get(SRID.MediaTogglePlayPauseText); break;
case CommandId.IncreaseVolume: uiText = SR.Get(SRID.MediaIncreaseVolumeText); break;
case CommandId.DecreaseVolume: uiText = SR.Get(SRID.MediaDecreaseVolumeText); break;
case CommandId.MuteVolume: uiText = SR.Get(SRID.MediaMuteVolumeText); break;
case CommandId.IncreaseTreble: uiText = SR.Get(SRID.MediaIncreaseTrebleText); break;
case CommandId.DecreaseTreble: uiText = SR.Get(SRID.MediaDecreaseTrebleText); break;
case CommandId.IncreaseBass: uiText = SR.Get(SRID.MediaIncreaseBassText); break;
case CommandId.DecreaseBass: uiText = SR.Get(SRID.MediaDecreaseBassText); break;
case CommandId.BoostBass: uiText = SR.Get(SRID.MediaBoostBassText); break;
case CommandId.IncreaseMicrophoneVolume: uiText = SR.Get(SRID.MediaIncreaseMicrophoneVolumeText); break;
case CommandId.DecreaseMicrophoneVolume: uiText = SR.Get(SRID.MediaDecreaseMicrophoneVolumeText); break;
case CommandId.MuteMicrophoneVolume: uiText = SR.Get(SRID.MediaMuteMicrophoneVolumeText); break;
case CommandId.ToggleMicrophoneOnOff: uiText = SR.Get(SRID.MediaToggleMicrophoneOnOffText); break;
case CommandId.Select:uiText = SR.Get(SRID.MediaSelectText);break;
}
return uiText;
}
internal static InputGestureCollection LoadDefaultGestureFromResource(byte commandId)
{
InputGestureCollection gestures = new InputGestureCollection();
//Standard Commands
switch ((CommandId)commandId)
{
case CommandId.Play:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaPlayKey),
SR.Get(SRID.MediaPlayKeyDisplayString),
gestures);
break;
case CommandId.Pause:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaPauseKey),
SR.Get(SRID.MediaPauseKeyDisplayString),
gestures);
break;
case CommandId.Stop:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaStopKey),
SR.Get(SRID.MediaStopKeyDisplayString),
gestures);
break;
case CommandId.Record:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaRecordKey),
SR.Get(SRID.MediaRecordKeyDisplayString),
gestures);
break;
case CommandId.NextTrack:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaNextTrackKey),
SR.Get(SRID.MediaNextTrackKeyDisplayString),
gestures);
break;
case CommandId.PreviousTrack:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaPreviousTrackKey),
SR.Get(SRID.MediaPreviousTrackKeyDisplayString),
gestures);
break;
case CommandId.FastForward:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaFastForwardKey),
SR.Get(SRID.MediaFastForwardKeyDisplayString),
gestures);
break;
case CommandId.Rewind:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaRewindKey),
SR.Get(SRID.MediaRewindKeyDisplayString),
gestures);
break;
case CommandId.ChannelUp:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaChannelUpKey),
SR.Get(SRID.MediaChannelUpKeyDisplayString),
gestures);
break;
case CommandId.ChannelDown:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaChannelDownKey),
SR.Get(SRID.MediaChannelDownKeyDisplayString),
gestures);
break;
case CommandId.TogglePlayPause:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaTogglePlayPauseKey),
SR.Get(SRID.MediaTogglePlayPauseKeyDisplayString),
gestures);
break;
case CommandId.IncreaseVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaIncreaseVolumeKey),
SR.Get(SRID.MediaIncreaseVolumeKeyDisplayString),
gestures);
break;
case CommandId.DecreaseVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaDecreaseVolumeKey),
SR.Get(SRID.MediaDecreaseVolumeKeyDisplayString),
gestures);
break;
case CommandId.MuteVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaMuteVolumeKey),
SR.Get(SRID.MediaMuteVolumeKeyDisplayString),
gestures);
break;
case CommandId.IncreaseTreble:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaIncreaseTrebleKey),
SR.Get(SRID.MediaIncreaseTrebleKeyDisplayString),
gestures);
break;
case CommandId.DecreaseTreble:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaDecreaseTrebleKey),
SR.Get(SRID.MediaDecreaseTrebleKeyDisplayString),
gestures);
break;
case CommandId.IncreaseBass:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaIncreaseBassKey),
SR.Get(SRID.MediaIncreaseBassKeyDisplayString),
gestures);
break;
case CommandId.DecreaseBass:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaDecreaseBassKey),
SR.Get(SRID.MediaDecreaseBassKeyDisplayString),
gestures);
break;
case CommandId.BoostBass:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaBoostBassKey),
SR.Get(SRID.MediaBoostBassKeyDisplayString),
gestures);
break;
case CommandId.IncreaseMicrophoneVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaIncreaseMicrophoneVolumeKey),
SR.Get(SRID.MediaIncreaseMicrophoneVolumeKeyDisplayString),
gestures);
break;
case CommandId.DecreaseMicrophoneVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaDecreaseMicrophoneVolumeKey),
SR.Get(SRID.MediaDecreaseMicrophoneVolumeKeyDisplayString),
gestures);
break;
case CommandId.MuteMicrophoneVolume:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaMuteMicrophoneVolumeKey),
SR.Get(SRID.MediaMuteMicrophoneVolumeKeyDisplayString),
gestures);
break;
case CommandId.ToggleMicrophoneOnOff:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaToggleMicrophoneOnOffKey),
SR.Get(SRID.MediaToggleMicrophoneOnOffKeyDisplayString),
gestures);
break;
case CommandId.Select:
KeyGesture.AddGesturesFromResourceStrings(
SR.Get(SRID.MediaSelectKey),
SR.Get(SRID.MediaSelectKeyDisplayString),
gestures);
break;
}
return gestures;
}
private static RoutedUICommand _EnsureCommand(CommandId idCommand)
{
if (idCommand >= 0 && idCommand < CommandId.Last)
{
lock (_internalCommands.SyncRoot)
{
if (_internalCommands[(int)idCommand] == null)
{
RoutedUICommand newCommand = new RoutedUICommand(GetPropertyName(idCommand), typeof(MediaCommands), (byte)idCommand);
newCommand.AreInputGesturesDelayLoaded = true;
_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
{
// Formatting
Play = 1,
Pause = 2,
Stop = 3,
Record = 4,
NextTrack = 5,
PreviousTrack = 6,
FastForward = 7,
Rewind = 8,
ChannelUp = 9,
ChannelDown = 10,
TogglePlayPause = 11,
IncreaseVolume = 12,
DecreaseVolume = 13,
MuteVolume = 14,
IncreaseTreble = 15,
DecreaseTreble = 16,
IncreaseBass = 17,
DecreaseBass = 18,
BoostBass = 19,
IncreaseMicrophoneVolume = 20,
DecreaseMicrophoneVolume = 21,
MuteMicrophoneVolume = 22,
ToggleMicrophoneOnOff = 23,
Select = 24,
// Last
Last = 25
}
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
- ParameterCollection.cs
- StructuralObject.cs
- UnionCqlBlock.cs
- Parser.cs
- OraclePermission.cs
- DataObjectMethodAttribute.cs
- Track.cs
- KnownColorTable.cs
- Memoizer.cs
- CompensateDesigner.cs
- DataGridParentRows.cs
- MatrixStack.cs
- Menu.cs
- SourceFilter.cs
- ProtocolsConfigurationHandler.cs
- StoreItemCollection.cs
- documentation.cs
- ToolTipService.cs
- WmlImageAdapter.cs
- SizeAnimationBase.cs
- MarkupExtensionParser.cs
- WebPartMinimizeVerb.cs
- PropertyEmitter.cs
- HTMLTagNameToTypeMapper.cs
- AgileSafeNativeMemoryHandle.cs
- AnimatedTypeHelpers.cs
- VisualBasicImportReference.cs
- SmtpClient.cs
- WebEventTraceProvider.cs
- SqlNotificationEventArgs.cs
- SerializationException.cs
- DataControlLinkButton.cs
- dbenumerator.cs
- SqlCrossApplyToCrossJoin.cs
- HtmlElement.cs
- PrinterSettings.cs
- StringValidatorAttribute.cs
- PolicyValidator.cs
- VersionUtil.cs
- DataGridTemplateColumn.cs
- AutoGeneratedFieldProperties.cs
- FrameSecurityDescriptor.cs
- ClientBuildManagerCallback.cs
- Attribute.cs
- OleDbConnectionPoolGroupProviderInfo.cs
- Message.cs
- EntityChangedParams.cs
- TreeNode.cs
- SqlServices.cs
- Point4DConverter.cs
- MemberInitExpression.cs
- FormViewModeEventArgs.cs
- odbcmetadatacolumnnames.cs
- ISO2022Encoding.cs
- Exceptions.cs
- TabletDeviceInfo.cs
- RepeaterCommandEventArgs.cs
- VectorAnimationUsingKeyFrames.cs
- TemplateBindingExpressionConverter.cs
- ManipulationDeltaEventArgs.cs
- Compensate.cs
- SqlFunctionAttribute.cs
- WebEventCodes.cs
- UserNamePasswordValidator.cs
- ScrollChrome.cs
- FontWeights.cs
- DBConnection.cs
- ContentValidator.cs
- XmlAutoDetectWriter.cs
- PackageFilter.cs
- ContextDataSourceContextData.cs
- SrgsSubset.cs
- WSDualHttpSecurityMode.cs
- SchemaTypeEmitter.cs
- TreeViewDesigner.cs
- NotCondition.cs
- XamlDesignerSerializationManager.cs
- BackStopAuthenticationModule.cs
- KnownTypes.cs
- FaultPropagationRecord.cs
- NullableIntAverageAggregationOperator.cs
- StateManagedCollection.cs
- XmlNodeList.cs
- VisualTreeUtils.cs
- XmlObjectSerializerWriteContext.cs
- SecurityManager.cs
- ValidationService.cs
- XMLSyntaxException.cs
- LabelLiteral.cs
- QueryCursorEventArgs.cs
- EditorBrowsableAttribute.cs
- ConversionHelper.cs
- XmlReflectionMember.cs
- ForwardPositionQuery.cs
- ProfilePropertyMetadata.cs
- DataServiceConfiguration.cs
- ConfigXmlText.cs
- RoleService.cs
- HeaderedContentControl.cs
- IndexerNameAttribute.cs