[jboss-svn-commits] JBL Code SVN: r21183 - in labs/jbossrules/trunk/drools-guvnor: modules and 12 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Tue Jul 22 17:54:47 EDT 2008


Author: arhan
Date: 2008-07-22 17:54:47 -0400 (Tue, 22 Jul 2008)
New Revision: 21183

Added:
   labs/jbossrules/trunk/drools-guvnor/modules/
   labs/jbossrules/trunk/drools-guvnor/modules/imageset/
   labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/
   labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/
   labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/
   labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/
   labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/ImageSet.gwt.xml
   labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/client/
   labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/client/ruleeditor/
   labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/client/ruleeditor/RolodexImageSetWidget.java
Removed:
   labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/ImageSetWidget.java
Modified:
   labs/jbossrules/trunk/drools-guvnor/pom.xml
   labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/Guvnor.gwt.xml
   labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/common/AssetFormats.java
   labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/ExplorerLayoutManager.java
   labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/EditorLauncher.java
   labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/client/common/AssetFormatsTest.java
Log:
GSOC2008: ImageSetWidget is renamed to RolodexImageSetWidget and moved outside Guvnor production code (modules) so that i could be included to the build manually. This is dues to avoid the extra dependencies in Guvnor.

Added: labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/ImageSet.gwt.xml
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/ImageSet.gwt.xml	                        (rev 0)
+++ labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/ImageSet.gwt.xml	2008-07-22 21:54:47 UTC (rev 21183)
@@ -0,0 +1,14 @@
+<module>
+    <!--
+    To include this module to Guvnor it is required:
+     1) to inherit this file in Guvnor.gwt.xml
+     2) run ant plug-editors to regenerate source
+     3) run ant gwt-compile to generate new UI?
+
+    -->
+
+
+
+    <inherits name="org.drools.guvnor.Guvnor" />
+    <inherits name='com.yesmail.gwt.rolodex.Rolodex'/>
+</module>
\ No newline at end of file

Added: labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/client/ruleeditor/RolodexImageSetWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/client/ruleeditor/RolodexImageSetWidget.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-guvnor/modules/imageset/src/org/drools/guvnor/client/ruleeditor/RolodexImageSetWidget.java	2008-07-22 21:54:47 UTC (rev 21183)
@@ -0,0 +1,72 @@
+package org.drools.guvnor.client.ruleeditor;
+
+import com.google.gwt.user.client.ui.impl.ClippedImagePrototype;
+import com.google.gwt.core.client.GWT;
+import com.yesmail.gwt.rolodex.client.RolodexCardBundle;
+import com.yesmail.gwt.rolodex.client.RolodexCard;
+import com.yesmail.gwt.rolodex.client.RolodexPanel;
+import org.drools.guvnor.client.packages.AssetAttachmentFileWidget;
+import org.drools.guvnor.client.rpc.RuleAsset;
+import org.drools.guvnor.client.common.HTMLFileManagerFields;
+import org.drools.guvnor.client.ruleeditor.RuleViewer;
+
+/**
+ * RolodexImageSetWidget makes use of <a href="http://code.google.com/p/gwt-rolodex/">rolodex</a><br/>
+ * widget to display the attached images.
+ *
+ * @author Anton Arhipov
+ */
+public class RolodexImageSetWidget extends AssetAttachmentFileWidget {
+
+    RuleAsset asset;
+
+    public RolodexImageSetWidget(final RuleAsset asset, final RuleViewer viewer) {
+        super(asset, viewer);
+        this.asset = asset;
+
+        if (asset.content != null) {
+            RolodexCardBundle images = getImagesFromAsset();
+            RolodexCard[] rolodexCards = images.getRolodexCards();
+            if (rolodexCards.length > 0) {
+                final RolodexPanel rolodex = new RolodexPanel(images, 3, rolodexCards[0], true);
+                rolodex.setHeight("200px");  //TODO: panel size should be computed based on the image
+                layout.addRow(rolodex);
+            }
+        }
+    }
+
+    public String getIcon() {
+        return "images/decision_table.png";  //TODO: add icon
+    }
+
+    public String getOverallStyleName() {
+        return "decision-Table-upload";      //TODO: define style?
+    }
+
+    public RolodexCardBundle getImagesFromAsset() {
+        return new RolodexCardBundle() {
+            public int getMaxHeight() {
+                return 80;                   //TODO: get a real maximum height
+            }
+
+            ClippedImagePrototype clip = getClip();
+
+            RolodexCard card = new RolodexCard(clip, clip, clip, 300, 100, 10);
+
+            public RolodexCard[] getRolodexCards() {
+                return new RolodexCard[]{card};
+            }
+        };
+    }
+
+    private ClippedImagePrototype getClip() {
+        //TODO: if the attachment doesn't exist AssetFileServlet will throw an NPE
+        //TODO: need to find out how to check the condition if an attachment exists for a given UUID
+        return new ClippedImagePrototype(
+                GWT.getModuleBaseURL() + "asset?" +
+                        HTMLFileManagerFields.FORM_FIELD_UUID +
+                        "=" + asset.uuid, 0, 0, 300, 200
+        );
+    }
+
+}

