Example usage for javax.swing.border LineBorder LineBorder

List of usage examples for javax.swing.border LineBorder LineBorder

Introduction

In this page you can find the example usage for javax.swing.border LineBorder LineBorder.

Prototype

public LineBorder(Color color, int thickness) 

Source Link

Document

Creates a line border with the specified color and thickness.

Usage

From source file:projects.wdlf47tuc.ProcessAllSwathcal.java

/**
 * Main entry point.//from w w  w.j  a  v a2  s  . c om
 * 
 * @param args
 * 
 * @throws IOException 
 * 
 */
public ProcessAllSwathcal() {

    // Path to AllSwathcal.dat file
    File allSwathcal = new File(
            "/home/nrowell/Astronomy/Data/47_Tuc/Kalirai_2012/UVIS/www.stsci.edu/~jkalirai/47Tuc/AllSwathcal.dat");

    // Read file contents into the List
    try (BufferedReader in = new BufferedReader(new FileReader(allSwathcal))) {
        String sourceStr;
        while ((sourceStr = in.readLine()) != null) {
            Source source = Source.parseSource(sourceStr);
            if (source != null) {
                allSources.add(source);
            }
        }
    } catch (IOException e) {
    }

    logger.info("Parsed " + allSources.size() + " Sources from AllSwathcal.dat");

    // Initialise chart
    cmdPanel = new ChartPanel(updateDataAndPlotCmd(allSources));
    cmdPanel.addChartMouseListener(new ChartMouseListener() {
        @Override
        public void chartMouseClicked(ChartMouseEvent e) {
            // Capture mouse click location, transform to graph coordinates and add
            // a point to the polygonal selection box.
            Point2D p = cmdPanel.translateScreenToJava2D(e.getTrigger().getPoint());
            Rectangle2D plotArea = cmdPanel.getScreenDataArea();
            XYPlot plot = (XYPlot) cmdPanel.getChart().getPlot();
            double chartX = plot.getDomainAxis().java2DToValue(p.getX(), plotArea, plot.getDomainAxisEdge());
            double chartY = plot.getRangeAxis().java2DToValue(p.getY(), plotArea, plot.getRangeAxisEdge());
            points.add(new double[] { chartX, chartY });
            cmdPanel.setChart(plotCmd());
        }

        @Override
        public void chartMouseMoved(ChartMouseEvent arg0) {
        }
    });

    // Create colour combo boxes
    final JComboBox<Filter> magComboBox = new JComboBox<Filter>(filters);
    final JComboBox<Filter> col1ComboBox = new JComboBox<Filter>(filters);
    final JComboBox<Filter> col2ComboBox = new JComboBox<Filter>(filters);

    // Set initial values
    magComboBox.setSelectedItem(magFilter);
    col1ComboBox.setSelectedItem(col1Filter);
    col2ComboBox.setSelectedItem(col2Filter);

    // Create an action listener for these
    ActionListener al = new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent evt) {
            if (evt.getSource() == magComboBox) {
                magFilter = (Filter) magComboBox.getSelectedItem();
            }
            if (evt.getSource() == col1ComboBox) {
                col1Filter = (Filter) col1ComboBox.getSelectedItem();
            }
            if (evt.getSource() == col2ComboBox) {
                col2Filter = (Filter) col2ComboBox.getSelectedItem();
            }
            // Changed colour(s), so reset selection box coordinates
            points.clear();
            cmdPanel.setChart(updateDataAndPlotCmd(allSources));
        }
    };
    magComboBox.addActionListener(al);
    col1ComboBox.addActionListener(al);
    col2ComboBox.addActionListener(al);
    // Add a bit of padding to space things out
    magComboBox.setBorder(new EmptyBorder(5, 5, 5, 5));
    col1ComboBox.setBorder(new EmptyBorder(5, 5, 5, 5));
    col2ComboBox.setBorder(new EmptyBorder(5, 5, 5, 5));

    // Set up statistic sliders
    final JSlider magErrMaxSlider = GuiUtil.buildSlider(magErrorRangeMin, magErrorRangeMax, 3, "%3.3f");
    final JSlider chi2MaxSlider = GuiUtil.buildSlider(chi2RangeMin, chi2RangeMax, 3, "%3.3f");
    final JSlider sharpMinSlider = GuiUtil.buildSlider(sharpRangeMin, sharpRangeMax, 3, "%3.3f");
    final JSlider sharpMaxSlider = GuiUtil.buildSlider(sharpRangeMin, sharpRangeMax, 3, "%3.3f");

    // Set intial values
    magErrMaxSlider.setValue(
            (int) Math.rint(100.0 * (magErrMax - magErrorRangeMin) / (magErrorRangeMax - magErrorRangeMin)));
    chi2MaxSlider.setValue((int) Math.rint(100.0 * (chi2Max - chi2RangeMin) / (chi2RangeMax - chi2RangeMin)));
    sharpMinSlider
            .setValue((int) Math.rint(100.0 * (sharpMin - sharpRangeMin) / (sharpRangeMax - sharpRangeMin)));
    sharpMaxSlider
            .setValue((int) Math.rint(100.0 * (sharpMax - sharpRangeMin) / (sharpRangeMax - sharpRangeMin)));

    // Set labels & initial values
    final JLabel magErrMaxLabel = new JLabel(getMagErrMaxLabel());
    final JLabel chi2MaxLabel = new JLabel(getChi2MaxLabel());
    final JLabel sharpMinLabel = new JLabel(getSharpMinLabel());
    final JLabel sharpMaxLabel = new JLabel(getSharpMaxLabel());

    // Create a change listener fot these
    ChangeListener cl = new ChangeListener() {
        @Override
        public void stateChanged(ChangeEvent e) {
            JSlider source = (JSlider) e.getSource();

            if (source == magErrMaxSlider) {
                // Compute max mag error from slider position
                double newMagErrMax = magErrorRangeMin
                        + (magErrorRangeMax - magErrorRangeMin) * (source.getValue() / 100.0);
                magErrMax = newMagErrMax;
                magErrMaxLabel.setText(getMagErrMaxLabel());
            }
            if (source == chi2MaxSlider) {
                // Compute Chi2 max from slider position
                double newChi2Max = chi2RangeMin + (chi2RangeMax - chi2RangeMin) * (source.getValue() / 100.0);
                chi2Max = newChi2Max;
                chi2MaxLabel.setText(getChi2MaxLabel());
            }
            if (source == sharpMinSlider) {
                // Compute sharp min from slider position
                double newSharpMin = sharpRangeMin
                        + (sharpRangeMax - sharpRangeMin) * (source.getValue() / 100.0);
                sharpMin = newSharpMin;
                sharpMinLabel.setText(getSharpMinLabel());
            }
            if (source == sharpMaxSlider) {
                // Compute sharp max from slider position
                double newSharpMax = sharpRangeMin
                        + (sharpRangeMax - sharpRangeMin) * (source.getValue() / 100.0);
                sharpMax = newSharpMax;
                sharpMaxLabel.setText(getSharpMaxLabel());
            }
            cmdPanel.setChart(updateDataAndPlotCmd(allSources));
        }
    };
    magErrMaxSlider.addChangeListener(cl);
    chi2MaxSlider.addChangeListener(cl);
    sharpMinSlider.addChangeListener(cl);
    sharpMaxSlider.addChangeListener(cl);
    // Add a bit of padding to space things out
    magErrMaxSlider.setBorder(new EmptyBorder(5, 5, 5, 5));
    chi2MaxSlider.setBorder(new EmptyBorder(5, 5, 5, 5));
    sharpMinSlider.setBorder(new EmptyBorder(5, 5, 5, 5));
    sharpMaxSlider.setBorder(new EmptyBorder(5, 5, 5, 5));

    // Text field to store distance modulus
    final JTextField distanceModulusField = new JTextField(Double.toString(mu));
    distanceModulusField.setBorder(new EmptyBorder(5, 5, 5, 5));

    Border compound = BorderFactory.createCompoundBorder(new LineBorder(this.getBackground(), 5),
            BorderFactory.createEtchedBorder(EtchedBorder.LOWERED));

    final JButton lfButton = new JButton("Luminosity function for selection");
    lfButton.setBorder(compound);
    lfButton.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {

            // Read distance modulus field
            try {
                double mu_new = Double.parseDouble(distanceModulusField.getText());
                mu = mu_new;
            } catch (NullPointerException | NumberFormatException ex) {
                JOptionPane.showMessageDialog(lfButton,
                        "Error parsing the distance modulus: " + ex.getMessage(), "Distance Modulus Error",
                        JOptionPane.ERROR_MESSAGE);
                return;
            }

            if (boxedSources.isEmpty()) {
                JOptionPane.showMessageDialog(lfButton, "No sources are currently selected!", "Selection Error",
                        JOptionPane.ERROR_MESSAGE);
            } else {
                computeAndPlotLuminosityFunction(boxedSources);
            }
        }
    });
    final JButton clearSelectionButton = new JButton("Clear selection");
    clearSelectionButton.setBorder(compound);
    clearSelectionButton.addActionListener(new ActionListener() {
        @Override
        public void actionPerformed(ActionEvent e) {
            points.clear();
            cmdPanel.setChart(plotCmd());
        }
    });

    JPanel controls = new JPanel(new GridLayout(9, 2));
    controls.setBorder(new EmptyBorder(10, 10, 10, 10));
    controls.add(new JLabel("Magnitude = "));
    controls.add(magComboBox);
    controls.add(new JLabel("Colour 1 = "));
    controls.add(col1ComboBox);
    controls.add(new JLabel("Colour 2 = "));
    controls.add(col2ComboBox);
    controls.add(magErrMaxLabel);
    controls.add(magErrMaxSlider);
    controls.add(chi2MaxLabel);
    controls.add(chi2MaxSlider);
    controls.add(sharpMinLabel);
    controls.add(sharpMinSlider);
    controls.add(sharpMaxLabel);
    controls.add(sharpMaxSlider);
    controls.add(new JLabel("Adopted distance modulus = "));
    controls.add(distanceModulusField);
    controls.add(lfButton);
    controls.add(clearSelectionButton);

    this.setLayout(new BorderLayout());
    this.add(cmdPanel, BorderLayout.CENTER);
    this.add(controls, BorderLayout.SOUTH);

    this.validate();
}

