PropertyDescriptorを拡張するクラスがあり、値を入力するための小さなダイアログが開きます。
これまでのところ動作しており、ダイアログが表示され、すべての値を入力できます。しかし、システムは、ファイルが編集されたことを示しません。
ダイアログはInputDialogのコピーです。
fireApplyEditorValue
、 、 などのfireEditorValueChanged
メソッドを使用しようとしましvalueChanged
た。しかし、違いはありません。
fire メソッドにあるリスナーを確認しましたが、それらはTextCellEditorで使用される同じリスナーです。
私が逃したものを理解することはできません。
アドバイスをありがとう。
これが私のcreatePropertyEditor
方法です:
public CellEditor createPropertyEditor(Composite parent) {
CellEditor editor = new DialogCellEditor(parent) {
@Override
protected Object openDialogBox(Control cellEditorWindow) {
SimpleDialog dialog = new SimpleDialog(cellEditorWindow.getShell(), (SomeValue) doGetValue());
dialog.open();
return dialog.getValue();
}
};
if (getValidator() != null)
editor.setValidator(getValidator());
return editor;
}