/* * Licensed Materials - Property of Perforce Software, Inc. * © Copyright Perforce Software, Inc. 2014, 2021 * © Copyright IBM Corp. 2009, 2014 * © Copyright ILOG 1996, 2009 * All Rights Reserved. * * Note to U.S. Government Users Restricted Rights: * The Software and Documentation were developed at private expense and * are "Commercial Items" as that term is defined at 48 CFR 2.101, * consisting of "Commercial Computer Software" and * "Commercial Computer Software Documentation", as such terms are * used in 48 CFR 12.212 or 48 CFR 227.7202-1 through 227.7202-4, * as applicable. */ import java.awt.BorderLayout; import java.awt.Container; import ilog.views.diagrammer.IlvDiagrammer; import ilog.views.diagrammer.application.IlvDiagrammerFrame; import ilog.views.diagrammer.application.IlvDiagrammerToolBar; import ilog.views.util.IlvProductUtil; /** * This example shows how JViews Diagrammer can be used to monitor a running * process and display the state of the process in real time. * * The example loads a project file containing a process diagram, and starts a * "Runner" object that simulates changes in the process state. */ public class DiagrammerMonitoringDemo extends IlvDiagrammerFrame { public static void main(final String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() { Override public void run() { new DiagrammerMonitoringDemo().init(args); } }); } public DiagrammerMonitoringDemo() { super(new String[] { "-data", "data/hotline.idpr", "-simple" }); // This sample uses JViews Diagrammer features. When deploying an // application that includes this code, you need to be in possession // of a Perforce JViews Diagrammer Deployment license. IlvProductUtil.DeploymentLicenseRequired(IlvProductUtil.JViews_Diagrammer_Deployment); } Override public void init(Container contentPane) { super.init(contentPane); IlvDiagrammerToolBar toolbar = new IlvDiagrammerToolBar(); toolbar.addAction(new DiagramRunner.Run() { Override protected DiagramRunner createRunner(IlvDiagrammer diagrammer) { return new DiagramRunner.Flow(diagrammer, 1000); } }); toolbar.addAction(new DiagramRunner.Loop()); contentPane.add(toolbar, BorderLayout.NORTH); } }