Modified: labs/jbossrules/trunk/drools-guvnor/pom.xml
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/pom.xml	2008-07-22 20:44:27 UTC (rev 21182)
+++ labs/jbossrules/trunk/drools-guvnor/pom.xml	2008-07-22 21:54:47 UTC (rev 21183)
@@ -87,11 +87,6 @@
       <artifactId>gwt-servlet</artifactId>
     </dependency>
     <dependency>
-      <groupId>com.yesmail.rolodex</groupId>
-      <artifactId>gwt-rolodex-gwt15</artifactId>
-      <version>1.1</version>  
-    </dependency>
-    <dependency>
       <groupId>com.gwtext</groupId>
       <artifactId>gwtext</artifactId>
     </dependency>

Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/Guvnor.gwt.xml
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/Guvnor.gwt.xml	2008-07-22 20:44:27 UTC (rev 21182)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/Guvnor.gwt.xml	2008-07-22 21:54:47 UTC (rev 21183)
@@ -3,7 +3,6 @@
 	<!-- Inherit the core Web Toolkit stuff.                  -->
 	<inherits name='com.google.gwt.user.User'/>
     <inherits name="com.gwtext.GwtExt"/>
-    <inherits name='com.yesmail.gwt.rolodex.Rolodex'/>
 
     <!-- Specify the app entry point class.                   -->
 	<!-- <entry-point class='org.drools.guvnor.client.JBRMS'/> -->

Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/common/AssetFormats.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/common/AssetFormats.java	2008-07-22 20:44:27 UTC (rev 21182)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/common/AssetFormats.java	2008-07-22 21:54:47 UTC (rev 21183)
@@ -66,13 +66,10 @@
     /** For fact models in drl.     */
     public static final String DRL_MODEL = "model.drl";
 
-    /**  for a set of images */
-    public static final String IMAGE_SET = "image-set";
-
     /**
      * The following group the assets together for lists, helpers etc...
      */
