IModel model=new Model(new Date());
WebMarkupContainer composite=new WebMarkupContainer("composite", model));
composite.add(new TextFIeld("date", model));
composite.add(new TextField("time", model));
but why not encapsulate it like martijn showed you?
-Igor
On 5/8/06, Ittay Dror <[EMAIL PROTECTED]> wrote:
Igor Vaynberg wrote:
> why not this?
>
> WebMarkupContainer composite=new WebMarkupContainer("id", new
> CompoundPropertyModel(new ValueMap()));
> composite.add(new TextField("date"));
> composite.add(new TextField("time"));
>
>
> this does what you want right?
> composite's model is a map whose date key contains the value of the date
> textfield, and time key that of time textfield.
it's not what i wished for.
i wanted my model to contain a Date value, part of each is used by the date text field and part by the time date field.
i can do something like
form.add(new TextField("date", new Model(getDate(date))));
form.add(new TextField("time", new Model(getTime(date))));
and in onSubmit do something like
toDate(getDateValue(), getTimeValue())
where getDateValue() locates the 'date' text field (how do i do that?) and returns its model value (the date part) and getTimeValue() does a similar thing for the time part
but, what i wanted was to create something reusable, that can be used elsewhere also.
WebMarkupContainer composite=new WebMarkupContainer("id", new IValueAdapter(){...}); // IValueAdapter can get/set parts of a value it is
// the equivalent of getDate, getTime, toDate etc.
composite.add(new TextField("date"));
composite.add(new TextField("time"));
(the model is gotten from the form, but of course the composite component can have its own (in another constructor))
>
> -Igor
>
>
> On 5/8/06, *Ittay Dror* < [EMAIL PROTECTED]
> <mailto:[EMAIL PROTECTED]>> wrote:
>
> that is not my problem.
>
> my problem is that i have two components (text fields) - one for
> date, one for time, whose combined value is my model value.
>
> i can, of course, create a custom model, and onSubmit get its
> values, combine them, and put in the form's model. but this is
> awkward, and not component oriented.
>
> i want to create a component that means "the values of the children
> of this component will be combined to its value"
>
> ittay
>
> Martijn Dashorst wrote:
> > Ittay,
> >
> > It seems like you need to create a Panel instead So a much cleaner
> > design, and more reusable component would be:
> >
> > public class MyDatePicker extends Panel {
> > public MyDatePicker(String id, IModel model) {
> > super(id);
> > add(new DatePicker("datepicker", model));
> > add(new TextField("textfield", model));
> > }
> > }
> >
> > <html>
> > <body>
> > <wicket:panel>
> > <input wicket:id="textfield" type="text" /><span
> > wicket:id="datepicker" />
> > </wicket:panel>
> > </body>
> > </html>
> >
> > Add it to any form, and it will work:
> >
> > form.add(new MyDatePicker("date", new PropertyModel(person,
> "birthdate")));
> >
> > Overriding add is not the right thing to do. Add is usually called in
> > constructors, and it is generally considered a bad thing to call
> > overridable methods in a constructor as the type hierarchy is not
> > completely initialized.
> >
> > We made quite a lot of method final in our API, see for the
> reason the
> > following faq:
> >
> > http://wicketframework.org/faqs.html#why-final
> <http://wicketframework.org/faqs.html#why-final >
> >
> > We are also refactoring our component creation/hierarchy composition
> > strategy in the next version of Wicket. The add method will be
> removed
> > as a consquence. So depending on overriding add is not the way to
> go.
> >
> > Martijn
> >
> >
> > On 5/8/06, *Ittay Dror* <[EMAIL PROTECTED]
> <mailto: [EMAIL PROTECTED]>
> > <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED] >>> wrote:
> >
> > i want to set the model of the child. i thought of doing that by:
> > child.setModel(myModel);
> > super.add (child);
> >
> > what is wrong with that? how else can i do it?
> >
> > here's the long story of what i'm trying to acheive:
> > i have a web page with two text fields, for date and time
> (for the
> > date, i'm already using DatePicker). (they are used to
> schedule an
> > action)
> > my model has a Date field (CompoundPropertyModel), which i
> want to
> > be set with the date and time (together)
> >
> > so, i thought it would be nice to create a
> CompositeComponent, which
> > will use a MapModel (IModel implementation mapping id to
> value) in
> > the children. it will have its own model, set by the client, and
> > hooks/strategy to separate its model value to that of the child
> > components, and to restore it when the form is submitted.
> >
> > so, the first thing is to set the MapModel in the child
> components
> >
> > ittay
> >
> >
> > Juergen Donnerstag wrote:
> > > You want to do what? add() is used to add Wicket
> Components to the
> > > component hierarchy. It is NOT used to set or add a model.
> Child
> > > components can be access by get(childId).
> > >
> > > Juergen
> > >
> > > On 5/8/06, Ittay Dror < [EMAIL PROTECTED]
> <mailto: [EMAIL PROTECTED]>
> > <mailto: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED] >>>
> wrote:
> > >> I want to create a MarkupContainer component which sets the
> > model of
> > >> contained components. but MarkupContainer.add is final,
> so i can't
> > >> override it. why? what else can i do?
> > >>
> > >> Thanx,
> > >> Ittay
> > >>
> > >> --
> > >> ===================================
> > >> Ittay Dror
> > >> Chief architect, openQRM TL,
> > >> R&D, Qlusters Inc.
> > >> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> <mailto:
> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
> > >> +972-3-6081994 Fax: +972-3-6081841
> > >>
> > >> http://www.openQRM.org <http://www.openQRM.org>
> > >> - Keeps your Data-Center Up and Running
> > >>
> > >>
> > >> -------------------------------------------------------
> > >> Using Tomcat but need to do more? Need to support web
> services,
> > security?
> > >> Get stuff done quickly with pre-integrated technology to make
> > your job
> > >> easier
> > >> Download IBM WebSphere Application Server v.1.0.1 based
> on Apache
> > >> Geronimo
> > >>
> >
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> <http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >
> >
> <http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> <http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642>>
> > >> _______________________________________________
> > >> Wicket-user mailing list
> > >> Wicket-user@lists.sourceforge.net
> <mailto: Wicket-user@lists.sourceforge.net>
> > <mailto: Wicket-user@lists.sourceforge.net
> <mailto: Wicket-user@lists.sourceforge.net>>
> > >> https://lists.sourceforge.net/lists/listinfo/wicket-user
> > >>
> > >
> > >
> > > -------------------------------------------------------
> > > Using Tomcat but need to do more? Need to support web
> services,
> > security?
> > > Get stuff done quickly with pre-integrated technology to make
> > your job
> > > easier
> > > Download IBM WebSphere Application Server v.1.0.1 based on
> Apache
> > Geronimo
> > >
> http://sel.as-us.falkag.net/sel?cmd=k&kid0709&bid&3057&dat1642
> <http://sel.as-us.falkag.net/sel?cmd=k&kid0709&bid&3057&dat1642>
> >
> <http://sel.as-us.falkag.net/sel?cmd=k&kid%120709&bid&3057&dat%121642
> < http://sel.as-us.falkag.net/sel?cmd=k&kid%120709&bid&3057&dat%121642>>
> > > _______________________________________________
> > > Wicket-user mailing list
> > > Wicket-user@lists.sourceforge.net
> <mailto:Wicket-user@lists.sourceforge.net >
> > <mailto:Wicket-user@lists.sourceforge.net
> <mailto:Wicket-user@lists.sourceforge.net >>
> > > https://lists.sourceforge.net/lists/listinfo/wicket-user
> < https://lists.sourceforge.net/lists/listinfo/wicket-user>
> > <https://lists.sourceforge.net/lists/listinfo/wicket-user>
> > >
> >
> >
> > --
> > ===================================
> > Ittay Dror
> > Chief architect, openQRM TL,
> > R&D, Qlusters Inc.
> > [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> <mailto:
> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
> > +972-3-6081994 Fax: +972-3-6081841
> >
> > http://www.openQRM.org <http://www.openQRM.org>
> > - Keeps your Data-Center Up and Running
> >
> >
> > -------------------------------------------------------
> > Using Tomcat but need to do more? Need to support web services,
> > security?
> > Get stuff done quickly with pre-integrated technology to make
> your
> > job easier
> > Download IBM WebSphere Application Server v.1.0.1 based on Apache
> > Geronimo
> >
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> <http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642 >
> >
> <http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> <http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642>>
> > _______________________________________________
> > Wicket-user mailing list
> > Wicket-user@lists.sourceforge.net
> <mailto: Wicket-user@lists.sourceforge.net>
> > <mailto: Wicket-user@lists.sourceforge.net
> <mailto: Wicket-user@lists.sourceforge.net>>
> > https://lists.sourceforge.net/lists/listinfo/wicket-user
> < https://lists.sourceforge.net/lists/listinfo/wicket-user>
> >
> >
> >
> >
> > --
> > Wicket 1.2 is coming! Write Ajax applications without touching
> _javascript_!
> > -- http://wicketframework.org
>
>
> --
> ===================================
> Ittay Dror
> Chief architect, openQRM TL,
> R&D, Qlusters Inc.
> [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
> +972-3-6081994 Fax: +972-3-6081841
>
> http://www.openQRM.org
> - Keeps your Data-Center Up and Running
>
>
> -------------------------------------------------------
> Using Tomcat but need to do more? Need to support web services,
> security?
> Get stuff done quickly with pre-integrated technology to make your
> job easier
> Download IBM WebSphere Application Server v.1.0.1 based on Apache
> Geronimo
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
> < http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642>
> _______________________________________________
> Wicket-user mailing list
> Wicket-user@lists.sourceforge.net
> <mailto:Wicket-user@lists.sourceforge.net>
> https://lists.sourceforge.net/lists/listinfo/wicket-user
>
>
--
===================================
Ittay Dror
Chief architect, openQRM TL,
R&D, Qlusters Inc.
[EMAIL PROTECTED]
+972-3-6081994 Fax: +972-3-6081841
http://www.openQRM.org
- Keeps your Data-Center Up and Running
-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Wicket-user mailing list
Wicket-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wicket-user