From source file:cool.pandora.modeller.ui.jpanel.base.BagView.java

/**
 * createBagPanel./*  w  w  w .j  av  a  2  s . c om*/
 *
 * @return splitPane
 */
private JSplitPane createBagPanel() {

    final LineBorder border = new LineBorder(Color.GRAY, 1);

    bagButtonPanel = createBagButtonPanel();

    final JPanel bagTagButtonPanel = createBagTagButtonPanel();

    bagPayloadTree = new BagTree(this, AbstractBagConstants.DATA_DIRECTORY);
    bagPayloadTree.setEnabled(false);

    bagPayloadTreePanel = new BagTreePanel(bagPayloadTree);
    bagPayloadTreePanel.setEnabled(false);
    bagPayloadTreePanel.setBorder(border);
    bagPayloadTreePanel.setToolTipText(getMessage("bagTree.help"));

    bagTagFileTree = new BagTree(this, getMessage("bag.label.noname"));
    bagTagFileTree.setEnabled(false);
    bagTagFileTreePanel = new BagTreePanel(bagTagFileTree);
    bagTagFileTreePanel.setEnabled(false);
    bagTagFileTreePanel.setBorder(border);
    bagTagFileTreePanel.setToolTipText(getMessage("bagTree.help"));

    tagManifestPane = new TagManifestPane(this);
    tagManifestPane.setToolTipText(getMessage("compositePane.tab.help"));

    final JSplitPane splitPane = new JSplitPane();
    splitPane.setResizeWeight(0.5);
    splitPane.setOrientation(JSplitPane.VERTICAL_SPLIT);

    final JPanel payloadPannel = new JPanel();
    splitPane.setLeftComponent(payloadPannel);
    payloadPannel.setLayout(new BorderLayout(0, 0));

    final JPanel payLoadToolBarPanel = new JPanel();
    payloadPannel.add(payLoadToolBarPanel, BorderLayout.NORTH);
    payLoadToolBarPanel.setLayout(new GridLayout(1, 0, 0, 0));

    final JPanel payloadLabelPanel = new JPanel();
    final FlowLayout flowLayout = (FlowLayout) payloadLabelPanel.getLayout();
    flowLayout.setAlignment(FlowLayout.LEFT);
    payLoadToolBarPanel.add(payloadLabelPanel);

    final JLabel lblPayloadTree = new JLabel(getMessage("bagView.payloadTree.name"));
    payloadLabelPanel.add(lblPayloadTree);

    payLoadToolBarPanel.add(bagButtonPanel);

    payloadPannel.add(bagPayloadTreePanel, BorderLayout.CENTER);

    final JPanel tagFilePanel = new JPanel();
    splitPane.setRightComponent(tagFilePanel);
    tagFilePanel.setLayout(new BorderLayout(0, 0));

    final JPanel tagFileToolBarPannel = new JPanel();
    tagFilePanel.add(tagFileToolBarPannel, BorderLayout.NORTH);
    tagFileToolBarPannel.setLayout(new GridLayout(0, 2, 0, 0));

    final JPanel TagFileLabelPanel = new JPanel();
    final FlowLayout tagFileToolbarFlowLayout = (FlowLayout) TagFileLabelPanel.getLayout();
    tagFileToolbarFlowLayout.setAlignment(FlowLayout.LEFT);
    tagFileToolBarPannel.add(TagFileLabelPanel);

    final JLabel tagFileTreeLabel = new JLabel(getMessage("bagView.TagFilesTree.name"));
    TagFileLabelPanel.add(tagFileTreeLabel);

    tagFileToolBarPannel.add(bagTagButtonPanel);

    tagFilePanel.add(bagTagFileTreePanel, BorderLayout.CENTER);

    return splitPane;
}

