Sign in Join
Wiki copytemporary

CalLite: what changed

Revision 0 to 1. Removed lines have a minus sign; added lines have a plus sign.

Title: CalLite

OldNewLine
1+## About
2+
3+![CalLite](/wiki-images/9/90/Callite.png) TCalendarLite is a lightweight calendar component, a TCustomControl descendant which consequently is not dependent on any widgetset. It is not a fixed-size component, as are most calendars, but will align and resize as needed. Various properties give access to almost every aspect of its appearance.
4+
5+## Authors
6+
7+Howard Page-Clark, Ariel Rodriguez and Werner Pamler
8+
9+## License
10+
11+Modified LGPL (with linking exception, like Lazarus LCL)
12+
13+## Download and Installation
14+
15+#### Release version
16+
17+A zip file with the most recent release version can be found at [Lazarus CCR at SourceForge](https://sourceforge.net/projects/lazarus-ccr/files/CalLite/). Unzip the file into any folder.
18+
19+The current release version is 0.3.1
20+
21+#### Development version
22+
23+Use an svn client to download the current trunk version from [<svn://svn.code.sf.net/p/lazarus-ccr/svn/components/callite/>](svn://svn.code.sf.net/p/lazarus-ccr/svn/components/callite/)
24+
25+#### Version Notes
26+
27+- **v0.3.10** breaks existing code relying on `TDayOfWeek` starting at value 1. This had to be changed to start at 0 to fix compilation with FPC 3.3.1.
28+
29+#### Installation
30+
31+![](/wiki-images/7/72/Tcalendarlite_150.png) In Lazarus, go to *"Package"* \> *"Open Package File .lpk"*. Navigate to the folder with the callite sources, and select **callight_pkg.lkp**. Click *"Compile"*, then *"Use"* \> *"Install"*. This will rebuild the IDE (it may take some time). When the process is finished the IDE will restart, and you'll find TCalendarLite in the component palette **[[Misc tab|Misc]]**.
32+
33+## Navigation
34+
35+- Click on any date
36+- Use the arrow keys on the keyboard
37+- Click on the arrow keys above the calendar; the single arrow advances by one month, the double arrow advances by one year
38+- Click on the month name to open a popdown menu with month names, or click on the year number to open a popdown menu with the last and next ten years.
39+
40+## Multi-selection
41+
42+If the property `MultiSelect` is set to `true` then several days can be selected in the calendar. All selected days are drawn with a highlighted background. Multi-selection is controlled by holding special keys down while selecting a day either by a mouse click or a key press:
43+
44+- **CTRL**: If the <span class="kbd">CTRL</span> key is pressed while selecting another day then this day is added to the selection. This way a non-contiguous array of dates can be selected.
45+- **SHIFT**: If the <span class="kbd">SHIFT</span> key is held down during day selection then all day between the prevsiously and the currently selected day are added to the selection.
46+- **Double-click**: A double click on a workday selects all workdays of the same week. Holding the <span class="kbd">CTRL</span> or <span class="kbd">SHIFT</span> key down extends the selection by the workdays of one or more weeks.
47+- The selection can be extended into neighboring months if the arrow keys of the keyboard are pressed with the <span class="kbd">CTRL</span> key held down.
48+- Selection is cleared if any date is selected without pressed any of these keys, or if the arrows or dropdown menus in the top bar are used.
49+- If previously selected days are added for a second time then they are unselected.
50+
51+At **run-time**, the selected data can be controlled or queried by these methods of the calendar:
52+
53+- `procedure AddSelectedDate(ADate: TDate)` - adds the specified date to the list of selected dates
54+- `procedure ClearSelectedDates` - clears all selected dates
55+- `function IsSelected(ADate: TDate): Boolean` - returns `true` when the given date is selected, `false` otherwise.
56+- `function SelectedDates: TCalDateArray` - returns an array of TDate elements which contains the selected dates.
57+
58+## Documentation
59+
60+- [[CalLite: Usage]]
61+- [[CalLite: Flag days in Finland]]
62+
63+## See also
64+
65+- [[Turbopower Visual PlanIt|TurboPower Visual PlanIt]]
66+- [[DateTimeCtrls Package]]
67+
68+---
69+*From the Free Pascal wiki, page "CalLite", as it stood on 2022-12-18 after a change by Wp, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*

Back to history