This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.
[nb_dev](20030108), [jdk1.4.2](b 11) Steps to reproduce: - run IDE - open Tools | Options - select IDE Configuration|Server and External Tool Settings | Diff Settings - try to change property "Default Diff Engine" -> it's impossible After attempt to chnage it is logged next line : None PropertyChangeEvent fired from setting stored in org.openide.loaders.InstanceDataObject@186c40d[Services/Hidden/org-netbeans-modules-diff-DiffSettings.settings] issue was founded by verification of issue 28701
??? I didn't change the code since 3.4. I'll look at it...
It works for me. I have to click 3 times!! on the property to have the list shown, but this is a problem of the property sheet. I don't know who prints the None PropertyChangeEvent fired from setting stored in org.openide.loaders.InstanceDataObject@335cf0[Services/Hidden/org-netbeans-modules-diff-DiffSettings.settings] line, but certainly not diff module.
It is possible to show list , but it isn't possible to change value !
Yeah, Marian is right !
I really do not understand where is the problem. On JDK 1.3.1 it works without any problems (you only have to click 3 times). But on JDK 1.4.1 it works like you described. The property value does not change, but the change is performed! (The desired value is set, but the old value is shown.)
Martin, Do you think it's right, when you change value and sheet display the old one? In my opinion it isn't right behaviour, if you think that it isn't your bug, go and reassigne.
;-)) I didn't say it clearly. By 'I really do not understand where is the problem.' I meant, that I do not know where in the code (and in which module) the problem is. I do not understand why the functionality depends on JDK version I use. ... Heureka, I have it fixed now. The problem is, that I didn't fire property change events when the properties were changed. After I've added firePropertyChange() the problem went away. So somebody has changed the property sheet management, because firing of property changes was not necessary before. But why this depends on JDK version??? Are there different property sheet implementations for different versions of JDK?
Fixed in the main trunk by property change firing. /cvs/diff/src/org/netbeans/modules/diff/DiffSettings.java,v <-- DiffSettings.java new revision: 1.8; previous revision: 1.7
I've added keyword JDK_SPECIFIC, as dicribed above by Martin.
I am sorry but it still does not work in development build #200301140100 of NetBeans 4.0 with build #21 of JDK 1.4.1.
I don't know where the bug is. On Solaris it works without problems, but on Windows you have to click on a different node and then back so that the property value is refreshed. Why in the hell there are such differences????? It behaves differently on JDK1.3 and JDK1.4 and also on UNIX x Windows. Can someone from openide team look at it please? An advice how to fix this on all platforms is appreciated.
Maybe property sheet?
One thing that may be connected: As with many modules, the property names for the property changes being fired are wrong - they need to match the JavaBeans property name. I logged the following with PropertySheetTab modifications: Property change - not in cache: defaultProvider Cache contents: provider,visualizer,diff Not in cache means there is no Node.Property that returns defaultProvider from getName() - so the property sheet will ignore the change. Easiest way to fix: Change the constants you use for your property names in your settings class so they match the property names in the BeanInfo for the settings class - those are the names actually used for property changes.
DiffSettings is wrong. It is firing property changes with names different from those specified in the beaninfo.
O.K., thanks for your help. Increasing to P2 - some functionality is broken. Fixed in the maintrunk and release35 branch: /cvs/diff/src/org/netbeans/modules/diff/DiffSettings.java,v <-- DiffSettings.java new revision: 1.11; previous revision: 1.10 /cvs/diff/src/org/netbeans/modules/diff/DiffSettings.java,v <-- DiffSettings.java new revision: 1.10.2.1; previous revision: 1.10
verified in [s1s5](030331)