45 QWidget *page =
new QWidget(
this);
47 QVBoxLayout *vboxLayout =
new QVBoxLayout(page);
49 QFormLayout *form =
new QFormLayout();
50 vboxLayout->addLayout(form);
53 dblMergeTimeout->setToolTip(
54 i18nc(
"@info:tooltip",
55 "The amount of time during which the strokes will "
56 "be kept unmerged. When a stroke becomes old enough, "
57 "Krita will try to merge it"));
58 dblMergeTimeout->setRange(3, 600);
59 dblMergeTimeout->setSuffix(i18nc(
"suffix for \"seconds\"",
" sec"));
60 form->addRow(i18n(
"Wait before merging strokes:"), dblMergeTimeout);
62 connectControl(dblMergeTimeout, &
m_d->model,
"mergeTimeout");
65 intExcludeFromMerge->setToolTip(
66 i18nc(
"@info:tooltip",
67 "The number of last strokes that Krita will not merge "
68 "(even if they are old enough)"));
69 intExcludeFromMerge->setRange(1, undoLimit > 0 ? undoLimit : 1000);
70 form->addRow(i18n(
"Exclude last strokes from merge:"), intExcludeFromMerge);
72 connectControl(intExcludeFromMerge, &
m_d->model,
"excludeFromMerge");
75 dblMaxGroupSeparation->setToolTip(
76 i18nc(
"@info:tooltip",
77 "If two strokes have short time interval (delay) between "
78 "each other, then they will be considered as belonging to "
79 "the same group and merged"));
80 dblMaxGroupSeparation->setRange(0.3, 60);
81 dblMaxGroupSeparation->setSuffix(i18nc(
"suffix for \"seconds\"",
" sec"));
82 form->addRow(i18n(
"Max interval of grouped strokes:"), dblMaxGroupSeparation);
84 connectControl(dblMaxGroupSeparation, &
m_d->model,
"maxGroupSeparation");
87 dblMaxGroupDuration->setToolTip(
88 i18nc(
"@info:tooltip",
89 "Maximum allowed duration of the group after the merge. "
90 "If the group is going to be longer than this limit in "
91 "the result of the merge, this merge will not happen."));
92 dblMaxGroupDuration->setRange(0.3, 600.0);
93 dblMaxGroupDuration->setSuffix(i18nc(
"suffix for \"seconds\"",
" sec"));
94 form->addRow(i18n(
"Max group duration:"), dblMaxGroupDuration);
96 connectControl(dblMaxGroupDuration, &
m_d->model,
"maxGroupDuration");
98 vboxLayout->addItem(
new QSpacerItem(20, 20));
100 QLabel *help =
new QLabel(
101 i18n(
"Cumulative Undo allows Krita to merge undo actions "
102 "and make undo history cleaner. Krita will still keep "
103 "a few latest actions unmerged according to "
104 "\"Wait before merging strokes\" and \"Exclude last strokes from merge\" "
105 "options. Whenever an action gets outdated using "
106 "the time limit and this action is not excluded using "
107 "\"Exclude last strokes from merge\", Krita will try "
108 " to merge this action into a group. The groups are "
109 "formed using \"Max group strokes delay\" and "
110 "\"Max group duration\" options."),
112 help->setWordWrap(
true);
113 help->setAlignment(Qt::AlignJustify);
114 vboxLayout->addWidget(help);
116 vboxLayout->addItem(
new QSpacerItem(20, 20));