Beta version of IT2BE Calendar Bean v3.0b1 available

THIS IS A BETA NOTIFICATION. PLEASE READ THE BELOW TEXT TO AVOID ISSUES OR ALREADY ANSWERED QUESTIONS…

Hi all,

Version 3 of the Calendar Bean is a complete rebuild of the old version. There is still old code but the core has changed dramatically.
Rebuilding was necessary due to the many new features that were implemented over the years as well as to honor feature requests that could not be implemented due to the design.
With this version we removed certain limitations and optimized the way the Calendar Bean works.

The Calendar Bean now consists of five different Beans; the Calendar Bean (IT2BeCalendarCalendar), the Gantt Bean (IT2BeCalendarGantt), the Category Bean (IT2BeCalendarCategories), the DatePicker Bean (IT2BeCalendarDatePicker) and the Toolbar Bean (IT2BeCalendarToolbar).

The sixt Bean (IT2BeCalendar) is created to get you (re-started) fast and is a replacement for the old ‘Classic’ Calendar Bean.

When you want to test drive v3.0b1 our Calendar Bean you can download it following the below instructions.

What are the important changes

  • introduction of JSDecorator and JSDecoratorSet to create background shades. You can use this to show availability of resources, block certain times for lunch etc.
  • introduction of JSCategory and JSCategorySet replacing the old way of setting categories. The old methods are deprecated (although you can still use them) and it is preferred to use the new method for more flexibility and future enhancements
  • introduction of JSEvent and JSEventSet replacing the old way of setting events. The old methods are deprecated (although you can still use them) and it is preferred to use the new method for more flexibility and future enhancements. Most important enhancements at this time are: iCalendar compatible setting of recurring events, override a color, add tags for (internal) identification
  • there are three themes created for those that like the ‘iCal’ laf or the ‘Outlook’ laf. They are both inspired on (but not an exact match of) on the two famous apps that the names are borrowed from. The third theme is named ‘Classic’ and give all flexibility of the old Bean.
  • the toolbar has changed dramatically and looks much more ‘modern’
  • and many more smaller and bigger enhancements and changes

This is what you have to do

  • Download the Component Manager from http://www.it2be.com/index.php/downloads
  • Install the Component Manager following the instructions in the manual (see download link above)
  • The Component Manager will make a backup of your old beans- and plugins folders but it is preferred to work with a clean install. All components were updated due to changes to the core.
  • Run the Component Manager from the command line: ‘java -jar it2be-manager -beta’. This will make that the Component Manager points to the beta components.
  • Select and Download the components you want to use.
  • Quit the Component Manager and (re-)restart Servoy.
  • Import the solution application_server/solutions/it2be-examples/it2be-calendar.servoy

PLEASE REPORT ALL ISSUES WITH A TICKET IN THE SUPPORT SYSTEM AT http://www.it2be.com/index.php/support

Where do I start
When you have an old solution you should be able to continue working withouth any changes (although not advised, see below) but we can not guarantee that we thought of everything. It was a massive job and there are still things to do (check out the list: ‘Things to do’ for what we already know).
Please import the sample solution to see the new bean at work, we re-built it based on the new bean.

IMPORTANT: UNLIKE THE OLD BEAN NOT ALL PROPERTY CHANGES ARE SHOWN IN DESIGN MODE

Known bugs and things to do
The Bean is fully prepared but does not yet allow you to:

  • work with multiple instances of a panel with different sets. We found a last minute issue with the way an instance of a panel is identified and need clarification/help of Servoy to solve it.
  • only the ‘ClassicBean’ works at this point, all other beans are almost ready but can not yet be used
  • the GanttBean (and as a result the GanttView in the ‘ClassicBean’) is not yet implemented
  • showing events for different categories in ‘their own column’ does not work yet in Servoy. This was a last minute discovery, it works in the SandBox but not in Servoy. Should be easy to solve.
  • event/shape templates have not been tested
  • splitpanel positions don’t stick yet

List of Changes

Events
It is now possible to give the allDay Event a different Shape.
Completely new is the use of a ‘recurrence icon’ when recurring events are set.
Except for moving the properties for setting an event to the new JSEvent and JSEventSet we added:
[new] you can now tab through the calendar events that show.
[new] method setFont(…) to override the standard font
[new] property color to override the standard or category color
[new] property source reserved for future use
[new] property status reserved for future use
[new] property tags reserved for future use
[chg] it is not possible to set a recurring event with an iCalendar compatible string for more flexibility (advanced feature)

Classic Bean
[chg] it is not possible anymore to set the timescale > 30 minutes for the calendar
[chg] the datePicker now also ‘follows’ calendar settings
[fix] the calendar timescale, inactive range and background are now displayed correct in compressed view
[fix] several fixes implemented for all shapes

