Bug 298835 Merge e4 Project Path Variable back into the 3.6 stream
The virtual folder and filters changes are already in 3.6, the project path variable changes in e4 still remains to be merged.
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/internal/ide/dialogs/PathVariablesGroup.java
* variables in the table.
     */
    private void updateEnabledState() {
        int itemsSelectedCount = variableTable.getSelectionCount();
        editButton.setEnabled(itemsSelectedCount == 1 && canChangeSelection());
        removeButton.setEnabled(itemsSelectedCount > 0 && canChangeSelection());
    }
    /**
     * Rebuilds table widget state with the current list of variables (reflecting
     * any changes, additions and removals), and selects the item corresponding to
     * the given variable name. If the variable name is <code>null</code>, the
     * first item (if any) will be selected.
     * 
     * @param selectedVarName the name for the variable to be selected (may be
     * <code>null</code>)
     * @see IPathVariableManager#getPathVariableNames()
     * @see IPathVariableManager#getValue(String, IResource)
     */
    private void updateVariableTable(String selectedVarName) {
        variableTable.removeAll();
        int selectedVarIndex = 0;
        for (Iterator varNames = tempPathVariables.keySet().iterator(); varNames
                .hasNext();) {
            TableItem item = new TableItem(variableTable, SWT.NONE);
            String varName = (String) varNames.next();
            IPath value = (IPath) tempPathVariables.get(varName);
            IPath resolvedValue = value;
            if (currentResource != null) {
            	URI resolvedURI = currentResource.getProject().getPathVariableManager().resolveURI(URIUtil.toURI(resolvedValue), currentResource);
            	resolvedValue = URIUtil.toPath(resolvedURI);