debug dialog
[jalview.git] / src / jalview / gui / RestServiceEditorPane.java
index 4572f6f..581a44e 100644 (file)
@@ -25,6 +25,8 @@ import java.util.regex.Pattern;
 
 import javax.swing.*;
 import javax.swing.event.CaretEvent;
+import javax.swing.event.ChangeEvent;
+import javax.swing.event.ChangeListener;
 import javax.swing.event.DocumentEvent;
 import javax.swing.event.DocumentListener;
 import javax.swing.text.GapContent;
@@ -56,14 +58,12 @@ public class RestServiceEditorPane extends GRestServiceEditorPane
       @Override
       public void keyTyped(KeyEvent e)
       {
-        refreshCutnPaste(true);
       }
       
       @Override
       public void keyReleased(KeyEvent e)
       {
-        // TODO Auto-generated method stub
-        
+        refreshCutnPaste(true);        
       }
       
       @Override
@@ -73,35 +73,22 @@ public class RestServiceEditorPane extends GRestServiceEditorPane
         
       }
     });
-    paste.addComponentListener(new ComponentListener()
+    panels.addChangeListener(new ChangeListener()
     {
-      
-      @Override
-      public void componentShown(ComponentEvent e)
-      {
-        updateServiceFromGui();
-        refreshCutnPaste(false);
-        
-      }
-      
-      @Override
-      public void componentResized(ComponentEvent e)
-      {        
-      }
-      
-      @Override
-      public void componentMoved(ComponentEvent e)
-      {
-        
-      }
-      
+      Object lastComp;
       @Override
-      public void componentHidden(ComponentEvent e)
+      public void stateChanged(ChangeEvent e)
       {
-        // TODO Auto-generated method stub
+        if (lastComp!=paste) {
+          updateServiceFromGui();
+          refreshCutnPaste(false);
+        } else {
+          refreshCutnPaste(true);
+        }
+        lastComp = panels.getSelectedComponent();
         
       }
-    });
+      });
   }
 
   public RestServiceEditorPane(RestServiceDescription toedit)
@@ -217,7 +204,6 @@ public class RestServiceEditorPane extends GRestServiceEditorPane
       if (reparse)
       {
         String txt = urldesc.getText().trim();
-        StringBuffer warnings;
         if (txt.length() > 0)
         {
           RestServiceDescription rsd = null;
@@ -227,6 +213,7 @@ public class RestServiceEditorPane extends GRestServiceEditorPane
             if (rsd.isValid())
             {
               parseWarnings.setVisible(false);
+              parseRes.setText("");
               initGuiWith(currentservice=rsd);
             }
             else
@@ -237,14 +224,16 @@ public class RestServiceEditorPane extends GRestServiceEditorPane
             }
           } catch (Throwable e)
           {
+            e.printStackTrace();
             parseRes.setText("\nParsing failed. An unrecoverable exception was thrown:\n"
                     + e.toString());
             parseWarnings.setVisible(true);
           }
         }
+        paste.revalidate();
       }
     }
-
+    
   }
 
   public static void main(String[] args)