Bug 150805 [Import/Export] Incomplete validation when importing from directory
The following instance methods of CheckboxTreeViewer class don't fire any CheckStateChangedEvent. Affected methods: setAllChecked(...) setCheckedElements(...) setChecked(...) Steps to reproduce the bug: 1. File -> Import... 2. File System -> Next 3. Choose a "From directory" using the Browse... button 4. Check the root element from the left pane (the error message saying that "There are no resources currently selected for import." should disappear) 5. Press the Deselect All button and see that no error message is displayed at all!! 6. Recheck the root element twice and the error message is displayed again!! Solution: Add fireCheckStateChanged calls inside affected methods
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/CheckboxTableViewer.java
boolean check = set.containsKey(element);
                
                if (item.getChecked() != check) {
                    item.setChecked(check);
                }
            }
        }
    }
    /**
     * Sets the grayed state for the given element in this viewer.
     *
     * @param element the element
     * @param state <code>true</code> if the item should be grayed,
     *  and <code>false</code> if it should be ungrayed
     * @return <code>true</code> if the element is visible and the gray
     *  state could be set, and <code>false</code> otherwise
     */
    public boolean setGrayed(Object element, boolean state) {
        Assert.isNotNull(element);
        Widget widget = findItem(element);
        if (widget instanceof TableItem) {
            ((TableItem) widget).setGrayed(state);
            return true;
        }
        return false;
    }
    /**
     * Sets which nodes are grayed in this viewer.
     * The given list contains the elements that are to be grayed;
     * all other nodes are to be ungrayed.