Revision: 239
http://svn.sourceforge.net/cishell/?rev=239&view=rev
Author: bh2
Date: 2006-10-02 09:15:44 -0700 (Mon, 02 Oct 2006)
Log Message:
-----------
Better error checking of the MetaTypeProvider in the new GUIBuilder
Modified Paths:
--------------
trunk/clients/gui/org.cishell.reference.gui.guibuilder.swt/src/org/cishell/reference/gui/guibuilder/swt/SWTGuiBuilderService.java
Modified: trunk/clients/gui/org.cishell.reference.gui.guibuilder.swt/src/org/cishell/reference/gui/guibuilder/swt/SWTGuiBuilderService.java
===================================================================
--- trunk/clients/gui/org.cishell.reference.gui.guibuilder.swt/src/org/cishell/reference/gui/guibuilder/swt/SWTGuiBuilderService.java 2006-10-02 16:15:00 UTC (rev 238)
+++ trunk/clients/gui/org.cishell.reference.gui.guibuilder.swt/src/org/cishell/reference/gui/guibuilder/swt/SWTGuiBuilderService.java 2006-10-02 16:15:44 UTC (rev 239)
@@ -59,10 +59,22 @@
public GUI createGUI(String id, MetaTypeProvider parameters) {
- GUICreator creator = new GUICreator(id, parameters);
- display.syncExec(creator);
+ boolean validParams = true;
- return creator.gui;
+ try {
+ validParams = parameters.getObjectClassDefinition(id, null) != null;
+ } catch (IllegalArgumentException e) {
+ validParams = false;
+ }
+
+ if (validParams) {
+ GUICreator creator = new GUICreator(id, parameters);
+ display.syncExec(creator);
+
+ return creator.gui;
+ } else {
+ return NULL_GUI;
+ }
}
private class GUICreator implements Runnable {
@@ -77,7 +89,7 @@
public void run() {
try {
- Shell activeShell = display.getActiveShell();
+ Shell activeShell = getActiveShell();
Shell shell = new Shell(activeShell, SWT.DIALOG_TRIM | SWT.RESIZE);
if (activeShell != null) {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|