Planners Features Overview
Day, Month, Year and Timeline Views
The Planners package includes four specialized calendar views: a daily view, displaying one or more days in separate columns; a month view, displaying an entire month as a grid; a unique year view, displaying an entire year; and a timeline view, displaying items over a horizontal, scrollable timeline. All views share a common base, and can exchange data freely.
The most versatile of these views is the day planner, TSPDayPlanner. This planner can show any number of days and supports a range of time resolutions - from 5 minutes to one hour. All-day items are displayed at the top, while normal items are displayed in their time slots. Exact times are represented on each item's side bar and using fly-over hints. Overlapping items are automatically arranged by the control, and free/busy status (free, busy, tentative, or out-of-office) is indicated on the item's side bar.
The day planner can be configured to display any number of days, a week, or a work week (5 or 6 days). When displaying a week or a work week, displayed dates are automatically adjusted to the first day of the week - Monday or Sunday (as set by the programmer).
The month planner, TSPMonthPlanner, displays a full month. Items are displayed in the cells of the month grid. As in the day planner, overlapping items are arranged automatically.
An entire month is always displayed in the month planner, regardless of the number of days in the month and the position of the first day of the month in the week.
The year planner, TSPYearPlanner, displays a full year, providing annual planning capabilities. The displayed year can start on any month, allowing the planner to be used for any type of annual planning, such as a school year.
By default, the year planner only displays all-day items. The default filter can be easily changed by setting the control's Filter property.
The timeline planner, TSPTimelinePlanner, displays items over a fully configurable timeline. The timeline view can be used to edit items at an hour (or less) resolution, or at a full day resolution, displaying as many days as desired.
Planner controls provide a scheduling user interface that is completely independent of the underlying data source. Data is neither stored nor managed by the controls, allowing you to connect to any possible data source. Instead, data is managed by planner source components, such as TSPDBSource. A planner source component is responsible for retrieving and updating the actual schedule data.
The basic planner source, TSPPlannerSource, manages all items in memory and invokes events on data changes and requests. The planner controls request items for display from their connected source, which can then access external data sources (such as a database table) to retrieve the information. Source components automatically manage requests and prevent duplicate or overlapping requests.
The separation of user-interface and data management components is a cornerstone of modern multi-tier and distributed applications. The Planners suite utilizes this architecture to provide a clean, easily extendable design. Planner source also support fetching data on demand, for the creation of scalable high performance applications.
You can use TSPPlannerSource's events to access your data sources, or derive your own source component from TSPCustomSource, the base component for all planner sources.
Planners can use any VCL dataset as a planner data source, using the TSPDBSource component. Datasets are automatically updated as users create, delete, and modify items visually.
Powerful, Easily Extendable User Interface
Automatic User Interaction
Every planner control handles user interaction automatically. Mouse and keyboard navigation, area selection, in-place editing and drag-and-drop operations are fully implemented. You can drag items between planners, resize items by dragging their borders, and start typing to create a new item. Events are invoked to allow overriding and extending the built-in functionality.
Drag-and-drop is implemented by all planner controls, including dragging between planners. Automatic scrolling allows users to drag events to any time accessible by the planner control.
User Interface Customization
Customize the appearance of appointments in your calendars by drawing them yourself, or use the internal drawing style to provide a standardized look and feel. Item colors, icons, captions, and state information are automatically supported and provide an intuitive and attractive user interface. Gradients and shadow effects provide a modern, attractive look.
All our controls support Windows regional settings, date and time formats, and localized day and month names. Bi-directional alignment and display are fully supported via the standard BiDiMode property, providing native support for right-to-left languages such as Arabic and Hebrew.
The planner controls support multiple resources. A planner resource can represent any entity that can own scheduled items - such as people, rooms, and classes. Items for multiple resources can be displayed on a single planner. The day and month planners also support item grouping by date or resource.
Since resources can represent different calendars, the planners support additional handing when dragging items between resources. The CopyOnDrop property determines whether items are copied or moved when dragged between resources.
All planner controls support printing to any VCL canvas. The printout can be fully customized, including sizes, colors, and fonts. Planners supports multi-page printing and can automatically fit the printed content to a single page of any size.
The TSPOutlookSource component exposes Outlook calendars as planner data sources. Multiple calendars can be accessed using the Calendars property, and assigned resource names that can be recognized by the planner controls. Creation of new items and deletion or modification of existing items are automatically handled using the Outlook object model.
At the moment, TSPOutlookSource is only available under Win32.
Full Delphi Source Code
Planners for VCL is based on 100% pure VCL technology, completely written in Delphi and providing full control over the appearance and behavior of each and every controls. Our controls adhere to Microsoft's user interface guidelines, and fully support Windows XP visual styles.
Planners includes full Delphi source code for you to use, study, modify and enhance.