Fixed: [Issue 5] Indicate that the output folder is relative to the project in the 'Compiler' preference page
https://code.google.com/p/protobuf-dt/issues/detail?id=5
diff --git a/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/preferences/CompilerPreferencePage.java b/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/preferences/CompilerPreferencePage.java
index aeb4ffe..a7d7199 100644
--- a/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/preferences/CompilerPreferencePage.java
+++ b/com.google.eclipse.protobuf.ui/src/com/google/eclipse/protobuf/ui/preferences/CompilerPreferencePage.java
@@ -40,6 +40,7 @@
 public class CompilerPreferencePage extends PreferencePage implements IWorkbenchPreferencePage, IWorkbenchPropertyPage {
 
   private static final String PREFERENCE_PAGE_ID = "com.google.eclipse.protobuf.ui.preferences.CompilerPreferencePage";
+
   private Button btnEnableProjectSettings;
   private Link lnkEnableWorkspaceSettings;
   private Button btnCompileProtoFiles;
@@ -58,16 +59,17 @@
   private Group grpOutput;
   private Text txtOutputFolderName;
   private Label lblOutputFolderName;
+  private Button btnRefreshResources;
+  private Group grpRefresh;
+  private Button btnRefreshProject;
+  private Button btnRefreshOutputFolder;
+  private Label lblOutputFolderRelative;
 
   private IProject project;
 
   private final IPreferenceStoreAccess preferenceStoreAccess;
 
   private Map<String, Object> dataMap;
-  private Button btnRefreshResources;
-  private Group grpRefresh;
-  private Button btnRefreshProject;
-  private Button btnRefreshOutputFolder;
 
   @Inject public CompilerPreferencePage(IPreferenceStoreAccess preferenceStoreAccess) {
     this.preferenceStoreAccess = preferenceStoreAccess;
@@ -118,12 +120,10 @@
     btnUseProtocInCustomPath = new Button(grpCompilerLocation, SWT.RADIO);
     btnUseProtocInCustomPath.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false, 4, 1));
     btnUseProtocInCustomPath.setText(CompilerPreferencePage_customPath);
-    new Label(grpCompilerLocation, SWT.NONE);
 
     txtProtocFilePath = new Text(grpCompilerLocation, SWT.BORDER);
     txtProtocFilePath.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
     txtProtocFilePath.setEditable(false);
-    new Label(grpCompilerLocation, SWT.NONE);
 
     btnProtocPathBrowse = new Button(grpCompilerLocation, SWT.NONE);
     btnProtocPathBrowse.setText(CompilerPreferencePage_browseCustomPath);
@@ -145,17 +145,20 @@
     btnPython.setText(CompilerPreferencePage_generatePython);
 
     grpOutput = new Group(cmpMain, SWT.NONE);
-    grpOutput.setLayout(new GridLayout(3, false));
+    grpOutput.setLayout(new GridLayout(2, false));
     grpOutput.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
     grpOutput.setText(CompilerPreferencePage_generatedCode);
 
     lblOutputFolderName = new Label(grpOutput, SWT.NONE);
     lblOutputFolderName.setText(CompilerPreferencePage_outputFolderName);
-    new Label(grpOutput, SWT.NONE);
 
     txtOutputFolderName = new Text(grpOutput, SWT.BORDER);
     txtOutputFolderName.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
 
+    lblOutputFolderRelative = new Label(grpOutput, SWT.NONE);
+    lblOutputFolderRelative.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false, 2, 1));
+    lblOutputFolderRelative.setText("* relative to the project's folder");
+
     tbtmRefresh = new TabItem(tabFolder, SWT.NONE);
     tbtmRefresh.setText(CompilerPreferencePage_refreshTab);
 
@@ -178,7 +181,6 @@
     btnRefreshOutputFolder = new Button(grpRefresh, SWT.RADIO);
     btnRefreshOutputFolder.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
     btnRefreshOutputFolder.setText(CompilerPreferencePage_refreshOutputProject);
-    new Label(contents, SWT.NONE);
 
     updateFromPreferenceStore();
     addEventListeners();
@@ -381,6 +383,7 @@
     grpOutput.setEnabled(enabled);
     lblOutputFolderName.setEnabled(enabled);
     txtOutputFolderName.setEnabled(enabled);
+    lblOutputFolderRelative.setEnabled(enabled);
   }
 
   private void setRefreshOptionsEnabled(boolean enabled) {