Hi Jim,

Hi List,

may be tinyurl link on playground gets me Bad Request! Her eis my long url:

http://demo.qooxdoo.org/current/playground/#%7B%22code%22%3A%20%22%250A%250A
%250Aqx.Class.define%28%2522dateTimeField%2522%252C%250A%257B%250A%2520%2520
extend%2520%253A%2520qx.ui.form.DateField%252C%250A%250A%2520%2520construct%
2520%253A%2520function%28%29%250A%2520%2520%257B%250A%2520%2520%2520%2520thi
s.base%28arguments%29%253B%250A%250A%2520%2520%2520%2520%2520this.setDateFor
mat%28this.getDefaultDateFormatter%28%29%29%253B%250A%2520%2520%2520%2520%25
0A%2520%2520%2520%2520this._createChildControl%28%2522timefield%2522%29%253B
%250A%250A%2520%2520%2520%2520this.getChildControl%28%2522textfield%2522%29.
setPlaceholder%28qx.locale.Date.getDateFormat%28%2522medium%2522%29%29%253B%
250A%250A%2520%2520%257D%252C%252F%252Fconstruct%250A%250A%2520%2520%2520%25
2F*%250A%2520%2520**********************************************************
*******************%250A%2520%2520%2520PROPERTIES%250A%2520%2520************
*****************************************************************%250A%2520%
2520*%252F%250A%250A%2520%2520properties%2520%253A%250A%2520%2520%257B%250A%
2520%2520%2520%2520appearance%2520%253A%250A%2520%2520%2520%2520%257B%250A%2
520%2520%2520%2520%2520%2520refine%2520%253A%2520true%252C%250A%2520%2520%25
20%2520%2520%2520init%2520%253A%2520%2522datefield%2522%250A%2520%2520%2520%
2520%257D%250A%2520%2520%257D%252C%250A%250A%2520%2520members%2520%253A%250A
%2520%2520%257B%250A%2520%2520%2520%2520_normalizeDate%2520%253A%2520functio
n%28obj%29%250A%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520v
ar%2520value%2520%253D%2520obj.getValue%28%29%253B%250A%250A%2520%2520%2520%
2520%2520%2520if%2520%28value%2520%253D%253D%2520%2522%2522%2520%257C%257C%2
520value%2520%253D%253D%253D%2520null%29%250A%2520%2520%2520%2520%2520%2520%
257B%250A%2520%2520%2520%2520%2520%2520%2520%2520return%2520null%253B%250A%2
520%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%2520%2520%2520%250A%25
20%2520%2520%2520%2520%2520%252F%252F%25201.%2520Pr%25C3%25BCfe%2520ob%2520E
ingabe%2520bereits%2520g%25C3%25BCltiges%2520Datum%2520ist%250A%2520%2520%25
20%2520%2520%2520var%2520df%2520%253D%2520new%2520qx.util.format.DateFormat%
28qx.locale.Date.getDateFormat%28%2522medium%2522%29%29%253B%250A%2520%2520%
2520%2520%2520%2520try%250A%2520%2520%2520%2520%2520%2520%257B%250A%2520%252
0%2520%2520%2520%2520%2520%2520%250A%2520%2520%2520%2520%2520%2520%2520%2520
return%2520df.parse%28value%29%253B%250A%2520%2520%2520%2520%2520%2520%257D%
250A%2520%2520%2520%2520%2520%2520catch%2520%28e%29%250A%2520%2520%2520%2520
%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520%252F%252F%25202
.%2520Pr%25C3%25BCfe%2520ob%2520Eingabe%2520bereits%2520g%25C3%25BCltiges%25
20Datum%2520ist%250A%2520%2520%2520%2520%2520%2520%2520%2520var%2520veryShor
tDate%2520%253D%2520qx.locale.Date.getDateFormat%28%2522medium%2522%29.toStr
ing%28%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520veryShortDate%252
0%253D%2520veryShortDate.replace%28%252Fyyyy%252Fg%252C%2520%2522yy%2522%29%
253B%250A%2520%2520%2520%2520%2520%2520%2520%2520var%2520df2%2520%253D%2520n
ew%2520qx.util.format.DateFormat%28veryShortDate%29%253B%250A%2520%2520%2520
%2520%2520%2520%2520%2520try%250A%2520%2520%2520%2520%2520%2520%2520%2520%25
7B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520var%2520normalizedD
ate%2520%253D%2520df2.parse%28value%29%253B%250A%2520%2520%2520%2520%2520%25
20%2520%2520%2520%2520obj.setUserData%28%2522dontFire%2522%252C%2520%2522cha
ngeValue%2522%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520
obj.setValue%28df.format%28normalizedDate%29%29%253B%250A%2520%2520%2520%252
0%2520%2520%2520%2520%2520%2520obj.setUserData%28%2522dontFire%2522%252C%252
0null%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520return%2
53B%250A%2520%2520%2520%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%25
20%2520%2520%2520%2520catch%2520%28e%29%250A%2520%2520%2520%2520%2520%2520%2
520%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520%252F%25
2F%25203.%2520Wenn%2520Datum%2520nicht%2520korrekt%252C%2520dann%2520versuch
%2520es%2520mal%2520mit%2520einer%2520abgek%25C3%25BCrzten%2520Schreibweise%
250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520if%2520%28value.length
%2520%253D%253D%25204%29%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2
520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520var
%2520jetzt%2520%253D%2520new%2520Date%28%29%253B%250A%2520%2520%2520%2520%25
20%2520%2520%2520%2520%2520%2520%2520value%2520%253D%2520value%2520%252B%252
0jetzt.getFullYear%28%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2
520%2520%257D%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520%250A%25
20%2520%2520%2520%2520%2520%2520%2520%2520%2520var%2520veryShortDate%2520%25
3D%2520qx.locale.Date.getDateFormat%28%2522medium%2522%29.toString%28%29.mat
ch%28%252F%255Ba-zA-Z%255D*%252Fg%29%253B%250A%2520%2520%2520%2520%2520%2520
%2520%2520%2520%2520veryShortDate%2520%253D%2520veryShortDate.join%28%2522%2
522%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520veryShortD
ate%2520%253D%2520veryShortDate.replace%28%252Fyyyy%252Fg%252C%2520%2522yy%2
522%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520var%2520df
short%2520%253D%2520new%2520qx.util.format.DateFormat%28veryShortDate%29%253
B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520try%250A%2520%2520%2
520%2520%2520%2520%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%25
20%2520%2520%2520%2520%2520%2520var%2520normalizedDate%2520%253D%2520dfshort
.parse%28value%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%252
0%257D%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520catch%2520%28e%
29%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520%257B%2520%2520%250
A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520alert%28%2522Wr
ong%2520date%2520format!%2522%29%253B%250A%2520%2520%2520%2520%2520%2520%252
0%2520%2520%2520%2520%2520obj.tabFocus%28%29%253B%250A%2520%2520%2520%2520%2
520%2520%2520%2520%2520%2520%2520%2520return%2520null%253B%250A%2520%2520%25
20%2520%2520%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%2520%2520%252
0%2520%2520%2520%2520obj.setUserData%28%2522dontFire%2522%252C%2520%2522chan
geValue%2522%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520o
bj.setValue%28df.format%28normalizedDate%29%29%253B%250A%2520%2520%2520%2520
%2520%2520%2520%2520%2520%2520obj.setUserData%28%2522dontFire%2522%252C%2520
null%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%2520return%25
3B%250A%2520%2520%2520%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%252
0%2520%2520%257D%250A%2520%2520%2520%2520%257D%252C%250A%250A%2520%2520%2520
%2520_normalizeTime%2520%253A%2520function%28obj%29%250A%2520%2520%2520%2520
%257B%250A%2520%2520%2520%2520%2520%2520var%2520value%2520%253D%2520obj.getV
alue%28%29%253B%250A%250A%2520%2520%2520%2520%2520%2520if%2520%28value%2520%
253D%253D%2520%2522%2522%2520%257C%257C%2520value%2520%253D%253D%253D%2520nu
ll%29%250A%2520%2520%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%
2520%2520%2520return%2520null%253B%250A%2520%2520%2520%2520%2520%2520%257D%2
50A%250A%2520%2520%2520%2520%2520%2520%252F%252F%25201.%2520Pr%25C3%25BCfe%2
520ob%2520Eingabe%2520bereits%2520g%25C3%25BCltiges%2520Datum%2520ist%250A%2
520%2520%2520%2520%2520%2520var%2520df%2520%253D%2520new%2520qx.util.format.
DateFormat%28qx.locale.Date.getTimeFormat%28%2522short%2522%29%29%253B%250A%
2520%2520%2520%2520%2520%2520try%250A%2520%2520%2520%2520%2520%2520%257B%250
A%2520%2520%2520%2520%2520%2520%2520%2520%250A%2520%2520%2520%2520%2520%2520
%2520%2520return%2520df.parse%28value%29%253B%250A%2520%2520%2520%2520%2520%
2520%257D%250A%2520%2520%2520%2520%2520%2520catch%2520%28e%29%250A%2520%2520
%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520%252F%
252F%25202.%2520Wenn%2520Datum%2520nicht%2520korrekt%252C%2520dann%2520versu
ch%2520es%2520mal%2520mit%2520einer%2520abgek%25C3%25BCrzten%2520Schreibweis
e%2520%2520%2520%2520%2520%2520%2520%2520%250A%2520%2520%2520%2520%2520%2520
%2520%2520var%2520veryShortDate%2520%253D%2520qx.locale.Date.getTimeFormat%2
8%2522short%2522%29.toString%28%29.match%28%252F%255Ba-zA-Z%255D*%252Fg%29%2
53B%250A%2520%2520%2520%2520%2520%2520%2520%2520veryShortDate%2520%253D%2520
veryShortDate.join%28%2522%2522%29%253B%250A%2520%2520%2520%2520%2520%2520%2
520%2520var%2520dfshort%2520%253D%2520new%2520qx.util.format.DateFormat%28ve
ryShortDate%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520try%250A%252
0%2520%2520%2520%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520
%2520%2520%2520%2520var%2520normalizedDate%2520%253D%2520dfshort.parse%28val
ue%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%257D%250A%2520%2520%
2520%2520%2520%2520%2520%2520catch%2520%28e%29%250A%2520%2520%2520%2520%2520
%2520%2520%2520%257B%2520%2520%250A%2520%2520%2520%2520%2520%2520%2520%2520%
2520%2520alert%28%2522Wrong%2520time%2520format!%2522%29%253B%250A%2520%2520
%2520%2520%2520%2520%2520%2520%2520%2520obj.tabFocus%28%29%253B%250A%2520%25
20%2520%2520%2520%2520%2520%2520%2520%2520return%2520null%253B%250A%2520%252
0%2520%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%2520%2520%2520%2520
%2520obj.setUserData%28%2522dontFire%2522%252C%2520%2522changeValue%2522%29%
253B%250A%2520%2520%2520%2520%2520%2520%2520%2520obj.setValue%28df.format%28
normalizedDate%29%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520obj.se
tUserData%28%2522dontFire%2522%252C%2520null%29%253B%250A%2520%2520%2520%252
0%2520%2520%2520%2520return%2520normalizedDate%253B%250A%2520%2520%2520%2520
%2520%2520%257D%250A%2520%2520%2520%2520%257D%252C%250A%2520%2520%2520%2520%
250A%2520%2520%2520%2520%2520%252F%252F%2520overridden%250A%2520%2520%2520%2
520_createChildControlImpl%2520%253A%2520function%28id%29%250A%2520%2520%252
0%2520%257B%250A%2520%2520%2520%2520%2520%2520var%2520control%253B%250A%250A
%2520%2520%2520%2520%2520%2520switch%28id%29%250A%2520%2520%2520%2520%2520%2
520%257B%250A%2520%2520%2520%2520%2520%2520case%2520%2522list%2522%253A%250A
%2520%2520%2520%2520%2520%2520%2520%2520control%2520%253D%2520new%2520qx.ui.
control.DateChooser%28%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520c
ontrol.setFocusable%28false%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%
2520control.setKeepFocus%28true%29%253B%250A%2520%2520%2520%2520%2520%2520%2
520%2520control.addListener%28%2522execute%2522%252C%2520this._onChangeDate%
252C%2520this%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520break%253B
%250A%250A%2520%2520%2520%2520%2520%2520case%2520%2522popup%2522%253A%250A%2
520%2520%2520%2520%2520%2520%2520%2520control%2520%253D%2520new%2520qx.ui.po
pup.Popup%28new%2520qx.ui.layout.VBox%29%253B%250A%2520%2520%2520%2520%2520%
2520%2520%2520control.setAutoHide%28false%29%253B%250A%2520%2520%2520%2520%2
520%2520%2520%2520control.add%28this.getChildControl%28%2522list%2522%29%29%
253B%250A%2520%2520%2520%2520%2520%2520%2520%2520control.addListener%28%2522
mouseup%2522%252C%2520this._onChangeDate%252C%2520this%29%253B%250A%2520%252
0%2520%2520%2520%2520%2520%2520control.addListener%28%2522changeVisibility%2
522%252C%2520this._onPopupChangeVisibility%252C%2520this%29%253B%250A%2520%2
520%2520%2520%2520%2520%2520%2520break%253B%250A%250A%2520%2520%2520%2520%25
20%2520case%2520%2522timefield%2522%253A%250A%2520%2520%2520%2520%2520%2520%
2520%2520control%2520%253D%2520new%2520qx.ui.form.TextField%28%29%253B%250A%
2520%2520%2520%2520%2520%2520%2520%2520control.setFocusable%28false%29%253B%
250A%2520%2520%2520%2520%2520%2520%2520%2520control.setWidth%2842%29%253B%25
0A%2520%2520%2520%2520%2520%2520%2520%2520control.setMaxLength%285%29%253B%2
50A%2520%2520%2520%2520%2520%2520%2520%2520control.setDecorator%28null%29%25
3B%250A%2520%2520%2520%2520%2520%2520%2520%2520control.setPlaceholder%28qx.l
ocale.Date.getTimeFormat%28%2522short%2522%29%29%253B%250A%2520%2520%2520%25
20%2520%2520%2520%2520%252F%252Fcontrol.addState%28%2522inner%2522%29%253B%2
50A%2520%2520%2520%2520%2520%2520%2520%2520control.addListener%28%2522change
Value%2522%252C%2520this._onTimeFieldChangeValue%252C%2520this%29%253B%250A%
2520%2520%2520%2520%2520%2520%2520%2520%252F%252Fcontrol.addListener%28%2522
input%2522%252C%2520this._onTextFieldInput%252C%2520this%29%253B%250A%2520%2
520%2520%2520%2520%2520%2520%2520%252F%252Fcontrol.addListener%28%2522blur%2
522%252C%2520this.close%252C%2520this%29%253B%250A%2520%2520%2520%2520%2520%
2520%2520%2520this._add%28control%29%253B%250A%2520%2520%2520%2520%2520%2520
%2520%2520break%253B%250A%2520%2520%2520%2520%2520%2520%257D%250A%250A%2520%
2520%2520%2520%2520%2520return%2520control%2520%257C%257C%2520this.base%28ar
guments%252C%2520id%29%253B%250A%2520%2520%2520%2520%257D%252C%250A%250A%252
0%2520%2520%2520%252F%252F%2523%2520PUBLIC%2520METHODS%250A%2520%2520%2520%2
520getDate%2520%253A%2520function%28%29%250A%2520%2520%2520%2520%257B%250A%2
520%2520%2520%2520%2520%2520var%2520df%2520%253D%2520new%2520qx.util.format.
DateFormat%28qx.locale.Date.getDateFormat%28%2522medium%2522%29%29%253B%250A
%2520%2520%2520%2520%2520%2520var%2520datefield%2520%253D%2520this.getChildC
ontrol%28%2522textfield%2522%29%253B%250A%2520%2520%2520%2520%2520%2520var%2
520datestr%2520%253D%2520datefield.getValue%28%29%253B%250A%2520%2520%2520%2
520%2520%2520try%250A%2520%2520%2520%2520%2520%2520%257B%250A%2520%2520%2520
%2520%2520%2520%2520%2520var%2520date%2520%253D%2520df.parse%28datestr%29%25
3B%250A%2520%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%2520%2520%252
0catch%2520%28e%29%250A%2520%2520%2520%2520%2520%2520%257B%250A%2520%2520%25
20%2520%2520%2520%2520%2520var%2520date%2520%253D%2520null%253B%250A%2520%25
20%2520%2520%2520%2520%257D%250A%2520%2520%2520%2520%2520%2520return%2520dat
e%253B%250A%2520%2520%2520%2520%257D%252C%250A%250A%2520%2520%2520%2520getDe
faultDateFormatter%2520%253A%2520function%28%29%250A%2520%2520%2520%2520%257
B%250A%2520%2520%2520%2520%2520%2520var%2520format%2520%253D%2520qx.locale.D
ate.getDateFormat%28%2522medium%2522%29.toString%28%29%2520%252B%2520%2522%2
520%2522%2520%252B%2520qx.locale.Date.getTimeFormat%28%2522short%2522%29.toS
tring%28%29%253B%250A%250A%2520%2520%2520%2520%2520%2520if%2520%28format%252
0%253D%253D%2520this.__dateFormat%29%2520%257B%250A%2520%2520%2520%2520%2520
%2520return%2520this.__formatter%253B%250A%2520%2520%2520%2520%2520%2520%257
D%250A%250A%2520%2520%2520%2520%2520%2520if%2520%28this.__formatter%29%2520%
257B%250A%2520%2520%2520%2520%2520%2520this.__formatter.dispose%28%29%253B%2
50A%2520%2520%2520%2520%2520%2520%257D%250A%250A%2520%2520%2520%2520%2520%25
20this.__formatter%2520%253D%2520new%2520qx.util.format.DateFormat%28format%
252C%2520qx.locale.Manager.getInstance%28%29.getLocale%28%29%29%253B%250A%25
20%2520%2520%2520%2520%2520this.__dateFormat%2520%253D%2520format%253B%250A%
250A%2520%2520%2520%2520%2520%2520return%2520this.__formatter%253B%250A%2520
%2520%2520%2520%257D%252C%250A%250A%2520%2520%2520%2520getValue%2520%253A%25
20function%28%29%250A%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520
%2520%252F%252F%2520get%2520the%2520value%2520of%2520the%2520textfield%250A%
250A%2520%2520%2520%2520%2520%2520var%2520textfieldValue%2520%253D%2520this.
getChildControl%28%2522textfield%2522%29.getValue%28%29%253B%250A%2520%2520%
2520%2520%2520%2520var%2520timefieldValue%2520%253D%2520this.getChildControl
%28%2522timefield%2522%29.getValue%28%29%253B%250A%250A%2520%2520%2520%2520%
2520%2520if%2520%28textfieldValue%2520!%253D%2520null%2520%2526%2526%2520%28
timefieldValue%2520%253D%253D%2520null%2520%257C%257C%2520timefieldValue%252
0%253D%253D%2520%2522%2522%29%29%250A%2520%2520%2520%2520%2520%2520%257B%250
A%2520%2520%2520%2520%2520%2520%2520%2520timefieldValue%2520%253D%2520%25220
0%253A00%2522%253B%250A%2520%2520%2520%2520%2520%2520%257D%250A%250A%250A%25
20%2520%2520%2520%2520%2520try%2520%257B%250A%2520%2520%2520%2520%2520%2520%
2520%2520return%2520this.getDateFormat%28%29.parse%28textfieldValue%2520%252
B%2520%2522%2520%2522%2520%252B%2520timefieldValue%29%253B%250A%2520%2520%25
20%2520%2520%2520%257D%2520catch%2520%28ex%29%2520%257B%250A%2520%2520%2520%
2520%2520%2520%2520%2520return%2520null%253B%250A%2520%2520%2520%2520%2520%2
520%257D%250A%2520%2520%2520%2520%257D%252C%250A%2520%2520%2520%2520%250A%25
20%2520%2520%2520%252F%252Foverwritten%250A%2520%2520%2520%2520setValue%2520
%253A%2520function%28value%29%250A%2520%2520%2520%2520%257B%250A%2520%2520%2
520%2520%2520%2520%252F%252F%2520Zeit%2520in%2520timefield%2520einf%25C3%25B
Cgen%250A%2520%2520%2520%2520%2520%2520var%2520df%2520%253D%2520new%2520qx.u
til.format.DateFormat%28qx.locale.Date.getTimeFormat%28%2522short%2522%29%29
%253B%250A%2520%2520%2520%2520%2520%2520var%2520timefield%2520%253D%2520this
.getChildControl%28%2522timefield%2522%29%253B%250A%2520%2520%2520%2520%2520
%2520timefield.setValue%28df.format%28value%29%29%253B%250A%250A%2520%2520%2
520%2520%2520%2520%252F%252F%2520set%2520the%2520date%2520to%2520the%2520tex
tfield%250A%2520%2520%2520%2520%2520%2520var%2520df%2520%253D%2520new%2520qx
.util.format.DateFormat%28qx.locale.Date.getDateFormat%28%2522medium%2522%29
%29%253B%250A%2520%2520%2520%2520%2520%2520var%2520dateField%2520%253D%2520t
his.getChildControl%28%2522textfield%2522%29%253B%250A%2520%2520%2520%2520%2
520%2520dateField.setValue%28df.format%28value%29%29%253B%250A%2520%2520%252
0%2520%2520%2520%250A%2520%2520%2520%2520%2520%2520%252F%252F%2520set%2520th
e%2520date%2520in%2520the%2520datechooser%250A%2520%2520%2520%2520%2520%2520
var%2520dateChooser%2520%253D%2520this.getChildControl%28%2522list%2522%29%2
53B%250A%2520%2520%2520%2520%2520%2520dateChooser.setValue%28value%29%253B%2
50A%2520%2520%2520%2520%257D%252C%250A%250A%250A%250A%2520%2520%2520%2520%25
2F%252F%2523%2520EVENTS%250A%250A%2520%2520%2520%2520_onChangeDate%2520%253A
%2520function%28e%29%250A%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%
2520%2520var%2520textField%2520%253D%2520this.getChildControl%28%2522textfie
ld%2522%29%253B%250A%250A%2520%2520%2520%2520%2520%2520var%2520selectedDate%
2520%253D%2520this.getChildControl%28%2522list%2522%29.getValue%28%29%253B%2
50A%2520%2520%2520%2520%2520%2520%250A%2520%2520%2520%2520%2520%2520var%2520
df%2520%253D%2520new%2520qx.util.format.DateFormat%28qx.locale.Date.getDateF
ormat%28%2522medium%2522%29%29%253B%250A%2520%2520%2520%2520%2520%2520textFi
eld.setValue%28df.format%28selectedDate%29%29%253B%250A%2520%2520%2520%2520%
2520%2520this.close%28%29%253B%250A%2520%2520%2520%2520%257D%252C%250A%250A%
2520%2520%2520%2520%252F%252F%2520overridden%250A%2520%2520%2520%2520_onPopu
pChangeVisibility%2520%253A%2520function%28e%29%250A%2520%2520%2520%2520%257
B%250A%2520%2520%2520%2520%2520%2520%252F%252F%2520Synchronize%2520the%2520c
hooser%2520with%2520the%2520current%2520value%2520on%2520every%250A%2520%252
0%2520%2520%2520%2520%252F%252F%2520opening%2520of%2520the%2520popup.%2520Th
is%2520is%2520needed%2520when%2520the%2520value%2520has%2520been%250A%2520%2
520%2520%2520%2520%2520%252F%252F%2520modified%2520and%2520not%2520saved%252
0yet%2520%28e.g.%2520no%2520blur%29%250A%2520%2520%2520%2520%2520%2520var%25
20popup%2520%253D%2520this.getChildControl%28%2522popup%2522%29%253B%250A%25
20%2520%2520%2520%2520%2520if%2520%28popup.isVisible%28%29%29%250A%2520%2520
%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520var%25
20chooser%2520%253D%2520this.getChildControl%28%2522list%2522%29%253B%250A%2
520%2520%2520%2520%2520%2520%2520%2520var%2520date%2520%253D%2520this.getDat
e%28%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520chooser.setValue%28
date%29%253B%250A%2520%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%252
0%257D%252C%250A%250A%2520%2520%2520%2520_onKeyPress%2520%253A%2520function%
28e%29%250A%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520%250A
%2520%2520%2520%2520%2520%2520%252F%252F%2520get%2520the%2520key%2520identif
ier%250A%2520%2520%2520%2520%2520%2520var%2520iden%2520%253D%2520e.getKeyIde
ntifier%28%29%253B%250A%2520%2520%2520%2520%2520%2520if%2520%28iden%2520%253
D%253D%2520%2522Down%2522%2520%2526%2526%2520e.isAltPressed%28%29%29%250A%25
20%2520%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%252
0this.toggle%28%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520e.stopPr
opagation%28%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520return%253B
%250A%2520%2520%2520%2520%2520%2520%257D%250A%250A%2520%2520%2520%2520%2520%
2520%252F%252F%2520Bei%2520Tab%2520auf%2520Timefield%2520wechseln%250A%2520%
2520%2520%2520%2520%2520if%2520%28iden%2520%253D%253D%2520%2522Tab%2522%2520
%2526%2526%2520!e.isShiftPressed%28%29%29%250A%2520%2520%2520%2520%2520%2520
%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520var%2520timefield%2520%253
D%2520this.getChildControl%28%2522timefield%2522%29%253B%250A%2520%2520%2520
%2520%2520%2520%2520%2520var%2520focusHandler%2520%253D%2520qx.ui.core.Focus
Handler.getInstance%28%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520i
f%2520%28!focusHandler.isActive%28timefield%29%29%250A%2520%2520%2520%2520%2
520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2520%25
20e.preventDefault%28%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2
520%2520timefield.tabFocus%28%29%253B%250A%2520%2520%2520%2520%2520%2520%252
0%2520%2520%2520e.stopPropagation%28%29%253B%250A%2520%2520%2520%2520%2520%2
520%2520%2520%2520%2520return%253B%250A%2520%2520%2520%2520%2520%2520%2520%2
520%257D%250A%2520%2520%2520%2520%2520%2520%257D%250A%250A%250A%2520%2520%25
20%2520%2520%2520%252F%252F%2520if%2520the%2520popup%2520is%2520closed%252C%
2520ignore%2520all%250A%2520%2520%2520%2520%2520%2520var%2520popup%2520%253D
%2520this.getChildControl%28%2522popup%2522%29%253B%250A%2520%2520%2520%2520
%2520%2520if%2520%28popup.getVisibility%28%29%2520%253D%253D%2520%2522hidden
%2522%29%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520return%253B%2
50A%2520%2520%2520%2520%2520%2520%257D%250A%250A%2520%2520%2520%2520%2520%25
20%252F%252F%2520hide%2520the%2520list%2520always%2520on%2520escape%250A%252
0%2520%2520%2520%2520%2520if%2520%28iden%2520%253D%253D%2520%2522Escape%2522
%29%250A%2520%2520%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%25
20%2520%2520this.close%28%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%25
20e.stopPropagation%28%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520r
eturn%253B%250A%2520%2520%2520%2520%2520%2520%257D%250A%250A%2520%2520%2520%
2520%2520%2520%252F%252F%2520Stop%2520navigation%2520keys%2520when%2520popup
%2520is%2520open%250A%2520%2520%2520%2520%2520%2520if%2520%28iden%2520%253D%
253D%253D%2520%2522Left%2522%2520%257C%257C%2520iden%2520%253D%253D%253D%252
0%2522Right%2522%2520%257C%257C%2520iden%2520%253D%253D%253D%2520%2522Down%2
522%2520%257C%257C%2520iden%2520%253D%253D%253D%2520%2522Up%2522%29%2520%257
B%250A%2520%2520%2520%2520%2520%2520%2520%2520e.preventDefault%28%29%253B%25
0A%2520%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%2520%2520%2520%250
A%250A%2520%2520%2520%2520%2520%2520%252F%252F%2520forward%2520the%2520rest%
2520of%2520the%2520events%2520to%2520the%2520date%2520chooser%250A%2520%2520
%2520%2520%2520%2520this.getChildControl%28%2522list%2522%29.handleKeyPress%
28e%29%253B%250A%2520%2520%2520%2520%257D%252C%250A%2520%2520%2520%2520%250A
%2520%2520%2520%2520%250A%250A%2520%2520%2520%2520_onTextFieldChangeValue%25
20%253A%2520function%28e%29%250A%2520%2520%2520%2520%257B%250A%2520%2520%252
0%2520%2520%2520if%2520%28e.getData%28%29%2520%253D%253D%2520null%29%250A%25
20%2520%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%252
0return%253B%250A%2520%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%252
0%2520%2520var%2520date%2520%253D%2520this._normalizeDate%28this.getChildCon
trol%28%2522textfield%2522%29%29%253B%250A%2520%2520%2520%2520%2520%2520if%2
520%28date%2520!%253D%2520null%2520%2526%2526%2520this.getChildControl%28%25
22textfield%2522%29.getUserData%28%2522dontFire%2522%29%2520!%253D%2520%2522
changeValue%2522%29%250A%2520%2520%2520%2520%2520%2520%257B%250A%2520%2520%2
520%2520%2520%2520%2520%2520var%2520list%2520%253D%2520this.getChildControl%
28%2522list%2522%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520list.se
tValue%28date%29%253B%250A%2520%2520%2520%2520%2520%2520%2520%2520%252F%252F
%2520Fire%2520event%250A%2520%2520%2520%2520%2520%2520%2520%2520this.fireDat
aEvent%28%2522changeValue%2522%252C%2520this.getValue%28%29%29%253B%250A%252
0%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%2520%257D%252C%250A%250A
%2520%2520%2520%2520_onTimeFieldChangeValue%2520%253A%2520function%28e%29%25
0A%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520if%2520%28e.ge
tData%28%29%2520%253D%253D%2520null%29%250A%2520%2520%2520%2520%2520%2520%25
7B%250A%2520%2520%2520%2520%2520%2520%2520%2520return%253B%250A%2520%2520%25
20%2520%2520%2520%257D%250A%2520%2520%2520%2520%2520%2520var%2520time%2520%2
53D%2520this._normalizeTime%28this.getChildControl%28%2522timefield%2522%29%
29%253B%250A%2520%2520%2520%2520%2520%2520if%2520%28time%2520!%253D%2520null
%2520%2526%2526%2520this.getChildControl%28%2522timefield%2522%29.getUserDat
a%28%2522dontFire%2522%29%2520!%253D%2520%2522changeValue%2522%29%250A%2520%
2520%2520%2520%2520%2520%257B%250A%2520%2520%2520%2520%2520%2520%2520%2520%2
52F%252F%2520Fire%2520event%250A%2520%2520%2520%2520%2520%2520%2520%2520this
.fireDataEvent%28%2522changeValue%2522%252C%2520this.getValue%28%29%29%253B%
250A%2520%2520%2520%2520%2520%2520%257D%250A%2520%2520%2520%2520%257D%250A%2
50A%250A%250A%2520%2520%257D%252F%252Fmembers%250A%257D%29%253B%250A%250A%25
2F%252F%2520Create%2520a%2520button%250Avar%2520vDate%2520%253D%2520new%2520
dateTimeField%28%29.set%28%257Bwidth%253A%2520150%257D%29%253B%250A%250A%252
F%252F%2520Document%2520is%2520the%2520application%2520root%250Avar%2520doc%
2520%253D%2520this.getRoot%28%29%253B%250A%250A%252F%252F%2520Add%2520button
%2520to%2520document%2520at%2520fixed%2520coordinates%250Adoc.add%28vDate%25
2C%250A%257B%250A%2520%2520left%2520%253A%2520100%252C%250A%2520%2520top%252
0%2520%253A%252050%250A%257D%29%253B%250A%22%7D

