Revision: 1359
          http://svn.sourceforge.net/spring-rich-c/?rev=1359&view=rev
Author:   peterdb
Date:     2006-09-01 03:05:14 -0700 (Fri, 01 Sep 2006)

Log Message:
-----------
fixed event sequence of pagecomponents (create control -> opened -> focus 
gained)

Modified Paths:
--------------
    
trunk/spring-richclient/sandbox/src/main/java/org/springframework/richclient/application/tabbed/TabbedApplicationPage.java

Modified: 
trunk/spring-richclient/sandbox/src/main/java/org/springframework/richclient/application/tabbed/TabbedApplicationPage.java
===================================================================
--- 
trunk/spring-richclient/sandbox/src/main/java/org/springframework/richclient/application/tabbed/TabbedApplicationPage.java
  2006-08-31 15:24:52 UTC (rev 1358)
+++ 
trunk/spring-richclient/sandbox/src/main/java/org/springframework/richclient/application/tabbed/TabbedApplicationPage.java
  2006-09-01 10:05:14 UTC (rev 1359)
@@ -43,8 +43,10 @@
     private JTabbedPane tabbedPane;
     private List components = new ArrayList();
     private int tabPlacement = -1;
-    private int tabLayoutPolicy= -1;
+    private int tabLayoutPolicy = -1;
 
+    private boolean addingComponent;
+
     protected JComponent createControl() {
         tabbedPane = new JTabbedPane();
         if( tabPlacement != -1 ) {
@@ -56,7 +58,8 @@
 
         tabbedPane.addChangeListener( new ChangeListener() {
             public void stateChanged( ChangeEvent e ) {
-                if( tabbedPane.getSelectedIndex() >= 0 ) {
+                // if we're adding a component, ignore change of active 
component
+                if( !addingComponent && tabbedPane.getSelectedIndex() >= 0 ) {
                     setActiveComponent( getComponent( 
tabbedPane.getSelectedIndex() ) );
                 }
             }
@@ -89,9 +92,14 @@
     }
 
     protected void doAddPageComponent( PageComponent pageComponent ) {
-        components.add( pageComponent );
-        tabbedPane.addTab( pageComponent.getDisplayName(), 
pageComponent.getIcon(), pageComponent.getContext()
-                .getPane().getControl(), pageComponent.getCaption() );
+        try {
+            addingComponent = true;
+            components.add( pageComponent );
+            tabbedPane.addTab( pageComponent.getDisplayName(), 
pageComponent.getIcon(), pageComponent.getContext()
+                    .getPane().getControl(), pageComponent.getCaption() );
+        } finally {
+            addingComponent = false;
+        }
     }
 
     protected void doRemovePageComponent( PageComponent pageComponent ) {


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
spring-rich-c-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/spring-rich-c-cvs

Reply via email to