From source file:cool.pandora.modeller.ui.jpanel.base.BagView.java

/**
 * createBagButtonPanel./*from www. j av  a 2  s  . c  om*/
 *
 * @return buttonPanel
 */
private JPanel createBagButtonPanel() {

    addDataHandler = new AddDataHandler(this);
    removeDataHandler = new RemoveDataHandler(this);

    final JPanel buttonPanel = new JPanel();
    buttonPanel.setLayout(new FlowLayout(FlowLayout.RIGHT, 2, 2));

    addDataToolBarAction = new JLabel("");
    addDataToolBarAction.setEnabled(false);
    addDataToolBarAction.setHorizontalAlignment(SwingConstants.CENTER);
    addDataToolBarAction.setBorder(new LineBorder(addDataToolBarAction.getBackground(), 1));
    addDataToolBarAction.setIcon(getPropertyImage("Bag_Content.add.icon"));
    addDataToolBarAction.setToolTipText(getMessage("bagView.payloadTree.addbutton.tooltip"));

    addDataToolBarAction.addMouseListener(new MouseAdapter() {

        @Override
        public void mousePressed(final MouseEvent e) {
            if (addDataToolBarAction.isEnabled()) {
                addDataHandler.actionPerformed(null);
            }
        }

        @Override
        public void mouseExited(final MouseEvent e) {
            addDataToolBarAction.setBorder(new LineBorder(addDataToolBarAction.getBackground(), 1));
        }

        @Override
        public void mouseEntered(final MouseEvent e) {
            if (addDataToolBarAction.isEnabled()) {
                addDataToolBarAction.setBorder(new LineBorder(Color.GRAY, 1));
            }
        }
    });
    buttonPanel.add(addDataToolBarAction);

    removeDataToolBarAction = new JLabel("");
    removeDataToolBarAction.setEnabled(false);
    removeDataToolBarAction.setHorizontalAlignment(SwingConstants.CENTER);
    removeDataToolBarAction.setBorder(new LineBorder(removeDataToolBarAction.getBackground(), 1));
    removeDataToolBarAction.setIcon(getPropertyImage("Bag_Content.minus.icon"));
    removeDataToolBarAction.setToolTipText(getMessage("bagView.payloadTree.remove.tooltip"));
    buttonPanel.add(removeDataToolBarAction);
    removeDataToolBarAction.addMouseListener(new MouseAdapter() {

        @Override
        public void mousePressed(final MouseEvent e) {
            if (removeDataToolBarAction.isEnabled()) {
                removeDataHandler.actionPerformed(null);
            }
        }

        @Override
        public void mouseExited(final MouseEvent e) {
            removeDataToolBarAction.setBorder(new LineBorder(removeDataToolBarAction.getBackground(), 1));
        }

        @Override
        public void mouseEntered(final MouseEvent e) {
            if (removeDataToolBarAction.isEnabled()) {
                removeDataToolBarAction.setBorder(new LineBorder(Color.GRAY, 1));
            }
        }
    });

    final JLabel spacerLabel = new JLabel("    ");
    buttonPanel.add(spacerLabel);

    addDataHandler = new AddDataHandler(this);
    removeDataHandler = new RemoveDataHandler(this);

    return buttonPanel;
}

