From 06cb8671556441645a14351aa21d0eaa2e09897a Mon Sep 17 00:00:00 2001 From: Elmir Shamsutdinov Date: Fri, 7 Aug 2026 16:19:06 +0300 Subject: [PATCH 1/2] default sort --- CHANGELOG.md | 1 + .../ru/taximaxim/pgsqlblocks/xmlstore/DBBlocksXmlStore.java | 1 - .../treeviewer/tree/ExtendedTreeViewerComponent.java | 6 ++++++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 044b4175..6e4550c6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ java-приложение для работы с блокировками в С * Обновлены action-ы в gitHubActions * Прекращена поддержка PostgreSQL версий ниже 10, удалена настройка для отображения типа процесса * Добавлены новые столбцы `Тип ожидаемого события` и `Имя ожидаемого события` +* Изменена сортировка. Теперь строки сортируются по столюцу `Длительность` от большего к меньшему 1.9.0 diff --git a/src/main/java/ru/taximaxim/pgsqlblocks/xmlstore/DBBlocksXmlStore.java b/src/main/java/ru/taximaxim/pgsqlblocks/xmlstore/DBBlocksXmlStore.java index 34282aff..434c8fe0 100644 --- a/src/main/java/ru/taximaxim/pgsqlblocks/xmlstore/DBBlocksXmlStore.java +++ b/src/main/java/ru/taximaxim/pgsqlblocks/xmlstore/DBBlocksXmlStore.java @@ -17,7 +17,6 @@ import java.nio.file.Path; import java.sql.ResultSet; -import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.time.Duration; import java.util.Date; diff --git a/src/main/java/ru/taximaxim/treeviewer/tree/ExtendedTreeViewerComponent.java b/src/main/java/ru/taximaxim/treeviewer/tree/ExtendedTreeViewerComponent.java index 2e956948..6499d995 100644 --- a/src/main/java/ru/taximaxim/treeviewer/tree/ExtendedTreeViewerComponent.java +++ b/src/main/java/ru/taximaxim/treeviewer/tree/ExtendedTreeViewerComponent.java @@ -88,6 +88,8 @@ public void setData(DataSource dataSource, ColumnLayoutsXmlStore columnLayout setLabelProvider(this.dataSource); setContentProvider(this.dataSource); addDoubleClickListener(new DoubleClickListener()); + comparator.setDefaultSort(); + refresh(); } private void loadColumnsFromStore(List layouts) { @@ -353,6 +355,10 @@ public void addSort(TreeColumn column) { } } + public void setDefaultSort() { + sortOrder.addLast(new SortingColumn(Columns.DURATION, true)); + } + @Override public int compare(Viewer viewer, Object e1, Object e2) { Iterator it = sortOrder.descendingIterator(); From 7bd923598cb5711571eecca17548ae4bb45a3bcb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9C=D0=B0=D0=BD=D1=81=D1=83=D1=80=20=D0=93=D0=B0=D0=BB?= =?UTF-8?q?=D0=B8=D0=B5=D0=B2?= Date: Mon, 10 Aug 2026 16:29:47 +0300 Subject: [PATCH 2/2] added sort by BLOCKED_COUNT --- CHANGELOG.md | 2 +- .../tree/ExtendedTreeViewerComponent.java | 21 +++++++++++++------ 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6e4550c6..ac800d35 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,7 @@ java-приложение для работы с блокировками в С * Обновлены action-ы в gitHubActions * Прекращена поддержка PostgreSQL версий ниже 10, удалена настройка для отображения типа процесса * Добавлены новые столбцы `Тип ожидаемого события` и `Имя ожидаемого события` -* Изменена сортировка. Теперь строки сортируются по столюцу `Длительность` от большего к меньшему +* Добавлена дефолтная сортировка по длительности и количеству заблокированных процессов 1.9.0 diff --git a/src/main/java/ru/taximaxim/treeviewer/tree/ExtendedTreeViewerComponent.java b/src/main/java/ru/taximaxim/treeviewer/tree/ExtendedTreeViewerComponent.java index 6499d995..abd025dc 100644 --- a/src/main/java/ru/taximaxim/treeviewer/tree/ExtendedTreeViewerComponent.java +++ b/src/main/java/ru/taximaxim/treeviewer/tree/ExtendedTreeViewerComponent.java @@ -88,7 +88,7 @@ public void setData(DataSource dataSource, ColumnLayoutsXmlStore columnLayout setLabelProvider(this.dataSource); setContentProvider(this.dataSource); addDoubleClickListener(new DoubleClickListener()); - comparator.setDefaultSort(); + setDefaultSort(); refresh(); } @@ -132,7 +132,7 @@ public void refreshWithoutSelection() { } @Override - protected void setSelectionToWidget(List v, boolean reveal) { + protected void setSelectionToWidget(@SuppressWarnings("rawtypes") List v, boolean reveal) { if (!inRefresh) { super.setSelectionToWidget(v, reveal); } @@ -182,6 +182,19 @@ public void widgetDefaultSelected(SelectionEvent e) { return swtColumn; } + private void setDefaultSort() { + if (visibleColumns.contains(Columns.DURATION)) { + TreeColumn duration = columns.get(Columns.DURATION); + selectSortColumn(duration, false); + selectSortColumn(duration, false); + } + if (visibleColumns.contains(Columns.BLOCKED_COUNT)) { + TreeColumn duration = columns.get(Columns.BLOCKED_COUNT); + selectSortColumn(duration, false); + selectSortColumn(duration, false); + } + } + private void addListeners() { AggregatingListener al = new AggregatingListener(new ControlAdapter() { @@ -355,10 +368,6 @@ public void addSort(TreeColumn column) { } } - public void setDefaultSort() { - sortOrder.addLast(new SortingColumn(Columns.DURATION, true)); - } - @Override public int compare(Viewer viewer, Object e1, Object e2) { Iterator it = sortOrder.descendingIterator();