Difference between revisions of "CalendarView"
From Jeremie Leroy - XOJO Controls Wiki
(→Version 1.1 - Released 2012-05-02) |
|||
Line 30: | Line 30: | ||
|class=titleClass colspan=3|Properties | |class=titleClass colspan=3|Properties | ||
|- | |- | ||
− | |width=33%|{{Property | name=AdaptWeeksPerMonth | type=Boolean | description= | readonly=no | newinversion= | version=1. | + | |width=33%|{{Property | name=AdaptWeeksPerMonth | type=Boolean | description= | readonly=no | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name=FirstDate | type=Date | description= | readonly=yes | newinversion= | version=1. | + | |width=33%|{{Property | name=FirstDate | type=Date | description= | readonly=yes | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=MyStyle | type=Styles | description= | readonly=no | newinversion= | version=1.2.0}} |
|- | |- | ||
− | |width=33%|{{Property | name=Animate | type=Boolean | description= | readonly=no | newinversion=1.1.0 | version=1. | + | |width=33%|{{Property | name=Animate | type=Boolean | description= | readonly=no | newinversion=1.1.0 | version=1.2.0}} |
− | |width=33%|{{Property | name=FirstDayOfWeek | type=Byte | description= | readonly=no | newinversion= | version=1. | + | |width=33%|{{Property | name=FirstDayOfWeek | type=Byte | description= | readonly=no | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=ScrollPosition | type=Double | description= | readonly=no | newinversion= | version=1.2.0}} |
|- | |- | ||
− | |width=33%|{{Property | name=Border | type=Boolean | description= | readonly=no | newinversion= | version=1. | + | |width=33%|{{Property | name=Border | type=Boolean | description= | readonly=no | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name=ForceAM_PM | type=Boolean | description= | readonly=no | newinversion=1.1.0 | version=1. | + | |width=33%|{{Property | name=ForceAM_PM | type=Boolean | description= | readonly=no | newinversion=1.1.0 | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=SelEnd | type=Date | description= | readonly=no | newinversion=1.1.0 | version=1.2.0}} |
|- | |- | ||
− | |width=33%|{{Property | name=ColorWeekend | type=Boolean | description= | readonly=no | newinversion= | version=1. | + | |width=33%|{{Property | name=ColorWeekend | type=Boolean | description= | readonly=no | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=HelpTagFormat | type=String | description= | readonly=no | newinversion=1.2.0 | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=SelStart | type=Date | description= | readonly=no | newinversion=1.1.0 | version=1.2.0}} |
|- | |- | ||
− | |width=33%|{{Property | name=CreateWithDrag | type=Boolean | description= | readonly=no | newinversion= | version=1. | + | |width=33%|{{Property | name=CreateWithDrag | type=Boolean | description= | readonly=no | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=HiDPI | type=Boolean | description= | readonly=yes | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=Style | type=Integer | description= | readonly=yes | newinversion= | version=1.2.0}} |
|- | |- | ||
− | |width=33%|{{Property | name=DayEndHour | type=Single | description= | readonly=no | newinversion=1.1.0 | version=1. | + | |width=33%|{{Property | name=DayEndHour | type=Single | description= | readonly=no | newinversion=1.1.0 | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=LastDate | type=Date | description= | readonly=yes | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=ViewDays | type=Integer | description= | readonly=no | newinversion= | version=1.2.0}} |
|- | |- | ||
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=DayEventsHeight | type=Integer | description= | readonly=no | newinversion=1.2.0 | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=LockDayEventsHeight | type=Boolean | description= | readonly=no | newinversion=1.2.0 | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=ViewType | type=Integer | description= | readonly=no | newinversion= | version=1.2.0}} |
|- | |- | ||
− | |width=33%|{{Property | name=DayStartHour | type=Single | description= | readonly=no | newinversion=1.1.0 | version=1.1.0}} | + | |width=33%|{{Property | name=DayNames | type=String | description= | readonly=no | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=minHGap | type=Integer | description= | readonly=no | newinversion= | version=1.2.0}} |
+ | |width=33%|{{Property | name=WeekHeaderTextFormat | type=String | description= | readonly=no | newinversion=1.1.0 | version=1.2.0}} | ||
+ | |- | ||
+ | |width=33%|{{Property | name=DayStartHour | type=Single | description= | readonly=no | newinversion=1.1.0 | version=1.2.0}} | ||
+ | |width=33%|{{Property | name=minHourHeight | type=Integer | description= | readonly=no | newinversion= | version=1.2.0}} | ||
+ | |width=33%|{{Property | name=YearHeatMap | type=Boolean | description= | readonly=no | newinversion= | version=1.2.0}} | ||
+ | |- | ||
+ | |width=33%|{{Property | name=DisplayDate | type=Date | description= | readonly=no | newinversion= | version=1.2.0}} | ||
+ | |width=33%|{{Property | name=minVGap | type=Integer | description= | readonly=no | newinversion= | version=1.2.0}} | ||
|- | |- | ||
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=DisplayWeeknumber | type=Boolean | description= | readonly=no | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=MonthNames | type=String | description= | readonly=no | newinversion= | version=1.2.0}} |
|- | |- | ||
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=DragEvents | type=Boolean | description= | readonly=no | newinversion= | version=1.2.0}} |
− | |width=33%|{{Property | name= | + | |width=33%|{{Property | name=MyColors | type=Colors | description= | readonly=no | newinversion= | version=1.2.0}} |
|- | |- | ||
− | |||
− | |||
|} | |} | ||
− | |||
− | |||
Line 97: | Line 101: | ||
|width=50%|{{Method | name=SetStyle | params=StyleType As Integer | description= | newinversion=}} | |width=50%|{{Method | name=SetStyle | params=StyleType As Integer | description= | newinversion=}} | ||
|- | |- | ||
− | |width=50%|{{Method | name=ImportFromDB | params=RS As RecordSet, ID As String = "ID", StartDate As String = "Start", EndDate As String = "End", Title As String = "Title", EventColor As String = "Color", Location As String = "Location", Description As String = "Description" | description= | returntype=Boolean | newinversion=}} | + | |width=50%|{{Method | name=ImportFromDB | params=RS As RecordSet, ID As String = "ID", StartDate As String = "Start", EndDate As String = "End", Title As String = "Title", EventColor As String = "Color", Location As String = "Location", Description As String = "Description", Editable As Boolean = True | description= | returntype=Boolean | newinversion=}} |
|- | |- | ||
Line 110: | Line 114: | ||
|class=titleClass colspan=1|Shared Methods | |class=titleClass colspan=1|Shared Methods | ||
|- | |- | ||
− | |{{Method | name=Register | params=Name As String, SerialKey As | + | |{{Method | name=Register | params=Name As String, SerialKey As String | description= | returntype=Boolean | newinversion=}} |
|- | |- | ||
Line 168: | Line 172: | ||
|} | |} | ||
==History== | ==History== | ||
+ | |||
+ | ===Version 1.2 - Not Released === | ||
+ | *New: | ||
+ | **Adapted display for Retina Macs (not tested on actual Retina Mac) | ||
+ | **Keyboard arrows to [[CalendarView.Scroll|Scroll]] | ||
+ | **ConstructContextualMenu event has a parameter for the clicked CalendarEvent | ||
+ | **Edit the CalendarEvent time directly from the [[CalendarView.EditEvent|EditEvent]] window | ||
+ | **Each CalendarEvent has an [[CalendarEvent.Editable|Editable]] property | ||
+ | **HelpTagFormat property | ||
+ | **DayEvent display height in Week view can be dragged | ||
+ | **StyleOutlook2013 constant | ||
+ | **Style updates | ||
+ | |||
+ | *Fix | ||
+ | **Fixed [[CalendarView.RemoveEvent|RemoveEvent]] bug that deleted the first event with the same date and length | ||
+ | **Time bar not refreshing properly | ||
+ | **Simultaneous events do not overlap in Week view (limited to 10 simultaneous events) | ||
===Version 1.1 - Released 2012-05-02=== | ===Version 1.1 - Released 2012-05-02=== | ||
Line 184: | Line 205: | ||
**Colors in StyleDark | **Colors in StyleDark | ||
**Day names on Mac OS | **Day names on Mac OS | ||
+ | |||
===Version 1.0.3 - Released 2012-04-11=== | ===Version 1.0.3 - Released 2012-04-11=== | ||
Line 221: | Line 243: | ||
**Resize event in TypeWeek | **Resize event in TypeWeek | ||
**HeatMap in TypeYear | **HeatMap in TypeYear | ||
− | **SetLength Function in | + | **SetLength Function in CalendarEvent |
**VerticalGap and HorizontalGap properties for TypeYear | **VerticalGap and HorizontalGap properties for TypeYear | ||
**New Event "DragEvent". Fires when a CalendarEvent is dragged or resized | **New Event "DragEvent". Fires when a CalendarEvent is dragged or resized | ||
*Fix: | *Fix: | ||
− | **Selected background color in month view if MyStyle. | + | **Selected background color in month view if MyStyle.MDayNumberAlign=1 |
**Day events in TypeWeek not aligned properly | **Day events in TypeWeek not aligned properly | ||
Line 236: | Line 258: | ||
==See Also== | ==See Also== | ||
− | + | Class. | |
− | + | CalendarEvent | |
==External Links== | ==External Links== | ||
Download page: | Download page: | ||
http://www.jeremieleroy.com/products.php#CalendarView | http://www.jeremieleroy.com/products.php#CalendarView |
Revision as of 23:15, 20 August 2012
Displays a Calendar in several formats (Year, Month, Week, Day, ...) that presents CalendarEvents.
This custom control based on a Canvas is similar to iCal on Mac OS and Google Calendar.
Events |
ConstructContextualMenu |
DateSelected |
DragEvent |
EditEvent |
NewEvent |
Open |
ViewChange |
Methods | |
AddEvent | ImportICS |
DeleteAllEvents | Redisplay |
ExportICS | RemoveEvent |
ExportToDB | Scroll |
GetEvents | SetStyle |
ImportFromDB | |
ImportICS |
Shared Methods |
Register |
Class Constants
Style
The following class constants are to be used to specify the Style to use with SetStyle function.
Class Constant | Description |
---|---|
StyleDefault | The default style. |
StyleICal | Macintosh iCal style. |
StyleGoogle | Google Calendar style. |
StyleDark | A dark style (black, grey and green). |
StyleOutlook2010 | Office Outlook 2010 style. |
ViewType
The following class constants are to be used with the ViewType property.
Class Constant | Description |
---|---|
TypePicker | Displays a DatePicker. |
TypeYear | Displays a whole year. |
TypeMonth | Displays a Month calendar. |
TypeWeek | Displays a full week. |
TypeDay | Displays one day. |
TypeOther | Use the ViewDays property to set the amount of days to display. If ViewDays=5 days from Monday to Friday are displayed. |
History
Version 1.2 - Not Released
- New:
- Adapted display for Retina Macs (not tested on actual Retina Mac)
- Keyboard arrows to Scroll
- ConstructContextualMenu event has a parameter for the clicked CalendarEvent
- Edit the CalendarEvent time directly from the EditEvent window
- Each CalendarEvent has an Editable property
- HelpTagFormat property
- DayEvent display height in Week view can be dragged
- StyleOutlook2013 constant
- Style updates
- Fix
- Fixed RemoveEvent bug that deleted the first event with the same date and length
- Time bar not refreshing properly
- Simultaneous events do not overlap in Week view (limited to 10 simultaneous events)
Version 1.1 - Released 2012-05-02
- New:
- TypePicker constant
- SelStart, SelEnd to set the selected dates in the CalendarPicker
- DayStartHour, DayEndHour
- ForceAM_PM
- Style Property
- StyleOutlook2010 constant
- WeekHeaderTextFormat
- Animate
- Fix:
- Several graphic enhancements
- Colors in StyleDark
- Day names on Mac OS
Version 1.0.3 - Released 2012-04-11
- New:
- StyleDefault, StyleICal, StyleGoogle, StyleDark class constants
- ImportFromDB function
- ExportToDB function
- RemoveEvent now has a RemoveFromDB property.
- Fix:
- CalendarView not updating after AddEvent
Version 1.0.2 - Released 2012-04-03
- New:
- StyleDark
- DisableDrag is replaced with DragEvents and CreateWithDrag
- Fix:
- Day background color not filling the box in TypeMonth
- Time background color not displaying in TypeWeek
- Resizing event to make a 15 minute event in TypeWeek
- TypeYear not displaying non**day events
- OutOfBoundsException in DrawTime on Mac OS
- Drawing long event in TypeMonth that finishes on last day of week
Version 1.0.1 - Released 2012-04-02
- New:
- DisplayWeeknumber As Boolean
- MyColors.WeekNumber
- MyColors.WeekNumberBackground
- Day name is displayed inside the month grid for iCal style.
- Drag events in Month and Week view to change start date/time
- Resize event in TypeWeek
- HeatMap in TypeYear
- SetLength Function in CalendarEvent
- VerticalGap and HorizontalGap properties for TypeYear
- New Event "DragEvent". Fires when a CalendarEvent is dragged or resized
- Fix:
- Selected background color in month view if MyStyle.MDayNumberAlign=1
- Day events in TypeWeek not aligned properly
Version 1.0.0 - Released 2012-03-30
First release
See Also
Class.
CalendarEvent
External Links
Download page: http://www.jeremieleroy.com/products.php#CalendarView