From source file:cool.pandora.modeller.ui.jpanel.base.BagView.java

/**
 * createBagTagButtonPanel.//from w  w w  .  j a  v  a2 s.c om
 *
 * @return buttonPanel
 */
private JPanel createBagTagButtonPanel() {

    final JPanel buttonPanel = new JPanel();

    final ShowTagFilesHandler showTageFileHandler = new ShowTagFilesHandler(this);
    addTagFileHandler = new AddTagFileHandler(this);
    removeTagFileHandler = new RemoveTagFileHandler(this);

    buttonPanel.setLayout(new FlowLayout(FlowLayout.RIGHT, 2, 2));

    viewTagFilesToolbarAction = new JLabel("");
    viewTagFilesToolbarAction.setEnabled(false);
    viewTagFilesToolbarAction.setHorizontalAlignment(SwingConstants.CENTER);
    viewTagFilesToolbarAction.setBorder(new LineBorder(viewTagFilesToolbarAction.getBackground(), 1));
    viewTagFilesToolbarAction.setIcon(getPropertyImage("Bag_ViewTagFile.icon"));
    viewTagFilesToolbarAction.setToolTipText(getMessage("bagView.TagFilesTree.viewfile" + ".tooltip"));

    viewTagFilesToolbarAction.addMouseListener(new MouseAdapter() {

        @Override
        public void mousePressed(final MouseEvent e) {
            if (viewTagFilesToolbarAction.isEnabled()) {
                showTageFileHandler.actionPerformed(null);
            }
        }

        @Override
        public void mouseExited(final MouseEvent e) {
            viewTagFilesToolbarAction.setBorder(new LineBorder(viewTagFilesToolbarAction.getBackground(), 1));
        }

        @Override
        public void mouseEntered(final MouseEvent e) {
            if (viewTagFilesToolbarAction.isEnabled()) {
                viewTagFilesToolbarAction.setBorder(new LineBorder(Color.GRAY, 1));
            }
        }
    });
    buttonPanel.add(viewTagFilesToolbarAction);

    addTagFileToolBarAction = new JLabel("");
    addTagFileToolBarAction.setEnabled(false);
    addTagFileToolBarAction.setHorizontalAlignment(SwingConstants.CENTER);
    addTagFileToolBarAction.setBorder(new LineBorder(addTagFileToolBarAction.getBackground(), 1));
    addTagFileToolBarAction.setIcon(getPropertyImage("Bag_Content.add.icon"));
    addTagFileToolBarAction.setToolTipText(getMessage("bagView.TagFilesTree.addbutton" + ".tooltip"));

    addTagFileToolBarAction.addMouseListener(new MouseAdapter() {

        @Override
        public void mousePressed(final MouseEvent e) {
            if (addTagFileToolBarAction.isEnabled()) {
                addTagFileHandler.actionPerformed(null);
            }
        }

        @Override
        public void mouseExited(final MouseEvent e) {
            addTagFileToolBarAction.setBorder(new LineBorder(addTagFileToolBarAction.getBackground(), 1));
        }

        @Override
        public void mouseEntered(final MouseEvent e) {
            if (addTagFileToolBarAction.isEnabled()) {
                addTagFileToolBarAction.setBorder(new LineBorder(Color.GRAY, 1));
            }
        }
    });
    buttonPanel.add(addTagFileToolBarAction);

    removeTagFileToolbarAction = new JLabel("");
    removeTagFileToolbarAction.setEnabled(false);
    removeTagFileToolbarAction.setHorizontalAlignment(SwingConstants.CENTER);
    removeTagFileToolbarAction.setBorder(new LineBorder(removeTagFileToolbarAction.getBackground(), 1));
    removeTagFileToolbarAction.setIcon(getPropertyImage("Bag_Content.minus.icon"));
    removeTagFileToolbarAction.setToolTipText(getMessage("bagView.TagFilesTree.remove" + ".tooltip"));

    buttonPanel.add(removeTagFileToolbarAction);
    removeTagFileToolbarAction.addMouseListener(new MouseAdapter() {

        @Override
        public void mousePressed(final MouseEvent e) {
            if (removeTagFileToolbarAction.isEnabled()) {
                removeTagFileHandler.actionPerformed(null);
            }
        }

        @Override
        public void mouseExited(final MouseEvent e) {
            removeTagFileToolbarAction.setBorder(new LineBorder(removeTagFileToolbarAction.getBackground(), 1));
        }

        @Override
        public void mouseEntered(final MouseEvent e) {
            if (removeTagFileToolbarAction.isEnabled()) {
                removeTagFileToolbarAction.setBorder(new LineBorder(Color.GRAY, 1));
            }
        }
    });

    final JLabel spacerLabel = new JLabel("    ");
    buttonPanel.add(spacerLabel);

    addTagFileHandler = new AddTagFileHandler(this);
    removeTagFileHandler = new RemoveTagFileHandler(this);

    return buttonPanel;
}

