пока завершение рефакторинга и обощения фильтров
This commit is contained in:
@@ -7,6 +7,7 @@ import Common.Database.Tables.DataSet;
|
||||
import Common.Database.Tables.FKBehaviour;
|
||||
import Common.MainModule_;
|
||||
import Common.Utils.Utils_;
|
||||
import Common.Visual.Controls.MenuBarButton;
|
||||
import Common.Visual.Menus.DataMenuBar;
|
||||
import Common.Visual.Menus.TableMenu;
|
||||
import Common.Visual.Tables.*;
|
||||
@@ -43,12 +44,12 @@ public class DataSetControlForm<D extends DBObject> extends ControlForm<DataTabl
|
||||
}
|
||||
return res;
|
||||
}
|
||||
public void AddFilter(DBObjectFilter_ filter_in){
|
||||
public void AddFilter(DBObjectFilter_<D> filter_in){
|
||||
allFilters.add(filter_in);
|
||||
}
|
||||
//---
|
||||
//фильтры и подсчеты. todo слить с баром (?)
|
||||
MatchesCounter f_ui = null;
|
||||
MatchesCounter counter_ui = null;
|
||||
//--
|
||||
Object savedCurrentKey = null;
|
||||
Vector<Object> savedSelectedKeys = new Vector<>();
|
||||
@@ -70,11 +71,16 @@ public class DataSetControlForm<D extends DBObject> extends ControlForm<DataTabl
|
||||
}
|
||||
mountPanel.add(bar, BorderLayout.NORTH);
|
||||
//--
|
||||
f_ui = (count -> bar.countLabel.setText(String.valueOf(count)));
|
||||
//todo возможно улушить объект бара
|
||||
counter_ui = (count -> bar.countLabel.setText(String.valueOf(count)));
|
||||
//--фильтры всегда в конец бара.
|
||||
bar.add(new JSeparator());
|
||||
for (FilterFlag filter : getFilters(FilterFlag.class)) {
|
||||
bar.add(filter.getControl());
|
||||
}
|
||||
for (JMenu filter : getFilters(DataSetFiltersMenu.class)) {
|
||||
bar.addMenus(filter);
|
||||
}
|
||||
//------------------------
|
||||
} catch (Exception ex) {
|
||||
ex.printStackTrace();
|
||||
}
|
||||
@@ -342,7 +348,7 @@ public class DataSetControlForm<D extends DBObject> extends ControlForm<DataTabl
|
||||
}
|
||||
protected boolean ApplyFilters(D object) {
|
||||
for (DBObjectFilter_ filterInterface: allFilters){
|
||||
if (!filterInterface.Validate(object))
|
||||
if (!filterInterface.Validate(object)) //??
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
@@ -355,7 +361,7 @@ public class DataSetControlForm<D extends DBObject> extends ControlForm<DataTabl
|
||||
public void Show() {
|
||||
for (DBObjectFilter_ filter_ : allFilters) filter_.DropMatchesCount();
|
||||
super.Show();
|
||||
if (f_ui != null) f_ui.ShowMatchesCount(getRowCount());
|
||||
if (counter_ui != null) counter_ui.ShowMatchesCount(getRowCount());
|
||||
for (DBObjectFilter_ filter_ : allFilters) filter_.ShowMatchesCount();
|
||||
}
|
||||
public void Show(Object pk) {
|
||||
@@ -372,7 +378,7 @@ public class DataSetControlForm<D extends DBObject> extends ControlForm<DataTabl
|
||||
@Override
|
||||
public void Clear() {
|
||||
super.Clear();
|
||||
if (f_ui != null) f_ui.ShowNoMatches();
|
||||
if (counter_ui != null) counter_ui.ShowNoMatches();
|
||||
}
|
||||
public int getRowCount() {
|
||||
return control.getRowCount();
|
||||
|
||||
Reference in New Issue
Block a user