Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is it possible to create read-only observable list?

I have observable list ObservableList<Integer> list = FXCollections.observableArrayList().

In getter method for list I want to return read-only observable list, something like:

public ObservableList<Integer> getReadOnlyList() {
     return readOnlyObservableList(list);
}

and then listen to read-only list

getReadOnlyList().addListener(listChangeListener);

So basically I want to return ObservableList list that is synchronized with original list, so that user can register ListChangeListener and observe change events, but at the same time prevent user from changing the original list.

like image 745
krsi Avatar asked Nov 27 '15 22:11

krsi


1 Answers

ObservableList<Integer> list = FXCollections.observableArrayList();
ObservableList<Integer> roList = FXCollections.unmodifiableObservableList(list);

public ObservableList<Integer> getReadOnlyList() {
  return roList;
}
like image 94
tomsontom Avatar answered Sep 30 '22 05:09

tomsontom