all you need is a gridview. set columns to 7 and generate 30 items...

-igor

On Thu, Oct 23, 2008 at 1:47 PM, V. Jenks <[EMAIL PROTECTED]> wrote:
>
> Hi all.
>
> I'm trying to build a component-ized calendar that will be the centerpiece
> of a new application I'm working on.  I built one this morning in JSP and
> was able to do it with very little code.  I kept it simple and I'm hoping I
> can retro-fit the logic into a wicket page cleanly, without too much
> trouble.  I'm a little stuck because in my JSP, I simply loop through the
> days and print until Saturday is reached, then I break to a new table row
> and continue.  Doing this in Wicket seems tough because if I use a ListView,
> I can't be as flexible as far as throwing in a new row while looping and
> outputting table cells.
>
> Here's the rough idea I came up with today in JSP, can someone give me some
> pointers?
>
> <%@ page contentType="text/html" pageEncoding="UTF-8" %>
> <%@ page import="java.util.*" %>
> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
> "http://www.w3.org/TR/html4/loose.dtd";>
> <%
>  //get parameters to change date
>  String monthParam = request.getParameter("month");
>  String yearParam = request.getParameter("year");
>
>  //create calendar object
>  Calendar cal = Calendar.getInstance();
>  cal.setFirstDayOfWeek(Calendar.SUNDAY); //set first day to Sunday
>
>  if (monthParam != null)
>    cal.set(Calendar.MONTH, (Integer.valueOf(monthParam)-1));
>
>  if (yearParam != null)
>    cal.set(Calendar.YEAR, Integer.valueOf(yearParam));
>
>  //get total number of days in month
>  int numDaysInMonth = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
>
>  //get current month name in English
>  String monthName = cal.getDisplayName(Calendar.MONTH, Calendar.LONG,
> Locale.ENGLISH);
>
>  //get current year
>  int year = cal.get(Calendar.YEAR);
>
>  //get array of day names
>  String[] headers = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};
> %>
> <html>
>  <head>
>    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
>    <title>Calendarama!</title>
>  </head>
>  <body>
>    <table border="1">
>      <tr>
>        <!-- print month and year -->
>        <th colspan="7" align="center"><%= monthName + " " + year %></th>
>      </tr>
>      <tr>
>        <!-- loop and print days -->
>        <%
>          for (int i=0; i<7; i++)
>          {
>        %>
>        <td><%= headers[i] %></td>
>        <%
>          }
>        %>
>      </tr>
>      <!-- DRAW CALENDAR -->
>      <tr>
>        <%
>          for (int i=1; i<=numDaysInMonth; i++)
>          {
>            //re-set calendar day in context of loop
>            cal.set(Calendar.DAY_OF_MONTH, i);
>
>            //get the day number of the week
>            int day = cal.get(Calendar.DAY_OF_WEEK);
>
>            //days without numbers count
>            int blankDays = 0;
>
>            //blank days before 1st of month?
>            if (i == 1 && day > 1)
>            {
>              blankDays = day - i; //get count
>
>              //loop through count and print blank day
>              for (int x=1; x<=blankDays; x++)
>              {
>        %>
>          <td width="100" height="100">&nbsp;</td>
>        <%
>              }
>            }
>        %>
>          <td width="100" height="100" valign="top"><%= i %></td>
>        <%
>            if (day == Calendar.SATURDAY)
>            {
>        %>
>          </tr>
>          <tr>
>        <%
>            }
>
>            //blank days after last day of month?
>            if (i == numDaysInMonth && day < 7)
>            {
>              blankDays = 7 - day; //get count
>
>              //loop through count and print blank day
>              for (int x=1; x<=blankDays; x++)
>              {
>        %>
>          <td width="100" height="100">&nbsp;</td>
>        <%
>              }
>            }
>          }
>        %>
>      </tr>
>    </table>
>  </body>
> </html>
>
> --
> View this message in context: 
> http://www.nabble.com/Trying-to-create-a-calendar---need-some-guidance-tp20138860p20138860.html
> Sent from the Wicket - User mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to