/* * */ package ext.egantt.launcher; import ext.egantt.drawing.module.GradientColorModule; import ext.egantt.swing.GanttDrawingPartHelper; import ext.egantt.swing.GanttEntryHelper; import ext.egantt.swing.GanttTable; import ext.egantt.util.Hive; import ext.egantt.util.hive.ClassHive; import java.awt.BorderLayout; import java.awt.GridLayout; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.util.Date; import java.util.Random; import javax.swing.BoundedRangeModel; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollBar; import javax.swing.JScrollPane; import javax.swing.JSplitPane; import javax.swing.JViewport; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import com.egantt.model.drawing.DrawingState; import com.egantt.model.drawing.part.ListDrawingPart; import ext.egantt.model.drawing.state.BasicDrawingState; import com.egantt.swing.scroll.ScrollManager; public class JFrameLauncher extends JFrame { protected static class LocalWindowAdapter extends WindowAdapter { public void windowClosed(WindowEvent e) { System.exit(0); } protected LocalWindowAdapter() { } } public JFrameLauncher(String imagePath) { Hive.setHiveImpl(new ClassHive(getClass().getClassLoader())); java.awt.Image image = null;//(new ImageIcon(Hive.getURL(imagePath))).getImage(); if(image != null) setIconImage(image); setDefaultCloseOperation(2); addWindowListener(new LocalWindowAdapter()); } public void initialise(String arguments[]) { JPanel main = new JPanel(); main.setLayout(new GridLayout(1, 1, 3, 3)); JSplitPane splitPane = new JSplitPane(); splitPane.setOrientation(JSplitPane.HORIZONTAL_SPLIT); splitPane.setDividerLocation(600); main.add(splitPane); getContentPane().add(main); /* String[][] columnNames = { {"First Name", "Last Name", "# of Years"}}; final GanttEntryHelper helper = new GanttEntryHelper(); final GanttDrawingPartHelper partHelper = new GanttDrawingPartHelper(); // Data works the same with E-Gantt but in this example we are going // to specify a graphics object for rendering Object[][] data = { {"Mary", "Campione", createDrawingState(partHelper,0, 100, 3)}, {"Alison", "Huml",createDrawingState(partHelper, 0, 50, 4)}, {"Kathy", "Walrath", createDrawingState(partHelper, 0, 100, 10)}, {"Sharon", "Zakhour", createDrawingState(partHelper,10, 90, 6)}, {"Philip", "Milne",helper.createActivityEntry(new Date(0), new Date(100))} }; final GanttTable table = new GanttTable(data, columnNames); final GanttTable table1 = new GanttTable(data, columnNames); JScrollPane leftPane = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); leftPane.getViewport().setScrollMode(JViewport.SIMPLE_SCROLL_MODE); JScrollPane rihtPane = new JScrollPane(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); rihtPane.getViewport().setScrollMode(JViewport.SIMPLE_SCROLL_MODE); splitPane.setLeftComponent(leftPane); splitPane.setRightComponent(rihtPane); leftPane.setVerticalScrollBar(leftPane.getVerticalScrollBar()); rihtPane.setVerticalScrollBar(rihtPane.getVerticalScrollBar()); leftPane.setViewportView(table.getJTable()); rihtPane.setViewportView(table1.getJTable()); splitPane.setOneTouchExpandable(true); splitPane.setDividerLocation(this.getWidth()/2); splitPane.setDoubleBuffered(false);*/ } public static void main(String args[]) { JFrameLauncher frame = new JFrameLauncher("images/eGanttSTD.gif"); frame.setSize(800, 500); frame.setTitle("EGantt: Enterprise Gantt: [release] @see egantt.wikispaces.com"); frame.initialise(args); frame.setVisible(true); } private DrawingState createDrawingState(GanttDrawingPartHelper helper, int start, int finish, int segments) { BasicDrawingState state = helper.createDrawingState(); int offset; { int range = finish - start; offset = range / Math.max(segments, 1); } Random random = new Random(); ListDrawingPart part = helper.createDrawingPart(false); for (int i=start; i < finish; i=i+offset ) { String context = ""; switch (random.nextInt() % 3) { case 0 : context = GradientColorModule.BLUE_GRADIENT_CONTEXT; break; case 1 : context = GradientColorModule.RED_GRADIENT_CONTEXT; break; case 2 : context = GradientColorModule.PINK_GRADIENT_CONTEXT; break; default: context = GradientColorModule.GREEN_GRADIENT_CONTEXT; } helper.createActivityEntry(new Object(), new Date(i), new Date(i + offset), context, part); } state.addDrawingPart(part); return state; } private static final long serialVersionUID = 0x28f012c01a8adaedL; }