пока завершение рефакторинга и обощения фильтров
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
package _VisualDVM.TestingSystem.Common.Group.UI;
|
||||
import Common.Database.Tables.DataSet;
|
||||
import Common.Utils.Utils_;
|
||||
import Common.Visual.Controls.MenuBarButton;
|
||||
import Common.Visual.FilterFlagMenuItem;
|
||||
import Common.Visual.Controls.StableMenuItem;
|
||||
import Common.Visual.DataSetControlForm;
|
||||
import Common.Visual.DataSetFiltersMenu;
|
||||
import Common.Visual.FilterFlag;
|
||||
import Common.Visual.FilterMenuFlag;
|
||||
import Common.Visual.Fonts.VisualiserFonts;
|
||||
import Common.Visual.Menus.DataMenuBar;
|
||||
import _VisualDVM.Global;
|
||||
import _VisualDVM.Passes.PassCode;
|
||||
@@ -47,11 +49,6 @@ public class GroupsForm extends DataSetControlForm<Group> {
|
||||
}
|
||||
}
|
||||
@Override
|
||||
public boolean isObjectVisible(Group object) {
|
||||
return super.isObjectVisible(object) &&
|
||||
(!filterMyOnly || Global.mainModule.getAccount().email.equals(object.sender_address));
|
||||
}
|
||||
@Override
|
||||
public DataMenuBar createMenuBar() {
|
||||
return new DataMenuBar(dataSource.getPluralDescription(),
|
||||
PassCode.SynchronizeTests,
|
||||
@@ -59,32 +56,27 @@ public class GroupsForm extends DataSetControlForm<Group> {
|
||||
{
|
||||
addMenus(new AddGroupMenu(), new EditGroupMenu());
|
||||
addPasses(PassCode.DeleteGroup);
|
||||
add(new JSeparator());
|
||||
add(new MenuBarButton() {
|
||||
{
|
||||
setText("Свои");
|
||||
setToolTipText("Отображать только группы тестов авторства пользователя");
|
||||
Mark();
|
||||
addActionListener(e -> {
|
||||
filterMyOnly = !filterMyOnly;
|
||||
Mark();
|
||||
Global.testingServer.db.groups.ShowUI();
|
||||
});
|
||||
}
|
||||
public void Mark() {
|
||||
setIcon(Utils_.getIcon(filterMyOnly ? "/Common/icons/Pick.png" : "/Common/icons/NotPick.png"));
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
}
|
||||
@Override
|
||||
protected void createFilters() {
|
||||
AddFilter(new FilterFlag<Group>(dataSource, new MenuBarButton() {
|
||||
{
|
||||
setText("Свои");
|
||||
setToolTipText("Отображать только группы тестов авторства пользователя");
|
||||
}
|
||||
}, false) {
|
||||
@Override
|
||||
protected boolean validate(Group object) {
|
||||
return Global.mainModule.getAccount().email.equals(object.sender_address);
|
||||
}
|
||||
});
|
||||
AddFilter(new DataSetFiltersMenu<Group>("Тип", dataSource) {
|
||||
@Override
|
||||
public void fill() {
|
||||
for (TestType type : TestType.values())
|
||||
field_filters.add(new FilterFlagMenuItem<Group>(dataSet, type.getDescription(), true) {
|
||||
field_filters.add(new FilterMenuFlag<Group>(dataSource, new StableMenuItem(type.getDescription()), true) {
|
||||
@Override
|
||||
protected boolean validate(Group object) {
|
||||
return object.type.equals(type);
|
||||
@@ -96,7 +88,7 @@ public class GroupsForm extends DataSetControlForm<Group> {
|
||||
@Override
|
||||
public void fill() {
|
||||
for (LanguageName languageName : LanguageName.values()) {
|
||||
field_filters.add(new FilterFlagMenuItem<Group>(dataSet, languageName.getDescription(), true) {
|
||||
field_filters.add(new FilterMenuFlag<Group>(dataSource, new StableMenuItem(languageName.getDescription()), true) {
|
||||
@Override
|
||||
protected boolean validate(Group object) {
|
||||
return object.language.equals(languageName);
|
||||
|
||||
Reference in New Issue
Block a user