Skip to content

Commit

Permalink
Revert "Switch to LGoodDatePicker (#2340)"
Browse files Browse the repository at this point in the history
This reverts commit 8556e65.
  • Loading branch information
koppor committed Dec 11, 2016
1 parent 51d1742 commit 143ed58
Show file tree
Hide file tree
Showing 6 changed files with 32 additions and 31 deletions.
2 changes: 0 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -120,8 +120,6 @@ dependencies {
compile 'org.xmlunit:xmlunit-core:2.3.0'
compile 'org.xmlunit:xmlunit-matchers:2.3.0'

compile 'com.github.lgooddatepicker:LGoodDatePicker:8.2.2'

testCompile 'junit:junit:4.12'
testCompile 'org.mockito:mockito-core:2.2.28'
testCompile 'com.github.tomakehurst:wiremock:2.4.1'
Expand Down
9 changes: 5 additions & 4 deletions external-libraries.txt
Original file line number Diff line number Diff line change
Expand Up @@ -135,10 +135,11 @@ Project: SwingX
URL: https://swingx.java.net/
License: LGPL-3.0

Id: com.github.lgooddatepicker:LGoodDatePicker
Project: LGoodDatePicker
URL: https://github.com/LGoodDatePicker/LGoodDatePicker
License: MIT
Id: microba
Path: lib/microba.jar
Project: Microba
URL: https://github.com/tdbear/microba
License: BSD

Id: spin
Path: lib/spin.jar
Expand Down
Binary file added lib/microba.jar
Binary file not shown.
1 change: 0 additions & 1 deletion src/main/java/net/sf/jabref/gui/IconTheme.java
Original file line number Diff line number Diff line change
Expand Up @@ -158,7 +158,6 @@ public enum JabRefIcon {
FACEBOOK("\uf20c"), /* css: facebook */
BLOG("\uf46b"), /* css: rss */
GLOBAL_SEARCH("\uF1E7"), /* css: earth */
DATE_PICKER("\uF0ED;"), /* css: calendar */
// STILL MISSING:
GROUP_REGULAR("\uF4E6", Color.RED);

Expand Down
39 changes: 15 additions & 24 deletions src/main/java/net/sf/jabref/gui/date/DatePickerButton.java
Original file line number Diff line number Diff line change
@@ -1,60 +1,51 @@
package net.sf.jabref.gui.date;

import java.awt.BorderLayout;
import java.time.LocalDate;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Date;

import javax.swing.JComponent;
import javax.swing.JPanel;

import net.sf.jabref.Globals;
import net.sf.jabref.gui.IconTheme;
import net.sf.jabref.gui.fieldeditors.FieldEditor;
import net.sf.jabref.logic.util.date.EasyDateFormat;
import net.sf.jabref.preferences.JabRefPreferences;

import com.github.lgooddatepicker.components.DatePicker;
import com.github.lgooddatepicker.components.DatePickerSettings;
import com.github.lgooddatepicker.optionalusertools.DateChangeListener;
import com.github.lgooddatepicker.zinternaltools.DateChangeEvent;
import com.michaelbaranov.microba.calendar.DatePicker;

/**
* wrapper and service class for the DatePicker handling at the EntryEditor
*/
public class DatePickerButton implements DateChangeListener {
public class DatePickerButton implements ActionListener {

private final DatePicker datePicker;
private final DatePicker datePicker = new DatePicker();
private final JPanel panel = new JPanel();
private final FieldEditor editor;
private final boolean isoFormat;


public DatePickerButton(FieldEditor pEditor, Boolean isoFormat) {
this.isoFormat = isoFormat;
// Create a date picker with hidden text field (showing button only).
DatePickerSettings dateSettings = new DatePickerSettings();
dateSettings.setVisibleDateTextField(false);
dateSettings.setGapBeforeButtonPixels(0);

datePicker = new DatePicker(dateSettings);
datePicker.addDateChangeListener(this);
datePicker.getComponentToggleCalendarButton().setIcon(IconTheme.JabRefIcon.DATE_PICKER.getIcon());
datePicker.getComponentToggleCalendarButton().setText("");

datePicker.showButtonOnly(true);
datePicker.addActionListener(this);
datePicker.setShowTodayButton(true);
panel.setLayout(new BorderLayout());
panel.add(datePicker, BorderLayout.WEST);
editor = pEditor;
}

@Override
public void dateChanged(DateChangeEvent dateChangeEvent) {
LocalDate date = datePicker.getDate();
public void actionPerformed(ActionEvent e) {
Date date = datePicker.getDate();
if (date != null) {
if (isoFormat) {
editor.setText(date.format(DateTimeFormatter.ISO_DATE));
editor.setText(EasyDateFormat.isoDateFormat().getDateAt(date));
} else {
EasyDateFormat.fromTimeStampFormat(Globals.prefs.get(JabRefPreferences.TIME_STAMP_FORMAT)).getDateAt(ZonedDateTime.from(date));
editor.setText(EasyDateFormat
.fromTimeStampFormat(Globals.prefs.get(JabRefPreferences.TIME_STAMP_FORMAT))
.getDateAt(date));
}
} else {
// in this case the user selected "none" in the date picker, so we just clear the field
Expand Down
12 changes: 12 additions & 0 deletions src/main/java/net/sf/jabref/logic/util/date/EasyDateFormat.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
package net.sf.jabref.logic.util.date;

import java.time.ZoneId;
import java.time.ZonedDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Date;

public class EasyDateFormat {

Expand Down Expand Up @@ -30,6 +32,16 @@ public String getCurrentDate() {
return getDateAt(ZonedDateTime.now());
}

/**
* Creates a readable Date string from the parameter date. The format is set
* in preferences under the key "timeStampFormat".
*
* @return The formatted date string.
*/
public String getDateAt(Date date) {
return getDateAt(date.toInstant().atZone(ZoneId.systemDefault()));
}

/**
* Creates a readable Date string from the parameter date. The format is set
* in preferences under the key "timeStampFormat".
Expand Down

0 comments on commit 143ed58

Please sign in to comment.