1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-25 18:05:33 +02:00

Added path validation to CDirectorySourceContainerDialog.

This commit is contained in:
Mikhail Khodjaiants 2005-04-27 17:58:16 +00:00
parent 0fedc36b90
commit 301b9f9cc3
3 changed files with 41 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2005-04-27 Mikhail Khodjaiants
Added path validation to CDirectorySourceContainerDialog.
* CDirectorySourceContainerDialog.java
* SourceLookupUIMessages.properties
2005-04-25 Mikhail Khodjaiants
Added the new source container type (CDirectorySourceContainer) to provide
the UI support for the subfolders search.

View file

@ -27,6 +27,7 @@ import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Font;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.DirectoryDialog;
@ -71,8 +72,7 @@ public class CDirectorySourceContainerDialog extends TitleAreaDialog {
new IDialogFieldListener() {
public void dialogFieldChanged( DialogField field ) {
// TODO Auto-generated method stub
update();
}
} );
@ -155,4 +155,34 @@ public class CDirectorySourceContainerDialog extends TitleAreaDialog {
fDirectoryField.setText( getDirectory().getPath() );
fSubfoldersField.setSelection( isSearchSubfolders() );
}
protected void update() {
boolean isOk = updateErrorMessage();
Button ok = getButton( IDialogConstants.OK_ID );
if ( ok != null )
ok.setEnabled( isOk );
}
private boolean updateErrorMessage() {
setErrorMessage( null );
String text = fDirectoryField.getText().trim();
if ( text.length() == 0 ) {
setErrorMessage( SourceLookupUIMessages.getString ( "CDirectorySourceContainerDialog.5" ) ); //$NON-NLS-1$
return false;
}
File file = new File( text );
if ( !file.exists() ) {
setErrorMessage( SourceLookupUIMessages.getString ( "CDirectorySourceContainerDialog.6" ) ); //$NON-NLS-1$
return false;
}
if ( !file.isDirectory() ) {
setErrorMessage( SourceLookupUIMessages.getString ( "CDirectorySourceContainerDialog.7" ) ); //$NON-NLS-1$
return false;
}
if ( !file.isAbsolute() ) {
setErrorMessage( SourceLookupUIMessages.getString ( "CDirectorySourceContainerDialog.8" ) ); //$NON-NLS-1$
return false;
}
return true;
}
}

View file

@ -29,3 +29,7 @@ CDirectorySourceContainerDialog.1=&Browse...
CDirectorySourceContainerDialog.2=Search sub&folders
CDirectorySourceContainerDialog.3=Choose directory to add:
CDirectorySourceContainerDialog.4=Directory Selection
CDirectorySourceContainerDialog.5=The directory path must not be empty
CDirectorySourceContainerDialog.6=The specified directory doesn't exist
CDirectorySourceContainerDialog.7=The specified path must be a directory
CDirectorySourceContainerDialog.8=The specified path must be absolute