API Overview API Index Package Overview Direct link to this page
JDK 1.6
  javax.sound.sampled. CompoundControl View Javadoc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124

/*
 * @(#)CompoundControl.java	1.11 05/11/17
 *
 * Copyright 2006 Sun Microsystems, Inc. All rights reserved.
 * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */

package javax.sound.sampled;

/**
 * A <code>CompoundControl</code>, such as a graphic equalizer, provides control
 * over two or more related properties, each of which is itself represented as
 * a <code>Control</code>.
 *
 * @author Kara Kytle
 * @version 1.11, 05/11/17
 * @since 1.3
 */
public abstract class CompoundControl extends Control {
    
    
    // TYPE DEFINES
    
    
    // INSTANCE VARIABLES
    
    
    /**
     * The set of member controls.
     */
    private Control[] controls;
    
    
    
    // CONSTRUCTORS
    
    
    /**
     * Constructs a new compound control object with the given parameters.
     *
     * @param type the type of control represented this compound control object
     * @param memberControls the set of member controls
     */
    protected CompoundControl(Type type, Control[] memberControls) {
	
	super(type);
	this.controls = memberControls;
    }
    
    
    
    // METHODS
    
    
    /**
     * Returns the set of member controls that comprise the compound control.
     * @return the set of member controls.
     */
    public Control[] getMemberControls() {
	
	Control[] localArray = new Control[controls.length];
	
	for (int i = 0; i < controls.length; i++) {
	    localArray[i] = controls[i];
	}
	
	return localArray;
    }
    
    
    // ABSTRACT METHOD IMPLEMENTATIONS: CONTROL
    
    
    /**
     * Provides a string representation of the control
     * @return a string description
     */
    public String toString() {
	
	StringBuffer buf = new StringBuffer();
	for (int i = 0; i < controls.length; i++) {
	    if (i != 0) {
		buf.append(", ");
		if ((i + 1) == controls.length) {
		    buf.append("and ");
		}
	    }
	    buf.append(controls[i].getType());
	}
	
	return new String(getType() + " Control containing " + buf + " Controls.");
    }
    
    
    // INNER CLASSES
    
    
    /**
     * An instance of the <code>CompoundControl.Type</code> inner class identifies one kind of
     * compound control.  Static instances are provided for the
     * common types.
     *
     * @author Kara Kytle
     * @version 1.11, 05/11/17
     * @since 1.3
     */
    public static class Type extends Control.Type {
	
	
	// TYPE DEFINES
	
	// CONSTRUCTOR
	
	
	/**
	 * Constructs a new compound control type.
	 * @param name	the name of the new compound control type
	 */
	protected Type(String name) {
	    super(name);
	}
    } // class Type
    
} // class CompoundControl

Generated By: JavaOnTracks Doclet 0.1.4     ©Thibaut Colar