/*
* Title: japlot.jaxodraw
* Description: Graphical user interface for drawing Feynman diagrams
* @author Daniele Binosi
* @author Lukas Theussl
Copyright (C) 2003-2006, Daniele Binosi and Lukas Theussl
See the file LICENSE in the source distribution home directory
for a full copy of the GPL (GNU General Public License).
This file is part of japlot.jaxodraw.
japlot.jaxodraw is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
japlot.jaxodraw is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
package japlot.jaxodraw;
import japlot.Global;
import japlot.MemoryMonitor;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.io.File;
import java.util.ResourceBundle;
import javax.swing.BorderFactory;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.border.Border;
import javax.swing.border.EtchedBorder;
/** Displays the flag panel. */
public class JaxoFlags extends JPanel {
private JaxoMainPanel thePanel;
private ResourceBundle language =
ResourceBundle.getBundle(JaxoPrefs.getPref(JaxoPrefs.PREF_LANGUAGE));
private JLabel controlFlag;
private JLabel coordFlag;
private JLabel fileFlag;
private String controlPrefix = language.getString("Current_mode:");
private String coordPrefix = "(x,y) = ";
private String filePrefix = language.getString("Current_Dir:");
private Border raisedetched =
BorderFactory.createEtchedBorder(EtchedBorder.RAISED);
//private Border loweredetched =
// BorderFactory.createEtchedBorder(EtchedBorder.LOWERED);
// private Border compound =
// BorderFactory.createCompoundBorder(loweredetched, raisedetched);
// private Border raisedbevel = BorderFactory.createRaisedBevelBorder();
// private Border loweredbevel = BorderFactory.createLoweredBevelBorder();
/** Consructor: displays the panel containing the current mode and the panel
* containing the coordinates.
* @param mainPanel Instance of the main panel
*/
public JaxoFlags(JaxoMainPanel mainPanel) {
this.thePanel = mainPanel;
this.setLayout(new BorderLayout());
this.setBorder(new javax.swing.border.EtchedBorder());
this.add(Global.statusbar, BorderLayout.WEST);
MemoryMonitor memMon = new MemoryMonitor();
memMon.setPreferredSize(new java.awt.Dimension(65, 14));
memMon.setMinimumSize(new java.awt.Dimension(30, 10));
this.add(memMon, BorderLayout.EAST);
// add(infoPanel);
/*
controlFlag = new label(controlPrefix, label.CENTER);
JPanel controlFlagPanel = new JPanel();
controlFlagPanel.setLayout(new BorderLayout());
controlFlagPanel.add(controlFlag, BorderLayout.CENTER);
controlFlagPanel.setBorder(raisedetched);
controlFlagPanel.setMinimumSize(new Dimension(270, 30));
controlFlagPanel.setPreferredSize(new Dimension(270, 30));
coordFlag = new label(coordPrefix, label.CENTER);
JPanel coordFlagPanel = new JPanel();
coordFlagPanel.setLayout(new BorderLayout());
coordFlagPanel.add(coordFlag, BorderLayout.CENTER);
coordFlagPanel.setBorder(raisedetched);
coordFlagPanel.setMinimumSize(new Dimension(170, 30));
coordFlagPanel.setPreferredSize(new Dimension(170, 30));
fileFlag = new label(filePrefix, label.CENTER);
JPanel fileFlagPanel = new JPanel();
fileFlagPanel.setLayout(new BorderLayout());
fileFlagPanel.add(fileFlag, BorderLayout.CENTER);
fileFlagPanel.setBorder(raisedetched);
fileFlagPanel.setMinimumSize(new Dimension(390, 30));
fileFlagPanel.setPreferredSize(new Dimension(490, 30));
GridBagLayout gridbag = new GridBagLayout();
GridBagConstraints c = new GridBagConstraints();
setLayout(gridbag);
c.gridx = 0;
c.gridy = 0;
gridbag.setConstraints(fileFlagPanel, c);
add(fileFlagPanel);
c.gridx = 1;
c.gridy = 0;
gridbag.setConstraints(controlFlagPanel, c);
add(controlFlagPanel);
c.gridx = 2;
c.gridy = 0;
gridbag.setConstraints(coordFlagPanel, c);
add(coordFlagPanel);
*/
}
/** Sets the current mode in the flag panel.
* @param control The current mode to be set.
*/
public final void setControlFlagText(String control) {
Global.showMessage( controlPrefix + control );
// controlFlag.setText(controlPrefix + control);
}
/** Sets the coordinates in the flag panel.
* @param coord The coordinates to be set.
*/
public final void setCoordFlagText(String coord) {
// Global.showMessage( coordPrefix + coord);
Global.showStatusBarText(coordPrefix + coord);
// coordFlag.setText(coordPrefix + coord);
}
/** Sets the file name in the flag panel.
* @param filename The coordinates to be set.
*/
public final void setFileFlagText(String filename) {
// Global.showMessage();
/*
// Internationalize Current dir:
// File f = new File(filename);
int max = 46;
if (filename.length() != 0) {
filename =
filename.substring(0, filename.lastIndexOf(File.separator) + 1);
if (filename.length() > max) {
filename =
filename.substring(filename.length() - max,
filename.length());
fileFlag.setText(filePrefix + " ...".concat(filename));
} else {
fileFlag.setText(filePrefix + " " + filename);
}
} else {
filename = japlot.jaxodraw.getCurDir().concat(File.separator);
if (filename.length() > max) {
filename =
filename.substring(filename.length() - max,
filename.length());
fileFlag.setText(filePrefix + " ...".concat(filename));
} else {
fileFlag.setText(filePrefix + " " + filename);
}
}
*/
}
/** Sets the text in the flag panel in different languages.
* @param languageString A string specifying the language to be set.
*/
public final void setLanguage(String languageString) {
// Global.showMessage( languageString) ;
/*
language = ResourceBundle.getBundle(languageString);
controlPrefix = language.getString("Current_mode:");
filePrefix = language.getString("Current_Dir:");
setFileFlagText(thePanel.getCanvas().getCanvasGraph().getSaveFileName());
if (thePanel.isParticleMode()) {
int j = thePanel.getPbtPanel().getIndex(thePanel.getMode());
setControlFlagText(thePanel.getPbtPanel().getParticleFlagModes(j));
} else if (thePanel.isEditMode()) {
int j = thePanel.getEbtPanel().getIndex(thePanel.getMode());
setControlFlagText(thePanel.getEbtPanel().getEditFlagModes(j));
} else if (thePanel.isMiscMode()) {
int j = thePanel.getMbtPanel().getIndex(thePanel.getMode());
setControlFlagText(thePanel.getMbtPanel().getMiscFlagModes(j));
} else {
setControlFlagText("");
}
*/
}
}
Ads help maintain this website.