[jboss-svn-commits] JBL Code SVN: r26405 - labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/swingui.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed May 6 15:22:19 EDT 2009


Author: ge0ffrey
Date: 2009-05-06 15:22:19 -0400 (Wed, 06 May 2009)
New Revision: 26405

Modified:
   labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/swingui/WorkflowFrame.java
Log:
progressBar when solving

Modified: labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/swingui/WorkflowFrame.java
===================================================================
--- labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/swingui/WorkflowFrame.java	2009-05-06 19:08:17 UTC (rev 26404)
+++ labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/java/org/drools/solver/examples/common/swingui/WorkflowFrame.java	2009-05-06 19:22:19 UTC (rev 26405)
@@ -21,6 +21,7 @@
 import javax.swing.JPanel;
 import javax.swing.JScrollPane;
 import javax.swing.SwingUtilities;
+import javax.swing.JProgressBar;
 import javax.swing.filechooser.FileFilter;
 
 import org.drools.solver.examples.common.business.SolutionBusiness;
@@ -37,7 +38,6 @@
     private SolutionBusiness solutionBusiness;
 
     private SolutionPanel solutionPanel;
-    private JLabel resultLabel;
     private ConstraintScoreMapDialog constraintScoreMapDialog;
 
     private List<Action> loadUnsolvedActionList;
@@ -45,6 +45,10 @@
     private Action cancelSolvingAction;
     private Action solveAction;
     private Action saveAction;
+    
+    private JProgressBar progressBar;
+    private JLabel resultLabel;
+    private ShowConstraintScoreMapDialogAction showConstraintScoreMapDialogAction;
 
     public WorkflowFrame(SolutionBusiness solutionBusiness, SolutionPanel solutionPanel, String exampleName) {
         super("Drools solver example " + exampleName);
@@ -139,7 +143,7 @@
         return panel;
     }
 
-    private void setEnabledSolving(boolean solving) {
+    private void setSolvingState(boolean solving) {
         for (Action action : loadUnsolvedActionList) {
             action.setEnabled(!solving);
         }
@@ -150,6 +154,10 @@
         cancelSolvingAction.setEnabled(solving);
         saveAction.setEnabled(!solving);
         solutionPanel.setEnabled(!solving);
+        progressBar.setIndeterminate(solving);
+        progressBar.setStringPainted(solving);
+        progressBar.setString(solving ?  "Solving..." : null);
+        showConstraintScoreMapDialogAction.setEnabled(!solving);
     }
 
     private class SolveAction extends AbstractAction {
@@ -162,14 +170,14 @@
         }
 
         public void actionPerformed(ActionEvent e) {
-            setEnabledSolving(true);
+            setSolvingState(true);
             // This should be replaced with a java 6 SwingWorker once drools's hudson is on JDK 1.6
             solvingExecutor.submit(new Runnable() {
                 public void run() {
                     solutionBusiness.solve();
                     SwingUtilities.invokeLater(new Runnable() {
                         public void run() {
-                            setEnabledSolving(false);
+                            setSolvingState(false);
                             updateScreen();
                         }
                     });
@@ -218,11 +226,13 @@
 
     private JPanel createScorePanel() {
         JPanel panel = new JPanel(new BorderLayout());
+        progressBar = new JProgressBar(0, 100);
+        panel.add(progressBar, BorderLayout.WEST);
         resultLabel = new JLabel("No solution loaded yet");
         resultLabel.setBorder(BorderFactory.createLoweredBevelBorder());
         panel.add(resultLabel, BorderLayout.CENTER);
-        JButton constraintScoreMapButton = new JButton(new ShowConstraintScoreMapDialogAction());
-
+        showConstraintScoreMapDialogAction = new ShowConstraintScoreMapDialogAction();
+        JButton constraintScoreMapButton = new JButton(showConstraintScoreMapDialogAction);
         panel.add(constraintScoreMapButton, BorderLayout.EAST);
         return panel;
     }




More information about the jboss-svn-commits mailing list