From source file:com.josue.tileset.editor.Editor.java

private void mountButtons(List<Tile> tiles, int cols, int rows) {

    imagePanel.removeAll();/*www. j a  va2 s  . c o m*/
    if (animatedPerformer != null) {
        animatedPerformer.stop();
        animatedPerformer = null;
    }

    imagePanel.setLayout(new FlowLayout(FlowLayout.LEFT, 0, 0));
    Dimension dimension = new Dimension(cols * TILE_SIZE, rows * TILE_SIZE);

    for (Tile tile : tiles) {
        final JLabel tileLabel = new JLabel();

        tileLabel.setIcon(new ImageIcon(tile.getImage()));
        Dimension labelDimension = new Dimension(TILE_SIZE, TILE_SIZE);
        tileLabel.setMinimumSize(labelDimension);
        tileLabel.setMaximumSize(labelDimension);
        tileLabel.setPreferredSize(labelDimension);
        tileLabel.setSize(labelDimension);
        tileLabel.addMouseListener(new java.awt.event.MouseAdapter() {
            @Override
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                if (SwingUtilities.isRightMouseButton(evt)) {//select animated sequence

                    if (animatedAction.isSelected()) {
                        addAnimatedTile(tile);
                    } else {
                        addLightSourceTile(tile);
                    }

                } else {

                    if (animatedPerformer != null) {
                        animatedPerformer.stop();
                    }
                    Iterator<JLabel> iterator = tileLabels.values().iterator();
                    while (iterator.hasNext()) {
                        JLabel next = iterator.next();
                        next.revalidate();
                    }
                    imagePanel.repaint();
                    for (Map.Entry<Tile, JLabel> entry : tileLabels.entrySet()) {
                        Tile key = entry.getKey();
                        JLabel value = entry.getValue();
                        value.setBorder(null); //clear borders
                    }

                    selectedTile = tile;//this isolate for the next operations
                    tileLabel.setBorder(new LineBorder(Color.RED, 2));

                    previewLabel.setIcon(new ImageIcon(tile.getImage()));
                    animatedTb.setSelected(selectedTile.isAnimated());
                    lightTb.setSelected(selectedTile.isLight());
                    solidTb.setSelected(selectedTile.isSolid());

                    if (tile.isAnimated()) {

                        for (Integer animatesTileOffset : selectedTile.getAnimation().getAnimatedSequence()) { //display animated borders
                            for (Map.Entry<Tile, JLabel> entry : tileLabels.entrySet()) {
                                Tile key = entry.getKey();
                                JLabel value = entry.getValue();
                                if (key.getId() == selectedTile.getId() + animatesTileOffset) {
                                    value.setBorder(new LineBorder(Color.BLUE, 2));
                                }
                            }

                        }

                        animatedPerformer = new Timer(
                                (int) (selectedTile.getAnimation().getAnimationInterval()),
                                new TileAnimator(selectedTile, previewLabel, loadedTiles));
                        animatedPerformer.start();
                    }
                    if (selectedTile.isLight()) {//light color has preference
                        for (Tile tile : tiles) {
                            if (tile.getId() == selectedTile.getLightTileId()) {
                                JLabel found = tileLabels.get(tile);
                                found.setBorder(new LineBorder(Color.YELLOW, 2));
                                break;
                            }
                        }

                    }
                }
            }

            @Override
            public void mouseExited(MouseEvent e) {
                if (selectedTile != null && selectedTile.getAnimation() != null && selectedTile.getAnimation()
                        .getAnimatedSequence().contains(tile.getId() - selectedTile.getId())) {
                    tileLabel.setBorder(new LineBorder(Color.BLUE, 2));
                } else if (selectedTile != null && selectedTile.isLight()
                        && selectedTile.getLightTileId() == tile.getId()) {
                    tileLabel.setBorder(new LineBorder(Color.YELLOW, 2));
                } else if (selectedTile != null) {
                    JLabel get = tileLabels.get(selectedTile);
                    if (!get.equals(tileLabel)) { //keep the red border if is the selected
                        tileLabel.setBorder(null);
                    }
                } else {
                    tileLabel.setBorder(null);
                }
            }

            @Override
            public void mouseEntered(MouseEvent e) {
                if (selectedTile != null && selectedTile.getAnimation() != null
                        && !selectedTile.getAnimation().getAnimatedSequence()
                                .contains(tile.getId() - selectedTile.getId())
                        && tile.getLight() != null && tile.getLight().getLightTileOffset() != 0) {
                    tileLabel.setBorder(new LineBorder(Color.RED, 2));
                } else if (selectedTile == null) {
                    tileLabel.setBorder(new LineBorder(Color.RED, 2));
                }
            }
        });
        tileLabels.put(tile, tileLabel);
        imagePanel.add(tileLabel);
    }

    imagePanel.setMaximumSize(dimension);
    imagePanel.setMinimumSize(dimension);
    imagePanel.setPreferredSize(dimension);
    imagePanel.revalidate();
    imagePanel.repaint();
    this.pack();
}

