Package org.apache.pivot.wtk

Examples of org.apache.pivot.wtk.ListView$ListViewListenerList


    @Override
    public boolean mouseClick(Component component, Mouse.Button button, int x, int y, int count) {
        boolean consumed = super.mouseClick(component, button, x, y, count);

        ListView listView = (ListView)getComponent();
        int itemIndex = getItemAt(y);

        if (itemIndex != -1
            && !listView.isItemDisabled(itemIndex)) {
            if (listView.getCheckmarksEnabled()
                && !listView.isCheckmarkDisabled(itemIndex)
                && getCheckboxBounds(itemIndex).contains(x, y)) {
                listView.setItemChecked(itemIndex, !listView.isItemChecked(itemIndex));
            } else {
                if (selectIndex != -1
                    && count == 1
                    && button == Mouse.Button.LEFT) {
                    ListView.ItemEditor itemEditor = listView.getItemEditor();

                    if (itemEditor != null) {
                        if (itemEditor.isEditing()) {
                            itemEditor.endEdit(true);
                        }
View Full Code Here


    }

    @Override
    public boolean mouseWheel(Component component, Mouse.ScrollType scrollType, int scrollAmount,
        int wheelRotation, int x, int y) {
        ListView listView = (ListView)getComponent();

        if (highlightIndex != -1) {
            Bounds itemBounds = getItemBounds(highlightIndex);

            highlightIndex = -1;

            if (listView.getSelectMode() != ListView.SelectMode.NONE
                && showHighlight) {
                repaintComponent(itemBounds.x, itemBounds.y, itemBounds.width,
                    itemBounds.height, true);
            }
        }
View Full Code Here

     */
    @Override
    public boolean keyPressed(Component component, int keyCode, Keyboard.KeyLocation keyLocation) {
        boolean consumed = super.keyPressed(component, keyCode, keyLocation);

        ListView listView = (ListView)getComponent();
        ListView.SelectMode selectMode = listView.getSelectMode();

        switch (keyCode) {
            case Keyboard.KeyCode.UP: {
                if (selectMode != ListView.SelectMode.NONE) {
                    int index = listView.getFirstSelectedIndex();
                    int count = listView.getListData().getLength();

                    do {
                        index--;
                    } while (index >= 0
                        && listView.isItemDisabled(index));

                    if (index >= 0) {
                        if (Keyboard.isPressed(Keyboard.Modifier.SHIFT)
                            && listView.getSelectMode() == ListView.SelectMode.MULTI) {
                            listView.addSelectedIndex(index);
                        } else {
                            listView.setSelectedIndex(index);
                        }
                    } else if (!Keyboard.isPressed(Keyboard.Modifier.SHIFT) && listView.getSelectMode() == ListView.SelectMode.MULTI && count == listView.getSelectedItems().getLength()) {
                        index = listView.getLastSelectedIndex();
                        do {
                            index--;
                        } while (index >= 0 &&
                                listView.isItemDisabled(index));

                        listView.setSelectedIndex(Math.max(0, index));
                    }

                    consumed = true;
                }

                break;
            }

            case Keyboard.KeyCode.DOWN: {
                if (selectMode != ListView.SelectMode.NONE) {
                    int index = listView.getLastSelectedIndex();
                    int count = listView.getListData().getLength();

                    do {
                        index++;
                    } while (index < count
                        && listView.isItemDisabled(index));

                    if (index < count) {
                        if (Keyboard.isPressed(Keyboard.Modifier.SHIFT)
                            && listView.getSelectMode() == ListView.SelectMode.MULTI) {
                            listView.addSelectedIndex(index);
                        } else {
                            listView.setSelectedIndex(index);
                        }
                    } else if (!Keyboard.isPressed(Keyboard.Modifier.SHIFT) && listView.getSelectMode() == ListView.SelectMode.MULTI && count == listView.getSelectedItems().getLength()) {
                        index = 0;
                        do {
                            index++;
                        } while (index < count &&
                                listView.isItemDisabled(index));

                        listView.setSelectedIndex(Math.min(count - 1, index));
                    }

                    consumed = true;
                }

                break;
            }
        }

        // Clear the highlight
        if (highlightIndex != -1
            && listView.getSelectMode() != ListView.SelectMode.NONE
            && showHighlight
            && consumed) {
            repaintComponent(getItemBounds(highlightIndex));
        }

View Full Code Here

        listView.setDragSource(new DragSource() {
            private LocalManifest content = null;

            @Override
            public boolean beginDrag(Component component, int x, int y) {
                ListView listView = (ListView)component;
                FileList fileList = (FileList)listView.getListData();

                if (fileList.getLength() > 0) {
                    content = new LocalManifest();
                    content.putFileList(fileList);
                }

                return (content != null);
            }

            @Override
            public void endDrag(Component component, DropAction dropAction) {
                content = null;
            }

            @Override
            public boolean isNative() {
                return true;
            }

            @Override
            public LocalManifest getContent() {
                return content;
            }

            @Override
            public Visual getRepresentation() {
                return null;
            }

            @Override
            public Point getOffset() {
                return null;
            }

            @Override
            public int getSupportedDropActions() {
                return DropAction.COPY.getMask();
            }
        });

        listView.setDropTarget(new DropTarget() {
            @Override
            public DropAction dragEnter(Component component, Manifest dragContent,
                int supportedDropActions, DropAction userDropAction) {
                DropAction dropAction = null;

                if (dragContent.containsFileList()
                    && DropAction.COPY.isSelected(supportedDropActions)) {
                    dropAction = DropAction.COPY;
                }

                return dropAction;
            }

            @Override
            public void dragExit(Component component) {
            }

            @Override
            public DropAction dragMove(Component component, Manifest dragContent,
                int supportedDropActions, int x, int y, DropAction userDropAction) {
                return (dragContent.containsFileList() ? DropAction.COPY : null);
            }

            @Override
            public DropAction userDropActionChange(Component component, Manifest dragContent,
                int supportedDropActions, int x, int y, DropAction userDropAction) {
                return (dragContent.containsFileList() ? DropAction.COPY : null);
            }

            @Override
            public DropAction drop(Component component, Manifest dragContent,
                int supportedDropActions, int x, int y, DropAction userDropAction) {
                DropAction dropAction = null;

                if (dragContent.containsFileList()) {
                    try {
                        listView.setListData(dragContent.getFileList());
                        dropAction = DropAction.COPY;
                    } catch(IOException exception) {
                        System.err.println(exception);
                    }
                }
View Full Code Here

                    @Override
                    public void sheetClosed(Sheet sheet) {
                        if (sheet.getResult()) {
                            Sequence<File> selectedFiles = fileBrowserSheet.getSelectedFiles();

                            ListView listView = new ListView();
                            listView.setListData(new ArrayList<File>(selectedFiles));
                            listView.setSelectMode(ListView.SelectMode.NONE);
                            listView.getStyles().put("backgroundColor", null);

                            Alert.alert(MessageType.INFO, "You selected:", listView, FileBrowsing.this);
                        } else {
                            Alert.alert(MessageType.INFO, "You didn't select anything.", FileBrowsing.this);
                        }
View Full Code Here

    private Window window = null;

    @Override
    public void startup(Display display, Map<String, String> properties)
        throws Exception {
        final ListView listView = new ListView(JSONSerializer.parseList("['One', 'Two', 'Three', 'Four']"));
        listView.setSelectMode(ListView.SelectMode.MULTI);
        listView.setCheckmarksEnabled(true);
        listView.setItemChecked(0, true);
        listView.setItemChecked(2, true);

        listView.getComponentKeyListeners().add(new ComponentKeyListener.Adapter() {
            @Override
            @SuppressWarnings("unchecked")
            public boolean keyPressed(Component component, int keyCode, Keyboard.KeyLocation keyLocation) {
                if (keyCode == Keyboard.KeyCode.DELETE) {
                    List<Object> listData = (List<Object>)listView.getListData();

                    Sequence<Span> selectedRanges = listView.getSelectedRanges();
                    for (int i = selectedRanges.getLength() - 1; i >= 0; i--) {
                        Span selectedRange = selectedRanges.get(i);
                        listData.remove(selectedRange.start, selectedRange.end - selectedRange.start + 1);
                    }
                }
View Full Code Here

public class ListViewTest implements Application {
    private Window window = null;

    @Override
    public void startup(Display display, Map<String, String> properties) {
        ListView listView = new ListView();

        List<String> listData = new ArrayList<String>();
        listData.add("0");
        listData.add("1");
        listData.add("2");
        listData.add("3");
        listData.add("4");
        listData.add("5");
        listData.add("6");
        listData.add("7");
        listData.add("8");
        listData.add("9");
        listData.add("A");
        listData.add("B");
        listData.add("C");
        listData.add("D");
        listData.add("E");
        listData.add("F");

        listView.setListData(listData);
        listView.setDisabledItemFilter(new Filter<String>() {
            public boolean include(String item) {
                return !Character.isDigit(item.charAt(0));
            }
        });

        listView.setCheckmarksEnabled(true);
        listView.setItemChecked(4, true);
        listView.setItemChecked(6, true);

        window = new Window(listView);
        window.open(display);

        listData.insert("-1", 0);
View Full Code Here

    };

    protected boolean pressed = false;

    public ListButtonSkin() {
        listView = new ListView();

        listViewPopup = new Window();
        listViewPopup.getComponentMouseButtonListeners().add(listViewPopupMouseButtonListener);
        listViewPopup.getComponentKeyListeners().add(listViewPopupKeyListener);
        listViewPopup.getWindowStateListeners().add(listViewPopupWindowStateListener);
View Full Code Here

    @Override
    @SuppressWarnings("unchecked")
    public int getPreferredHeight(int width) {
        int preferredHeight = 0;

        ListView listView = (ListView)getComponent();
        List<Object> listData = (List<Object>)listView.getListData();
        ListView.ItemRenderer itemRenderer = listView.getItemRenderer();

        if (variableItemHeight) {
            int clientWidth = width;
            if (listView.getCheckmarksEnabled()) {
                clientWidth = Math.max(clientWidth - (CHECKBOX.getWidth() + (checkboxPadding.left
                    + checkboxPadding.right)), 0);
            }

            int index = 0;
            for (Object item : listData) {
                itemRenderer.render(item, index++, listView, false, false, false, false);
                preferredHeight += itemRenderer.getPreferredHeight(clientWidth);
            }
        } else {
            itemRenderer.render(null, -1, listView, false, false, false, false);

            int fixedItemHeight = itemRenderer.getPreferredHeight(-1);
            if (listView.getCheckmarksEnabled()) {
                fixedItemHeight = Math.max(CHECKBOX.getHeight() + (checkboxPadding.top
                    + checkboxPadding.bottom), fixedItemHeight);
            }

            preferredHeight = listData.getLength() * fixedItemHeight;
 
View Full Code Here

    }

    @Override
    @SuppressWarnings("unchecked")
    public int getBaseline(int width, int height) {
        ListView listView = (ListView)getComponent();

        int baseline = -1;

        int clientWidth = width;
        if (listView.getCheckmarksEnabled()) {
            clientWidth = Math.max(clientWidth - (CHECKBOX.getWidth() + (checkboxPadding.left
                + checkboxPadding.right)), 0);
        }

        ListView.ItemRenderer itemRenderer = listView.getItemRenderer();
        List<Object> listData = (List<Object>)listView.getListData();
        if (variableItemHeight && listData.getLength() > 0) {
            itemRenderer.render(listData.get(0), 0, listView, false, false, false, false);
            int itemHeight = itemRenderer.getPreferredHeight(clientWidth);
            if (listView.getCheckmarksEnabled()) {
                itemHeight = Math.max(CHECKBOX.getHeight() + (checkboxPadding.top
                    + checkboxPadding.bottom), itemHeight);
            }

            baseline = itemRenderer.getBaseline(clientWidth, itemHeight);
        } else {
            itemRenderer.render(null, -1, listView, false, false, false, false);

            int fixedItemHeight = itemRenderer.getPreferredHeight(-1);
            if (listView.getCheckmarksEnabled()) {
                fixedItemHeight = Math.max(CHECKBOX.getHeight() + (checkboxPadding.top
                    + checkboxPadding.bottom), fixedItemHeight);
            }

            baseline = itemRenderer.getBaseline(clientWidth, fixedItemHeight);
View Full Code Here

TOP

Related Classes of org.apache.pivot.wtk.ListView$ListViewListenerList

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.