Properties (‘Form Design’ in propertiesbar)
[new] toolbarSpacerWidth
[new] usedTheme
[new] headerFont
[new] headerForeground
[new] eventAllDayShape
[new] eventUseRecurrenceIcon
[new] eventMonthUseRecurrenceIcon
[new] eventAllDayUseRecurrenceIcon
[new] eventGanttUseRecurrenceIcon
[new] allDay shape title now defaults to title (can also be set to another template)
[new] added calendar and gantt button (to switch calendar type) to the default toolbar
[change] added option to make calendar and gantt buttons visible through componentsVisible
[deprecated] toolbarButtonsTransparent
[deprecated] toolbarFloatable
[deprecated] toolbarSize

Scriptable properties
[new] calendarHourDisplayFormat
[new] calendarTimeInterval
[new] ganttDayTimeInterval
[new] ganttWeekTimeInterval
[new] headerFont
[new] toolbarSpacerWidth
[new] usedTheme
[new] eventAllDayShape
[new] eventUseRecurrenceIcon
[new] eventMonthUseRecurrenceIcon
[new] eventAllDayUseRecurrenceIcon
[new] eventGanttUseRecurrenceIcon
[deprecated] toolbarButtonsTransparent
[deprecated] toolbarFloatable
[deprecated] toolbarSize

Methods
[new] All callback methods that received the event id as first argument now also receive the JSEvent as last argument
[new] When an event change occurred in the Calendar (Move or resize) the callback method gets the JSEvent returned as last two arguments (with odl and new daterange)
[new] setCalendarDecoratorSet(JSDecoratorSet)
[new] setCategorySet(JSCategorySet)
[new] setToolbarButtonEnabled
[new] setToolbarButtonVisible
[new] SetToolbarDefaultButtonEnabled
[new] SetToolbarDefaultButtonVisible

[deprecated] enableToolbarButton (see setToolbarButtonEnabled)
[deprecated] convertToDataSet (see JSEvent and JSEventSet)
[deprecated] exportICalendar
[deprecated] getCategoryExpanded(…), now use isCategoryExpanded(…)
[deprecated] importCalendar
[deprecated] setCategories
[deprecated] setEvents
[deprecated] setToolbarMethod, now use setToolbarActionMethod

Hi Marcel,

You new Calendar bean looks great! You have been very busy. Is there any plan to support this functionality on the web?

Hi all,

You can now download a new beta of the Calendar Bean v3

Release notes
[new] the calendar now returns the selected categorie(s) for the clicked area (when category headers are set) in the popupMethod
[new] added filterChildrenCategoriesOnly (scriptable) property. Boolean value to allow only children or all categories to show in calendar
[new] added setCalendarRightClickMethod to receive rightClick calendar data. Has priority over default popup settings
[new] added setEventRightClickMethod to receive rightClick event data. Has priority over default popup settings
[chg] the calendarDoubleClickedMethod now returns the selected category (if category header shows) as last argument
[fix] fixed a couple of issues with the event shape not respecting all template settings
[fix] it is now possible to work with more instances of the (Classic at this time) Calendar Bean
[fix] corrected issue with calendar scale not correctly set at runtime
[fix] corrected issue with moving in all day calendar area
[fix] corrected issue with popups now showing up in all day calendar area
[fix] corrected issue with moving events in month view
[fix] sorting of categories is now the same as the order they are added
[fix] solved issue with methods firing before revalidation
[fix] scripting calendarView is now correct
[fix] solved issue with removeActivities()

This is what you have to do

  1. Download the Component Manager from http://www.it2be.com/index.php/downloads
  2. Install the Component Manager following the instructions in the manual (see download link above)
  3. The Component Manager will make a backup of your old beans- and plugins folders but it is preferred to work with a clean install. All components were updated due to changes to the core.
  4. Run the Component Manager from the command line: ‘java -jar it2be-manager -beta’. This will make that the Component Manager points to the beta components.
  5. Select and Download the components you want to use.
  6. Quit the Component Manager and (re-)restart Servoy.
  7. Import the solution application_server/solutions/it2be-examples/it2be-calendar.servoy

PLEASE REPORT ALL ISSUES WITH A TICKET IN THE SUPPORT SYSTEM

Would anyone have an idea why my assignments don’t show on startup?
I’m using Servoy 5.1.0 build 956 and it2be Calendar Bean v3 beta with trial licenses from both it2be and MiG.
I’ve virtually copied the code from it2be sample solution but still something is wrong.
When I create an event by right-clicking the calendar, filling out the form data and saving it - it appears on the calendar as expected.
But if I restart the client - it’s not there any more (of course it’s still in the database).
Why is this happening?

Thanks,
Maria

Maria, we have a support site for questions like this.

Please create a ticket so that we have all necessary data.

Additionally, it is always good to have a (console) window open (with system output and the Servoy log file) so that you see what is happening.

IT2Be:
Maria, we have a support site for questions like this.

Please create a ticket so that we have all necessary data.

Additionally, it is always good to have a (console) window open (with system output and the Servoy log file) so that you see what is happening.

Thanks :)
The console window was useful enough to help me fix the issue myself.