use of com.intellij.openapi.vcs.contentAnnotation.VcsContentAnnotationSettings in project intellij-community by JetBrains.
the class VcsOptionsTopHitProvider method getOptions.
@NotNull
@Override
public Collection<OptionDescription> getOptions(@Nullable Project project) {
if (project == null || ProjectLevelVcsManager.getInstance(project).getAllVcss().length == 0) {
return Collections.emptyList();
}
VcsConfiguration vcs = VcsConfiguration.getInstance(project);
if (vcs == null) {
return Collections.emptyList();
}
ArrayList<BooleanOptionDescription> options = new ArrayList<>();
// process Version Control settings
String id = "project.propVCSSupport.Mappings";
options.add(option(vcs, id, "Limit history by " + vcs.MAXIMUM_HISTORY_ROWS + " rows", "LIMIT_HISTORY"));
options.add(option(vcs, id, "Show directories with changed descendants", "SHOW_DIRTY_RECURSIVELY"));
VcsContentAnnotationSettings vcsCA = VcsContentAnnotationSettings.getInstance(project);
if (vcsCA != null) {
options.add(option(vcsCA, id, "Show changed in last " + vcsCA.getLimitDays() + " days", "isShow", "setShow"));
}
options.add(option(vcs, id, "Notify about VCS root errors", "SHOW_VCS_ERROR_NOTIFICATIONS"));
options.add(option(vcs, id, "Commit message right margin " + vcs.COMMIT_MESSAGE_MARGIN_SIZE + " columns", "USE_COMMIT_MESSAGE_MARGIN"));
options.add(option(vcs, id, ApplicationBundle.message("checkbox.wrap.typing.on.right.margin"), "WRAP_WHEN_TYPING_REACHES_RIGHT_MARGIN"));
// process Version Control / Confirmation settings
id = "project.propVCSSupport.Confirmation";
ReadonlyStatusHandler vcsROSH = ReadonlyStatusHandler.getInstance(project);
if (vcsROSH instanceof ReadonlyStatusHandlerImpl) {
options.add(option(((ReadonlyStatusHandlerImpl) vcsROSH).getState(), id, "Show \"Clear Read-only Status\" Dialog", "SHOW_DIALOG"));
}
options.add(option(vcs, id, "Confirmation: Suggest to move uncommitted changes to another changelist", "OFFER_MOVE_TO_ANOTHER_CHANGELIST_ON_PARTIAL_COMMIT"));
options.add(option(vcs, id, "Confirmation: Force non-empty checkin comments", "FORCE_NON_EMPTY_COMMENT"));
options.add(option(vcs, id, "Confirmation: Clear initial commit message", "CLEAR_INITIAL_COMMIT_MESSAGE"));
// process Version Control / Background settings
id = "project.propVCSSupport.Background";
options.add(option(vcs, id, "Perform in background: update from VCS", "PERFORM_UPDATE_IN_BACKGROUND"));
options.add(option(vcs, id, "Perform in background: commit to VCS", "PERFORM_COMMIT_IN_BACKGROUND"));
options.add(option(vcs, id, "Perform in background: checkout from VCS", "PERFORM_CHECKOUT_IN_BACKGROUND"));
options.add(option(vcs, id, "Perform in background: Edit/Checkout", "PERFORM_EDIT_IN_BACKGROUND"));
options.add(option(vcs, id, "Perform in background: Add/Remove", "PERFORM_ADD_REMOVE_IN_BACKGROUND"));
options.add(option(vcs, id, "Perform in background: revert", "PERFORM_ROLLBACK_IN_BACKGROUND"));
id = ShelfProjectConfigurable.HELP_ID;
options.add(option(vcs, id, VcsBundle.message("vcs.shelf.store.base.content"), "INCLUDE_TEXT_INTO_SHELF"));
if (!project.isDefault()) {
// process Version Control / Changelist Conflicts settings
options.add(tracker(project, "Changelists: Enable changelist conflict tracking", "TRACKING_ENABLED"));
options.add(tracker(project, "Changelists: Show conflict resolving dialog", "SHOW_DIALOG"));
options.add(tracker(project, "Changelists: Highlight files with conflicts", "HIGHLIGHT_CONFLICTS"));
options.add(tracker(project, "Changelists: Highlight files from non-active changelists", "HIGHLIGHT_NON_ACTIVE_CHANGELIST"));
}
return Collections.unmodifiableCollection(options);
}
use of com.intellij.openapi.vcs.contentAnnotation.VcsContentAnnotationSettings in project intellij-community by JetBrains.
the class VcsContentAnnotationConfigurable method reset.
@Override
public void reset() {
VcsContentAnnotationSettings settings = VcsContentAnnotationSettings.getInstance(myProject);
myHighlightRecentlyChanged.setSelected(settings.isShow());
myHighlightInterval.setValue(settings.getLimitDays());
myHighlightInterval.setEnabled(myHighlightRecentlyChanged.isSelected());
}
use of com.intellij.openapi.vcs.contentAnnotation.VcsContentAnnotationSettings in project intellij-community by JetBrains.
the class VcsContentAnnotationConfigurable method apply.
@Override
public void apply() throws ConfigurationException {
VcsContentAnnotationSettings settings = VcsContentAnnotationSettings.getInstance(myProject);
settings.setShow(myHighlightRecentlyChanged.isSelected());
settings.setLimit(((Number) myHighlightInterval.getValue()).intValue());
}
Aggregations