окончательное разделение таблицы и функционала видимой ее формы
This commit is contained in:
@@ -2,7 +2,6 @@ package _VisualDVM.TestingSystem.SAPFOR.SapforPackage;
|
||||
import Common.Database.Tables.iDBTable;
|
||||
import Common.Passes.PassCode_;
|
||||
import Common.Visual.DataSetControlForm;
|
||||
import _VisualDVM.Current;
|
||||
import _VisualDVM.Passes.PassCode;
|
||||
import _VisualDVM.TestingSystem.SAPFOR.SapforPackage.UI.SapforPackagesForm;
|
||||
|
||||
@@ -12,18 +11,6 @@ public class SapforPackageDBTable extends iDBTable<SapforPackage> {
|
||||
super(SapforPackage.class);
|
||||
}
|
||||
@Override
|
||||
public Current CurrentName() {
|
||||
return Current.SapforPackage;
|
||||
}
|
||||
@Override
|
||||
public String getSingleDescription() {
|
||||
return "пакет";
|
||||
}
|
||||
@Override
|
||||
public String getPluralDescription() {
|
||||
return "пакеты";
|
||||
}
|
||||
@Override
|
||||
protected DataSetControlForm createUI(JPanel mountPanel) {
|
||||
return new SapforPackagesForm(this, mountPanel);
|
||||
}
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
package _VisualDVM.TestingSystem.SAPFOR.SapforPackage.UI;
|
||||
import Common.Database.Tables.DataSet;
|
||||
import Common.Utils.Utils_;
|
||||
import Common.Visual.Controls.MenuBarButton;
|
||||
import Common.Visual.DataSetControlForm;
|
||||
import Common.Visual.FilterFlag;
|
||||
import Common.Visual.Menus.DataMenuBar;
|
||||
import Common.Visual.Tables.RendererDate;
|
||||
import Common.Visual.Tables.RendererMultiline;
|
||||
import Common.Visual.Tables.RendererProgressBar;
|
||||
import Common.Visual.Tables.RendererStatusEnum;
|
||||
import _VisualDVM.Current;
|
||||
import _VisualDVM.Global;
|
||||
import _VisualDVM.Passes.PassCode;
|
||||
import _VisualDVM.ServerObjectsCache.PackageCache;
|
||||
@@ -18,12 +19,22 @@ import javax.swing.*;
|
||||
import java.util.Comparator;
|
||||
import java.util.Date;
|
||||
public class SapforPackagesForm extends DataSetControlForm<SapforPackage> {
|
||||
public static boolean filterMyOnly = false;
|
||||
public static boolean filterActive = false;
|
||||
public SapforPackagesForm(DataSet<?, SapforPackage> dataSource_in, JPanel mountPanel_in) {
|
||||
super(dataSource_in, mountPanel_in);
|
||||
}
|
||||
@Override
|
||||
public Current CurrentName() {
|
||||
return Current.SapforPackage;
|
||||
}
|
||||
@Override
|
||||
public String getSingleDescription() {
|
||||
return "пакет";
|
||||
}
|
||||
@Override
|
||||
public String getPluralDescription() {
|
||||
return "пакеты";
|
||||
}
|
||||
@Override
|
||||
public boolean hasCheckBox() {
|
||||
return true;
|
||||
}
|
||||
@@ -81,7 +92,7 @@ public class SapforPackagesForm extends DataSetControlForm<SapforPackage> {
|
||||
}
|
||||
@Override
|
||||
public DataMenuBar createMenuBar() {
|
||||
return new DataMenuBar(dataSource.getPluralDescription(), PassCode.SynchronizeTests) {
|
||||
return new DataMenuBar(getPluralDescription(), PassCode.SynchronizeTests) {
|
||||
{
|
||||
addSeparator();
|
||||
addPasses(PassCode.AbortSapforPackage);
|
||||
@@ -89,37 +100,6 @@ public class SapforPackagesForm extends DataSetControlForm<SapforPackage> {
|
||||
addPasses(PassCode.CompareSapforPackages);
|
||||
addSeparator();
|
||||
addPasses(PassCode.DeleteSapforPackage);
|
||||
add(new JSeparator());
|
||||
add(new MenuBarButton() {
|
||||
{
|
||||
setText("Свои");
|
||||
setToolTipText("Отображать только пакеты тестов авторства пользователя");
|
||||
Mark();
|
||||
addActionListener(e -> {
|
||||
filterMyOnly = !filterMyOnly;
|
||||
Mark();
|
||||
Global.testingServer.db.sapforPackages.ShowUI();
|
||||
});
|
||||
}
|
||||
public void Mark() {
|
||||
setIcon(Utils_.getIcon(filterMyOnly ? "/Common/icons/Pick.png" : "/Common/icons/NotPick.png"));
|
||||
}
|
||||
});
|
||||
add(new MenuBarButton() {
|
||||
{
|
||||
setText("Активные");
|
||||
setToolTipText("Отображать только активные пакеты тестов");
|
||||
Mark();
|
||||
addActionListener(e -> {
|
||||
filterActive = !filterActive;
|
||||
Mark();
|
||||
Global.testingServer.db.sapforPackages.ShowUI();
|
||||
});
|
||||
}
|
||||
public void Mark() {
|
||||
setIcon(Utils_.getIcon(filterActive ? "/Common/icons/Pick.png" : "/Common/icons/NotPick.png"));
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -133,9 +113,28 @@ public class SapforPackagesForm extends DataSetControlForm<SapforPackage> {
|
||||
};
|
||||
}
|
||||
@Override
|
||||
public boolean isObjectVisible(SapforPackage object) {
|
||||
return super.isObjectVisible(object) &&
|
||||
(!filterMyOnly || Global.mainModule.getAccount().email.equals(object.sender_address)) &&
|
||||
(!filterActive || object.state.isActive());
|
||||
protected void createFilters() {
|
||||
AddFilter(new FilterFlag<SapforPackage>(dataSource, new MenuBarButton() {
|
||||
{
|
||||
setText("Свои");
|
||||
setToolTipText("Отображать только пакеты тестов авторства пользователя");
|
||||
}
|
||||
}, false) {
|
||||
@Override
|
||||
protected boolean validate(SapforPackage object) {
|
||||
return Global.mainModule.getAccount().email.equals(object.sender_address);
|
||||
}
|
||||
});
|
||||
AddFilter(new FilterFlag<SapforPackage>(dataSource, new MenuBarButton() {
|
||||
{
|
||||
setText("Активные");
|
||||
setToolTipText("Отображать только активные пакеты тестов");
|
||||
}
|
||||
}, false) {
|
||||
@Override
|
||||
protected boolean validate(SapforPackage object) {
|
||||
return object.state.isActive();
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user