just copy to browser ;)

regards Mustafa Sak


-----Ursprüngliche Nachricht-----
Von: Jim Hunter [mailto:[email protected]] 
Gesendet: Montag, 21. Februar 2011 23:16
An: qooxdoo Development
Betreff: Re: [qooxdoo-devel] DateTimeField - may be a usefull

I would have liked to see it but your link does not seem to be working for
me.

Jim


On Mon, Feb 21, 2011 at 12:21 PM, Mustafa Sak <[email protected]> wrote:
> Hi List,
>
>
>
> I just wrote a small subclass for managing time and date in one field. May
> bee usefull for others. I guess its to trivial for a contib, so I made a
> playground example http://tinyurl.com/6afzynr. Using of tabulator is
> possible.
>
>
>
>
>
> Regards Mustafa Sak
>
>
----------------------------------------------------------------------------
--
> Index, Search & Analyze Logs and other IT data in Real-Time with Splunk
> Collect, index and harness all the fast moving IT data generated by your
> applications, servers and devices whether physical, virtual or in the
cloud.
> Deliver compliance at lower cost and gain new business insights.
> Free Software Download: http://p.sf.net/sfu/splunk-dev2dev
> _______________________________________________
> qooxdoo-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>
>

----------------------------------------------------------------------------
--
Index, Search & Analyze Logs and other IT data in Real-Time with Splunk 
Collect, index and harness all the fast moving IT data generated by your 
applications, servers and devices whether physical, virtual or in the cloud.
Deliver compliance at lower cost and gain new business insights. 
Free Software Download: http://p.sf.net/sfu/splunk-dev2dev
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel


------------------------------------------------------------------------------
Index, Search & Analyze Logs and other IT data in Real-Time with Splunk 
Collect, index and harness all the fast moving IT data generated by your 
applications, servers and devices whether physical, virtual or in the cloud.
Deliver compliance at lower cost and gain new business insights. 
Free Software Download: http://p.sf.net/sfu/splunk-dev2dev
_______________________________________________
qooxdoo-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to