Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: org/altara/mars/swingui/StatusChangeThreadAdapter.java


1   /* MARS Network Monitor Swing User Interface
2      Copyright (C) 1999 Brian H. Trammell
3      Copyright (C) 2002 Leapfrog Research & Development, LLC
4   
5     This program is free software; you can redistribute it and/or
6     modify it under the terms of the GNU General Public License
7     as published by the Free Software Foundation; either version 2
8     of the License, or (at your option) any later version.
9   
10    This program is distributed in the hope that it will be useful,
11    but WITHOUT ANY WARRANTY; without even the implied warranty of
12    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13    GNU General Public License for more details.
14    
15    You should have received a copy of the GNU General Public License
16    along with this program; if not, it is available at 
17    http:///www.gnu.org/copyleft/gpl.html, or by writing to the
18    Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19    Boston, MA  02111-1307, USA.
20  */
21  
22  package org.altara.mars.swingui;
23  
24  import org.altara.mars.*;
25  import org.altara.mars.engine.*;
26  import java.util.*;
27  import java.awt.*;
28  import java.awt.event.*;
29  import javax.swing.*;
30  import javax.swing.tree.*;
31  import javax.swing.event.*;
32  
33  /** Wraps a StatusChangeListener to ensure statusChanged() is called in the
34    Swing event dispatch thread.
35  */
36  
37  public class StatusChangeThreadAdapter implements StatusChangeListener {
38  
39    private StatusChangeListener inner;
40  
41    public StatusChangeThreadAdapter(StatusChangeListener inner) {
42      this.inner = inner;
43    }
44  
45    public void statusChanged(final StatusChangeEvent sce) {
46      SwingUtilities.invokeLater(new Runnable() {
47        public void run() {
48          inner.statusChanged(sce);
49        }
50      });
51    }
52  }