Changeset 389

Show
Ignore:
Timestamp:
07/28/10 13:11:51 (2 years ago)
Author:
ke
Message:

Clear step counter before loading a saved session. (After some architecture changes, we will be able to show the step count of the loaded session. And ultimately, we will even be able to continue the saved session, continuing to update the step counter. Stay tuned for this and further groundbreaking developments at the cutting edge of present-day technology.)

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • kahina/trunk/src/org/kahina/core/gui/KahinaMainWindow.java

    r378 r389  
    1111import org.kahina.core.event.KahinaEvent; 
    1212import org.kahina.core.event.KahinaEventTypes; 
     13import org.kahina.core.event.KahinaSessionEvent; 
    1314import org.kahina.core.event.KahinaSystemEvent; 
    1415import org.kahina.core.event.KahinaTreeEvent; 
     
    2223 
    2324        public KahinaWindowManager windowManager; 
    24          
     25 
    2526        private int stepCount = 0; 
    2627 
     
    5455                this.validate(); 
    5556 
    56                 KahinaRunner.getControl().registerListener("system", this); 
     57                KahinaRunner.getControl().registerListener(KahinaEventTypes.SYSTEM, this); 
     58                KahinaRunner.getControl().registerListener(KahinaEventTypes.SESSION, this); 
    5759                this.addWindowListener(new WindowAdapter() 
    5860                { 
     
    7678                if (event instanceof KahinaTreeEvent) 
    7779                { 
    78                         KahinaTreeEvent treeEvent = (KahinaTreeEvent) event; 
    79  
    80                         if (treeEvent.getTreeEventType() == KahinaTreeEventType.NEW_NODE) 
    81                         { 
    82                                 incrementStepCount(); 
    83                         } 
     80                        processTreeEvent((KahinaTreeEvent) event); 
    8481                } else if (event instanceof KahinaSystemEvent) 
    8582                { 
    8683                        processSystemEvent((KahinaSystemEvent) event); 
     84                } else if (event instanceof KahinaSessionEvent) 
     85                { 
     86                        processSessionEvent((KahinaSessionEvent) event); 
     87                } 
     88        } 
     89 
     90        private void processSessionEvent(KahinaSessionEvent event) 
     91        { 
     92                if (event.getSessionEventType() == KahinaSessionEvent.LOAD_SESSION) 
     93                { 
     94                        // TODO This is a kludge, see below. 
     95                        setTitle("Kahina"); 
     96                } 
     97        } 
     98 
     99        private void processTreeEvent(KahinaTreeEvent event) 
     100        { 
     101                if (event.getTreeEventType() == KahinaTreeEventType.NEW_NODE) 
     102                { 
     103                        // TODO This is a kludge, we should synchronize the step 
     104                        // count with the state. But first, the architecture needs to be 
     105                        // changed to allow access to the state. 
     106                        setTitle("Kahina (" + event.getFirstID() + ")"); 
    87107                } 
    88108        } 
     
    95115                } 
    96116        } 
    97  
    98         private void incrementStepCount() 
    99         { 
    100                 stepCount++; 
    101                 setTitle("Kahina (" + stepCount + ")"); 
    102         } 
    103117}