Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[udig-devel] Drag and Drop / Plug-in dependencies

Drag and drop is nearly complete.

I have created a class (LocalSelectionDragSourceAdapter) which can be used with any widget that supports selection. I have attached it to the Catalog and ProjectExplorer views. It can easily be attached to just about anything.

An issue that has arisen is that of dependencies. In order for the editor area to know what do to do with those selections as they come in, it needs to know about the ProjectExplorer itself.

Currently:
catalog.ui depends on udig.ui so it can load the image registry.
project.ui depends on catalog.ui for access to the CatalogTreeViewer, used in a couple wizards.
udig.ui needs to depend on project.ui for access to the ProjectExplorer.

I tried moving the image registry over to catalog.ui completely but ran into threading issues that I am not sure how to resolve. I am sure something could be done with the wizards accessing the CatalogTreeViewer, but the reuse there is really nice.

One of my instincts says that we should merge all the UI plugins into one single plugin. While coupling these plugins, it would allow everything to work quite smoothly. The printing UI would be able to hook into the global actions properly.

I had a quick look at the JDT.UI (Java Development tool) plugin for Eclipse and it seems that almost all of their UI is in the one plugin, with teh exception of debug.

I think I would normally be hesistant to do something like that, but if our main focus is "User-Friendly" I think this would be a good step to take.

Richard




Back to the top