Search in sources :

Example 1 with Pane

use of org.knime.base.node.preproc.draganddroppanel.droppanes.Pane in project knime-core by knime.

the class SelectionPanel method createInputList.

private void createInputList() {
    m_inputList = new JList<String>(m_config.getInputListModel());
    m_inputList.addMouseListener(new MouseListener() {

        @Override
        public void mouseReleased(final MouseEvent e) {
        // nothing to do
        }

        @Override
        public void mousePressed(final MouseEvent e) {
        // nothing to do
        }

        @Override
        public void mouseExited(final MouseEvent e) {
        // nothing to do
        }

        @Override
        public void mouseEntered(final MouseEvent e) {
        // nothing to do
        }

        @Override
        public void mouseClicked(final MouseEvent e) {
            if (e.getClickCount() > 1) {
                int selectedIndex = m_inputList.getSelectedIndex();
                int i = m_config.drop((String) ((DefaultListModel) m_inputList.getModel()).get(selectedIndex));
                Pane dp = getNewPane(m_includePanel, m_config, i);
                m_includePanel.add(dp.getComponentPanel(), m_gbc);
                m_gbc.gridy++;
                m_includePanel.setBackground(UIManager.getColor("Panel.background"));
                m_scrollPane.revalidate();
                ((DefaultListModel) m_inputList.getModel()).removeElementAt(selectedIndex);
            }
        }
    });
    m_inputList.setDragEnabled(true);
    m_inputList.setTransferHandler(new ListTransferHandler());
    m_inputList.setBorder(BorderFactory.createEtchedBorder(EtchedBorder.LOWERED));
    m_inputListScroller = new JScrollPane(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
    m_inputListScroller.setPreferredSize(new Dimension(150, 200));
    m_inputListScroller.setViewportView(m_inputList);
}
Also used : JScrollPane(javax.swing.JScrollPane) MouseListener(java.awt.event.MouseListener) MouseEvent(java.awt.event.MouseEvent) ListTransferHandler(org.knime.base.node.preproc.draganddroppanel.transferhandler.ListTransferHandler) Dimension(java.awt.Dimension) JSplitPane(javax.swing.JSplitPane) Pane(org.knime.base.node.preproc.draganddroppanel.droppanes.Pane) JScrollPane(javax.swing.JScrollPane)

Example 2 with Pane

use of org.knime.base.node.preproc.draganddroppanel.droppanes.Pane in project knime-core by knime.

the class SelectionPanel method drop.

/**
 * {@inheritDoc}
 */
@Override
public void drop(final DropTargetDropEvent dtde) {
    if (dtde.getDropAction() == DnDConstants.ACTION_MOVE) {
        dtde.acceptDrop(dtde.getDropAction());
        Transferable t = dtde.getTransferable();
        String s = "default";
        try {
            s = (String) t.getTransferData(DataFlavor.stringFlavor);
        } catch (UnsupportedFlavorException e) {
        // TODO Auto-generated catch block
        } catch (IOException e) {
        // TODO Auto-generated catch block
        }
        int i = m_config.drop(s);
        Pane dp = getNewPane(m_includePanel, m_config, i);
        m_includePanel.add(dp.getComponentPanel(), m_gbc);
        m_gbc.gridy++;
        m_includePanel.setBackground(UIManager.getColor("Panel.background"));
        m_scrollPane.revalidate();
        dtde.dropComplete(true);
    }
}
Also used : Transferable(java.awt.datatransfer.Transferable) IOException(java.io.IOException) UnsupportedFlavorException(java.awt.datatransfer.UnsupportedFlavorException) JSplitPane(javax.swing.JSplitPane) Pane(org.knime.base.node.preproc.draganddroppanel.droppanes.Pane) JScrollPane(javax.swing.JScrollPane)

Aggregations

JScrollPane (javax.swing.JScrollPane)2 JSplitPane (javax.swing.JSplitPane)2 Pane (org.knime.base.node.preproc.draganddroppanel.droppanes.Pane)2 Dimension (java.awt.Dimension)1 Transferable (java.awt.datatransfer.Transferable)1 UnsupportedFlavorException (java.awt.datatransfer.UnsupportedFlavorException)1 MouseEvent (java.awt.event.MouseEvent)1 MouseListener (java.awt.event.MouseListener)1 IOException (java.io.IOException)1 ListTransferHandler (org.knime.base.node.preproc.draganddroppanel.transferhandler.ListTransferHandler)1