/*
* @(#)AtomicControl.java 1.2 02/08/21
*
* Copyright (c) 1996-2002 Sun Microsystems, Inc. All rights reserved.
*/
package com.sun.media.controls;
import javax.media.*;
import com.sun.media.*;
/**
* Some stuff that could be common to all controls. ???
*/
public interface AtomicControl extends Control {
/**
* Returns true if this control is available on the default control
* panel returned for the player in question.
*/
public boolean isDefault();
/**
* Specify whether this control should be available on the control panel.
* ???
*/
public void setVisible(boolean visible);
/**
* Returns true if this control is available on the control panel. ???
*/
public boolean getVisible();
/**
* Set the enabled/disabled state of the control. Can be useful to
* temporarily gray out a control due to some constraints.
*/
public void setEnabled(boolean enabled);
/**
* Returns the enabled/disabled state of the control.
*/
public boolean getEnabled();
/**
* Returns the control group to which this control belongs, if any. Otherwise
* it returns null.
*/
public Control getParent();
/**
* Adds a listener that should be informed if any state of this control
* changes.
*/
public void addControlChangeListener(ControlChangeListener ccl);
/**
* Remove an already added listener. Does nothing if the listener was not
* previously added.
*/
public void removeControlChangeListener(ControlChangeListener ccl);
/**
* Returns true if the control is a read-only control and no value can
* be set on it. For example, progress controls that display status
* information will mostly be read-only.
*/
public boolean isReadOnly();
/**
* <B> Sun specific - </B> Returns the description string for this control.
*/
public String getTip();
/**
* <B> Sun specific - </B>
* Sets the description string for this control. Should be short since it
* will be displayed as a tool tip when the mouse hovers over the control
* for a few seconds.
*/
public void setTip(String tip);
}
|