From source file:com.mirth.connect.client.ui.Frame.java

/**
 * Builds the content panel with a title bar and settings.
 */// ww  w . jav  a2s  .  c  om
private void buildContentPanel(JXTitledPanel container, JScrollPane component, boolean opaque) {
    container.getContentContainer().setLayout(new BorderLayout());
    container.setBorder(null);
    container.setTitleFont(new Font("Tahoma", Font.BOLD, 18));
    container.setTitleForeground(UIConstants.HEADER_TITLE_TEXT_COLOR);
    JLabel mirthConnectImage = new JLabel();
    mirthConnectImage.setIcon(UIConstants.MIRTHCONNECT_LOGO_GRAY);
    mirthConnectImage.setText(" ");
    mirthConnectImage.setToolTipText(UIConstants.MIRTHCONNECT_TOOLTIP);
    mirthConnectImage.setCursor(new Cursor(Cursor.HAND_CURSOR));

    mirthConnectImage.addMouseListener(new java.awt.event.MouseAdapter() {

        public void mouseClicked(java.awt.event.MouseEvent evt) {
            BareBonesBrowserLaunch.openURL(UIConstants.MIRTHCONNECT_URL);
        }
    });

    ((JPanel) container.getComponent(0)).add(mirthConnectImage);

    component.setBorder(new LineBorder(Color.GRAY, 1));
    component.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
    component.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_NEVER);

    container.getContentContainer().add(component);
}

