Package org.apache.pivot.wtk

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


    @Override
    public void mouseOut(Component component) {
        super.mouseOut(component);

        ListView listView = (ListView)getComponent();

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


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

        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.SelectMode selectMode = listView.getSelectMode();

                if (button == Mouse.Button.LEFT) {
                    Keyboard.Modifier commandModifier = Platform.getCommandModifier();

                    if (Keyboard.isPressed(Keyboard.Modifier.SHIFT)
                        && selectMode == ListView.SelectMode.MULTI) {
                        Filter<?> disabledItemFilter = listView.getDisabledItemFilter();

                        if (disabledItemFilter == null) {
                            // Select the range
                            ArrayList<Span> selectedRanges = new ArrayList<Span>();
                            int startIndex = listView.getFirstSelectedIndex();
                            int endIndex = listView.getLastSelectedIndex();

                            Span selectedRange = (itemIndex > startIndex) ?
                                new Span(startIndex, itemIndex) : new Span(itemIndex, endIndex);
                            selectedRanges.add(selectedRange);

                            listView.setSelectedRanges(selectedRanges);
                        }
                    } else if (Keyboard.isPressed(commandModifier)
                        && selectMode == ListView.SelectMode.MULTI) {
                        // Toggle the item's selection state
                        if (listView.isItemSelected(itemIndex)) {
                            listView.removeSelectedIndex(itemIndex);
                        } else {
                            listView.addSelectedIndex(itemIndex);
                        }
                    } else if (Keyboard.isPressed(commandModifier)
                        && selectMode == ListView.SelectMode.SINGLE) {
                        // Toggle the item's selection state
                        if (listView.isItemSelected(itemIndex)) {
                            listView.setSelectedIndex(-1);
                        } else {
                            listView.setSelectedIndex(itemIndex);
                        }
                    } else {
                        if (selectMode != ListView.SelectMode.NONE) {
                            if (listView.isItemSelected(itemIndex)) {
                                selectIndex = itemIndex;
                            } else {
                                listView.setSelectedIndex(itemIndex);
                            }
                        }
                    }
                }
            }
        }

        listView.requestFocus();

        return consumed;
    }
View Full Code Here

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

        ListView listView = (ListView)getComponent();
        if (selectIndex != -1
            && listView.getFirstSelectedIndex() != listView.getLastSelectedIndex()) {
            listView.setSelectedIndex(selectIndex);
            selectIndex = -1;
        }

        return consumed;
    }
View Full Code Here

    @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;
            }

            default: {
                break;
            }
        }

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

View Full Code Here

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

        ListView listView = (ListView)getComponent();

        switch (keyCode) {
            case Keyboard.KeyCode.SPACE: {
                if (listView.getCheckmarksEnabled()
                    && listView.getSelectMode() == ListView.SelectMode.SINGLE) {
                    int selectedIndex = listView.getSelectedIndex();

                    if (!listView.isCheckmarkDisabled(selectedIndex)) {
                        listView.setItemChecked(selectedIndex,
                            !listView.isItemChecked(selectedIndex));
                        consumed = true;
                    }
                }

                break;
View Full Code Here

     */
    @Override
    public boolean keyTyped(Component component, char character) {
        boolean consumed = super.keyTyped(component, character);

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

        char characterUpper = Character.toUpperCase(character);

        for (int i = listView.getLastSelectedIndex() + 1, n = listData.getLength(); i < n; i++) {
            if (!listView.isItemDisabled(i)) {
                String string = itemRenderer.toString(listData.get(i));

                if (string != null
                    && string.length() > 0) {
                    char first = Character.toUpperCase(string.charAt(0));

                    if (first == characterUpper) {
                        listView.setSelectedIndex(i);
                        consumed = true;
                        break;
                    }
                }
            }
        }

        if (!consumed
            && wrapSelectNext) {
            for (int i = 0, n = listData.getLength(); i < n; i++) {
                if (!listView.isItemDisabled(i)) {
                    String string = itemRenderer.toString(listData.get(i));

                    if (string != null
                            && string.length() > 0) {
                        char first = Character.toUpperCase(string.charAt(0));

                        if (first == characterUpper) {
                            listView.setSelectedIndex(i);
                            consumed = true;
                            break;
                        }
                    }
                }
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, window);
                        } else {
                            Alert.alert(MessageType.INFO, "You didn't select anything.", window);
                        }
View Full Code Here

public class ListViewTest extends Application.Adapter {
    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>() {
            @Override
            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

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.