All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.actelion.research.gui.fx.FXComponent Maven / Gradle / Ivy

There is a newer version: 2024.11.2
Show newest version
package com.actelion.research.gui.fx;

import com.actelion.research.gui.generic.GenericActionEvent;
import com.actelion.research.gui.generic.GenericComponent;
import com.actelion.research.gui.generic.GenericEventListener;
import javafx.scene.Node;

import java.util.ArrayList;

public class FXComponent implements GenericComponent {
	private Node mNode;
	private ArrayList> mConsumerList;

	public FXComponent(Node c) {
		mNode = c;
		mConsumerList = new ArrayList<>();
	}

	@Override
	public void addEventConsumer(GenericEventListener consumer) {
		mConsumerList.add(consumer);
	}

	@Override
	public void removeEventConsumer(GenericEventListener consumer) {
		mConsumerList.remove(consumer);
	}

	@Override
	public void setEnabled(boolean b) {
		if (mNode != null)
			mNode.disableProperty().set(!b);
	}

	public Node getNode() {
		return mNode;
	}

	@Override
	public void fireEvent(GenericActionEvent event) {
		for (GenericEventListener consumer:mConsumerList)
			consumer.eventHappened(event);
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy