mirror of
https://github.com/hneemann/Digital.git
synced 2025-10-02 09:20:44 -04:00
made ValueTable observable
This commit is contained in:
parent
c23796bf5b
commit
87cf2f0942
@ -52,7 +52,7 @@ public class DependencyAnalyser {
|
|||||||
if (!effected.contains(value)) {
|
if (!effected.contains(value)) {
|
||||||
effected.add(value);
|
effected.add(value);
|
||||||
|
|
||||||
for (Observer o : value) {
|
for (Observer o : value.getObservers()) {
|
||||||
if ((o instanceof NodeInterface)) {
|
if ((o instanceof NodeInterface)) {
|
||||||
ObservableValues outputs = ((NodeInterface) o).getOutputs();
|
ObservableValues outputs = ((NodeInterface) o).getOutputs();
|
||||||
for (ObservableValue co : outputs)
|
for (ObservableValue co : outputs)
|
||||||
|
@ -8,7 +8,7 @@ import java.util.Iterator;
|
|||||||
*
|
*
|
||||||
* @author hneemann
|
* @author hneemann
|
||||||
*/
|
*/
|
||||||
public class Observable implements Iterable<Observer> {
|
public class Observable {
|
||||||
private final ArrayList<Observer> observers;
|
private final ArrayList<Observer> observers;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -76,8 +76,11 @@ public class Observable implements Iterable<Observer> {
|
|||||||
return observers.contains(observer);
|
return observers.contains(observer);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
/**
|
||||||
public Iterator<Observer> iterator() {
|
* @return tje list of observers
|
||||||
return observers.iterator();
|
*/
|
||||||
|
public ArrayList<Observer> getObservers() {
|
||||||
|
return observers;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,7 @@
|
|||||||
package de.neemann.digital.data;
|
package de.neemann.digital.data;
|
||||||
|
|
||||||
|
import de.neemann.digital.core.Observable;
|
||||||
|
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
@ -9,7 +11,7 @@ import java.util.Iterator;
|
|||||||
* Stores values in a table
|
* Stores values in a table
|
||||||
* Created by hneemann on 03.07.17.
|
* Created by hneemann on 03.07.17.
|
||||||
*/
|
*/
|
||||||
public class ValueTable implements Iterable<Value[]> {
|
public class ValueTable extends Observable implements Iterable<Value[]> {
|
||||||
|
|
||||||
private final String[] names;
|
private final String[] names;
|
||||||
private final ArrayList<Value[]> values;
|
private final ArrayList<Value[]> values;
|
||||||
@ -59,6 +61,9 @@ public class ValueTable implements Iterable<Value[]> {
|
|||||||
}
|
}
|
||||||
values.add(row);
|
values.add(row);
|
||||||
checkMax(row);
|
checkMax(row);
|
||||||
|
|
||||||
|
fireHasChanged();
|
||||||
|
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -151,6 +156,7 @@ public class ValueTable implements Iterable<Value[]> {
|
|||||||
public void clear() {
|
public void clear() {
|
||||||
values.clear();
|
values.clear();
|
||||||
Arrays.fill(max, 0);
|
Arrays.fill(max, 0);
|
||||||
|
fireHasChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user