Package javax.swing

Examples of javax.swing.ListCellRenderer


            }
        }

        private Dimension getPrototypeSize(Object prototypeValue) {
            // get the renderer responsible for drawing the prototype value
            ListCellRenderer renderer = comboBox.getRenderer();
            if (renderer == null)
                renderer = new DefaultListCellRenderer();

            // get the component from the renderer
            final Component comp = renderer.getListCellRendererComponent(popup.getList(), prototypeValue, -1, false, false);

            // determine the preferred size of the component
            comp.setFont(comboBox.getFont());
            return comp.getPreferredSize();
        }
View Full Code Here


    }
    final Rectangle bds = list.getCellBounds(row, row);
    //GetCellBounds returns a width that is the
    //full component width;  we want only what
    //the renderer really needs.
    final ListCellRenderer ren = list.getCellRenderer();
    final Dimension rendererSize = ren.getListCellRendererComponent(list, list.getModel().getElementAt(row), row, false, false).getPreferredSize();

    bds.width = rendererSize.width;
    if (!bds.contains(p)) {
      hide();
      return;
View Full Code Here

    UIManager.put("Label.font", new Font("Dialog", Font.PLAIN, 21));
    UIManager.put("Label.foreground", Color.green);
    UIManager.put("Label.background", Color.yellow);
   
    MyBasicComboBoxUI ui = new MyBasicComboBoxUI();
    ListCellRenderer renderer = ui.createRenderer();
    Component c = (Component) renderer;
   
    harness.check(c.getFont(), new Font("Dialog", Font.PLAIN, 21));
    harness.check(c.getForeground(), Color.green);
    harness.check(c.getBackground(), Color.yellow);
   
    // confirm that the method creates a new instance every time
    ListCellRenderer renderer2 = ui.createRenderer();
    harness.check(renderer != renderer2);
   
    JComboBox cb = new JComboBox();
    ListCellRenderer renderer3 = cb.getRenderer();
    Component c3 = (Component) renderer3;
    harness.check(c3.getFont(), new Font("Dialog", Font.PLAIN, 21));
    harness.check(c3.getForeground(), Color.green);
    harness.check(c3.getBackground(), Color.yellow);
   
    // changing the font on the combo box doesn't update the renderer font
    cb.setFont(new Font("Dialog", Font.BOLD, 10));
    harness.check(c3.getFont(), new Font("Dialog", Font.PLAIN, 21));
    ListCellRenderer renderer4 = cb.getRenderer();
    harness.check(renderer3 == renderer4);
   
    // restore a sane look and feel
    try
    {
View Full Code Here

    }

    // PENDING JW: this isn't aware of sorting/filtering - fix!
    private static boolean pointIsInActualBounds(JList list, int index,
            Point point) {
        ListCellRenderer renderer = list.getCellRenderer();
        ListModel model = list.getModel();
        Object element = model.getElementAt(index);
        Component comp = renderer.getListCellRendererComponent(list, element,
                index, false, false);

        Dimension prefSize = comp.getPreferredSize();
        Rectangle cellBounds = list.getCellBounds(index, index);
        if (!(comp.getComponentOrientation().isLeftToRight())) {
View Full Code Here

   */
  public Component getListCellRendererComponent(JList list, Object value,
            int index, boolean selected, boolean hasFocus) {
    Completion c = (Completion)value;
    CompletionProvider p = c.getProvider();
    ListCellRenderer r = p.getListCellRenderer();
    if (r!=null) {
      return r.getListCellRendererComponent(list, value, index, selected,
                          hasFocus);
    }
    if (fallback==null) {
      return super.getListCellRendererComponent(list, value, index,
                        selected, hasFocus);
View Full Code Here

    String value = mData[2].toString();
    if (component instanceof JCheckBox || component instanceof JRadioButton) {
      new ComponentSelector().executeCommand(mData[0].toString(),Integer.parseInt(mData[1].toString()), Boolean.parseBoolean(value));
    } else if (component instanceof JComboBox) {
      JComboBox combo = (JComboBox) component;
      ListCellRenderer renderer = combo.getRenderer();
      for (int i = 0; i < combo.getItemCount(); i++) {
        String itemValue = getItemText(combo.getModel().getElementAt(i), renderer);
        System.out.println("compare combo elmt (" + itemValue + ") with '" + value + "'");
        // Use a startsWith instead of equals() as toString() can return more than the value
        if (itemValue.equals(value)) {
          mValueToSelect = i;
        }
      }
    } else if (component instanceof JList) {
      JList list = (JList) component;
      ListCellRenderer renderer = list.getCellRenderer();
      for (int i = 0; i < list.getModel().getSize(); i++) {
        String itemValue = getItemText(list.getModel().getElementAt(i), renderer);
        System.out.println("compare list elmt (" + itemValue + ") with '" + value + "'");
        if (itemValue.equals(value)) {
          mValueToSelect = i;
View Full Code Here

    JFrame frame = new JFrame("Complex Renderer");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JList jlist = new JList(elements);
    ListCellRenderer renderer = new ComplexCellRenderer();
    jlist.setCellRenderer(renderer);
    JScrollPane scrollPane = new JScrollPane(jlist);
    frame.add(scrollPane, BorderLayout.CENTER);

    frame.setSize(300, 200);
View Full Code Here

        super();
        // TF:20/10/2009:DET-119:Do not have the menu centre aligned (the default) but left aligned.
        this.setAlignmentX(0.0f);
        armedIndex = 0;
        isMenuListSelected = false;
        setCellRenderer(new ListCellRenderer(){
            public Component getListCellRendererComponent(
                    JList list,
                    Object value,
                    int index,
                    boolean isSelected,
View Full Code Here

          else if (anObject instanceof String) {
            color = Color.CYAN;
          }
        }
      });
      this.setRenderer(new ListCellRenderer() {
        public Component getListCellRendererComponent(JList list,
            Object value, int index, boolean isSelected,
            boolean cellHasFocus) {
         
          Component result;
View Full Code Here

    /**
     * Paints the currently selected item.
     */
    public void paintCurrentValue(Graphics g,Rectangle bounds,boolean hasFocus) {
        ListCellRenderer renderer = comboBox.getRenderer();
        Component c;

        if ( hasFocus && !isPopupVisible(comboBox) ) {
            c = renderer.getListCellRendererComponent( listBox,
                                                       comboBox.getSelectedItem(),
                                                       -1,
                                                       true,
                                                       false );
        }
        else {
            c = renderer.getListCellRendererComponent( listBox,
                                                       comboBox.getSelectedItem(),
                                                       -1,
                                                       false,
                                                       false );
            c.setBackground(UIManager.getColor("ComboBox.background"));
View Full Code Here

TOP

Related Classes of javax.swing.ListCellRenderer

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.