/*
*
* Copyright ( c ) 2007 , 2011 , Oracle and / or its affiliates . All rights reserved .
*
* Redistribution and use in source and binary forms , with or without
* modification , are permitted provided that the following conditions
* are met :
*
* - Redistributions of source code must retain the above copyright
* notice , this list of conditions and the following disclaimer .
*
* - Redistributions in binary form must reproduce the above copyright
* notice , this list of conditions and the following disclaimer in the
* documentation and / or other materials provided with the distribution .
*
* - Neither the name of Oracle nor the names of its
* contributors may be used to endorse or promote products derived
* from this software without specific prior written permission .
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS " AS
* IS " AND ANY EXPRESS OR IMPLIED WARRANTIES , INCLUDING , BUT NOT LIMITED TO ,
* THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
* PURPOSE ARE DISCLAIMED . IN NO EVENT SHALL THE COPYRIGHT OWNER OR
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT , INDIRECT , INCIDENTAL , SPECIAL ,
* EXEMPLARY , OR CONSEQUENTIAL DAMAGES ( INCLUDING , BUT NOT LIMITED TO ,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES ; LOSS OF USE , DATA , OR
* PROFITS ; OR BUSINESS INTERRUPTION ) HOWEVER CAUSED AND ON ANY THEORY OF
* LIABILITY , WHETHER IN CONTRACT , STRICT LIABILITY , OR TORT ( INCLUDING
* NEGLIGENCE OR OTHERWISE ) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE , EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE .
*/
package java2d;
import java.awt.BorderLayout;
import java.awt.GridBagLayout;
import javax.swing.JPanel;
import javax.swing.border.BevelBorder;
import javax.swing.border.CompoundBorder;
import javax.swing.border.EmptyBorder;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
/**
* Panel that holds the Demo groups , Controls and Monitors for each tab .
* It ' s a special " always visible " panel for the Controls , MemoryMonitor &
* PerformanceMonitor .
*/
@SuppressWarnings("serial" )
public class GlobalPanel extends JPanel implements ChangeListener {
private final DemoInstVarsAccessor demoInstVars;
private JPanel p;
private int index;
public GlobalPanel(DemoInstVarsAccessor demoInstVars) {
this .demoInstVars = demoInstVars;
setLayout(new BorderLayout());
p = new JPanel(new GridBagLayout());
EmptyBorder eb = new EmptyBorder(5 , 0 , 5 , 5 );
BevelBorder bb = new BevelBorder(BevelBorder.LOWERED);
p.setBorder(new CompoundBorder(eb, bb));
J2Ddemo.addToGridBag(p, demoInstVars.getControls(), 0 , 0 , 1 , 1 , 0 , 0 );
J2Ddemo.addToGridBag(p, demoInstVars.getMemoryMonitor(), 0 , 1 , 1 , 1 , 0 , 0 );
J2Ddemo.addToGridBag(p, demoInstVars.getPerformanceMonitor(), 0 , 2 , 1 , 1 , 0 , 0 );
add(demoInstVars.getIntro());
}
@Override
public void stateChanged(ChangeEvent e) {
demoInstVars.getGroup()[index].shutDown(demoInstVars.getGroup()[index].getPanel());
if (demoInstVars.getTabbedPane().getSelectedIndex() == 0 ) {
demoInstVars.getMemoryMonitor().surf.stop();
demoInstVars.getPerformanceMonitor().surf.stop();
removeAll();
add(demoInstVars.getIntro());
demoInstVars.getIntro().start();
} else {
if (getComponentCount() == 1 ) {
demoInstVars.getIntro().stop();
remove(demoInstVars.getIntro());
add(p, BorderLayout.EAST);
if (demoInstVars.getMemoryCB().getState()) {
demoInstVars.getMemoryMonitor().surf.start();
}
if (demoInstVars.getPerfCB().getState()) {
demoInstVars.getPerformanceMonitor().surf.start();
}
} else {
remove(demoInstVars.getGroup()[index]);
}
index = demoInstVars.getTabbedPane().getSelectedIndex() - 1 ;
add(demoInstVars.getGroup()[index]);
demoInstVars.getGroup()[index].setup(false );
}
revalidate();
}
}
Messung V0.5 in Prozent C=84 H=92 G=87
¤ Dauer der Verarbeitung: 0.52 Sekunden
(vorverarbeitet am 2026-06-11)
¤
*© Formatika GbR, Deutschland