From source file:com.josue.tileset.editor.Editor.java

private void addAnimatedTile(Tile tile) {
    if (!tile.equals(selectedTile) && selectedTile != null) { //cannot add the same tile as sequence
        JLabel label = tileLabels.get(tile);
        int animatedTileOffset = tile.getId() - selectedTile.getId();
        if (selectedTile.getAnimation() != null
                && selectedTile.getAnimation().getAnimatedSequence().contains(animatedTileOffset)) {

            selectedTile.getAnimation().getAnimatedSequence()
                    .remove(selectedTile.getAnimation().getAnimatedSequence().indexOf(animatedTileOffset));
            if (selectedTile.getAnimation().getAnimatedSequence().isEmpty()) { //is not an animated tile anymore
                label.setBorder(null);// w ww.  j a va2  s  .  c  om
                selectedTile.setAnimation(null);
            }
            if (animatedPerformer != null) {
                animatedPerformer.stop();
            }
        } else {//new animated tile
            if (animatedPerformer != null) {
                animatedPerformer.stop();
            }
            if (!selectedTile.isAnimated()) {
                selectedTile.setAnimation(new Animation());
            }
            selectedTile.getAnimation().getAnimatedSequence().add(animatedTileOffset);
            label.setBorder(new LineBorder(Color.BLUE, 2));

            animatedTb.setSelected(true);
            animatedPerformer = new Timer((int) (selectedTile.getAnimation().getAnimationInterval()),
                    new TileAnimator(selectedTile, previewLabel, loadedTiles));
            animatedPerformer.start();
        }
    }
}

From source file:com.josue.tileset.editor.Editor.java

private void addLightSourceTile(Tile tile) {
    if (!tile.equals(selectedTile) && selectedTile != null) {
        JLabel label = tileLabels.get(tile);
        if (tile.getId() == selectedTile.getId()) { //already contains
            selectedTile.setLight(null);
            label.setBorder(null);/*w  w  w  . j av a  2 s.c o  m*/
        } else {
            selectedTile.setLight(new Light());
            selectedTile.getLight().setLightTileOffset(tile.getId() - selectedTile.getId());
            label.setBorder(new LineBorder(Color.YELLOW, 2));
            lightTb.setSelected(true);
        }
    }
}

From source file:forge.toolbox.FSkin.java

/**
 * Loads a "light" version of FSkin, just enough for the splash screen:
 * skin name. Generates custom skin settings, fonts, and backgrounds.
 *
 *
 * @param skinName//from   w  w  w.ja v  a 2s.c o  m
 *            the skin name
 */
