View Javadoc

1   /*
2    *  File: SwingEventExample.java 
3    *  Copyright (c) 2004-2009  Peter Kliem (Peter.Kliem@jaret.de)
4    *  A commercial license is available, see http://www.jaret.de.
5    *
6    *  This program is free software; you can redistribute it and/or modify
7    *  it under the terms of the GNU General Public License as published by
8    *  the Free Software Foundation; either version 2 of the License, or
9    *  (at your option) any later version.
10   *
11   *  This program is distributed in the hope that it will be useful,
12   *  but WITHOUT ANY WARRANTY; without even the implied warranty of
13   *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14   *  GNU General Public License for more details.
15   *
16   *  You should have received a copy of the GNU General Public License
17   *  along with this program; if not, write to the Free Software
18   *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
19   */
20  package de.jaret.examples.timebars.events.swing;
21  
22  import java.awt.BorderLayout;
23  
24  import javax.swing.JFrame;
25  
26  import de.jaret.examples.timebars.events.model.ModelCreator;
27  import de.jaret.examples.timebars.events.model.SampleEvent;
28  import de.jaret.examples.timebars.events.swing.renderer.EventRenderer;
29  import de.jaret.util.ui.timebars.TimeBarViewerInterface;
30  import de.jaret.util.ui.timebars.mod.DefaultIntervalModificator;
31  import de.jaret.util.ui.timebars.model.TimeBarModel;
32  import de.jaret.util.ui.timebars.swing.TimeBarViewer;
33  
34  /***
35   * Swing: example showing how to render events (i.e. intervals without duration).
36   * 
37   * @author Peter Kliem
38   * @version $Id: SwingTimeBarExample.java 202 2007-01-15 22:00:02Z olk $
39   */
40  public class SwingEventExample {
41  	static TimeBarViewer _tbv;
42  	
43      public static void main(String[] args) {
44      	JFrame f = new JFrame(SwingEventExample.class.getName());
45          f.setSize(800, 500);
46          f.getContentPane().setLayout(new BorderLayout());
47          f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
48  
49          TimeBarModel model = ModelCreator.createModel();
50          _tbv = new TimeBarViewer(model);
51  
52          _tbv.addIntervalModificator(new DefaultIntervalModificator());
53  
54          _tbv.setPixelPerSecond(0.05);
55          _tbv.setDrawRowGrid(true);
56          
57          _tbv.setDrawOverlapping(false);
58          _tbv.setSelectionDelta(6);
59          _tbv.setTimeScalePosition(TimeBarViewerInterface.TIMESCALE_POSITION_TOP);
60          
61          _tbv.registerTimeBarRenderer(SampleEvent.class, new EventRenderer());
62          
63          f.getContentPane().add(_tbv, BorderLayout.CENTER);
64  
65  //        f.getContentPane().add(new OverlapControlPanel(_tbv), BorderLayout.SOUTH);
66          
67          f.setVisible(true);
68  
69  
70      }
71  }