Community
Participate
Working Groups
Build: 2.1 M4 Platform UI could provide a different decoration for linked resources pointing to non-existing/available locations or, even better, an warning/information task for each missing linked resource (not their children) when that occur. For instance, if I import an external plug-in as a binary project and I link to the external location instead of copying all files, and later I start using a new build on the same workspace and remove the old one (removing the binary project files from the file system), projects that depend on the binary projects will start showing errors once they are rebuilt (incomplete classpath and missing types). The binary projects are there, their files seem to be there, and I don't have any clue of what is wrong, unless I try to open any file in the binary project or check its location in the properties dialog.
Could the link decorator check whether the link can be resolved? We would need an "unresolved link" icon if this is feasible.
This is on the "hot list" of PRs to address for 2.1 based on input from the other teams.
Yes, we can do that. We can distinguish between missing path variable and missing link target. That kind of fine grain control won't be necessary (or good) for the decorators though. We only have 7x8 pixels to work with anyway. BTW: The Info page of the resource properties will tell you if a linked resource has a missing link location or not. Do we want both, decorators and markers? Markers seem useful. Core would need to create and manage the markers.
I was suggesting just one of the approaches to be implemented. About the decoration, I would rather suggest a different color (red?) for the link decoration, instead of changing the icon. You are, of course, who best know how well (or badly) a color change would work (it is not promising thinking of accessibility). About markers, I was wondering if that is not too much user-oriented to be implemented in core. From core's viewpoint, a linked resource pointing to a non- existing location is not necessarily a problem - the workspace handles broken linked resources in the same way it does with other resources. However, now that you mentioned, I agree that if it was going to be implemented, core would be a better place to do that (although currently core does not create any markers). Finally, I understand I can check the resource properties to see the location and check if it exists (that was what I did), but it can be hard to figure out which link is broken if the user has lots of links pointing to independent locations.
We could provide something similar to the warning decorator that JDT uses. It would be up to the graphics artists to decide. Core does not necessarily have to create the markers. We could do it. It just seems natural for Core to do it since it is the one creating the linked resources and managing path variables. Do you want to leave the marker issue open for now and just add the decorator? It really seems to me that we should do both.
Entered bug 31712 for the icon.
The icon will have to suffice for 2.1.
Released decorator change and new icon. Fixed in >20030220.
Knut, what events do I have to trigger (as an user) to force the decoration to update? The only ways I found to do that is to close/open the project containing the linked resource or renaming it.
You are probably encountering bug 32355. You should only have to do a refresh when the link target becomes availabe or unavailable.