Examples of ListModel


Examples of javax.swing.ListModel

    ListModel list = getModel();
    addToPrograms(0, list.getSize() - 1);
  }

  private void addToPrograms(int indexFirst, int indexLast) {
    ListModel list = getModel();
    for (int i = indexFirst; i <= indexLast; i++) {
      Object element = list.getElementAt(i);
      if (element instanceof Program) {
        Program prg = (Program) element;
        prg.addChangeListener(this);
        mPrograms.add(prg);
      }
View Full Code Here

Examples of javax.swing.ListModel

            } catch (Exception e) {
                logger.error(e, e);
            }

            ListCellRenderer renderer = list.getCellRenderer();
            ListModel dataModel = list.getModel();
            ListSelectionModel selModel = list.getSelectionModel();
            if ((renderer == null) || (dataModel.getSize() == 0))
                return;

            // Compute the area we're going to paint in terms of the affected
            // columns/rows (firstPaintColumn, firstPaintRow, lastPaintColumn,
            // lastPaintRow), and the clip bounds.
            Rectangle paintBounds = g.getClipBounds();
  
            int firstPaintColumn = convertXToColumn(paintBounds.x);
            int firstPaintRow = convertYToRow(paintBounds.y);
            int lastPaintColumn = convertXToColumn((paintBounds.x+ paintBounds.width) - 1);
            int lastPaintRow = convertYToRow((paintBounds.y + paintBounds.height) - 1);
  
            if (firstPaintRow == -1)
                firstPaintRow = 0;

            if (lastPaintRow == -1)
                lastPaintRow = (dataModel.getSize()-1)/columnsPerRow;
           
            if (firstPaintColumn == -1)
                firstPaintColumn = 0;

            if (lastPaintColumn == -1)
                lastPaintColumn = columnsPerRow-1;
  
            Rectangle itemBounds = getCellBoundsPerColumnRow(list, firstPaintColumn, firstPaintRow);
            if (itemBounds == null)
                return;
  
            int leadIndex = list.getLeadSelectionIndex();
            int startItemBoundX = itemBounds.x;
  
            for(int row = firstPaintRow; row <= lastPaintRow; row++) {
                itemBounds.x = startItemBoundX;

                for(int column = firstPaintColumn; column <= lastPaintColumn; column++) {
                    int index = row * columnsPerRow + column;
                    if(index >= dataModel.getSize())
                        break;
                   
                    itemBounds.width  = getItemWidth(index);
                    itemBounds.height = getItemHeight(index);
  
View Full Code Here

Examples of javax.swing.ListModel

            // scanning through the entire model.  Note: if the renderer is
            // null, we just set cellWidth and cellHeights[*] to zero,
            // if they're not set already.
            if ((fixedCellWidth == -1) || (fixedCellHeight == -1)) {
       
                ListModel dataModel = list.getModel();
                int dataModelSize = dataModel.getSize();
                ListCellRenderer renderer = list.getCellRenderer();
       
                if (renderer != null) {
                    for(int index = 0; index < dataModelSize; index++) {
                        Object value = dataModel.getElementAt(index);
                        Component c = renderer.getListCellRendererComponent(list, value, index, false, false);
                        rendererPane.add(c);
                        Dimension cellSize = c.getPreferredSize();
                        int column = index%columnsPerRow;
                        int row    = index/columnsPerRow;
View Full Code Here

Examples of javax.swing.ListModel

            int fixedCellWidth  = list.getFixedCellWidth();
           
            if (fixedCellWidth != -1) {
                maxColumns = width/fixedCellWidth;
            } else {
                ListModel dataModel = list.getModel();
                int nItems = dataModel.getSize();
                ListCellRenderer renderer = list.getCellRenderer();
       
                if (renderer != null) {
                    Dimension[] cellDims = new Dimension[nItems];
                    for(int index = 0; index < nItems; index++) {
                        Object value = dataModel.getElementAt(index);
                        Component c = renderer.getListCellRendererComponent(list, value, index, false, false);
                        rendererPane.add(c);
                        cellDims[index] = c.getPreferredSize();
                    }
   
View Full Code Here

Examples of javax.swing.ListModel

  private class PropertyChangeHandler implements PropertyChangeListener {
    public void propertyChange(PropertyChangeEvent event) {
      String name = event.getPropertyName();
      if (name.equals(JIconView.MODEL_PROPERTY)) {
        ListModel model = (ListModel) event.getOldValue();
        if (model != null)
          model.removeListDataListener(dataListener);
        model = (ListModel) event.getNewValue();
        if (model != null) {
          dataListener = new ListDataHandler();
          model.addListDataListener(dataListener);
        }
      } else if (
        name.equals(JIconView.XCELLSIZE_PROPERTY)
          || name.equals(JIconView.YCELLSIZE_PROPERTY)
          || name.equals(JIconView.ICONTEXTSPACING_PROPERTY)) {
View Full Code Here

Examples of javax.swing.ListModel

    }
  }

  public void setProperty(String name, Object value) throws GUIException {
    if (name.startsWith("item.")) {
      ListModel model = list.getModel();
      if (!(model instanceof DefaultListModel))
        list.setModel(new DefaultListModel());
      ((DefaultListModel) model).addElement(value);
    } else if ("indexkey".equals(name)) {
      indexKey = (String) value;
View Full Code Here

Examples of javax.swing.ListModel

  }

  /* ========== Model ========== */

  public void setModel(ListModel model) {
    ListModel old = this.model;
    this.model = model;
    firePropertyChange(MODEL_PROPERTY, old, model);
  }
View Full Code Here

Examples of javax.swing.ListModel

    return new IconViewUI();
  }

  public void installUI(JComponent component) {
    view = (JIconView) component;
    ListModel model = view.getModel();
    if (model != null) {
      dataListener = new ListDataHandler();
      model.addListDataListener(dataListener);
    }
    changeListener = new PropertyChangeHandler();
    mouseListener = new MouseInputHandler();
    focusListener = new FocusHandler();
    selectionListener = new ListSelectionHandler();
View Full Code Here

Examples of javax.swing.ListModel

    view.removePropertyChangeListener(changeListener);
    view.removeFocusListener(focusListener);
    view.removeMouseListener(mouseListener);
    view.removeListSelectionListener(selectionListener);
    view.removeMouseMotionListener(motionListener);
    ListModel model = view.getModel();
    if (model != null)
      model.removeListDataListener(dataListener);
    view.unregisterKeyboardAction(KeyStroke.getKeyStroke(KeyEvent.VK_UP, 0));
    view.unregisterKeyboardAction(KeyStroke.getKeyStroke(KeyEvent.VK_DOWN, 0));
    view.unregisterKeyboardAction(KeyStroke.getKeyStroke(KeyEvent.VK_LEFT, 0));
    view.unregisterKeyboardAction(KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, 0));
  }
View Full Code Here

Examples of javax.swing.ListModel

  public void paint(Graphics g, JComponent component) {
    if (component != view || view.getModel() == null)
      return;
    Graphics2D g2 = (Graphics2D) g;

    ListModel model = view.getModel();
    Rectangle paintBounds = g.getClipBounds();
    Insets insets = view.getInsets();
    Dimension size = view.getSize();
    int modelSize = model.getSize();
    int xcell = view.getXCellSize(), ycell = view.getYCellSize(), counter = 0;
    metrics = g.getFontMetrics(view.getFont());
   
    if (metrics == null) {
      throw new RuntimeException("Could not resolve font metrics");
    }

    textHeight = metrics.getHeight();

    /* Fix sizes */
    if (paintBounds.x < insets.left)
      paintBounds.x = insets.left;
    if (paintBounds.width > size.width - insets.left - insets.right)
      paintBounds.width = size.width - insets.left - insets.right;
    if (paintBounds.y < insets.top)
      paintBounds.y = insets.top;
    if (view.getParent() instanceof JViewport) {
      paintBounds.height += 2 * ycell;
      if (paintBounds.height > size.height - insets.top - insets.bottom + ycell)
        paintBounds.height = size.height - insets.top - insets.bottom + ycell;
    } else {
      if (paintBounds.height > size.height - insets.top - insets.bottom)
        paintBounds.height = size.height - insets.top - insets.bottom;
    }

    /* Clear background */
    g.setColor(view.getBackground());
    g.fillRect(paintBounds.x, paintBounds.y, paintBounds.width, paintBounds.height);
    g.setColor(view.getForeground());

    int result[] = new int[(paintBounds.width / xcell) * (paintBounds.height / ycell)];
    for (int y = paintBounds.y; y < paintBounds.y + paintBounds.height; y += ycell) {
      for (int x = paintBounds.x; x <= paintBounds.x + paintBounds.width; x += xcell) {
        int index = getIndexForXY(x, y);
        if (index == -1)
          continue;
        int pos[] = getRowColumnForIndex(index);
        int xpos = convertColumnToX(pos[1]);
        int ypos = convertRowToY(pos[0]);
        IconElement element = (IconElement) model.getElementAt(index);
        ImageIcon icon = element.getIcon();
        String name = element.getText();
        int stringWidth = metrics.stringWidth(name);
        int iconHeight = icon.getIconHeight();
        int spacing = view.getIconTextSpacing();
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. 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.