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

net.vectorpublish.desktop.vp.api.layer.LayerItemContribution Maven / Gradle / Ivy

The newest version!
/*
 * Copyright (c) 2016, Peter Rader. All rights reserved.
 *  ___ ___               __                 ______         __     __  __         __
 * |   |   |.-----..----.|  |_ .-----..----.|   __ \.--.--.|  |--.|  ||__|.-----.|  |--.
 * |   |   ||  -__||  __||   _||  _  ||   _||    __/|  |  ||  _  ||  ||  ||__ --||     |
 *  \_____/ |_____||____||____||_____||__|  |___|   |_____||_____||__||__||_____||__|__|
 *
 * http://www.gnu.org/licenses/gpl-3.0.html
 */
package net.vectorpublish.desktop.vp.api.layer;

import javax.swing.JLabel;

import net.vectorpublish.desktop.vp.api.vpd.VectorPublishNode;

/**
 * Listener for contributions.
 */
public interface LayerItemContribution {
	/**
	 * Decorates a {@link VectorPublishNode}.
	 *
	 * @param decorationLabel
	 *            The representation of the item in the tree as an laben, never
	 *            null.
	 * @param value
	 *            The {@link VectorPublishNode} to presentate, never
	 *            null.
	 * @param selected
	 *            true if it should be painted as an selected node,
	 *            false if not.
	 * @param expanded
	 *            true if it should be painted as an expanded node,
	 *            false if not.
	 * @param leaf
	 *            true if it should be painted as an leaf,
	 *            false if it should be painted as an branch.
	 */
	void contribute(JLabel decorationLabel, T value, boolean selected, boolean expanded, boolean leaf);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy