public override void Execute(CommandContext context) { if (context.Items.Length != 1) { return; } if (!ImageCompressionSettings.IsImageCompressionButtonEnabled()) { return; } var currentItem = context.Items[0]; currentItem.Editing.BeginEdit(); _imageConversionService.ConvertImage(currentItem); currentItem.Editing.EndEdit(); }
/// <summary> /// Queries the state of the command. /// </summary> /// <param name="context">The context.</param> /// <returns>The state of the command.</returns> public override CommandState QueryState(CommandContext context) { Assert.ArgumentNotNull(context, "context"); if (!ImageCompressionSettings.IsImageCompressionButtonEnabled()) { return(CommandState.Hidden); } if (context.Items.Length != 1 || !ImageCompressionSettings.IsImage(context.Items[0])) { return(CommandState.Hidden); } var item = context.Items[0]; return(CommandState.Enabled); }