///******************************************************************************* // * Copyright (c) 2003, 2010 IBM Corporation and others. // * All rights reserved. This program and the accompanying materials // * are made available under the terms of the Eclipse Public License v1.0 // * which accompanies this distribution, and is available at // * http://www.eclipse.org/legal/epl-v10.html // * // * Contributors: // * IBM Corporation - initial API and implementation // *******************************************************************************/ //package org.eclipse.gef.examples.flow.ui; // //import java.io.ByteArrayInputStream; //import java.io.ByteArrayOutputStream; //import java.io.InputStream; //import java.io.ObjectOutputStream; // //import org.eclipse.core.resources.IFile; //import org.eclipse.gef.examples.flow.FlowPlugin; //import org.eclipse.gef.examples.flow.model.Activity; //import org.eclipse.gef.examples.flow.model.ActivityDiagram; //import org.eclipse.gef.examples.flow.model.ParallelActivity; //import org.eclipse.gef.examples.flow.model.SequentialActivity; //import org.eclipse.gef.examples.flow.model.Transition; //import org.eclipse.jface.resource.ImageDescriptor; //import org.eclipse.jface.viewers.IStructuredSelection; //import org.eclipse.swt.widgets.Composite; //import org.eclipse.ui.IWorkbench; //import org.eclipse.ui.IWorkbenchPage; //import org.eclipse.ui.IWorkbenchWindow; //import org.eclipse.ui.dialogs.WizardNewFileCreationPage; //import org.eclipse.ui.ide.IDE; // ///** // * FlowWizardPage1 // * // * @author Daniel Lee // */ //public class FlowWizardPage1 extends WizardNewFileCreationPage { // // private IWorkbench workbench; // private static int exampleCount = 1; // // public FlowWizardPage1(IWorkbench aWorkbench, IStructuredSelection selection) { // super("sampleFlowPage1", selection); // this.setTitle("Create Flow Example File"); // this.setDescription("Create a new flow file resource"); // this.setImageDescriptor(ImageDescriptor.createFromFile( // FlowPlugin.class, "images/flowbanner.gif")); // this.workbench = aWorkbench; // } // // /** // * @see org.eclipse.jface.dialogs.IDialogPage#createControl(org.eclipse.swt.widgets.Composite) // */ // public void createControl(Composite parent) { // super.createControl(parent); // this.setFileName("flowExample" + exampleCount + ".flow"); // setPageComplete(validatePage()); // } // // private ActivityDiagram createWakeupModel() { // ActivityDiagram diagram = new ActivityDiagram(); // SequentialActivity wakeup = new SequentialActivity(); // Activity backToSleep = new Activity("Go back to sleep"); // Activity turnOff = new Activity("Turn off alarm"); // wakeup.setName("Wake up"); // wakeup.addChild(new Activity("Hit snooze button")); // wakeup.addChild(backToSleep); // wakeup.addChild(turnOff); // wakeup.addChild(new Activity("Get out of bed")); // diagram.addChild(wakeup); // // SequentialActivity bathroom = new SequentialActivity(); // bathroom.addChild(new Activity("Brush teeth")); // bathroom.addChild(new Activity("Take shower")); // bathroom.addChild(new Activity("Comb hair")); // bathroom.setName("Bathroom activities"); // diagram.addChild(bathroom); // // ParallelActivity relaxation = new ParallelActivity(); // relaxation.addChild(new Activity("Watch cartoons")); // relaxation.addChild(new Activity("Power Yoga")); // relaxation.setName("Morning relaxation ritual"); // diagram.addChild(relaxation); // // Activity sleep, alarm, alarm2, clothes, spare, no, yes, drive; // diagram.addChild(sleep = new Activity("Sleep.....")); // diagram.addChild(alarm = new Activity("Alarm!!!")); // diagram.addChild(alarm2 = new Activity("Alarm!!!")); // diagram.addChild(clothes = new Activity("Put on clothes")); // diagram.addChild(spare = new Activity("Is there time to spare?")); // diagram.addChild(yes = new Activity("YES")); // diagram.addChild(no = new Activity("NO")); // diagram.addChild(drive = new Activity("Drive to work")); // // new Transition(sleep, alarm); // new Transition(alarm, wakeup); // new Transition(backToSleep, alarm2); // new Transition(alarm2, turnOff); // new Transition(wakeup, bathroom); // new Transition(bathroom, clothes); // new Transition(clothes, spare); // new Transition(spare, yes); // new Transition(spare, no); // new Transition(yes, relaxation); // new Transition(no, drive); // new Transition(relaxation, drive); // return diagram; // } // // protected InputStream getInitialContents() { // ActivityDiagram diag = createWakeupModel(); // ByteArrayInputStream bais = null; // try { // ByteArrayOutputStream baos = new ByteArrayOutputStream(); // ObjectOutputStream oos = new ObjectOutputStream(baos); // oos.writeObject(diag); // oos.flush(); // oos.close(); // baos.close(); // bais = new ByteArrayInputStream(baos.toByteArray()); // bais.close(); // } catch (Exception e) { // e.printStackTrace(); // } // return bais; // } // // public boolean finish() { // IFile newFile = createNewFile(); // if (newFile == null) // return false; // ie.- creation was unsuccessful // // // Since the file resource was created fine, open it for editing // // iff requested by the user // try { // IWorkbenchWindow dwindow = workbench.getActiveWorkbenchWindow(); // IWorkbenchPage page = dwindow.getActivePage(); // if (page != null) // IDE.openEditor(page, newFile, true); // } catch (org.eclipse.ui.PartInitException e) { // e.printStackTrace(); // return false; // } // exampleCount++; // return true; // } // }