Refreshs data now even when no row is sorted

This commit is contained in:
7u83 2017-02-26 09:02:46 +01:00
parent 5794c6de22
commit cf8f6b584e

View File

@ -61,7 +61,6 @@ public class TraderListPanel extends javax.swing.JPanel {
double price = q == null ? 0 : q.price; double price = q == null ? 0 : q.price;
//DefaultTableModel newmodel = new DefaultTableModel(); //DefaultTableModel newmodel = new DefaultTableModel();
int size = Globals.se.traders.size(); int size = Globals.se.traders.size();
model.setRowCount(size); model.setRowCount(size);
for (int i = 0; i < size; i++) { for (int i = 0; i < size; i++) {
@ -76,7 +75,9 @@ public class TraderListPanel extends javax.swing.JPanel {
model.setValueAt(wealth, i, 4); model.setValueAt(wealth, i, 4);
} }
list.getRowSorter().allRowsChanged();
model.fireTableDataChanged();
//list.getRowSorter().allRowsChanged();
} }
TimerTask updater; TimerTask updater;
@ -94,39 +95,29 @@ public class TraderListPanel extends javax.swing.JPanel {
updater = new TimerTask() { updater = new TimerTask() {
@Override @Override
public void run() { public void run() {
try {
//System.out.printf("Run traderlist\n");
// javax.swing.SwingUtilities.invokeLater(()->{updateModel();});
try{
updateModel(); updateModel();
} } catch (Exception e) {
catch (Exception e)
{
} }
} }
}; };
//TableRowSorter sorter = (TableRowSorter) list.getRowSorter();
//sorter.setSortsOnUpdates(true);
timer.schedule(updater, 0, 1000); timer.schedule(updater, 0, 1000);
} }
class MyModel extends DefaultTableModel{ class MyModel extends DefaultTableModel {
MyModel(Object arg0[][], Object arg1[]){
super(arg0,arg1); MyModel(Object arg0[][], Object arg1[]) {
super(arg0, arg1);
} }
@Override @Override
public void fireTableDataChanged(){ public void fireTableDataChanged() {
super.fireTableDataChanged();
} }
@Override @Override
public void fireTableStructureChanged() { public void fireTableStructureChanged() {
@ -141,39 +132,36 @@ public class TraderListPanel extends javax.swing.JPanel {
} }
} }
void test() {
void test(){
// new javax.swing.table.DefaultTableModel // new javax.swing.table.DefaultTableModel
MyModel m = new MyModel( MyModel m = new MyModel(
new Object [][] { new Object[][]{
{null, null, null, null, null}, {null, null, null, null, null},
{null, null, null, null, null}, {null, null, null, null, null},
{null, null, null, null, null}, {null, null, null, null, null},
{null, null, null, null, null}, {null, null, null, null, null},
{null, null, null, null, null} {null, null, null, null, null}
}, },
new String [] { new String[]{
"ID", "Name", "Money", "Shares", "Wealth" "ID", "Name", "Money", "Shares", "Wealth"
} }
) { ) {
Class[] types = new Class [] { Class[] types = new Class[]{
java.lang.Long.class, java.lang.String.class, java.lang.Double.class, java.lang.Double.class, java.lang.Double.class java.lang.Long.class, java.lang.String.class, java.lang.Double.class, java.lang.Double.class, java.lang.Double.class
}; };
boolean[] canEdit = new boolean [] { boolean[] canEdit = new boolean[]{
false, false, false, false, false false, false, false, false, false
}; };
public Class getColumnClass(int columnIndex) { public Class getColumnClass(int columnIndex) {
return types [columnIndex]; return types[columnIndex];
} }
public boolean isCellEditable(int rowIndex, int columnIndex) { public boolean isCellEditable(int rowIndex, int columnIndex) {
return canEdit [columnIndex]; return canEdit[columnIndex];
} }
}; };
} }