-    public static final String[] BUSINESS_RULE_FORMATS = new String[]{AssetFormats.BUSINESS_RULE, AssetFormats.DSL_TEMPLATE_RULE, AssetFormats.DECISION_SPREADSHEET_XLS, AssetFormats.DECISION_TABLE_GUIDED, AssetFormats.IMAGE_SET};
+    public static final String[] BUSINESS_RULE_FORMATS = new String[]{AssetFormats.BUSINESS_RULE, AssetFormats.DSL_TEMPLATE_RULE, AssetFormats.DECISION_SPREADSHEET_XLS, AssetFormats.DECISION_TABLE_GUIDED};
 
 
     /**

Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/ExplorerLayoutManager.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/ExplorerLayoutManager.java	2008-07-22 20:44:27 UTC (rev 21182)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/explorer/ExplorerLayoutManager.java	2008-07-22 21:54:47 UTC (rev 21183)
@@ -375,7 +375,8 @@
         return m;
 	}
 
-	private Menu rulesNewMenu() {
+    //TODO: refactor this methid to a class, make menus pluggable
+    private Menu rulesNewMenu() {
 		Menu m = new Menu();
 
 		m.addItem( new Item("New Business Rule (Guided editor)", new BaseItemListenerAdapter() {
@@ -410,14 +411,6 @@
 			}
 		}, "images/gdst.gif"));
 
-        //TODO: new icon
-        //TODO: refactor this methid to a class, make menus pluggable
-        m.addItem(new Item("New ImageSet", new BaseItemListenerAdapter() {
-        			public void onClick(BaseItem item, EventObject e) {
-        				launchWizard(AssetFormats.IMAGE_SET, "New ImageSet", true);
-        			}
-        	    }, "images/rule_asset.gif"));
-
         m.addItem(new Item("New Test Scenario", new BaseItemListenerAdapter() {
         			public void onClick(BaseItem item, EventObject e) {
         				launchWizard(AssetFormats.TEST_SCENARIO,

Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/EditorLauncher.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/EditorLauncher.java	2008-07-22 20:44:27 UTC (rev 21182)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/EditorLauncher.java	2008-07-22 21:54:47 UTC (rev 21183)
@@ -77,8 +77,6 @@
         	return new RuleValidatorWrapper(new GuidedDecisionTableWidget(asset), asset);
         } else if (asset.metaData.format.equals(AssetFormats.DRL_MODEL)) {
         	return new RuleValidatorWrapper(new FactModelWidget(asset), asset);
-        } else if (asset.metaData.format.equals(AssetFormats.IMAGE_SET)) {
-        	return new ImageSetWidget(asset, viewer);
         } else {
             return new DefaultContentUploadEditor( asset, viewer );
         }
@@ -117,9 +115,4 @@
         }
     }
 
-
-
-
-
-
 }
\ No newline at end of file

Deleted: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/ImageSetWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/ImageSetWidget.java	2008-07-22 20:44:27 UTC (rev 21182)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/ruleeditor/ImageSetWidget.java	2008-07-22 21:54:47 UTC (rev 21183)
@@ -1,173 +0,0 @@
-package org.drools.guvnor.client.ruleeditor;
-/*
- * Copyright 2005 JBoss Inc
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import org.drools.guvnor.client.common.*;
-import org.drools.guvnor.client.rpc.RuleAsset;
-import com.google.gwt.core.client.GWT;
-import com.google.gwt.user.client.ui.*;
-import com.google.gwt.user.client.ui.impl.ClippedImagePrototype;
-import com.google.gwt.user.client.Window;
-import com.yesmail.gwt.rolodex.client.RolodexPanel;
-import com.yesmail.gwt.rolodex.client.RolodexCardBundle;
-import com.yesmail.gwt.rolodex.client.RolodexCard;
-
-/**
- * ImageSetWidget - allows to use images as assets. Can upload images one by one and display them as a deck of cards (using rolodex).
- *
- * TODO: support in content handler to enable multiple images and carry out graphic routines
- * TODO: refactor initWidgets (as it was copypasted from AssetAttachmentFileWidget
- * TODO: The "Loading.." popup doesn't close
- * TODO: functional features ?
- *
- */
-public class ImageSetWidget extends DirtyableComposite {
-
-    private FormPanel form;
-    private ImageButton ok;
-    private RuleViewer viewer;
-    private FormStyleLayout layout;
-    private RuleAsset asset;
-
-    public ImageSetWidget(RuleAsset asset, RuleViewer viewer) {
-        this.asset = asset;
-        this.viewer = viewer;
-        initWidgets(asset.uuid, asset.metaData.name);
-    }
-
-    private void initWidgets(final String uuid, String formName) {
-        form = new FormPanel();
-        form.setAction(GWT.getModuleBaseURL() + "asset");
-        form.setEncoding(FormPanel.ENCODING_MULTIPART);
-        form.setMethod(FormPanel.METHOD_POST);
-
-        FileUpload up = new FileUpload();
-        up.setName(HTMLFileManagerFields.UPLOAD_FIELD_NAME_ATTACH);
-        HorizontalPanel fields = new HorizontalPanel();
-        fields.add(getHiddenField(HTMLFileManagerFields.FORM_FIELD_UUID, uuid));
-
-        ok = new ImageButton("images/upload.gif", "Upload");
-
-        fields.add(up);
-        fields.add(new Label("upload:"));
-        fields.add(ok);
-
-        form.add(fields);
-
-        layout = new FormStyleLayout("images/upload.gif", formName);
-
-        createRolodexPanel();
-
-        if (!this.asset.isreadonly)
-            layout.addAttribute("Upload new version:", form);
-
-        Button dl = new Button("Download");
-        dl.addClickListener(new ClickListener() {
-            public void onClick(Widget w) {
-                Window.open(GWT.getModuleBaseURL() + "asset?" + HTMLFileManagerFields.FORM_FIELD_UUID + "=" + uuid,
-                        "downloading", "resizable=no,scrollbars=yes,status=no");
-            }
-        });
-        layout.addAttribute("Download current version:", dl);
-
-        ok.addClickListener(new ClickListener() {
-            public void onClick(Widget w) {
-                showUploadingBusy();
-                submitUpload();
-            }
-        });
-
-        initWidget(layout);
-        layout.setWidth("100%");
-        this.setStyleName(getOverallStyleName());
-    }
-
-    private void createRolodexPanel() {
-        RolodexCardBundle images = getImagesFromAsset();
-        RolodexCard[] rolodexCards = images.getRolodexCards();
-        if (rolodexCards.length > 0) {
-            final RolodexPanel rolodex = new RolodexPanel(images, 3, rolodexCards[0], true);
-            rolodex.setHeight("200px");
-            layout.addRow(rolodex);
-        }
-    }
-
-    protected void submitUpload() {
-        form.submit();
-    }
-
-    protected void showUploadingBusy() {
-        LoadingPopup.showMessage("Uploading...");
-    }
-
-    void initAssetHandlers() {
-        form.addFormHandler(new FormHandler() {
-            public void onSubmit(FormSubmitEvent ev) {
-            }
-
-            public void onSubmitComplete(FormSubmitCompleteEvent ev) {
-                LoadingPopup.close();
-                if (ev.getResults().indexOf("OK") > -1) {
-                    Window.alert("File was uploaded successfully.");
-                    viewer.refreshDataAndView();
-                } else {
-                    ErrorPopup.showMessage("Unable to upload the file.");
-                }
-            }
-        });
-    }
-
-    private TextBox getHiddenField(String name, String value) {
-        TextBox t = new TextBox();
-        t.setName(name);
-        t.setText(value);
-        t.setVisible(false);
-        return t;
-    }
-
-    //TODO: new icon
-    public String getIcon() {
-        return "images/decision_table.png";
-    }
-
-    //TODO: ?
-    public String getOverallStyleName() {
-        return "decision-Table-upload";
-    }
-
-    /**
-     * TODO: create a bundle of images using asset.content
-     */
-    public RolodexCardBundle getImagesFromAsset() {
-        return new RolodexCardBundle() {
-            public int getMaxHeight() {
-                return 80;
-            }
-
-            ClippedImagePrototype clip = new ClippedImagePrototype(
-                    GWT.getModuleBaseURL() + "asset?" + HTMLFileManagerFields.FORM_FIELD_UUID + "=" + asset.uuid,
-                    0, 0, 300, 200
-            );
-
-            RolodexCard card = new RolodexCard(clip, clip, clip, 300, 100, 10);
-
-            public RolodexCard[] getRolodexCards() {
-                return new RolodexCard[]{card};
-            }
-        };
-
-    }
-}

Modified: labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/client/common/AssetFormatsTest.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/client/common/AssetFormatsTest.java	2008-07-22 20:44:27 UTC (rev 21182)
+++ labs/jbossrules/trunk/drools-guvnor/src/test/java/org/drools/guvnor/client/common/AssetFormatsTest.java	2008-07-22 21:54:47 UTC (rev 21183)
@@ -35,9 +35,6 @@
                     fmt.equals( AssetFormats.DSL_TEMPLATE_RULE )
                     ||
                     fmt.equals( AssetFormats.DECISION_TABLE_GUIDED )
-                    ||
-                    fmt.equals( AssetFormats.IMAGE_SET )
-
             ) ) {
                 fail("Incorrect grouping of business rules.");
             }




More information about the jboss-svn-commits mailing list