A team scheduler in a few lines.
Two people as resources, a daily stand-up from a recurrence rule and a week view grouped by person. The same API in Delphi, C++ Builder and C#.
dotnet add package esegece.sgcPlanner.WinForms
C++ Builder and C# versions
uses
Classes, Controls, Forms, SysUtils,
sgcUICore_Theme, sgcPlanner_Data, sgcPlanner_Scheduler,
sgcPlanner_Scheduler_VCL;
procedure CreateScheduler(aForm: TForm);
var
oData: TsgcPlannerData;
oScheduler: TsgcVCLScheduler;
vItem: TsgcPlannerItem;
vMonday: TDateTime;
begin
vMonday := Date - DayOfWeek(Date) + 2;
oData := TsgcPlannerData.Create(aForm);
oData.Resources.AddResource('ana', 'Ana').Color := $FF2563EB;
oData.Resources.AddResource('luis', 'Luis').Color := $FF0F766E;
// a daily stand-up from an iCalendar recurrence rule
vItem := oData.AddItem('standup');
vItem.Title := 'Daily stand-up';
vItem.Start := vMonday + EncodeTime(9, 0, 0, 0);
vItem.Finish := vMonday + EncodeTime(9, 15, 0, 0);
vItem.RecurrenceRule := 'FREQ=DAILY;BYDAY=MO,TU,WE,TH,FR';
vItem.Resources := 'ana,luis';
// a week view, one column per person
oScheduler := TsgcVCLScheduler.Create(aForm);
oScheduler.Parent := aForm;
oScheduler.Align := alClient;
oScheduler.Data := oData;
oScheduler.Theme := utDark;
oScheduler.View := psvWeek;
oScheduler.Options.GroupByResource := True;
end;