mirror of
https://github.com/wmjordan/PDFPatcher.git
synced 2026-10-18 21:52:34 +08:00
34 lines
866 B
C#
34 lines
866 B
C#
using System;
|
|
using System.Windows.Forms;
|
|
using PDFPatcher.Processor;
|
|
|
|
namespace PDFPatcher.Functions.Editor
|
|
{
|
|
sealed class BookmarkPageCommand : IEditorCommand
|
|
{
|
|
readonly int _number;
|
|
bool _takeFollowing;
|
|
|
|
public BookmarkPageCommand(int number, bool takeFollowing = false) {
|
|
_number = number;
|
|
_takeFollowing = takeFollowing;
|
|
}
|
|
|
|
public void Process(Controller controller, params string[] parameters) {
|
|
var n = _number;
|
|
if (_number == 0) {
|
|
using (var form = new ShiftPageNumberEntryForm() { TakeFollowing = _takeFollowing }) {
|
|
if (form.ShowDialog() != DialogResult.OK
|
|
|| form.ShiftNumber == 0 && !form.TakeFollowing) {
|
|
return;
|
|
}
|
|
n = form.ShiftNumber;
|
|
_takeFollowing = form.TakeFollowing;
|
|
}
|
|
}
|
|
controller.ProcessBookmarks(new ChangePageNumberProcessor(n, false, true, _takeFollowing));
|
|
}
|
|
|
|
}
|
|
}
|