промежуточный. в процессе продолжение рефакторинга фильтра
This commit is contained in:
@@ -306,6 +306,7 @@ public class DataSetControlForm extends ControlForm<DataTable> {
|
||||
//могут быть и другие фильтры ( например свои/активные). перенести их сюда и обобщить
|
||||
return applyFiltersMenus(object);
|
||||
}
|
||||
/*
|
||||
//todo упразднить.
|
||||
// применить значение фильтра к фильру объекта напирмер Message.filterValue = text;
|
||||
public void changeHeaderFilterValue(int columnIndex, String text) {
|
||||
@@ -313,6 +314,7 @@ public class DataSetControlForm extends ControlForm<DataTable> {
|
||||
public Object getHeaderFilterValue(int columnIndex) {
|
||||
return "";
|
||||
}
|
||||
*/
|
||||
@Override
|
||||
protected void redrawControl() {
|
||||
control.CorrectSizes();
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
package Common.Visual.Tables;
|
||||
import Common.CommonConstants;
|
||||
import Common.Database.Database;
|
||||
import Common.Database.Tables.DataSet;
|
||||
import Common.Utils.Utils_;
|
||||
import Common.Visual.DataSetControlForm;
|
||||
import Common.Visual.TextField.StyledTextField;
|
||||
|
||||
import javax.swing.*;
|
||||
@@ -17,7 +15,7 @@ import java.awt.event.MouseAdapter;
|
||||
import java.awt.event.MouseEvent;
|
||||
public class HeaderTextFilter {
|
||||
DataSet dataSet= null; //таблица к интерфейсу которой относится фильтр.
|
||||
String value= "";
|
||||
private String filterValue = "";
|
||||
int columnIndex = CommonConstants.Nan; //номер столбца к которому привязан фильтр.
|
||||
JTextField textField = null;
|
||||
JPopupMenu popup = null;
|
||||
@@ -42,13 +40,14 @@ public class HeaderTextFilter {
|
||||
getDocument().addDocumentListener(new DocumentListener() {
|
||||
@Override
|
||||
public void insertUpdate(DocumentEvent e) {
|
||||
// value = getText();
|
||||
dataSet.getUI().changeHeaderFilterValue(columnIndex, getText());
|
||||
setFilterValue(getText());
|
||||
// dataSet.getUI().changeHeaderFilterValue(columnIndex, getText());
|
||||
dataSet.getUI().Show();
|
||||
}
|
||||
@Override
|
||||
public void removeUpdate(DocumentEvent e) {
|
||||
dataSet.getUI().changeHeaderFilterValue(columnIndex, getText());
|
||||
setFilterValue(getText());
|
||||
// dataSet.getUI().changeHeaderFilterValue(columnIndex, getText());
|
||||
dataSet.getUI().Show();
|
||||
}
|
||||
@Override
|
||||
@@ -71,7 +70,8 @@ public class HeaderTextFilter {
|
||||
setBackground(control.getTableHeader().getBackground());
|
||||
setFont(control.getTableHeader().getFont());
|
||||
setBorder(new MatteBorder(0, 0, 1, 1, Color.DARK_GRAY));
|
||||
setText(dataSet.getUI().getColumnInfo(columnIndex).getName() + " : " + dataSet.getUI().getHeaderFilterValue(columnIndex));
|
||||
setText(dataSet.getUI().getColumnInfo(columnIndex).getName() + " : " + getFilterValue());
|
||||
// setText(dataSet.getUI().getColumnInfo(columnIndex).getName() + " : " + dataSet.getUI().getHeaderFilterValue(columnIndex));
|
||||
}
|
||||
});
|
||||
//--
|
||||
@@ -88,7 +88,8 @@ public class HeaderTextFilter {
|
||||
popup.setMaximumSize(d);
|
||||
popup.show(control.getTableHeader(), columnRectangle.x + 72, 0);
|
||||
//-
|
||||
textField.setText(dataSet.getUI().getHeaderFilterValue(columnIndex).toString());
|
||||
textField.setText(getFilterValue());
|
||||
// textField.setText(dataSet.getUI().getHeaderFilterValue(columnIndex).toString());
|
||||
textField.requestFocusInWindow();
|
||||
textField.selectAll();
|
||||
}
|
||||
@@ -96,4 +97,12 @@ public class HeaderTextFilter {
|
||||
}
|
||||
});
|
||||
}
|
||||
public String getFilterValue() {
|
||||
// System.out.println("get filter value ="+Utils_.Brackets(filterValue));
|
||||
return filterValue;
|
||||
}
|
||||
public void setFilterValue(String filterValue_in) {
|
||||
this.filterValue = filterValue_in;
|
||||
System.out.println("set filter value ="+Utils_.Brackets(filterValue));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,18 +18,4 @@ public class ErrorsDBTable extends MessagesDBTable<MessageError> {
|
||||
public Current CurrentName() {
|
||||
return Current.Errors;
|
||||
}
|
||||
@Override
|
||||
protected DataSetControlForm createUI(JPanel mountPanel) {
|
||||
return new MessagesControlForm(this, mountPanel){
|
||||
@Override
|
||||
public void changeHeaderFilterValue(int columnIndex, String text) {
|
||||
if (columnIndex == 3)
|
||||
MessageError.filterValue = text;
|
||||
}
|
||||
@Override
|
||||
public Object getHeaderFilterValue(int columnIndex) {
|
||||
return MessageError.filterValue;
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,8 +10,10 @@ public class MessageError extends Message {
|
||||
}
|
||||
public MessageError() {
|
||||
}
|
||||
/*
|
||||
@Override
|
||||
public boolean isVisible() {
|
||||
return super.isVisible() && value.contains(filterValue);
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
@@ -445,12 +445,18 @@ public class Message extends FileObject {
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public boolean isVisible() {
|
||||
return true;
|
||||
/*
|
||||
if (Global.mainModule.HasFile() && Global.mainModule.getFile().name.equals(file)) {
|
||||
Object o = Global.mainModule.get(Current.FileGraphElement);
|
||||
return !(o instanceof FileObjectWithMessages) || ((FileObjectWithMessages) o).HasMessage(this);
|
||||
} else return false;
|
||||
*/
|
||||
}
|
||||
@Override
|
||||
public Object getFieldAt(int columnIndex) {
|
||||
|
||||
@@ -34,11 +34,14 @@ public class MessagesControlForm extends DataSetControlForm {
|
||||
public void MouseAction2() throws Exception {
|
||||
ShowCurrentObject();
|
||||
}
|
||||
/*
|
||||
@Override
|
||||
protected void createFilters() {
|
||||
super.createFilters();
|
||||
headersTextFilters.put(3, new HeaderTextFilter(dataSource, 3));
|
||||
}
|
||||
*/
|
||||
|
||||
@Override
|
||||
public boolean hasMenuBar() {
|
||||
return false;
|
||||
|
||||
@@ -21,4 +21,8 @@ public class MessagesDBTable<M extends Message> extends iDBTable<M> {
|
||||
public Comparator<M> getComparator() {
|
||||
return Comparator.comparingInt(o -> o.line);
|
||||
}
|
||||
@Override
|
||||
protected DataSetControlForm createUI(JPanel mountPanel) {
|
||||
return new MessagesControlForm(this, mountPanel);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,8 +7,10 @@ public class MessageNote extends Message {
|
||||
}
|
||||
public MessageNote() {
|
||||
}
|
||||
/*
|
||||
@Override
|
||||
public boolean isVisible() {
|
||||
return super.isVisible() && value.contains(filterValue);
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
@@ -18,18 +18,4 @@ public class NotesDBTable extends MessagesDBTable<MessageNote> {
|
||||
public Current CurrentName() {
|
||||
return Current.Notes;
|
||||
}
|
||||
@Override
|
||||
protected DataSetControlForm createUI(JPanel mountPanel) {
|
||||
return new MessagesControlForm(this, mountPanel) {
|
||||
@Override
|
||||
public void changeHeaderFilterValue(int columnIndex, String text) {
|
||||
if (columnIndex == 3)
|
||||
MessageNote.filterValue = text;
|
||||
}
|
||||
@Override
|
||||
public Object getHeaderFilterValue(int columnIndex) {
|
||||
return MessageNote.filterValue;
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
package _VisualDVM.ProjectData.Messages.Warnings;
|
||||
import _VisualDVM.Global;
|
||||
import _VisualDVM.ProjectData.Messages.Message;
|
||||
public class MessageWarning extends Message {
|
||||
public static String filterValue = "";
|
||||
@@ -7,8 +8,9 @@ public class MessageWarning extends Message {
|
||||
}
|
||||
public MessageWarning() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isVisible() {
|
||||
return super.isVisible() && value.contains(filterValue);
|
||||
return super.isVisible() && Global.mainModule.getProject().db.warnings.getUI().ApplyFilters(this);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,9 @@
|
||||
package _VisualDVM.ProjectData.Messages.Warnings;
|
||||
import Common.Database.Objects.DBObject;
|
||||
import Common.Visual.DataSetControlForm;
|
||||
import Common.Visual.Tables.HeaderTextFilter;
|
||||
import _VisualDVM.Current;
|
||||
import _VisualDVM.ProjectData.Messages.Message;
|
||||
import _VisualDVM.ProjectData.Messages.MessagesControlForm;
|
||||
import _VisualDVM.ProjectData.Messages.MessagesDBTable;
|
||||
|
||||
@@ -20,16 +23,21 @@ public class WarningsDBTable extends MessagesDBTable<MessageWarning> {
|
||||
}
|
||||
@Override
|
||||
protected DataSetControlForm createUI(JPanel mountPanel) {
|
||||
return new MessagesControlForm(this, mountPanel){
|
||||
return new MessagesControlForm(this,mountPanel){
|
||||
@Override
|
||||
public void changeHeaderFilterValue(int columnIndex, String text) {
|
||||
if (columnIndex == 3)
|
||||
MessageWarning.filterValue = text;
|
||||
protected void createFilters() {
|
||||
super.createFilters();
|
||||
headersTextFilters.put(3, new HeaderTextFilter(dataSource, 3));
|
||||
}
|
||||
@Override
|
||||
public Object getHeaderFilterValue(int columnIndex) {
|
||||
return MessageWarning.filterValue;
|
||||
}
|
||||
public boolean ApplyFilters(DBObject object) {
|
||||
if (super.ApplyFilters(object)){
|
||||
System.out.println("apply warnings tet filter for message "+object.getPK());
|
||||
Message message = (MessageWarning)object;
|
||||
return message.value.contains(headersTextFilters.get(3).getFilterValue());
|
||||
}
|
||||
return false;
|
||||
};
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user