mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[vcs-log] empty log text for empty repository and for no commits matching filters
IDEA-178055
This commit is contained in:
@@ -94,6 +94,9 @@ public class VcsLogGraphTable extends TableWithProgress implements DataProvider,
|
||||
private static final int MAX_ROWS_TO_CALC_WIDTH = 1000;
|
||||
|
||||
public static final String LOADING_COMMITS_TEXT = "Loading commits...";
|
||||
public static final String CHANGES_LOG_TEXT = "Changes log";
|
||||
public static final String NO_CHANGES_COMMITTED_TEXT = "No changes committed";
|
||||
public static final String NO_COMMITS_MATCHING_TEXT = "No commits matching filters";
|
||||
|
||||
@NotNull private final AbstractVcsLogUi myUi;
|
||||
@NotNull private final VcsLogData myLogData;
|
||||
@@ -123,7 +126,7 @@ public class VcsLogGraphTable extends TableWithProgress implements DataProvider,
|
||||
myGraphCommitCellRenderer = new GraphCommitCellRenderer(logData, graphCellPainter, this, true, false);
|
||||
myStringCellRenderer = new StringCellRenderer();
|
||||
|
||||
getEmptyText().setText("Changes Log");
|
||||
getEmptyText().setText(CHANGES_LOG_TEXT);
|
||||
myLogData.getProgress().addProgressIndicatorListener(new MyProgressListener(), ui);
|
||||
|
||||
initColumns();
|
||||
@@ -168,6 +171,22 @@ public class VcsLogGraphTable extends TableWithProgress implements DataProvider,
|
||||
return Registry.is("vcs.log.speedsearch");
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private String getEmptyTextString() {
|
||||
VisiblePack visiblePack = getModel().getVisiblePack();
|
||||
|
||||
if (visiblePack.getVisibleGraph().getVisibleCommitCount() == 0) {
|
||||
if (visiblePack.getFilters().isEmpty()) {
|
||||
return NO_CHANGES_COMMITTED_TEXT;
|
||||
}
|
||||
else {
|
||||
return NO_COMMITS_MATCHING_TEXT;
|
||||
}
|
||||
}
|
||||
|
||||
return CHANGES_LOG_TEXT;
|
||||
}
|
||||
|
||||
public void updateDataPack(@NotNull VisiblePack visiblePack, boolean permGraphChanged) {
|
||||
Selection previousSelection = getSelection();
|
||||
boolean filtersChanged = !getModel().getVisiblePack().getFilters().equals(visiblePack.getFilters());
|
||||
@@ -178,6 +197,10 @@ public class VcsLogGraphTable extends TableWithProgress implements DataProvider,
|
||||
highlighter.update(visiblePack, permGraphChanged);
|
||||
}
|
||||
|
||||
if (!getEmptyText().getText().equals(LOADING_COMMITS_TEXT)) {
|
||||
getEmptyText().setText(getEmptyTextString());
|
||||
}
|
||||
|
||||
setPaintBusy(false);
|
||||
myAuthorColumnInitialized = myAuthorColumnInitialized && !filtersChanged;
|
||||
reLayout();
|
||||
@@ -882,19 +905,14 @@ public class VcsLogGraphTable extends TableWithProgress implements DataProvider,
|
||||
}
|
||||
|
||||
private class MyProgressListener implements VcsLogProgress.ProgressListener {
|
||||
@NotNull private String myText = "";
|
||||
|
||||
@Override
|
||||
public void progressStarted() {
|
||||
myText = getEmptyText().getText();
|
||||
getEmptyText().setText(LOADING_COMMITS_TEXT);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void progressStopped() {
|
||||
if (getEmptyText().getText().equals(LOADING_COMMITS_TEXT)) {
|
||||
getEmptyText().setText(myText);
|
||||
}
|
||||
getEmptyText().setText(getEmptyTextString());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user