use of com.codename1.ui.Font in project CodenameOne by codenameone.
the class ComponentSelector method setFontSize.
/**
* Sets the font size of all components in found set. In pixels.
* @param size Font size in pixels.
* @return
* @see #getStyle(com.codename1.ui.Component)
*/
public ComponentSelector setFontSize(float size) {
for (Component c : this) {
Style style = getStyle(c);
Font curr = style.getFont();
if (curr == null || !curr.isTTFNativeFont()) {
curr = c.getStyle().getFont();
}
if (curr == null || !curr.isTTFNativeFont()) {
Component parent = c.getParent();
while (parent != null && (curr == null || !curr.isTTFNativeFont())) {
curr = parent.getStyle().getFont();
parent = parent.getParent();
}
}
if (curr == null || !curr.isTTFNativeFont()) {
curr = Font.create("native:MainRegular");
}
if (curr != null && curr.isTTFNativeFont()) {
curr = curr.derive(size, 0);
style.setFont(curr);
}
}
return this;
}
use of com.codename1.ui.Font in project CodenameOne by codenameone.
the class AddThemeEntry method initComponents.
/**
* This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
private void initComponents() {
buttonGroup1 = new javax.swing.ButtonGroup();
jLabel1 = new javax.swing.JLabel();
componentName = new javax.swing.JComboBox();
previewPane = new javax.swing.JPanel();
jLabel6 = new javax.swing.JLabel();
addTabs = new javax.swing.JTabbedPane();
jPanel3 = new javax.swing.JPanel();
jLabel23 = new javax.swing.JLabel();
imagesCombo = new javax.swing.JComboBox();
addNewImage = new javax.swing.JButton();
jLabel16 = new javax.swing.JLabel();
backgroundType = new javax.swing.JComboBox();
jLabel18 = new javax.swing.JLabel();
gradientStartColor = new javax.swing.JTextField();
changeGradientStartColorButton = new javax.swing.JButton();
gradientEndColor = new javax.swing.JTextField();
changeGradientEndColorButton = new javax.swing.JButton();
jLabel19 = new javax.swing.JLabel();
gradientX = new javax.swing.JSpinner();
gradientY = new javax.swing.JSpinner();
gradientSize = new javax.swing.JSpinner();
deriveBackground = new javax.swing.JCheckBox();
deriveHelp = new javax.swing.JButton();
backgroundHelp = new javax.swing.JButton();
jLabel2 = new javax.swing.JLabel();
jLabel14 = new javax.swing.JLabel();
jPanel1 = new javax.swing.JPanel();
colorValueFG = new javax.swing.JTextField();
changeColorButtonFG = new javax.swing.JButton();
deriveForegroundColor = new javax.swing.JCheckBox();
jLabel3 = new javax.swing.JLabel();
colorValueBG = new javax.swing.JTextField();
changeColorButtonBG = new javax.swing.JButton();
jLabel4 = new javax.swing.JLabel();
deriveBackgroundColor = new javax.swing.JCheckBox();
deriveTransparency = new javax.swing.JCheckBox();
jLabel5 = new javax.swing.JLabel();
transparencyValue = new javax.swing.JSpinner();
deriveHelp1 = new javax.swing.JButton();
colorHelp = new javax.swing.JButton();
jLabel15 = new javax.swing.JLabel();
jLabel21 = new javax.swing.JLabel();
jPanel2 = new javax.swing.JPanel();
jLabel20 = new javax.swing.JLabel();
alignmentCombo = new javax.swing.JComboBox();
deriveAlignment = new javax.swing.JCheckBox();
deriveHelp2 = new javax.swing.JButton();
alignHelp = new javax.swing.JButton();
jPanel5 = new javax.swing.JPanel();
jLabel8 = new javax.swing.JLabel();
paddingLeft = new javax.swing.JSpinner();
jLabel9 = new javax.swing.JLabel();
paddingRight = new javax.swing.JSpinner();
jLabel10 = new javax.swing.JLabel();
paddingTop = new javax.swing.JSpinner();
jLabel11 = new javax.swing.JLabel();
paddingBottom = new javax.swing.JSpinner();
derivePadding = new javax.swing.JCheckBox();
deriveHelp3 = new javax.swing.JButton();
paddingHelp = new javax.swing.JButton();
paddingLeftUnit = new javax.swing.JComboBox();
paddingRightUnit = new javax.swing.JComboBox();
paddingTopUnit = new javax.swing.JComboBox();
paddingBottomUnit = new javax.swing.JComboBox();
jPanel6 = new javax.swing.JPanel();
jLabel17 = new javax.swing.JLabel();
marginLeft = new javax.swing.JSpinner();
jLabel24 = new javax.swing.JLabel();
marginRight = new javax.swing.JSpinner();
jLabel25 = new javax.swing.JLabel();
marginTop = new javax.swing.JSpinner();
jLabel26 = new javax.swing.JLabel();
marginBottom = new javax.swing.JSpinner();
deriveMargin = new javax.swing.JCheckBox();
deriveHelp4 = new javax.swing.JButton();
marginHelp = new javax.swing.JButton();
marginLeftUnit = new javax.swing.JComboBox();
marginRightUnit = new javax.swing.JComboBox();
marginTopUnit = new javax.swing.JComboBox();
marginBottomUnit = new javax.swing.JComboBox();
jPanel8 = new javax.swing.JPanel();
borderLabel = new com.codename1.ui.resource.util.CodenameOneComponentWrapper(new com.codename1.ui.Label("Border"));
customizeBorder = new javax.swing.JButton();
deriveBorder = new javax.swing.JCheckBox();
imageBorderWizard = new javax.swing.JButton();
jScrollPane1 = new javax.swing.JScrollPane();
jTextArea1 = new javax.swing.JTextArea();
deriveHelp5 = new javax.swing.JButton();
borderHelp = new javax.swing.JButton();
jPanel10 = new javax.swing.JPanel();
baseStyle = new javax.swing.JComboBox();
baseStyleType = new javax.swing.JComboBox();
defineAttribute = new javax.swing.JCheckBox();
deriveHelp6 = new javax.swing.JButton();
jLabel22 = new javax.swing.JLabel();
jPanel7 = new javax.swing.JPanel();
bitmapFont = new javax.swing.JRadioButton();
systemFont = new javax.swing.JRadioButton();
bitmapFontValue = new javax.swing.JComboBox();
addNewBitmapFont = new javax.swing.JButton();
fontFace = new javax.swing.JComboBox();
fontStyle = new javax.swing.JComboBox();
fontSize = new javax.swing.JComboBox();
deriveFont = new javax.swing.JCheckBox();
textDecorationCombo = new javax.swing.JComboBox();
deriveTextDecoration = new javax.swing.JCheckBox();
jLabel7 = new javax.swing.JLabel();
deriveHelp7 = new javax.swing.JButton();
fontHelp = new javax.swing.JButton();
jLabel12 = new javax.swing.JLabel();
trueTypeFont = new javax.swing.JComboBox();
jLabel13 = new javax.swing.JLabel();
trueTypeFontSizeOption = new javax.swing.JComboBox();
trueTypeFontSizeValue = new javax.swing.JSpinner();
jScrollPane2 = new javax.swing.JScrollPane();
help = new javax.swing.JTextPane();
styleType = new javax.swing.JLabel();
styleHelp = new javax.swing.JButton();
videoTutorial = new javax.swing.JButton();
FormListener formListener = new FormListener();
// NOI18N
setName("Form");
jLabel1.setText("Component");
// NOI18N
jLabel1.setName("jLabel1");
componentName.setEditable(true);
// NOI18N
componentName.setName("componentName");
componentName.setPrototypeDisplayValue("XXXXXXXXXXXXXX");
componentName.addActionListener(formListener);
// NOI18N
previewPane.setName("previewPane");
previewPane.setLayout(new java.awt.BorderLayout());
jLabel6.setText("Preview");
// NOI18N
jLabel6.setName("jLabel6");
// NOI18N
addTabs.setName("addTabs");
// NOI18N
jPanel3.setName("jPanel3");
jPanel3.setOpaque(false);
jLabel23.setText("Image");
// NOI18N
jLabel23.setName("jLabel23");
imagesCombo.setEnabled(false);
// NOI18N
imagesCombo.setName("imagesCombo");
imagesCombo.addActionListener(formListener);
addNewImage.setText("...");
addNewImage.setEnabled(false);
// NOI18N
addNewImage.setName("addNewImage");
addNewImage.addActionListener(formListener);
jLabel16.setText("Type");
// NOI18N
jLabel16.setName("jLabel16");
backgroundType.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "IMAGE_SCALED", "IMAGE_SCALED_FILL", "IMAGE_SCALED_FIT", "IMAGE_TILE_BOTH", "IMAGE_TILE_VERTICAL_ALIGN_LEFT", "IMAGE_TILE_VERTICAL_ALIGN_CENTER", "IMAGE_TILE_VERTICAL_ALIGN_RIGHT", "IMAGE_TILE_HORIZONTAL_ALIGN_TOP", "IMAGE_TILE_HORIZONTAL_ALIGN_CENTER", "IMAGE_TILE_HORIZONTAL_ALIGN_BOTTOM", "IMAGE_ALIGNED_TOP", "IMAGE_ALIGNED_BOTTOM", "IMAGE_ALIGNED_LEFT", "IMAGE_ALIGNED_RIGHT", "IMAGE_ALIGNED_TOP_LEFT", "IMAGE_ALIGNED_TOP_RIGHT", "IMAGE_ALIGNED_BOTTOM_LEFT", "IMAGE_ALIGNED_BOTTOM_RIGHT", "IMAGE_ALIGNED_CENTER", "GRADIENT_LINEAR_HORIZONTAL", "GRADIENT_LINEAR_VERTICAL", "GRADIENT_RADIAL", "NONE" }));
backgroundType.setEnabled(false);
// NOI18N
backgroundType.setName("backgroundType");
backgroundType.addActionListener(formListener);
jLabel18.setText("Gradient");
// NOI18N
jLabel18.setName("jLabel18");
gradientStartColor.setText("000000");
gradientStartColor.setEnabled(false);
// NOI18N
gradientStartColor.setName("gradientStartColor");
changeGradientStartColorButton.setText("...");
changeGradientStartColorButton.setEnabled(false);
// NOI18N
changeGradientStartColorButton.setName("changeGradientStartColorButton");
changeGradientStartColorButton.addActionListener(formListener);
gradientEndColor.setText("000000");
gradientEndColor.setEnabled(false);
// NOI18N
gradientEndColor.setName("gradientEndColor");
changeGradientEndColorButton.setText("...");
changeGradientEndColorButton.setEnabled(false);
// NOI18N
changeGradientEndColorButton.setName("changeGradientEndColorButton");
changeGradientEndColorButton.addActionListener(formListener);
jLabel19.setText("Gradient X/Y");
// NOI18N
jLabel19.setName("jLabel19");
gradientX.setToolTipText("Gradient Relative X");
gradientX.setEnabled(false);
// NOI18N
gradientX.setName("gradientX");
gradientX.addChangeListener(formListener);
gradientY.setToolTipText("Gradient Relative Y");
gradientY.setEnabled(false);
// NOI18N
gradientY.setName("gradientY");
gradientY.addChangeListener(formListener);
gradientSize.setToolTipText("Gradient Relaitve Size");
gradientSize.setEnabled(false);
// NOI18N
gradientSize.setName("gradientSize");
gradientSize.addChangeListener(formListener);
deriveBackground.setSelected(true);
deriveBackground.setText("Derive");
// NOI18N
deriveBackground.setName("deriveBackground");
deriveBackground.addActionListener(formListener);
deriveHelp.setText("Derive Help");
// NOI18N
deriveHelp.setName("deriveHelp");
deriveHelp.addActionListener(formListener);
backgroundHelp.setText("Background Help");
// NOI18N
backgroundHelp.setName("backgroundHelp");
backgroundHelp.addActionListener(formListener);
jLabel2.setText("Gradient Size");
// NOI18N
jLabel2.setName("jLabel2");
jLabel14.setText("<html><body><b>Notice:</b> If a border is defined the background will have no effect! Set the border<br>property to Empty to override the border of a base style");
// NOI18N
jLabel14.setName("jLabel14");
org.jdesktop.layout.GroupLayout jPanel3Layout = new org.jdesktop.layout.GroupLayout(jPanel3);
jPanel3.setLayout(jPanel3Layout);
jPanel3Layout.setHorizontalGroup(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel3Layout.createSequentialGroup().addContainerGap().add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jLabel14, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(jPanel3Layout.createSequentialGroup().add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jLabel16).add(jLabel23).add(jLabel18).add(jLabel19).add(jLabel2)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(gradientSize, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(jPanel3Layout.createSequentialGroup().add(imagesCombo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 325, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(addNewImage)).add(backgroundType, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 325, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(jPanel3Layout.createSequentialGroup().add(gradientStartColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 54, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(changeGradientStartColorButton).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(gradientEndColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 52, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(changeGradientEndColorButton)).add(jPanel3Layout.createSequentialGroup().add(gradientX, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(gradientY, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))).add(deriveBackground)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 383, Short.MAX_VALUE).add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(org.jdesktop.layout.GroupLayout.TRAILING, backgroundHelp).add(org.jdesktop.layout.GroupLayout.TRAILING, deriveHelp)).addContainerGap()));
jPanel3Layout.linkSize(new java.awt.Component[] { gradientEndColor, gradientSize, gradientStartColor, gradientX, gradientY }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel3Layout.linkSize(new java.awt.Component[] { backgroundType, imagesCombo }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel3Layout.linkSize(new java.awt.Component[] { backgroundHelp, deriveHelp }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel3Layout.setVerticalGroup(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel3Layout.createSequentialGroup().add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel3Layout.createSequentialGroup().add(4, 4, 4).add(deriveHelp).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(backgroundHelp)).add(jPanel3Layout.createSequentialGroup().add(15, 15, 15).add(jLabel14, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(18, 18, 18).add(deriveBackground).addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED).add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel16).add(backgroundType, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel23).add(imagesCombo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(addNewImage)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.CENTER).add(jLabel18).add(gradientStartColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(changeGradientStartColorButton).add(changeGradientEndColorButton).add(gradientEndColor, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.CENTER).add(jLabel19).add(gradientX, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(gradientY, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel3Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.CENTER).add(jLabel2).add(gradientSize, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)))).addContainerGap(199, Short.MAX_VALUE)));
addTabs.addTab("Background", jPanel3);
// NOI18N
jPanel1.setName("jPanel1");
jPanel1.setOpaque(false);
colorValueFG.setText("000000");
colorValueFG.setEnabled(false);
// NOI18N
colorValueFG.setName("colorValueFG");
changeColorButtonFG.setText("...");
changeColorButtonFG.setEnabled(false);
// NOI18N
changeColorButtonFG.setName("changeColorButtonFG");
changeColorButtonFG.addActionListener(formListener);
deriveForegroundColor.setSelected(true);
deriveForegroundColor.setText("Derive Foreground");
// NOI18N
deriveForegroundColor.setName("deriveForegroundColor");
deriveForegroundColor.addActionListener(formListener);
jLabel3.setText("Background");
// NOI18N
jLabel3.setName("jLabel3");
colorValueBG.setText("000000");
colorValueBG.setEnabled(false);
// NOI18N
colorValueBG.setName("colorValueBG");
changeColorButtonBG.setText("...");
changeColorButtonBG.setEnabled(false);
// NOI18N
changeColorButtonBG.setName("changeColorButtonBG");
changeColorButtonBG.addActionListener(formListener);
jLabel4.setText("Foreground");
// NOI18N
jLabel4.setName("jLabel4");
deriveBackgroundColor.setSelected(true);
deriveBackgroundColor.setText("Derive Background");
// NOI18N
deriveBackgroundColor.setName("deriveBackgroundColor");
deriveBackgroundColor.addActionListener(formListener);
deriveTransparency.setSelected(true);
deriveTransparency.setText("Derive Transparency");
// NOI18N
deriveTransparency.setName("deriveTransparency");
deriveTransparency.addActionListener(formListener);
jLabel5.setText("Transparency");
// NOI18N
jLabel5.setName("jLabel5");
transparencyValue.setEnabled(false);
// NOI18N
transparencyValue.setName("transparencyValue");
transparencyValue.addChangeListener(formListener);
deriveHelp1.setText("Derive Help");
// NOI18N
deriveHelp1.setName("deriveHelp1");
deriveHelp1.addActionListener(formListener);
colorHelp.setText("Color Help");
// NOI18N
colorHelp.setName("colorHelp");
colorHelp.addActionListener(formListener);
jLabel15.setText("<html><body><b>Notice:</b> If a border is defined the background will have no effect! Set the border<br>property to Empty to override the border of a base style");
// NOI18N
jLabel15.setName("jLabel15");
jLabel21.setText("<html><body><b>Notice:</b> some types of backgrounds might override the background color.<br/>Transparency should be 255 to achieve full opacity");
// NOI18N
jLabel21.setName("jLabel21");
org.jdesktop.layout.GroupLayout jPanel1Layout = new org.jdesktop.layout.GroupLayout(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel1Layout.createSequentialGroup().addContainerGap().add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel1Layout.createSequentialGroup().addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 9, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jLabel4).add(jLabel3).add(jLabel5)).add(12, 12, 12).add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel1Layout.createSequentialGroup().add(colorValueFG, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 66, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(changeColorButtonFG)).add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING, false).add(org.jdesktop.layout.GroupLayout.LEADING, transparencyValue).add(org.jdesktop.layout.GroupLayout.LEADING, jPanel1Layout.createSequentialGroup().add(colorValueBG, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 66, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(changeColorButtonBG)))).add(0, 735, Short.MAX_VALUE)).add(jPanel1Layout.createSequentialGroup().add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jLabel15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(deriveForegroundColor).add(deriveBackgroundColor).add(deriveTransparency).add(jLabel21, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 464, Short.MAX_VALUE).add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(org.jdesktop.layout.GroupLayout.TRAILING, deriveHelp1).add(org.jdesktop.layout.GroupLayout.TRAILING, colorHelp)))).addContainerGap()));
jPanel1Layout.linkSize(new java.awt.Component[] { colorHelp, deriveHelp1 }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel1Layout.setVerticalGroup(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel1Layout.createSequentialGroup().add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel1Layout.createSequentialGroup().addContainerGap().add(jLabel15, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jLabel21, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(20, 20, 20).add(deriveForegroundColor).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(colorValueFG, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(changeColorButtonFG).add(jLabel4)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(deriveBackgroundColor).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(colorValueBG, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(changeColorButtonBG).add(jLabel3)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(deriveTransparency).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel1Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.CENTER).add(jLabel5).add(transparencyValue, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))).add(jPanel1Layout.createSequentialGroup().add(deriveHelp1).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(colorHelp))).addContainerGap(181, Short.MAX_VALUE)));
addTabs.addTab("Color", jPanel1);
// NOI18N
jPanel2.setName("jPanel2");
jPanel2.setOpaque(false);
jLabel20.setText("Alignment");
// NOI18N
jLabel20.setName("jLabel20");
alignmentCombo.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Left", "Right", "Center" }));
alignmentCombo.setEnabled(false);
// NOI18N
alignmentCombo.setName("alignmentCombo");
alignmentCombo.addActionListener(formListener);
deriveAlignment.setSelected(true);
deriveAlignment.setText("Derive");
// NOI18N
deriveAlignment.setName("deriveAlignment");
deriveAlignment.addActionListener(formListener);
deriveHelp2.setText("Derive Help");
// NOI18N
deriveHelp2.setName("deriveHelp2");
deriveHelp2.addActionListener(formListener);
alignHelp.setText("Alignment Help");
// NOI18N
alignHelp.setName("alignHelp");
alignHelp.addActionListener(formListener);
org.jdesktop.layout.GroupLayout jPanel2Layout = new org.jdesktop.layout.GroupLayout(jPanel2);
jPanel2.setLayout(jPanel2Layout);
jPanel2Layout.setHorizontalGroup(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel2Layout.createSequentialGroup().addContainerGap().add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel2Layout.createSequentialGroup().add(deriveAlignment).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 779, Short.MAX_VALUE).add(deriveHelp2)).add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel2Layout.createSequentialGroup().add(jLabel20).add(9, 9, 9).add(alignmentCombo, 0, 774, Short.MAX_VALUE).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(alignHelp))).addContainerGap()));
jPanel2Layout.linkSize(new java.awt.Component[] { alignHelp, deriveHelp2 }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel2Layout.setVerticalGroup(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel2Layout.createSequentialGroup().addContainerGap().add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(deriveAlignment).add(deriveHelp2)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel2Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel20).add(alignmentCombo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(alignHelp)).addContainerGap(394, Short.MAX_VALUE)));
addTabs.addTab("Alignment", jPanel2);
// NOI18N
jPanel5.setName("jPanel5");
jPanel5.setOpaque(false);
jLabel8.setText("Left");
// NOI18N
jLabel8.setName("jLabel8");
paddingLeft.setEnabled(false);
// NOI18N
paddingLeft.setName("paddingLeft");
paddingLeft.addChangeListener(formListener);
jLabel9.setText("Right");
// NOI18N
jLabel9.setName("jLabel9");
paddingRight.setEnabled(false);
// NOI18N
paddingRight.setName("paddingRight");
paddingRight.addChangeListener(formListener);
jLabel10.setText("Top");
// NOI18N
jLabel10.setName("jLabel10");
paddingTop.setEnabled(false);
// NOI18N
paddingTop.setName("paddingTop");
paddingTop.addChangeListener(formListener);
jLabel11.setText("Bottom");
// NOI18N
jLabel11.setName("jLabel11");
paddingBottom.setEnabled(false);
// NOI18N
paddingBottom.setName("paddingBottom");
paddingBottom.addChangeListener(formListener);
derivePadding.setSelected(true);
derivePadding.setText("Derive");
// NOI18N
derivePadding.setName("derivePadding");
derivePadding.addActionListener(formListener);
deriveHelp3.setText("Derive Help");
// NOI18N
deriveHelp3.setName("deriveHelp3");
deriveHelp3.addActionListener(formListener);
paddingHelp.setText("Padding Help");
// NOI18N
paddingHelp.setName("paddingHelp");
paddingHelp.addActionListener(formListener);
paddingLeftUnit.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Pixels", "Screen Size Percentage", "Millimeters (approximate)" }));
// NOI18N
paddingLeftUnit.setName("paddingLeftUnit");
paddingLeftUnit.addActionListener(formListener);
paddingRightUnit.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Pixels", "Screen Size Percentage", "Millimeters (approximate)" }));
// NOI18N
paddingRightUnit.setName("paddingRightUnit");
paddingRightUnit.addActionListener(formListener);
paddingTopUnit.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Pixels", "Screen Size Percentage", "Millimeters (approximate)" }));
// NOI18N
paddingTopUnit.setName("paddingTopUnit");
paddingTopUnit.addActionListener(formListener);
paddingBottomUnit.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Pixels", "Screen Size Percentage", "Millimeters (approximate)" }));
// NOI18N
paddingBottomUnit.setName("paddingBottomUnit");
paddingBottomUnit.addActionListener(formListener);
org.jdesktop.layout.GroupLayout jPanel5Layout = new org.jdesktop.layout.GroupLayout(jPanel5);
jPanel5.setLayout(jPanel5Layout);
jPanel5Layout.setHorizontalGroup(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel5Layout.createSequentialGroup().add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false).add(jPanel5Layout.createSequentialGroup().add(10, 10, 10).add(derivePadding)).add(jPanel5Layout.createSequentialGroup().addContainerGap().add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jLabel8).add(jLabel9).add(jLabel10).add(jLabel11)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false).add(paddingLeft, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 101, Short.MAX_VALUE).add(paddingRight).add(paddingTop).add(paddingBottom)).add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false).add(jPanel5Layout.createSequentialGroup().add(7, 7, 7).add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(org.jdesktop.layout.GroupLayout.TRAILING, paddingRightUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(org.jdesktop.layout.GroupLayout.TRAILING, paddingTopUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(org.jdesktop.layout.GroupLayout.TRAILING, paddingBottomUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE))).add(jPanel5Layout.createSequentialGroup().addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(paddingLeftUnit, 0, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 553, Short.MAX_VALUE).add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(org.jdesktop.layout.GroupLayout.TRAILING, paddingHelp).add(org.jdesktop.layout.GroupLayout.TRAILING, deriveHelp3)).addContainerGap()));
jPanel5Layout.linkSize(new java.awt.Component[] { deriveHelp3, paddingHelp }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel5Layout.setVerticalGroup(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel5Layout.createSequentialGroup().addContainerGap().add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(derivePadding).add(deriveHelp3)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel8).add(paddingLeft, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(paddingLeftUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(paddingHelp)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel9).add(paddingRight, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(paddingRightUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel10).add(paddingTop, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(paddingTopUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel5Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel11).add(paddingBottom, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(paddingBottomUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addContainerGap(288, Short.MAX_VALUE)));
jPanel5Layout.linkSize(new java.awt.Component[] { paddingBottom, paddingLeft, paddingRight, paddingTop }, org.jdesktop.layout.GroupLayout.VERTICAL);
addTabs.addTab("Padding", jPanel5);
// NOI18N
jPanel6.setName("jPanel6");
jPanel6.setOpaque(false);
jLabel17.setText("Left");
// NOI18N
jLabel17.setName("jLabel17");
marginLeft.setEnabled(false);
// NOI18N
marginLeft.setName("marginLeft");
marginLeft.addChangeListener(formListener);
jLabel24.setText("Right");
// NOI18N
jLabel24.setName("jLabel24");
marginRight.setEnabled(false);
// NOI18N
marginRight.setName("marginRight");
marginRight.addChangeListener(formListener);
jLabel25.setText("Top");
// NOI18N
jLabel25.setName("jLabel25");
marginTop.setEnabled(false);
// NOI18N
marginTop.setName("marginTop");
marginTop.addChangeListener(formListener);
jLabel26.setText("Bottom");
// NOI18N
jLabel26.setName("jLabel26");
marginBottom.setEnabled(false);
// NOI18N
marginBottom.setName("marginBottom");
marginBottom.addChangeListener(formListener);
deriveMargin.setSelected(true);
deriveMargin.setText("Derive");
// NOI18N
deriveMargin.setName("deriveMargin");
deriveMargin.addActionListener(formListener);
deriveHelp4.setText("Derive Help");
// NOI18N
deriveHelp4.setName("deriveHelp4");
deriveHelp4.addActionListener(formListener);
marginHelp.setText("Margin Help");
// NOI18N
marginHelp.setName("marginHelp");
marginHelp.addActionListener(formListener);
marginLeftUnit.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Pixels", "Screen Size Percentage", "Millimeters (approximate)" }));
// NOI18N
marginLeftUnit.setName("marginLeftUnit");
marginLeftUnit.addActionListener(formListener);
marginRightUnit.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Pixels", "Screen Size Percentage", "Millimeters (approximate)" }));
// NOI18N
marginRightUnit.setName("marginRightUnit");
marginRightUnit.addActionListener(formListener);
marginTopUnit.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Pixels", "Screen Size Percentage", "Millimeters (approximate)" }));
// NOI18N
marginTopUnit.setName("marginTopUnit");
marginTopUnit.addActionListener(formListener);
marginBottomUnit.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Pixels", "Screen Size Percentage", "Millimeters (approximate)" }));
// NOI18N
marginBottomUnit.setName("marginBottomUnit");
marginBottomUnit.addActionListener(formListener);
org.jdesktop.layout.GroupLayout jPanel6Layout = new org.jdesktop.layout.GroupLayout(jPanel6);
jPanel6.setLayout(jPanel6Layout);
jPanel6Layout.setHorizontalGroup(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel6Layout.createSequentialGroup().addContainerGap().add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jLabel17).add(jLabel24).add(jLabel25).add(jLabel26)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING, false).add(marginBottom).add(marginTop).add(marginRight).add(marginLeft, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 100, Short.MAX_VALUE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel6Layout.createSequentialGroup().add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(marginBottomUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(marginTopUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(marginRightUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).add(454, 660, Short.MAX_VALUE)).add(jPanel6Layout.createSequentialGroup().add(marginLeftUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).add(marginHelp).addContainerGap()))).add(jPanel6Layout.createSequentialGroup().add(10, 10, 10).add(deriveMargin).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 793, Short.MAX_VALUE).add(deriveHelp4).addContainerGap()));
jPanel6Layout.linkSize(new java.awt.Component[] { deriveHelp4, marginHelp }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel6Layout.linkSize(new java.awt.Component[] { marginBottomUnit, marginLeftUnit, marginRightUnit, marginTopUnit }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel6Layout.setVerticalGroup(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel6Layout.createSequentialGroup().addContainerGap().add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(deriveMargin).add(deriveHelp4)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.CENTER).add(marginLeftUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(marginLeft, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(jLabel17).add(marginHelp)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.CENTER).add(jLabel24).add(marginRight, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(marginRightUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.CENTER).add(jLabel25).add(marginTop, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(marginTopUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel6Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.CENTER).add(jLabel26).add(marginBottom, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(marginBottomUnit, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addContainerGap(316, Short.MAX_VALUE)));
jPanel6Layout.linkSize(new java.awt.Component[] { marginBottom, marginLeft, marginRight, marginTop }, org.jdesktop.layout.GroupLayout.VERTICAL);
jPanel6Layout.linkSize(new java.awt.Component[] { marginBottomUnit, marginLeftUnit, marginRightUnit, marginTopUnit }, org.jdesktop.layout.GroupLayout.VERTICAL);
addTabs.addTab("Margin", jPanel6);
// NOI18N
jPanel8.setName("jPanel8");
jPanel8.setOpaque(false);
borderLabel.setText("Border");
// NOI18N
borderLabel.setName("borderLabel");
customizeBorder.setText("...");
customizeBorder.setEnabled(false);
// NOI18N
customizeBorder.setName("customizeBorder");
customizeBorder.addActionListener(formListener);
deriveBorder.setSelected(true);
deriveBorder.setText("Derive");
// NOI18N
deriveBorder.setName("deriveBorder");
deriveBorder.addActionListener(formListener);
imageBorderWizard.setText("Image Border Wizard");
// NOI18N
imageBorderWizard.setName("imageBorderWizard");
imageBorderWizard.addActionListener(formListener);
jScrollPane1.setBorder(null);
// NOI18N
jScrollPane1.setName("jScrollPane1");
jScrollPane1.setOpaque(false);
jTextArea1.setColumns(20);
jTextArea1.setEditable(false);
jTextArea1.setLineWrap(true);
jTextArea1.setRows(5);
jTextArea1.setText("Please notice when using the image border wizard to generate images you are in effect creating additional images in the theme. This means that if you use this wizard you MUST NOT cancel this dialog since the images created by the wizard would remain! You would need to go and delete them (try the \"delete unused images\" option in the menu).\nHaving too many images in the theme can be expensive so try to reuse the same images for multiple component types rather than recreate these images over and over again.");
jTextArea1.setWrapStyleWord(true);
jTextArea1.setBorder(null);
// NOI18N
jTextArea1.setName("jTextArea1");
jTextArea1.setOpaque(false);
jScrollPane1.setViewportView(jTextArea1);
deriveHelp5.setText("Derive Help");
// NOI18N
deriveHelp5.setName("deriveHelp5");
deriveHelp5.addActionListener(formListener);
borderHelp.setText("Border Help");
// NOI18N
borderHelp.setName("borderHelp");
borderHelp.addActionListener(formListener);
org.jdesktop.layout.GroupLayout jPanel8Layout = new org.jdesktop.layout.GroupLayout(jPanel8);
jPanel8.setLayout(jPanel8Layout);
jPanel8Layout.setHorizontalGroup(jPanel8Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel8Layout.createSequentialGroup().addContainerGap().add(jPanel8Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jScrollPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 939, Short.MAX_VALUE).add(imageBorderWizard).add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel8Layout.createSequentialGroup().add(jPanel8Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel8Layout.createSequentialGroup().add(deriveBorder).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 681, Short.MAX_VALUE)).add(jPanel8Layout.createSequentialGroup().add(borderLabel, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 715, Short.MAX_VALUE).add(23, 23, 23))).add(61, 61, 61).add(jPanel8Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel8Layout.createSequentialGroup().add(customizeBorder).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(borderHelp)).add(org.jdesktop.layout.GroupLayout.TRAILING, deriveHelp5)))).addContainerGap()));
jPanel8Layout.linkSize(new java.awt.Component[] { borderHelp, deriveHelp5 }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel8Layout.setVerticalGroup(jPanel8Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel8Layout.createSequentialGroup().addContainerGap().add(jPanel8Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(deriveBorder).add(deriveHelp5)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel8Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(borderLabel).add(customizeBorder).add(borderHelp)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(imageBorderWizard).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jScrollPane1, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, 347, Short.MAX_VALUE).addContainerGap()));
addTabs.addTab("Border", jPanel8);
// NOI18N
jPanel10.setName("jPanel10");
jPanel10.setOpaque(false);
baseStyle.setEditable(true);
baseStyle.setEnabled(false);
// NOI18N
baseStyle.setName("baseStyle");
baseStyleType.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Unselected", "Selected", "Pressed", "Disabled" }));
baseStyleType.setEnabled(false);
// NOI18N
baseStyleType.setName("baseStyleType");
defineAttribute.setSelected(true);
defineAttribute.setText("Override Attribute");
// NOI18N
defineAttribute.setName("defineAttribute");
defineAttribute.addActionListener(formListener);
deriveHelp6.setText("Derive Help");
// NOI18N
deriveHelp6.setName("deriveHelp6");
deriveHelp6.addActionListener(formListener);
jLabel22.setText("Please note that deriving to/from builtin components e.g. Button, TextField etc. is unreliable due to cyclic dependencies");
// NOI18N
jLabel22.setName("jLabel22");
org.jdesktop.layout.GroupLayout jPanel10Layout = new org.jdesktop.layout.GroupLayout(jPanel10);
jPanel10.setLayout(jPanel10Layout);
jPanel10Layout.setHorizontalGroup(jPanel10Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel10Layout.createSequentialGroup().addContainerGap().add(jPanel10Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel10Layout.createSequentialGroup().add(defineAttribute).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, 739, Short.MAX_VALUE).add(deriveHelp6)).add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel10Layout.createSequentialGroup().add(baseStyle, 0, 843, Short.MAX_VALUE).add(18, 18, 18).add(baseStyleType, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).add(jPanel10Layout.createSequentialGroup().add(jLabel22).add(0, 0, Short.MAX_VALUE))).addContainerGap()));
jPanel10Layout.setVerticalGroup(jPanel10Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel10Layout.createSequentialGroup().addContainerGap().add(jPanel10Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(defineAttribute).add(deriveHelp6)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel10Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(baseStyle, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(baseStyleType, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).add(18, 18, 18).add(jLabel22).addContainerGap(360, Short.MAX_VALUE)));
addTabs.addTab("Derive", jPanel10);
// NOI18N
jPanel7.setName("jPanel7");
jPanel7.setOpaque(false);
buttonGroup1.add(bitmapFont);
bitmapFont.setText("Bitmap Fonts (deprecated!)");
bitmapFont.setEnabled(false);
// NOI18N
bitmapFont.setName("bitmapFont");
bitmapFont.addActionListener(formListener);
buttonGroup1.add(systemFont);
systemFont.setSelected(true);
systemFont.setText("Standard Font");
systemFont.setEnabled(false);
// NOI18N
systemFont.setName("systemFont");
systemFont.addActionListener(formListener);
bitmapFontValue.setEnabled(false);
// NOI18N
bitmapFontValue.setName("bitmapFontValue");
bitmapFontValue.setPrototypeDisplayValue("XXXXXXXXXXXXXXXX");
bitmapFontValue.addActionListener(formListener);
addNewBitmapFont.setText("...");
addNewBitmapFont.setEnabled(false);
// NOI18N
addNewBitmapFont.setName("addNewBitmapFont");
addNewBitmapFont.addActionListener(formListener);
fontFace.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "SYSTEM", "MONOSPACE", "PROPORTIONAL" }));
fontFace.setEnabled(false);
// NOI18N
fontFace.setName("fontFace");
fontFace.addActionListener(formListener);
fontStyle.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "PLAIN", "BOLD", "ITALIC", "BOLD ITALIC" }));
fontStyle.setEnabled(false);
// NOI18N
fontStyle.setName("fontStyle");
fontStyle.addActionListener(formListener);
fontSize.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "MEDIUM", "SMALL", "LARGE" }));
fontSize.setEnabled(false);
// NOI18N
fontSize.setName("fontSize");
fontSize.addActionListener(formListener);
deriveFont.setSelected(true);
deriveFont.setText("Derive Font");
// NOI18N
deriveFont.setName("deriveFont");
deriveFont.addActionListener(formListener);
textDecorationCombo.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "None", "Underline", "Strike Through,", "3D Text Raised", "3D Text Lowered", "3D Shadow North" }));
textDecorationCombo.setEnabled(false);
// NOI18N
textDecorationCombo.setName("textDecorationCombo");
textDecorationCombo.addActionListener(formListener);
deriveTextDecoration.setSelected(true);
deriveTextDecoration.setText("Derive Text Decoration");
// NOI18N
deriveTextDecoration.setName("deriveTextDecoration");
deriveTextDecoration.addActionListener(formListener);
jLabel7.setText("Text Decoration");
// NOI18N
jLabel7.setName("jLabel7");
deriveHelp7.setText("Derive Help");
// NOI18N
deriveHelp7.setName("deriveHelp7");
deriveHelp7.addActionListener(formListener);
fontHelp.setText("Font Help");
// NOI18N
fontHelp.setName("fontHelp");
fontHelp.addActionListener(formListener);
jLabel12.setText("True Type");
jLabel12.setToolTipText("<html><body>\nTruetype fonts are only supported on some platforms (iOS/Android)<br>\nto use them you need to place the file in the src directory next to the<br>\nresource file and make sure the name of the font is correct in the<br>\ntext field (for iOS). When unavailable the standard fonts will be used.<br>\n<b>Important</b> the file name must have a .ttf extension!");
// NOI18N
jLabel12.setName("jLabel12");
trueTypeFont.setToolTipText("<html><body>\nTruetype fonts are only supported on some platforms (iOS/Android)<br>\nto use them you need to place the file in the src directory next to the<br>\nresource file and make sure the name of the font is correct in the<br>\ntext field (for iOS). When unavailable the standard fonts will be used.<br>\n<b>Important</b> the file name must have a .ttf extension!");
trueTypeFont.setEnabled(false);
// NOI18N
trueTypeFont.setName("trueTypeFont");
trueTypeFont.addActionListener(formListener);
jLabel13.setText("True Type Size");
// NOI18N
jLabel13.setToolTipText("<html><body>\nTruetype fonts are only supported on some platforms (iOS/Android)<br>\nto use them you need to place the file in the src directory next to the<br>\nresource file and make sure the name of the font is correct in the<br>\ntext field (for iOS). When unavailable the standard fonts will be used.<br>\n<b>Important</b> the file name must have a .ttf extension!");
// NOI18N
jLabel13.setName("jLabel13");
trueTypeFontSizeOption.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Small", "Medium", "Large", "Millimeters", "Pixels" }));
trueTypeFontSizeOption.setSelectedIndex(1);
trueTypeFontSizeOption.setToolTipText("<html><body>\nTruetype fonts are only supported on some platforms (iOS/Android)<br>\nto use them you need to place the file in the src directory next to the<br>\nresource file and make sure the name of the font is correct in the<br>\ntext field (for iOS). When unavailable the standard fonts will be used.<br>\n<b>Important</b> the file name must have a .ttf extension!");
trueTypeFontSizeOption.setEnabled(false);
// NOI18N
trueTypeFontSizeOption.setName("trueTypeFontSizeOption");
trueTypeFontSizeOption.addActionListener(formListener);
trueTypeFontSizeValue.setToolTipText("<html><body>\nTruetype fonts are only supported on some platforms (iOS/Android)<br>\nto use them you need to place the file in the src directory next to the<br>\nresource file and make sure the name of the font is correct in the<br>\ntext field (for iOS). When unavailable the standard fonts will be used.<br>\n<b>Important</b> the file name must have a .ttf extension!");
trueTypeFontSizeValue.setEnabled(false);
// NOI18N
trueTypeFontSizeValue.setName("trueTypeFontSizeValue");
trueTypeFontSizeValue.addChangeListener(formListener);
org.jdesktop.layout.GroupLayout jPanel7Layout = new org.jdesktop.layout.GroupLayout(jPanel7);
jPanel7.setLayout(jPanel7Layout);
jPanel7Layout.setHorizontalGroup(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel7Layout.createSequentialGroup().addContainerGap().add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel7Layout.createSequentialGroup().add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING).add(org.jdesktop.layout.GroupLayout.LEADING, deriveFont).add(org.jdesktop.layout.GroupLayout.LEADING, jPanel7Layout.createSequentialGroup().add(systemFont).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(bitmapFont))).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING).add(fontHelp).add(deriveHelp7)).addContainerGap()).add(jPanel7Layout.createSequentialGroup().add(deriveTextDecoration).addContainerGap(812, Short.MAX_VALUE)).add(org.jdesktop.layout.GroupLayout.TRAILING, jPanel7Layout.createSequentialGroup().add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING).add(jPanel7Layout.createSequentialGroup().add(jLabel7).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(textDecorationCombo, 0, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).add(org.jdesktop.layout.GroupLayout.LEADING, jPanel7Layout.createSequentialGroup().add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jLabel13).add(jLabel12).add(fontFace, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 157, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(trueTypeFont, 0, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).add(trueTypeFontSizeOption, 0, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).add(fontStyle, 0, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(fontSize, 0, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).add(trueTypeFontSizeValue))).add(org.jdesktop.layout.GroupLayout.LEADING, bitmapFontValue, 0, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(addNewBitmapFont).add(387, 387, 387)))));
jPanel7Layout.linkSize(new java.awt.Component[] { bitmapFont, systemFont }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel7Layout.linkSize(new java.awt.Component[] { deriveHelp7, fontHelp }, org.jdesktop.layout.GroupLayout.HORIZONTAL);
jPanel7Layout.setVerticalGroup(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(jPanel7Layout.createSequentialGroup().addContainerGap().add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING).add(jPanel7Layout.createSequentialGroup().add(deriveFont).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(bitmapFont).add(systemFont))).add(jPanel7Layout.createSequentialGroup().add(deriveHelp7).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(fontHelp))).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(fontFace, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(fontSize, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(fontStyle, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel12).add(trueTypeFont, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).add(9, 9, 9).add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.CENTER).add(trueTypeFontSizeValue, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(trueTypeFontSizeOption, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(jLabel13)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(addNewBitmapFont).add(bitmapFontValue, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED).add(deriveTextDecoration).addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED).add(jPanel7Layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel7).add(textDecorationCombo, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE)).addContainerGap(227, Short.MAX_VALUE)));
addTabs.addTab("Font", jPanel7);
// NOI18N
jScrollPane2.setName("jScrollPane2");
// NOI18N
help.setContentType("text/html");
help.setEditable(false);
// NOI18N
help.setName("help");
jScrollPane2.setViewportView(help);
addTabs.addTab("Help", jScrollPane2);
styleType.setText("Unselected");
// NOI18N
styleType.setName("styleType");
styleHelp.setText("Component Help");
// NOI18N
styleHelp.setName("styleHelp");
styleHelp.addActionListener(formListener);
videoTutorial.setText("Video Tutorial");
// NOI18N
videoTutorial.setName("videoTutorial");
videoTutorial.addActionListener(formListener);
org.jdesktop.layout.GroupLayout layout = new org.jdesktop.layout.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(org.jdesktop.layout.GroupLayout.TRAILING, layout.createSequentialGroup().addContainerGap().add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.TRAILING).add(org.jdesktop.layout.GroupLayout.LEADING, previewPane, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).add(org.jdesktop.layout.GroupLayout.LEADING, addTabs).add(org.jdesktop.layout.GroupLayout.LEADING, layout.createSequentialGroup().add(jLabel1).addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED).add(componentName, 0, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE).add(18, 18, 18).add(styleType).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(styleHelp).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(videoTutorial)).add(org.jdesktop.layout.GroupLayout.LEADING, jLabel6)).addContainerGap()));
layout.setVerticalGroup(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.LEADING).add(layout.createSequentialGroup().addContainerGap().add(layout.createParallelGroup(org.jdesktop.layout.GroupLayout.BASELINE).add(jLabel1).add(componentName, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, org.jdesktop.layout.GroupLayout.DEFAULT_SIZE, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).add(styleType).add(styleHelp).add(videoTutorial)).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(addTabs).addPreferredGap(org.jdesktop.layout.LayoutStyle.RELATED).add(jLabel6).addPreferredGap(org.jdesktop.layout.LayoutStyle.UNRELATED).add(previewPane, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE, 92, org.jdesktop.layout.GroupLayout.PREFERRED_SIZE).addContainerGap()));
}
use of com.codename1.ui.Font in project CodenameOne by codenameone.
the class Resources method loadFont.
Font loadFont(DataInputStream input, String id, boolean packed) throws IOException {
if (majorVersion == 0 && minorVersion == 0) {
Image bitmap;
if (packed) {
bitmap = createPackedImage8();
} else {
bitmap = createImage(input);
}
int charCount = input.readShort();
int[] cutOffsets = new int[charCount];
int[] charWidth = new int[charCount];
for (int iter = 0; iter < charCount; iter++) {
cutOffsets[iter] = input.readShort();
charWidth[iter] = input.readByte();
}
String charset = input.readUTF();
Font old = Font.getBitmapFont(id);
if (old != null) {
return old;
}
return Font.createBitmapFont(id, bitmap, cutOffsets, charWidth, charset);
}
// read a system font fallback
int fallback = input.readByte() & 0xff;
// do we have an emedded truetype font? Do we support embedded fonts?
boolean trueTypeIncluded = input.readBoolean();
Font font = null;
/*if(trueTypeIncluded) {
int size = input.readInt();
if(Font.isTrueTypeFileSupported()) {
font = Font.createTrueTypeFont(input);
} else {
while(size > 0) {
size -= input.skip(size);
}
}
}*/
boolean lookupIncluded = input.readBoolean();
if (lookupIncluded) {
String lookup = input.readUTF();
if (font == null && Font.isCreationByStringSupported()) {
font = Font.create(lookup);
}
}
boolean bitmapIncluded = input.readBoolean();
if (bitmapIncluded) {
font = loadBitmapFont(input, id, font);
}
if (font != null) {
return font;
}
return Font.createSystemFont(fallback & (Font.FACE_MONOSPACE | Font.FACE_PROPORTIONAL | Font.FACE_SYSTEM), fallback & (Font.STYLE_BOLD | Font.STYLE_ITALIC | Font.STYLE_PLAIN | Font.STYLE_UNDERLINED), fallback & (Font.SIZE_LARGE | Font.SIZE_MEDIUM | Font.SIZE_SMALL));
}
use of com.codename1.ui.Font in project CodenameOne by codenameone.
the class Resources method loadTheme.
Hashtable loadTheme(String id, boolean newerVersion) throws IOException {
Hashtable theme = new Hashtable();
theme.put("name", id);
// marks the theme as uninitialized so we can finish "wiring" cached resources
theme.put("uninitialized", Boolean.TRUE);
int size = input.readShort();
for (int iter = 0; iter < size; iter++) {
String key = input.readUTF();
if (key.startsWith("@")) {
theme.put(key, input.readUTF());
continue;
}
// if this is a simple numeric value
if (key.endsWith("Color")) {
theme.put(key, Integer.toHexString(input.readInt()));
continue;
}
if (key.endsWith("align") || key.endsWith("textDecoration")) {
theme.put(key, new Integer(input.readShort()));
continue;
}
// if this is a short numeric value for transparency
if (key.endsWith("ransparency")) {
theme.put(key, "" + (input.readByte() & 0xff));
continue;
}
if (key.endsWith("opacity")) {
theme.put(key, "" + (input.readInt() & 0xff));
continue;
}
// if this is a padding or margin then we will have the 4 values as bytes
if (key.endsWith("adding") || key.endsWith("argin")) {
if (minorVersion > 7) {
float p1 = input.readFloat();
float p2 = input.readFloat();
float p3 = input.readFloat();
float p4 = input.readFloat();
theme.put(key, "" + p1 + "," + p2 + "," + p3 + "," + p4);
} else {
int p1 = input.readByte() & 0xff;
int p2 = input.readByte() & 0xff;
int p3 = input.readByte() & 0xff;
int p4 = input.readByte() & 0xff;
theme.put(key, "" + p1 + "," + p2 + "," + p3 + "," + p4);
}
continue;
}
// padding and or margin type
if (key.endsWith("Unit")) {
byte p1 = input.readByte();
byte p2 = input.readByte();
byte p3 = input.readByte();
byte p4 = input.readByte();
theme.put(key, new byte[] { p1, p2, p3, p4 });
continue;
}
// border
if (key.endsWith("order")) {
int borderType = input.readShort() & 0xffff;
Object b = createBorder(input, borderType);
theme.put(key, b);
continue;
}
// if this is a font
if (key.endsWith("ont")) {
Font f;
// is this a new font?
if (input.readBoolean()) {
String fontId = input.readUTF();
f = (Font) resources.get(fontId);
// if the font is not yet loaded
if (f == null) {
theme.put(key, fontId);
continue;
}
} else {
f = Font.createSystemFont(input.readByte(), input.readByte(), input.readByte());
if (minorVersion > 4) {
boolean hasTTF = input.readBoolean();
if (hasTTF) {
String fileName = input.readUTF();
String fontName = input.readUTF();
int sizeSetting = input.readInt();
float fontSize = input.readFloat();
if (Font.isTrueTypeFileSupported()) {
f = createTrueTypeFont(f, fontName, fileName, fontSize, sizeSetting);
}
}
}
}
theme.put(key, f);
continue;
}
// the background property
if (key.endsWith("ackground")) {
int type = input.readByte() & 0xff;
int pos = key.indexOf('.');
if (pos > -1) {
key = key.substring(0, pos);
} else {
key = "";
}
theme.put(key + Style.BACKGROUND_TYPE, new Byte((byte) type));
switch(type) {
// Scaled Image
case 0xF1:
// Tiled Both Image
case MAGIC_INDEXED_IMAGE_LEGACY:
// the image name coupled with the type
theme.put(key + Style.BG_IMAGE, input.readUTF());
break;
// Aligned Image
case 0xf5:
// Tiled Vertically Image
case 0xF2:
// Tiled Horizontally Image
case 0xF3:
// the image name coupled with the type and with alignment information
String imageName = input.readUTF();
theme.put(key + Style.BG_IMAGE, imageName);
byte align = input.readByte();
theme.put(key + Style.BACKGROUND_ALIGNMENT, new Byte(align));
break;
// Horizontal Linear Gradient
case 0xF6:
// Vertical Linear Gradient
case 0xF7:
Float c = new Float(0.5f);
theme.put(key + Style.BACKGROUND_GRADIENT, new Object[] { new Integer(input.readInt()), new Integer(input.readInt()), c, c, new Float(1) });
break;
// Radial Gradient
case 0xF8:
int c1 = input.readInt();
int c2 = input.readInt();
float f1 = input.readFloat();
float f2 = input.readFloat();
float radialSize = 1;
if (minorVersion > 1) {
radialSize = input.readFloat();
}
theme.put(key + Style.BACKGROUND_GRADIENT, new Object[] { new Integer(c1), new Integer(c2), new Float(f1), new Float(f2), new Float(radialSize) });
break;
}
continue;
}
// if this is a background image bgImage
if (key.endsWith("derive")) {
theme.put(key, input.readUTF());
continue;
}
// if this is a background image bgImage
if (key.endsWith("bgImage")) {
String imageId = input.readUTF();
Image i = getImage(imageId);
// if the font is not yet loaded
if (i == null) {
theme.put(key, imageId);
continue;
}
theme.put(key, i);
continue;
}
if (key.endsWith("scaledImage")) {
if (input.readBoolean()) {
theme.put(key, "true");
} else {
theme.put(key, "false");
}
continue;
}
if (key.endsWith(Style.BACKGROUND_TYPE) || key.endsWith(Style.BACKGROUND_ALIGNMENT)) {
theme.put(key, new Byte(input.readByte()));
continue;
}
if (key.endsWith(Style.BACKGROUND_GRADIENT)) {
if (minorVersion < 2) {
theme.put(key, new Object[] { new Integer(input.readInt()), new Integer(input.readInt()), new Float(input.readFloat()), new Float(input.readFloat()) });
} else {
theme.put(key, new Object[] { new Integer(input.readInt()), new Integer(input.readInt()), new Float(input.readFloat()), new Float(input.readFloat()), new Float(input.readFloat()) });
}
continue;
}
// thow an exception no idea what this is
throw new IOException("Error while trying to read theme property: " + key);
}
return theme;
}
use of com.codename1.ui.Font in project CodenameOne by codenameone.
the class Resources method getTheme.
/**
* Returns the theme resource from the file
*
* @param id name of the theme resource
* @return cached theme instance
*/
public Hashtable getTheme(String id) {
Hashtable h = (Hashtable) resources.get(id);
// theme can be null in valid use cases such as the resource editor
if (h != null && h.containsKey("uninitialized")) {
Enumeration e = h.keys();
while (e.hasMoreElements()) {
String key = (String) e.nextElement();
if (key.endsWith("font") || (key.endsWith("Image") && !key.endsWith("scaledImage"))) {
Object value = h.get(key);
if (value == null) {
throw new IllegalArgumentException("Couldn't find resource: " + key);
}
// it must be loaded now so we can resolve the temporary name
if (value instanceof String) {
Object o;
// we need to trigger multi image logic in the resource editor
if (key.endsWith("Image")) {
o = getImage((String) value);
} else {
o = resources.get(value);
}
if (o == null) {
throw new IllegalArgumentException("Theme entry for " + key + " could not be found: " + value);
}
h.put(key, o);
}
}
// been loaded yet when the border was created
if (key.endsWith("order")) {
Border b = confirmBorder(h, key);
h.put(key, b);
}
}
h.remove("uninitialized");
}
return h;
}
Aggregations