/* * @see toolbox.util.ui.SmartAction#runAction(java.awt.event.ActionEvent) */ public void runAction(ActionEvent e) throws Exception { armedAction_.actionPerformed(e); actions_.remove(armedAction_.getServiceTransition()); // Toggle if (armedAction_ == onAction_) armedAction_ = offAction_; else armedAction_ = onAction_; setName(armedAction_.getName()); actions_.put(armedAction_.getServiceTransition(), this); super.runAction(e); }
/** Builds the GUI. */ protected void buildView() { setLayout(new FlowLayout()); if (service_ instanceof Initializable) { actions_.put(ServiceTransition.INITIALIZE, new InitializeAction()); add(new JSmartButton((Action) actions_.get(ServiceTransition.INITIALIZE))); } if (service_ instanceof Startable) { startStopAction_ = new ActionProxy(startAction_); ServiceAction inner = (ServiceAction) startStopAction_.getProxy(); actions_.put(inner.getServiceTransition(), startStopAction_); add(new JSmartButton(startStopAction_)); } if (service_ instanceof Suspendable) { actions_.put(ServiceTransition.SUSPEND, new SuspendAction()); actions_.put(ServiceTransition.RESUME, new ResumeAction()); add(new JSmartButton((Action) actions_.get(ServiceTransition.SUSPEND))); add(new JSmartButton((Action) actions_.get(ServiceTransition.RESUME))); } if (service_ instanceof Destroyable) { actions_.put(ServiceTransition.DESTROY, new DestroyAction()); add(new JSmartButton((Action) actions_.get(ServiceTransition.DESTROY))); } add(currentStateLabel_); }
/** Creates a StartAction. */ public ToggleStartStopAction(ServiceAction onAction, ServiceAction offAction) { super(onAction.getServiceTransition(), onAction.getName(), false, false, null); onAction_ = onAction; offAction_ = offAction; armedAction_ = onAction_; setName(armedAction_.getName()); }
ServiceTransition getServiceTransition() { return armedAction_.getServiceTransition(); }