public static void loadLight(final String skinName, final boolean onInit) {
    if (onInit) {
        // No need for this method to be loaded while on the EDT.
        FThreads.assertExecutedByEdt(false);

        if (allSkins == null) { //initialize
            allSkins = new ArrayList<>();
            final List<String> skinDirectoryNames = getSkinDirectoryNames();
            for (String skinDirectoryName : skinDirectoryNames) {
                allSkins.add(WordUtils.capitalize(skinDirectoryName.replace('_', ' ')));
            }
            Collections.sort(allSkins);
        }
    }

    currentSkinIndex = allSkins.indexOf(skinName);

    // Non-default (preferred) skin name and dir.
    preferredName = skinName.toLowerCase().replace(' ', '_');
    preferredDir = ForgeConstants.SKINS_DIR + preferredName + "/";

    if (onInit) {
        final File f = new File(preferredDir + ForgeConstants.SPLASH_BG_FILE);
        if (!f.exists()) {
            if (skinName.equals("default")) {
                throw new RuntimeException(
                        String.format("Cannot find default skin at %s", f.getAbsolutePath()));
            }
            loadLight("default", true);
            return;
        }

        final BufferedImage img;
        try {
            img = ImageIO.read(f);

            final int h = img.getHeight();
            final int w = img.getWidth();

            SkinIcon.setIcon(FSkinProp.BG_SPLASH, img.getSubimage(0, 0, w, h - 100));

            UIManager.put("ProgressBar.background", getColorFromPixel(img.getRGB(25, h - 75)));
            UIManager.put("ProgressBar.selectionBackground", getColorFromPixel(img.getRGB(75, h - 75)));
            UIManager.put("ProgressBar.foreground", getColorFromPixel(img.getRGB(25, h - 25)));
            UIManager.put("ProgressBar.selectionForeground", getColorFromPixel(img.getRGB(75, h - 25)));
            UIManager.put("ProgressBar.border", new LineBorder(Color.BLACK, 0));
        } catch (final IOException e) {
            e.printStackTrace();
        }
        loaded = true;
    }
}

From source file:org.ecoinformatics.seek.ecogrid.CheckBoxTableCellRenderer.java

public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus,
        int row, int column) {
    jTable = table;//from w w w .ja v a2  s. c  o m

    JPanel cellPanel = new JPanel();
    cellPanel.setBorder(new LineBorder(Color.lightGray, 1));
    cellPanel.setBackground(Color.WHITE);
    cellPanel.setPreferredSize(
            new Dimension(ServicesDisplayPanel.CELLPREFERREDWIDTH, ServicesDisplayPanel.HEIGHT));

    SelectableDocumentType selectedDocumentType = null;
    boolean isChecked = false;
    boolean isEnable = true;
    String text = null;
    if (value != null && value instanceof SelectableObjectInterface) {
        SelectableObjectInterface selectedObj = (SelectableObjectInterface) value;
        text = selectedObj.getSelectableObjectLabel();
        isChecked = selectedObj.getIsSelected();
        isEnable = selectedObj.getEnabled();
    }

    /*
     * label = (JLabel)renderer.getTableCellRendererComponent(table, text,
     * isSelected, hasFocus, row, column);
     */
    JLabel label = new JLabel(text);
    label.setFont(new Font(FONTNAME, Font.PLAIN, FONTSIZE));
    label.setPreferredSize(new Dimension(ServicesDisplayPanel.LABELPREFERWIDTH, ServicesDisplayPanel.HEIGHT));
    // set a check box name
    String checkBoxName = "" + topRowNum + SEPERATOR + row;
    JCheckBox checkBox = new JCheckBox();
    checkBox.setName(checkBoxName);
    checkBox.setBackground(Color.WHITE);
    checkBox.setSelected(isChecked);
    CheckBoxListener listener = new CheckBoxListener();
    checkBox.addItemListener(listener);
    // checkBox.setEnabled(false);

    /*
     * if (topRowNum != DEFAUTTOPROW ) { // for sub table we need to set up
     * check box enable status checkBox.setEnabled(isEnable); }//if
     */

    // add the label and checkbox to jpanel which has a border layout
    // manager
    BorderLayout layoutManager = new BorderLayout();
    cellPanel.setLayout(layoutManager);
    cellPanel.add(label, BorderLayout.CENTER);
    cellPanel.add(checkBox, BorderLayout.WEST);
    return cellPanel;
}