package eu.etaxonomy.taxeditor.view.specimenSearch;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.DateTime;
import org.eclipse.swt.widgets.Display;
private final Text textCountry;
private final DateTime dateFrom;
private final DateTime dateTo;
+ private final Button btnShowDate;
/**
* Create the composite.
Label lblCollectionDate = new Label(this, SWT.NONE);
lblCollectionDate.setText("Collection Date");
- new Label(this, SWT.NONE);
+
+ btnShowDate = new Button(this, SWT.CHECK);
Label lblFrom = new Label(this, SWT.NONE);
lblFrom.setLayoutData(new TableWrapData(TableWrapData.RIGHT, TableWrapData.TOP, 1, 1));
dateFrom = new DateTime(this, SWT.NONE);
dateFrom.setLayoutData(new TableWrapData(TableWrapData.FILL, TableWrapData.TOP, 1, 1));
- formToolkit.adapt(dateFrom);
formToolkit.paintBordersFor(dateFrom);
Label lblTo = new Label(this, SWT.NONE);
lblTo.setLayoutData(new TableWrapData(TableWrapData.RIGHT, TableWrapData.TOP, 1, 1));
lblTo.setText("to");
- dateTo = new DateTime(this, SWT.DROP_DOWN);
+ dateTo = new DateTime(this, SWT.NONE);
dateTo.setLayoutData(new TableWrapData(TableWrapData.FILL, TableWrapData.TOP, 1, 1));
- formToolkit.adapt(dateTo);
formToolkit.paintBordersFor(dateTo);
}
public DateTime getDateTo() {
return dateTo;
}
+ public Button getBtnShowDate() {
+ return btnShowDate;
+ }
}
import java.util.GregorianCalendar;
import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Event;
+import org.eclipse.swt.widgets.Listener;
/**
* Controller class for handling a {@link SpecimenSearchComposite}.
* @date 03.09.2013
*
*/
-public class SpecimenSearchController {
+public class SpecimenSearchController implements Listener{
private final SpecimenSearchComposite specimenSearchComposite;
*/
public SpecimenSearchController(Composite parent) {
this.specimenSearchComposite = new SpecimenSearchComposite(parent, SWT.NONE);
+ specimenSearchComposite.getBtnShowDate().addListener(SWT.Selection, this);
+ specimenSearchComposite.getBtnShowDate().setSelection(false);
+ specimenSearchComposite.getDateFrom().setEnabled(false);
+ specimenSearchComposite.getDateTo().setEnabled(false);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)
+ */
+ @Override
+ public void handleEvent(Event event) {
+ Button btnShowDate = specimenSearchComposite.getBtnShowDate();
+ if(event.widget==btnShowDate){
+ specimenSearchComposite.getDateFrom().setEnabled(btnShowDate.getSelection());
+ specimenSearchComposite.getDateTo().setEnabled(btnShowDate.getSelection());
+ }
}
/**
* @see eu.etaxonomy.taxeditor.view.specimenSearch.SpecimenSearchComposite#getDateFrom()
*/
public Calendar getDateFrom() {
- Calendar dateFrom = new GregorianCalendar();
- dateFrom.clear();
- dateFrom.set(specimenSearchComposite.getDateFrom().getYear(), specimenSearchComposite.getDateFrom().getMonth(), specimenSearchComposite.getDateFrom().getDay());
- return dateFrom;
+ if(specimenSearchComposite.getBtnShowDate().getSelection()){
+ Calendar dateFrom = new GregorianCalendar();
+ dateFrom.clear();
+ dateFrom.set(specimenSearchComposite.getDateFrom().getYear(), specimenSearchComposite.getDateFrom().getMonth(), specimenSearchComposite.getDateFrom().getDay());
+ return dateFrom;
+ }
+ return null;
}
/**
* @see eu.etaxonomy.taxeditor.view.specimenSearch.SpecimenSearchComposite#getDateTo()
*/
public Calendar getDateTo() {
- Calendar dateTo = new GregorianCalendar();
- dateTo.clear();
- dateTo.set(specimenSearchComposite.getDateTo().getYear(), specimenSearchComposite.getDateTo().getMonth(), specimenSearchComposite.getDateTo().getDay());
- return dateTo;
+ if(specimenSearchComposite.getBtnShowDate().getSelection()){
+ Calendar dateTo = new GregorianCalendar();
+ dateTo.clear();
+ dateTo.set(specimenSearchComposite.getDateTo().getYear(), specimenSearchComposite.getDateTo().getMonth(), specimenSearchComposite.getDateTo().getDay());
+ return dateTo;
+ }
+ return null;
}
}
\ No newline at end of file