From: Marc Englund Date: Thu, 30 Aug 2007 13:57:12 +0000 (+0000) Subject: Event calendar supports title + description. X-Git-Tag: 6.7.0.beta1~6045 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=2d7a8e84a6e6b2d09981d5c3ff272375ff78e911;p=vaadin-framework.git Event calendar supports title + description. svn changeset:2160/svn branch:trunk --- diff --git a/src/com/itmill/toolkit/demo/reservation/ReservationApplication.java b/src/com/itmill/toolkit/demo/reservation/ReservationApplication.java index af98930b72..e0f7ae4574 100644 --- a/src/com/itmill/toolkit/demo/reservation/ReservationApplication.java +++ b/src/com/itmill/toolkit/demo/reservation/ReservationApplication.java @@ -194,7 +194,9 @@ public class ReservationApplication extends Application { .setItemStartPropertyId(SampleDB.Reservation.PROPERTY_ID_RESERVED_FROM); cal.setItemEndPropertyId(SampleDB.Reservation.PROPERTY_ID_RESERVED_TO); cal - .setItemTitlePropertyId(SampleDB.Reservation.PROPERTY_ID_DESCRIPTION); + .setItemTitlePropertyId(SampleDB.Resource.PROPERTY_ID_NAME); + cal + .setItemDescriptionPropertyId(SampleDB.Reservation.PROPERTY_ID_DESCRIPTION); } private void resetStatus() { diff --git a/src/com/itmill/toolkit/demo/reservation/SampleDB.java b/src/com/itmill/toolkit/demo/reservation/SampleDB.java index b3465f3be0..f5482e70b0 100644 --- a/src/com/itmill/toolkit/demo/reservation/SampleDB.java +++ b/src/com/itmill/toolkit/demo/reservation/SampleDB.java @@ -16,33 +16,33 @@ import com.itmill.toolkit.data.util.QueryContainer; public class SampleDB { public class User { - public static final String TABLE = "user"; - public static final String PROPERTY_ID_ID = "ID"; - public static final String PROPERTY_ID_FULLNAME = "FULLNAME"; - public static final String PROPERTY_ID_EMAIL = "EMAIL"; - public static final String PROPERTY_ID_PASSWORD = "PASSWORD"; - public static final String PROPERTY_ID_DELETED = "DELETED"; + public static final String TABLE = "USER"; + public static final String PROPERTY_ID_ID = TABLE+"_ID"; + public static final String PROPERTY_ID_FULLNAME = TABLE+"_FULLNAME"; + public static final String PROPERTY_ID_EMAIL = TABLE+"_EMAIL"; + public static final String PROPERTY_ID_PASSWORD = TABLE+"_PASSWORD"; + public static final String PROPERTY_ID_DELETED = TABLE+"_DELETED"; } public class Resource { - public static final String TABLE = "resource"; - public static final String PROPERTY_ID_ID = "ID"; - public static final String PROPERTY_ID_NAME = "NAME"; - public static final String PROPERTY_ID_DESCRIPTION = "DESCRIPTION"; - public static final String PROPERTY_ID_LOCATIONX = "LOCATION_X"; - public static final String PROPERTY_ID_LOCATIONY = "LOCATION_Y"; - public static final String PROPERTY_ID_CATEGORY = "CATEGORY"; - public static final String PROPERTY_ID_DELETED = "DELETED"; + public static final String TABLE = "RESOURCE"; + public static final String PROPERTY_ID_ID = TABLE+"_ID"; + public static final String PROPERTY_ID_NAME = TABLE+"_NAME"; + public static final String PROPERTY_ID_DESCRIPTION = TABLE+"_DESCRIPTION"; + public static final String PROPERTY_ID_LOCATIONX = TABLE+"_LOCATION_X"; + public static final String PROPERTY_ID_LOCATIONY = TABLE+"_LOCATION_Y"; + public static final String PROPERTY_ID_CATEGORY = TABLE+"_CATEGORY"; + public static final String PROPERTY_ID_DELETED = TABLE+"_DELETED"; } public class Reservation { - public static final String TABLE = "reservation"; - public static final String PROPERTY_ID_ID = "ID"; - public static final String PROPERTY_ID_DESCRIPTION = "DESCRIPTION"; - public static final String PROPERTY_ID_RESOURCE_ID = "RESOURCE_ID"; - public static final String PROPERTY_ID_RESERVED_BY_ID = "RESERVED_BY_USER_ID"; - public static final String PROPERTY_ID_RESERVED_FROM = "RESERVED_FROM"; - public static final String PROPERTY_ID_RESERVED_TO = "RESERVED_TO"; + public static final String TABLE = "RESERVATION"; + public static final String PROPERTY_ID_ID = TABLE+"_ID"; + public static final String PROPERTY_ID_DESCRIPTION = TABLE+"_DESCRIPTION"; + public static final String PROPERTY_ID_RESOURCE_ID = TABLE+"_RESOURCE_ID"; + public static final String PROPERTY_ID_RESERVED_BY_ID = TABLE+"_RESERVED_BY_USER_ID"; + public static final String PROPERTY_ID_RESERVED_FROM = TABLE+"_RESERVED_FROM"; + public static final String PROPERTY_ID_RESERVED_TO = TABLE+"_RESERVED_TO"; } // TODO -> param @@ -247,7 +247,8 @@ public class SampleDB { // TODO where from=? // TODO where to=? // TODO where deleted=? - String q = "SELECT * FROM " + Reservation.TABLE; + String q = "SELECT * FROM " + Reservation.TABLE + "," +Resource.TABLE; + q += " WHERE " + Reservation.PROPERTY_ID_RESOURCE_ID+"="+Resource.PROPERTY_ID_ID; if (resources != null && resources.size() > 0) { StringBuilder s = new StringBuilder(); for (Iterator it = resources.iterator(); it.hasNext();) { diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/ICalendar.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/ICalendar.java index fd731b963b..9a49ac7978 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/ICalendar.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/ICalendar.java @@ -29,8 +29,9 @@ public class ICalendar extends IDateField { private int realResolution = RESOLUTION_DAY; - private static final String CLASSNAME = IDateField.CLASSNAME + "-entrycalendar"; - + private static final String CLASSNAME = IDateField.CLASSNAME + + "-entrycalendar"; + public ICalendar() { super(); setStyleName(CLASSNAME); @@ -113,12 +114,19 @@ public class ICalendar extends IDateField { String text = ""; if (entries != null) { for (Iterator it = entries.iterator(); it.hasNext();) { - String title = ((ICalendarEntry) it.next()).getTitle(); - text += (text == "" ? "" : ", ") - + (title != null ? title : "?"); + ICalendarEntry entry = (ICalendarEntry) it.next(); + String title = entry.getTitle(); + String desc = entry.getDescription(); + text += (text == "" ? "" : ", "); + String e = ""; + e += (title != null ? title : "?"); + e += ""; + text += e; } - } - hourTable.setHTML(i, 1, "" + text + ""); + } + hourTable.setHTML(i, 1, text); hourTable.getCellFormatter().setStyleName(i, 1, CLASSNAME + "-title"); } @@ -149,13 +157,13 @@ public class ICalendar extends IDateField { Date endDate = (end > 0 && end != start ? new Date(end) : new Date( start)); String title = item.getStringAttribute("title"); + String desc = item.getStringAttribute("description"); boolean notime = item.getBooleanAttribute("notime"); if (items.containsKey(id)) { items.remove(id); } - items - .put(id, new ICalendarEntry(startDate, endDate, title, - notime)); + items.put(id, new ICalendarEntry(startDate, endDate, title, desc, + notime)); } public List getEntries(Date date, int resolution) { @@ -170,7 +178,7 @@ public class ICalendar extends IDateField { return res; } - + public void clear() { items.clear(); } diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/calendar/ICalendarEntry.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/calendar/ICalendarEntry.java index 0559cb1bb8..1ffbc0d016 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/calendar/ICalendarEntry.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/calendar/ICalendarEntry.java @@ -8,9 +8,10 @@ public class ICalendarEntry { private Date start; private Date end; private String title; + private String description; private boolean notime; - public ICalendarEntry(Date start, Date end, String title, boolean notime) { + public ICalendarEntry(Date start, Date end, String title, String description, boolean notime) { if (notime) { Date d = new Date(start.getTime()); d.setSeconds(0); @@ -29,11 +30,12 @@ public class ICalendarEntry { this.end = end; } this.title = title; + this.description = description; this.notime = notime; } - public ICalendarEntry(Date start, Date end, String title) { - this(start, end, title, false); + public ICalendarEntry(Date start, Date end, String title, String description) { + this(start, end, title, description, false); } public Date getStart() { @@ -60,6 +62,14 @@ public class ICalendarEntry { this.title = title; } + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + public boolean isNotime() { return notime; } diff --git a/src/com/itmill/toolkit/ui/CalendarField.java b/src/com/itmill/toolkit/ui/CalendarField.java index 9e1a4742a8..83ae89c9f6 100644 --- a/src/com/itmill/toolkit/ui/CalendarField.java +++ b/src/com/itmill/toolkit/ui/CalendarField.java @@ -23,6 +23,7 @@ public class CalendarField extends DateField implements Container.Viewer { private Object itemStartPropertyId; private Object itemEndPropertyId; private Object itemTitlePropertyId; + private Object itemDescriptionPropertyId; private Object itemNotimePropertyId; public CalendarField() { @@ -187,6 +188,14 @@ public class CalendarField extends DateField implements Container.Viewer { this.itemTitlePropertyId = propertyId; } + public Object getItemDescriptionPropertyId() { + return itemDescriptionPropertyId; + } + + public void setItemDescriptionPropertyId(Object propertyId) { + this.itemDescriptionPropertyId = propertyId; + } + public Object getitemNotimePropertyId() { return itemNotimePropertyId; } @@ -264,6 +273,13 @@ public class CalendarField extends DateField implements Container.Viewer { target.addAttribute("title", val.toString()); } } + if (this.itemDescriptionPropertyId != null) { + p = item.getItemProperty(this.itemDescriptionPropertyId); + Object val = p.getValue(); + if (val != null) { + target.addAttribute("description", val.toString()); + } + } if (this.itemNotimePropertyId != null) { p = item .getItemProperty(this.itemNotimePropertyId);