Java Code Examples for javax.swing.JList#DropLocation
The following examples show how to use
javax.swing.JList#DropLocation .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: InjectScript.java From Cognizant-Intelligent-Test-Scripter with Apache License 2.0 | 6 votes |
private Boolean reorderProjects(TransferHandler.TransferSupport support) { JList list = (JList) support.getComponent(); try { int[] selectedIndices = (int[]) support.getTransferable().getTransferData(INDICES); DefaultListModel model = (DefaultListModel) list.getModel(); JList.DropLocation dl = (JList.DropLocation) support.getDropLocation(); if (dl.getIndex() != -1) { for (int selectedIndex : selectedIndices) { Object value = model.get(selectedIndex); model.removeElement(value); model.add(dl.getIndex(), value); } return true; } else { LOG.warning("Invalid Drop Location"); } } catch (UnsupportedFlavorException | IOException ex) { LOG.log(Level.SEVERE, ex.getMessage(), ex); } return false; }
Example 2
Source File: DragDropList.java From constellation with Apache License 2.0 | 5 votes |
@Override public boolean canImport(final TransferHandler.TransferSupport support) { if (!support.isDataFlavorSupported(DataFlavor.stringFlavor)) { return false; } JList.DropLocation dl = (JList.DropLocation) support.getDropLocation(); return dl.getIndex() != -1; }
Example 3
Source File: DragDropList.java From constellation with Apache License 2.0 | 5 votes |
@Override public boolean importData(final TransferHandler.TransferSupport support) { if (!canImport(support)) { return false; } final Transferable transferable = support.getTransferable(); String indexString; try { indexString = (String) transferable.getTransferData(DataFlavor.stringFlavor); } catch (Exception ex) { return false; } final int index = Integer.parseInt(indexString); JList.DropLocation dl = (JList.DropLocation) support.getDropLocation(); final int dropTargetIndex = dl.getIndex(); // Drop the dragged element into the correct place. if (index < dropTargetIndex) { // If the dragged element is being dropped at a higher target index, // add the element at the indicated index, remove the element from the source, // and select the dragged element (at a different position due to the removal). list.model.addMyElement(dropTargetIndex, list.model.getMyElementAt(index)); list.model.removeMyElement(index); list.setSelectedIndex(dropTargetIndex - 1); } else { // If the dragged element is being dropped at a lower target index, // remove the element from the source, add it at the indicated index, // and select it. final MyElement element = list.model.removeMyElement(index); list.model.addMyElement(dropTargetIndex, element); list.setSelectedIndex(dropTargetIndex); } return true; }
Example 4
Source File: ListTransferHandler.java From marathonv5 with Apache License 2.0 | 5 votes |
@Override public boolean importData(TransferHandler.TransferSupport info) { if (!info.isDrop()) { return false; } JList list = (JList) info.getComponent(); DefaultListModel listModel = (DefaultListModel) list.getModel(); JList.DropLocation dl = (JList.DropLocation) info.getDropLocation(); int index = dl.getIndex(); boolean insert = dl.isInsert(); // Get the string that is being dropped. Transferable t = info.getTransferable(); String data; try { data = (String) t.getTransferData(DataFlavor.stringFlavor); } catch (Exception e) { return false; } // Perform the actual import. if (insert) { listModel.add(index, data); } else { listModel.set(index, data); } return true; }
Example 5
Source File: ExtendedJListTransferHandler.java From rapidminer-studio with GNU Affero General Public License v3.0 | 5 votes |
@SuppressWarnings("unchecked") @Override public boolean importData(TransferSupport info) { TransferHandler.DropLocation dropLocation = info.getDropLocation(); if (!canImport(info) || !(dropLocation instanceof JList.DropLocation)) { return false; } JList.DropLocation dl = (JList.DropLocation) dropLocation; JList target = (JList) info.getComponent(); DefaultListModel listModel = (DefaultListModel) target.getModel(); int max = listModel.getSize(); int index = dl.getIndex(); index = index < 0 ? max : index; // make sure to append at the end if index > size index = Math.min(index, max); addIndex = index; try { Object[] values = (Object[]) info.getTransferable().getTransferData(localObjectFlavor); for (Object value : values) { int idx = index++; listModel.add(idx, value); target.addSelectionInterval(idx, idx); } addCount = values.length; return true; } catch (UnsupportedFlavorException | IOException e) { // should never happen, log anyway to be safe LogService.getRoot().log(Level.WARNING, "com.rapidminer.gui.tools.dnd.ExtendedJListTransferHandler.unexpected_error", e); } return false; }
Example 6
Source File: ShowToolSettingsPanel.java From jeveassets with GNU General Public License v2.0 | 5 votes |
@SuppressWarnings("unchecked") @Override public boolean importData(TransferSupport info) { TransferHandler.DropLocation tdl = info.getDropLocation(); if (!canImport(info) || !(tdl instanceof JList.DropLocation)) { return false; } JList.DropLocation dl = (JList.DropLocation) tdl; JList<?> target = (JList) info.getComponent(); DefaultListModel<Object> listModel = (DefaultListModel) target.getModel(); int max = listModel.getSize(); int index = dl.getIndex(); index = index < 0 ? max : index; // If it is out of range, it is appended to the end index = Math.min(index, max); addIndex = index; try { Object[] values = (Object[]) info.getTransferable().getTransferData(localObjectFlavor); for (Object value : values) { int idx = index++; listModel.add(idx, value); target.addSelectionInterval(idx, idx); } addCount = values.length; return true; } catch (UnsupportedFlavorException | IOException ex) { LOG.error(ex.getMessage(), ex); return false; } }
Example 7
Source File: AnalyserCellRenderer.java From netbeans with Apache License 2.0 | 4 votes |
@Override public Component getListCellRendererComponent ( JList list, Object value, int index, boolean isSelected, boolean cellHasFocus ) { setComponentOrientation (list.getComponentOrientation ()); Color bg = null; Color fg = null; JList.DropLocation dropLocation = list.getDropLocation (); if (dropLocation != null && !dropLocation.isInsert () && dropLocation.getIndex () == index) { bg = UIManager.getColor ("List.dropCellBackground"); fg = UIManager.getColor ("List.dropCellForeground"); isSelected = true; } String line = (String) value; Link link = StackLineAnalyser.analyse (line); if (isSelected) { setBackground (bg == null ? list.getSelectionBackground () : bg); setForeground(fg == null ? list.getSelectionForeground() : fg); } else { setBackground (list.getBackground ()); // if (link != null) // setForeground (foreground); // else setForeground (list.getForeground ()); } if (link != null) { StringBuilder sb = new StringBuilder (); sb.append ("<html>"); if (isSelected) sb.append("<style> a.val {text-decoration: underline; color: " + toRgbText(getForeground().getRGB()) + "} </style><body>"); sb.append (line.substring (0, link.getStartOffset ())); sb.append ("<a class=\"val\" href=\"\">"); sb.append (line.substring (link.getStartOffset (), link.getEndOffset ())); sb.append ("</a>"); sb.append (line.substring (link.getEndOffset ())); sb.append ("</body></html>"); setText (sb.toString ()); } else setText (line.trim ()); setEnabled (list.isEnabled ()); Border border = null; if (cellHasFocus) { if (isSelected) { border = UIManager.getBorder ("List.focusSelectedCellHighlightBorder"); } if (border == null) { border = UIManager.getBorder ("List.focusCellHighlightBorder"); } } else { border = getNoFocusBorder (); } setBorder (border); return this; }
Example 8
Source File: CheckBoxRenderrer.java From netbeans with Apache License 2.0 | 4 votes |
public Component getListCellRendererComponent ( JList list, Object value, int index, boolean isSelected, boolean cellHasFocus ) { setComponentOrientation (list.getComponentOrientation ()); Color bg = null; Color fg = null; JList.DropLocation dropLocation = list.getDropLocation (); if (dropLocation != null && !dropLocation.isInsert () && dropLocation.getIndex () == index) { bg = UIManager.getColor("List.dropCellBackground"); fg = UIManager.getColor("List.dropCellForeground"); isSelected = true; } if (isSelected) { setBackground (bg == null ? list.getSelectionBackground () : bg); setForeground (fg == null ? list.getSelectionForeground () : fg); } else { setBackground (list.getBackground ()); setForeground (list.getForeground ()); } String name = (String) value; setText (name.substring (1)); setSelected (name.charAt (0) == '+'); setEnabled (list.isEnabled ()); setFont (list.getFont ()); Border border = null; if (cellHasFocus) { if (isSelected) { border = UIManager.getBorder("List.focusSelectedCellHighlightBorder"); } if (border == null) { border = UIManager.getBorder("List.focusCellHighlightBorder"); } } else { border = getNoFocusBorder (); } if (border != null) { //#189786: rarely, the border is null - reasons are unknown setBorder (border); } else { Logger.getLogger(CheckBoxRenderrer.class.getName()).log(Level.INFO, "Cannot set any border"); } return this; }
Example 9
Source File: CheckBoxRenderrer.java From netbeans with Apache License 2.0 | 4 votes |
public Component getListCellRendererComponent ( JList list, Object value, int index, boolean isSelected, boolean cellHasFocus ) { setComponentOrientation (list.getComponentOrientation ()); Color bg = null; Color fg = null; JList.DropLocation dropLocation = list.getDropLocation (); if (dropLocation != null && !dropLocation.isInsert () && dropLocation.getIndex () == index) { bg = UIManager.getColor("List.dropCellBackground"); fg = UIManager.getColor("List.dropCellForeground"); isSelected = true; } if (isSelected) { setBackground (bg == null ? list.getSelectionBackground () : bg); setForeground (fg == null ? list.getSelectionForeground () : fg); } else { setBackground (list.getBackground ()); setForeground (list.getForeground ()); } String name = (String) value; setText (name.substring (1)); setSelected (name.charAt (0) == '+'); setEnabled (list.isEnabled ()); setFont (list.getFont ()); Border border = null; if (cellHasFocus) { if (isSelected) { border = UIManager.getBorder("List.focusSelectedCellHighlightBorder"); } if (border == null) { border = UIManager.getBorder("List.focusCellHighlightBorder"); } } else { border = getNoFocusBorder (); } if (border != null) { //#189786: rarely, the border is null - reasons are unknown setBorder (border); } else { Logger.getLogger(CheckBoxRenderrer.class.getName()).log(Level.INFO, "Cannot set any border"); } return this; }