in android-npw/src/com/android/tools/idea/npw/assetstudio/ui/ConfigureAdaptiveIconPanel.java [1744:2011]
private void addMonochromeLayerTab(JBTabbedPane jBTabbedPane1, AndroidFacet androidFacet) {
final JPanel panel2 = new JPanel();
panel2.setLayout(new GridLayoutManager(1, 3, JBUI.emptyInsets(), -1, -1));
jBTabbedPane1.addTab("Monochrome", panel2);
JBScrollPane monochromeScrollPane = new JBScrollPane();
monochromeScrollPane.setHorizontalScrollBarPolicy(31);
panel2.add(monochromeScrollPane, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW,
null, null, null, 0, false));
myMonochromeAllOptionsPanel = new JPanel();
myMonochromeAllOptionsPanel.setLayout(new GridLayoutManager(6, 2, JBUI.emptyInsets(), -1, -1));
monochromeScrollPane.setViewportView(myMonochromeAllOptionsPanel);
JPanel monochromeLayerNamePanel = new JPanel();
monochromeLayerNamePanel.setLayout(new GridLayoutManager(1, 2, JBUI.emptyInsets(), -1, -1));
monochromeLayerNamePanel.setVisible(true);
myMonochromeAllOptionsPanel.add(monochromeLayerNamePanel,
new GridConstraints(0, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, true));
myMonochromeLayerNameLabel = new JBLabel();
myMonochromeLayerNameLabel.setText("Layer name:");
monochromeLayerNamePanel.add(myMonochromeLayerNameLabel,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED,
new Dimension(70, -1), null, null, 0, false));
final JPanel panel3 = new JPanel();
panel3.setLayout(new GridLayoutManager(1, 1, JBUI.emptyInsets(), -1, -1));
monochromeLayerNamePanel.add(panel3, new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
null, null, null, 0, false));
myMonochromeLayerNameTextField = new JTextField();
myMonochromeLayerNameTextField.setText("(name)");
myMonochromeLayerNameTextField.setToolTipText("The filename which will be used for these icons.");
panel3.add(myMonochromeLayerNameTextField,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
mySourceAssetTitleSeparator = new TitledSeparator();
mySourceAssetTitleSeparator.setText("Source Asset");
myMonochromeAllOptionsPanel.add(mySourceAssetTitleSeparator,
new GridConstraints(1, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
JPanel monochromeAssetTypePanel = new JPanel();
monochromeAssetTypePanel.setLayout(new GridLayoutManager(1, 2, JBUI.emptyInsets(), -1, -1));
myMonochromeAllOptionsPanel.add(monochromeAssetTypePanel,
new GridConstraints(2, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, true));
myMonochromeAssetTypeLabel = new JLabel();
myMonochromeAssetTypeLabel.setText("Asset type:");
monochromeAssetTypePanel.add(myMonochromeAssetTypeLabel,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED,
new Dimension(70, -1), null, null, 1, false));
myMonochromeAssetRadioButtonsPanel = new JPanel();
myMonochromeAssetRadioButtonsPanel.setLayout(new GridLayoutManager(1, 3, JBUI.emptyInsets(), -1, -1));
monochromeAssetTypePanel.add(myMonochromeAssetRadioButtonsPanel,
new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_VERTICAL,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
myMonochromeClipartRadioButton = new JRadioButton();
myMonochromeClipartRadioButton.setText("Clip art");
myMonochromeClipartRadioButton.setToolTipText("Select from a list of clipart choices to generate Android icons for your app.");
myMonochromeAssetRadioButtonsPanel.add(myMonochromeClipartRadioButton,
new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null,
null, null, 0, false));
myMonochromeTextRadioButton = new JRadioButton();
myMonochromeTextRadioButton.setText("Text");
myMonochromeTextRadioButton.setToolTipText("Enter text which will be rendered into Android icons for your app.");
myMonochromeAssetRadioButtonsPanel.add(myMonochromeTextRadioButton,
new GridConstraints(0, 2, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null,
null, null, 0, false));
myMonochromeImageRadioButton = new JRadioButton();
myMonochromeImageRadioButton.setText("Image");
myMonochromeImageRadioButton.setToolTipText(
"Select an image, e.g. PNG, SVG, PSD, or a drawable from disk to generate Android icons for your app.");
myMonochromeAssetRadioButtonsPanel.add(myMonochromeImageRadioButton,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null,
null, null, 0, false));
JPanel monochromeAssetTypeSourcePanel = new JPanel();
monochromeAssetTypeSourcePanel.setLayout(new GridLayoutManager(4, 2, JBUI.emptyInsets(), -1, -1));
myMonochromeAllOptionsPanel.add(monochromeAssetTypeSourcePanel,
new GridConstraints(3, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, true));
myMonochromeImageAssetRowPanel = new JPanel();
myMonochromeImageAssetRowPanel.setLayout(new GridLayoutManager(1, 2, JBUI.emptyInsets(), -1, -1));
monochromeAssetTypeSourcePanel.add(myMonochromeImageAssetRowPanel,
new GridConstraints(0, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, true));
myMonochromeImagePathLabel = new JBLabel();
myMonochromeImagePathLabel.setText("Path:");
myMonochromeImageAssetRowPanel.add(myMonochromeImagePathLabel,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED,
new Dimension(70, -1), null, null, 1, false));
myMonochromeImageAssetBrowser = new ImageAssetBrowser();
myMonochromeImageAssetRowPanel.add(myMonochromeImageAssetBrowser,
new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_WANT_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
myMonochromeClipartAssetRowPanel = new JPanel();
myMonochromeClipartAssetRowPanel.setLayout(new GridLayoutManager(1, 2, JBUI.emptyInsets(), -1, -1));
monochromeAssetTypeSourcePanel.add(myMonochromeClipartAssetRowPanel,
new GridConstraints(1, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, true));
myMonochromeClipartLabel = new JBLabel();
myMonochromeClipartLabel.setText("Clip art:");
myMonochromeClipartAssetRowPanel.add(myMonochromeClipartLabel,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED,
new Dimension(70, -1), null, null, 1, false));
myMonochromeClipartAssetButton = new ClipartIconButton(androidFacet);
myMonochromeClipartAssetRowPanel.add(myMonochromeClipartAssetButton,
new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_CAN_GROW, null, null, null, 0, false));
myMonochromeTextAssetRowPanel = new JPanel();
myMonochromeTextAssetRowPanel.setLayout(new GridLayoutManager(1, 2, JBUI.emptyInsets(), -1, -1));
monochromeAssetTypeSourcePanel.add(myMonochromeTextAssetRowPanel,
new GridConstraints(2, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, true));
myMonochromeTextLabel = new JBLabel();
myMonochromeTextLabel.setText("Text:");
myMonochromeTextAssetRowPanel.add(myMonochromeTextLabel,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED,
new Dimension(70, -1), null, null, 1, false));
myMonochromeTextAssetEditor = new MultiLineTextAssetEditor();
myMonochromeTextAssetRowPanel.add(myMonochromeTextAssetEditor,
new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
myMonochromeColorRowPanel = new JPanel();
myMonochromeColorRowPanel.setLayout(new GridLayoutManager(1, 2, JBUI.emptyInsets(), -1, -1));
monochromeAssetTypeSourcePanel.add(myMonochromeColorRowPanel,
new GridConstraints(3, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, true));
myMonochromeColorLabel = new JBLabel();
myMonochromeColorLabel.setText("Color:");
myMonochromeColorRowPanel.add(myMonochromeColorLabel,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED,
new Dimension(70, -1), null, null, 1, false));
myMonochromeColorPanel = new ColorPanel();
myMonochromeColorPanel.setSelectedColor(new Color(-16777216));
myMonochromeColorRowPanel.add(myMonochromeColorPanel,
new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
new Dimension(78, -1), null, null, 0, false));
myMonochromeImageOptionsPanel = new JPanel();
myMonochromeImageOptionsPanel.setLayout(new GridLayoutManager(3, 2, JBUI.emptyInsets(), -1, -1));
myMonochromeAllOptionsPanel.add(myMonochromeImageOptionsPanel,
new GridConstraints(4, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null,
null, null, 0, true));
myMonochromeScalingTitleSeparator = new TitledSeparator();
myMonochromeScalingTitleSeparator.setText("Scaling");
myMonochromeImageOptionsPanel.add(myMonochromeScalingTitleSeparator,
new GridConstraints(0, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
JPanel myMonochromeTrimPanel = new JPanel();
myMonochromeTrimPanel.setLayout(new GridLayoutManager(1, 2, JBUI.emptyInsets(), -1, -1));
myMonochromeTrimPanel.setVisible(true);
myMonochromeImageOptionsPanel.add(myMonochromeTrimPanel,
new GridConstraints(1, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null,
null, null, 0, true));
myMonochromeTrimLabel = new JBLabel();
myMonochromeTrimLabel.setText("Trim:");
myMonochromeTrimPanel.add(myMonochromeTrimLabel, new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED,
new Dimension(70, -1), null, null, 1, false));
myMonochromeTrimOptionsPanel = new JPanel();
myMonochromeTrimOptionsPanel.setLayout(new GridLayoutManager(1, 3, JBUI.emptyInsets(), -1, -1));
myMonochromeTrimPanel.add(myMonochromeTrimOptionsPanel,
new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null,
null, 0, false));
final Spacer spacer1 = new Spacer();
myMonochromeTrimOptionsPanel.add(spacer1,
new GridConstraints(0, 2, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL,
GridConstraints.SIZEPOLICY_WANT_GROW, 1, null, null, null, 0, false));
myMonochromeTrimYesRadioButton = new JRadioButton();
myMonochromeTrimYesRadioButton.setText("Yes");
myMonochromeTrimYesRadioButton.setToolTipText("Remove any transparent space from around your source asset before rendering to icon.");
myMonochromeTrimOptionsPanel.add(myMonochromeTrimYesRadioButton,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
myMonochromeTrimNoRadioButton = new JRadioButton();
myMonochromeTrimNoRadioButton.setSelected(true);
myMonochromeTrimNoRadioButton.setText("No");
myMonochromeTrimNoRadioButton.setToolTipText("Leave the original asset unmodified.");
myMonochromeTrimOptionsPanel.add(myMonochromeTrimNoRadioButton,
new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
JPanel monochromeResizePanel = new JPanel();
monochromeResizePanel.setLayout(new GridLayoutManager(1, 2, JBUI.emptyInsets(), -1, -1));
monochromeResizePanel.setVisible(true);
myMonochromeImageOptionsPanel.add(monochromeResizePanel,
new GridConstraints(2, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null,
null, null, 0, true));
myMonochromeResizeLabel = new JBLabel();
myMonochromeResizeLabel.setText("Resize:");
monochromeResizePanel.add(myMonochromeResizeLabel,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_WEST, GridConstraints.FILL_NONE,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED,
new Dimension(70, -1), null, null, 1, false));
myMonochromeResizeSliderPanel = new JPanel();
myMonochromeResizeSliderPanel.setLayout(new GridLayoutManager(1, 3, JBUI.emptyInsets(), -1, -1));
monochromeResizePanel.add(myMonochromeResizeSliderPanel,
new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_BOTH,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW, null, null,
null, 0, false));
myMonochromeResizeSlider = new JSlider();
myMonochromeResizeSlider.setMaximum(400);
myMonochromeResizeSlider.setMinimum(0);
myMonochromeResizeSlider.setMinorTickSpacing(20);
myMonochromeResizeSlider.setPaintLabels(false);
myMonochromeResizeSlider.setPaintTicks(true);
myMonochromeResizeSlider.setSnapToTicks(false);
myMonochromeResizeSlider.setToolTipText(
"Resize the original asset using the specified scaling factor (in percent). This happens after any trimming.");
myMonochromeResizeSlider.setValue(100);
myMonochromeResizeSlider.setValueIsAdjusting(false);
myMonochromeResizeSliderPanel.add(myMonochromeResizeSlider,
new GridConstraints(0, 0, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL,
GridConstraints.SIZEPOLICY_CAN_SHRINK | GridConstraints.SIZEPOLICY_CAN_GROW,
GridConstraints.SIZEPOLICY_FIXED, null, null, null, 0, false));
myMonochromeResizeValueTextField = new JTextField();
myMonochromeResizeValueTextField.setHorizontalAlignment(4);
myMonochromeResizeValueTextField.setText("100");
myMonochromeResizeSliderPanel.add(myMonochromeResizeValueTextField,
new GridConstraints(0, 1, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null,
new Dimension(30, -1), null, 0, false));
JLabel monochromeResizeValueLabel = new JLabel();
monochromeResizeValueLabel.setHorizontalAlignment(4);
monochromeResizeValueLabel.setText("%");
myMonochromeResizeSliderPanel.add(monochromeResizeValueLabel,
new GridConstraints(0, 2, 1, 1, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_HORIZONTAL,
GridConstraints.SIZEPOLICY_FIXED, GridConstraints.SIZEPOLICY_FIXED, null,
new Dimension(-1, -1), null, 0, false));
final Spacer spacer2 = new Spacer();
myMonochromeAllOptionsPanel.add(spacer2,
new GridConstraints(5, 0, 1, 2, GridConstraints.ANCHOR_CENTER, GridConstraints.FILL_VERTICAL, 1,
GridConstraints.SIZEPOLICY_WANT_GROW, null, null, null, 0, false));
}