Qt Organizer QML API

Overview

To be able to use this component the QML import statement needs to reference the module before it can used. Simply add the following to the QML file:


  import QtOrganizer 5.0

The Organizer API enables a client to request calendar, schedule and personal data from local or remote backends. The QML Organizer API delivers these capabilities in an easy to use form.

The following describes the API. You can also study the Examples or try the Tutorials to help get started quickly.

Organizer Items

The OrganizerItem type provides a generic interface for accessing events, todos, journals and notes. To access specific fields of an item, the Event, Todo, Journal and Note QML types provide convenience. Additionally, EventOccurrence and TodoOccurrence can be used for manipulating occurrences of events or todos.

Recurring Items

A recurring item is an item that occurs more than once; for example, a meeting that occurs every week for the next 10 weeks. A recurring item is created by creating an Event or Todo and setting a RecurrenceRule on it to specify the rules for when it should recur. See Recurrence and RecurrenceRule for detail references.

Collections

Every item stored in an organizer store belongs to exactly one collection. A collection can have properties such as a name, a "color", a specified icon, a description, and so on. Collections may be added, modified, or removed if the backend store supports those operations. There will always be at least one (default) collection in an organizer manager, into which items are saved if no other collection is specified.

Organizer Item Details

Several sub types of Detail are provided as part of the API. They are general in design but are intended to fulfill specific use-cases. Please note that certain backends may choose not to support one or more of these QML types as they appear here.

Organizer Filters

The Organizer QML plugin supplies filters to search for organizer items with particular values for various properties in the organizer item, such as IDs, collections, and details, etc.

Reference documentation

Main Classes

Collection

Element represents a collection of items in an organizer manager

Detail

Element represents a single, complete detail about a organizer item

Filter

Element is used to filter items made available through a backend

OrganizerItem

Element represents the in-memory version of a organizer item

OrganizerModel

Element provides access to organizer items from the organizer store

RecurrenceRule

Element represents a rule by which a organizer item repeats

Item Classes

Event

Element provides an event in time which may reoccur

EventOccurrence

Element provides an occurrence of an event

Journal

Element provides a journal which is associated with a particular point in time

Note

Element provides a note which is not associated with any particular point in time

Todo

Element provides a task which should be completed

TodoOccurrence

Element provides an occurrence of an event

Detail Leaf Classes

AudibleReminder

Element contains information about an audible reminder of an item

Classification

Element contains classification-information of an item

Comment

Element contains the comment text of an organizer item

Description

Element contains the description text of an organizer item

DisplayLabel

Element contains the display label of an organizer item

EmailReminder

Element contains information about an email reminder of an item

EventAttendee

Element contains information about an attendee of an event

EventRsvp

Element contains Rsvp-information of an event

EventTime

Element contains the start and end dates and times of a recurring event series, or occurrence of an event

ExtendedDetail

Element contains a extended detail of an organizer item

Guid

Element contains the GUID string of an organizer item

ItemType

Element contains the type of an organizer item

JournalTime

Element contains the entry date and time of a journal item

Location

Element contains information about a location which is related to the organizer item in some manner

Parent

Element contains information about the event or todo that generated this item

Priority

Element contains the priority of the organizer item, which may be used to resolve scheduling conflicts

Recurrence

Element contains a list of rules and dates on which the recurrent item occurs, and a list of rules and dates on which exceptions occur

Reminder

Element contains information about when and how the user wants to reminded of the item

Tag

Element contains the tag string of an organizer item

Timestamp

Element contains the created and last modified timestamp of an organizer item's creating date and time

TodoProgress

Element contains information about the progress of a todo item

TodoTime

Element contains the start and due dates and times of a recurring todo series, or occurrence of an todo item

Version

Element contains versioning information of an organizer item

VisualReminder

Element contains information about a visual reminder of an item

Item Selection And Sorting

CollectionFilter

Element provides a filter based around the collection one organizer item belongs to

DetailFieldFilter

Element provides a filter based around a detail value criterion

DetailFilter

Element provides a filter based around a detail value criterion

DetailRangeFilter

Element provides a filter based around a detail value range criterion

FetchHint

Element provides hints to the manager about which organizer item information needs to be retrieved in an asynchronous fetch request or a synchronous function call

IdFilter

Element provides a filter based around a list of organizer item IDs

IntersectionFilter

Element provides a filter which intersects the results of other filters

InvalidFilter

The InvalidFilter element provides a filter which will never match any organizer items

SortOrder

Element defines how a list of organizer item should be ordered according to some criteria

UnionFilter

Element provides a filter which unions the results of other filters

Examples

The following sample applications show examples of API usage:

Tutorials

The following tutorials are useful to work through the use of the Qt Quick Organizer API::