mirror of
https://github.com/sojamo/controlp5
synced 2024-12-23 19:53:49 +01:00
99 lines
1.9 KiB
Plaintext
99 lines
1.9 KiB
Plaintext
|
/**
|
||
|
* ControlP5 Controlframe
|
||
|
* with controlP5 2.0 all java.awt dependencies have been removed
|
||
|
* as a consequence the option to display controllers in a separate
|
||
|
* window had to be removed as well.
|
||
|
* this example shows you how to create a java.awt.frame and use controlP5
|
||
|
*
|
||
|
* by Andreas Schlegel, 2012
|
||
|
* www.sojamo.de/libraries/controlp5
|
||
|
*
|
||
|
*/
|
||
|
|
||
|
import java.awt.Frame;
|
||
|
import java.awt.BorderLayout;
|
||
|
import controlP5.*;
|
||
|
|
||
|
private ControlP5 cp5;
|
||
|
|
||
|
ControlFrame cf;
|
||
|
|
||
|
int def;
|
||
|
|
||
|
void setup() {
|
||
|
size(400, 400);
|
||
|
cp5 = new ControlP5(this);
|
||
|
|
||
|
// by calling function addControlFrame() a
|
||
|
// new frame is created and an instance of class
|
||
|
// ControlFrame is instanziated.
|
||
|
cf = addControlFrame("extra", 200,200);
|
||
|
|
||
|
// add Controllers to the 'extra' Frame inside
|
||
|
// the ControlFrame class setup() method below.
|
||
|
|
||
|
|
||
|
}
|
||
|
|
||
|
void draw() {
|
||
|
background(def);
|
||
|
}
|
||
|
|
||
|
ControlFrame addControlFrame(String theName, int theWidth, int theHeight) {
|
||
|
Frame f = new Frame(theName);
|
||
|
ControlFrame p = new ControlFrame(this, theWidth, theHeight);
|
||
|
f.add(p);
|
||
|
p.init();
|
||
|
f.setTitle(theName);
|
||
|
f.setSize(p.w, p.h);
|
||
|
f.setLocation(100, 100);
|
||
|
f.setResizable(false);
|
||
|
f.setVisible(true);
|
||
|
return p;
|
||
|
}
|
||
|
|
||
|
|
||
|
// the ControlFrame class extends PApplet, so we
|
||
|
// are creating a new processing applet inside a
|
||
|
// new frame with a controlP5 object loaded
|
||
|
public class ControlFrame extends PApplet {
|
||
|
|
||
|
int w, h;
|
||
|
|
||
|
int abc = 100;
|
||
|
|
||
|
public void setup() {
|
||
|
size(w, h);
|
||
|
frameRate(25);
|
||
|
cp5 = new ControlP5(this);
|
||
|
cp5.addSlider("abc").setRange(0, 255).setPosition(10,10);
|
||
|
cp5.addSlider("def").plugTo(parent,"def").setRange(0, 255).setPosition(10,30);
|
||
|
}
|
||
|
|
||
|
public void draw() {
|
||
|
background(abc);
|
||
|
}
|
||
|
|
||
|
private ControlFrame() {
|
||
|
}
|
||
|
|
||
|
public ControlFrame(Object theParent, int theWidth, int theHeight) {
|
||
|
parent = theParent;
|
||
|
w = theWidth;
|
||
|
h = theHeight;
|
||
|
}
|
||
|
|
||
|
|
||
|
public ControlP5 control() {
|
||
|
return cp5;
|
||
|
}
|
||
|
|
||
|
|
||
|
ControlP5 cp5;
|
||
|
|
||
|
Object parent;
|
||
|
|
||
|
|
||
|
}
|
||
|
|