From 674debd58c95b3d8f1e2418883c015175310d022 Mon Sep 17 00:00:00 2001 From: TamilarasanGunasekaran Date: Tue, 25 Jun 2024 19:39:01 +0530 Subject: [PATCH 1/2] WPF 886828 - Updated Gantt UG content changes --- wpf/Gantt/auto-update-hierarchy.md | 40 ++++++++--------- wpf/Gantt/baseline-support.md | 25 +++++------ wpf/Gantt/calendar-customization.md | 36 +++++++-------- wpf/Gantt/custom-node-style.md | 2 +- wpf/Gantt/custom-schedule.md | 28 ++++++------ wpf/Gantt/custom-tooltip.md | 3 +- wpf/Gantt/data-binding.md | 15 +++---- wpf/Gantt/datetime-indicator-customization.md | 16 +++---- wpf/Gantt/dependency-relationship.md | 14 +++--- wpf/Gantt/drag-drop.md | 30 ++++++------- wpf/Gantt/filtering-sorting.md | 8 ++-- wpf/Gantt/getting-started.md | 34 +++++++++----- wpf/Gantt/highlighting-tasks.md | 12 ++--- wpf/Gantt/holidays-customization.md | 11 +++-- wpf/Gantt/import-and-export-support.md | 8 ++-- wpf/Gantt/localization.md | 4 +- wpf/Gantt/migration-to-26v-or-higher.md | 2 +- wpf/Gantt/resource-view-gantt-inline-items.md | 8 ++-- wpf/Gantt/strip-lines.md | 44 +++++++++---------- wpf/Gantt/zooming.md | 22 +++++----- 20 files changed, 183 insertions(+), 179 deletions(-) diff --git a/wpf/Gantt/auto-update-hierarchy.md b/wpf/Gantt/auto-update-hierarchy.md index 5ebb9e216b..b878cf280c 100644 --- a/wpf/Gantt/auto-update-hierarchy.md +++ b/wpf/Gantt/auto-update-hierarchy.md @@ -9,7 +9,7 @@ documentation: ug # Auto Update Hierarchy in WPF Gantt -Essential Gantt provides support for auto updating hierarchy, in which the Gantt control will listen to the change in child tasks/activities and automatically update them in the parent task/activity accordingly. There is no need to have any custom logics in business objects to update the hierarchy. You can enable or disable this functionality by using the UseAutoUpdateHierarchy property. +Essential Gantt provides support for auto updating hierarchy, in which the Gantt control will listen to the change in child tasks/activities and automatically update them in the parent task/activity accordingly. There is no need to have any custom logics in business objects to update the hierarchy. You can enable or disable this functionality by using the [UseAutoUpdateHierarchy](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_UseAutoUpdateHierarchy) property. ## Use Case Scenario @@ -430,8 +430,8 @@ public class Task : NotificationObject } /// The difference between the end date and starting date is calculated exactly. - duration = endDate.Subtract(startDate); - return duration; + this.duration = endDate.Subtract(startDate); + return this.duration; } set { @@ -439,13 +439,13 @@ public class Task : NotificationObject { var sum = new TimeSpan(0, 0, 0, 0); sum = this.childCollection.Aggregate(sum, (current, task) => current + task.Duration); - duration = sum; + this.duration = sum; return; } duration = value; /// The end date is calculated to make the change in end date based on duration. The duration is interlinked with the starting date and end date, so it will affect the both based on the changes. - EndDate = startDate.AddDays(Double.Parse(duration.TotalDays.ToString())); + this.EndDate = this.startDate.AddDays(Double.Parse(this.duration.TotalDays.ToString())); } } @@ -454,17 +454,17 @@ public class Task : NotificationObject /// public DateTime EndDate { - get { return endDate; } + get { return this.endDate; } set { if (this.childCollection != null && this.childCollection.Count >= 1) { /// If this task is a parent task, then it should have the maximum end time to compare the date with maximum date of its child tasks. - if (value >= this.childCollection.Max(s => s.EndDate) && endDate != value) - endDate = value; + if (value >= this.childCollection.Max(s => s.EndDate) && this.endDate != value) + this.endDate = value; } else - endDate = value; + this.endDate = value; RaisePropertyChanged("EndDate"); /// The changed duration is invoked to notify the change in duration based on the new end date. RaisePropertyChanged("Duration"); @@ -478,7 +478,7 @@ public class Task : NotificationObject { get { - return startDate; + return this.startDate; } set { @@ -486,11 +486,11 @@ public class Task : NotificationObject if (this.childCollection != null && this.childCollection.Count >= 1) { - if (value <= this.childCollection.Min(s => s.startDate) && startDate != value) - startDate = value; + if (value <= this.childCollection.Min(s => s.startDate) && this.startDate != value) + this.startDate = value; } else - startDate = value; + this.startDate = value; RaisePropertyChanged("startDate"); /// The changed duration is invoked to notify the change in duration based on the new start date. RaisePropertyChanged("Duration"); @@ -502,10 +502,10 @@ public class Task : NotificationObject /// public string Name { - get { return name; } + get { return this.name; } set { - name = value; + this.name = value; RaisePropertyChanged("Name"); } } @@ -515,10 +515,10 @@ public class Task : NotificationObject /// public int Id { - get { return id; } + get { return this.id; } set { - id = value; + this.id = value; RaisePropertyChanged("Id"); } } @@ -573,9 +573,9 @@ public class Task : NotificationObject private void UpdateData() { /// Update the starting date and end date based on the changes made in the date of child tasks. - StartDate = this.childCollection.Select(c => c.startDate).Min(); - EndDate = this.childCollection.Select(c => c.EndDate).Max(); - progress = (this.childCollection.Aggregate(0d, (cur, task) => cur + task.progress)) / this.childCollection.Count; + this.StartDate = this.childCollection.Select(c => c.startDate).Min(); + this.EndDate = this.childCollection.Select(c => c.EndDate).Max(); + this.progress = (this.childCollection.Aggregate(0d, (cur, task) => cur + task.progress)) / this.childCollection.Count; } /// diff --git a/wpf/Gantt/baseline-support.md b/wpf/Gantt/baseline-support.md index 4f4623d9ae..6dfcb14988 100644 --- a/wpf/Gantt/baseline-support.md +++ b/wpf/Gantt/baseline-support.md @@ -37,14 +37,14 @@ Type Return Type -LoadVarianceTableView +[LoadVarianceTableView](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_LoadVarianceTableView) this method is used to load the Variance view of the Gantt. LoadVarianceTableView() N/A void -LoadDefaultTableView +[LoadDefaultTableView](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_LoadDefaultTableView) this method is used to load the Default (Editing) view of the Gantt. LoadDefaultTableView() N/A @@ -57,8 +57,8 @@ To add Baseline Table View to an application: 1. Declare the baseline properties in the view model. 2. Map the properties to Gantt in the corresponding TaskAttributeMappingProperty. -3. To load the Variance view, call the LoadVarianceTableView() method of the Gantt. -4. To load the Default (Editing) view, call the LoadDefaultTableView() method of the Gantt. +3. To load the Variance view, call the [LoadVarianceTableView](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_LoadVarianceTableView) method of the Gantt. +4. To load the Default (Editing) view, call the [LoadDefaultTableView](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_LoadDefaultTableView) method of the Gantt. The following codes illustrate this: @@ -451,7 +451,6 @@ public class ViewModel taskDetails.Add(new Task() { ID = 1, Name = "Residential Construction (2500 sq.ft)", StartDate = new DateTime(2012, 3, 1), EndDate = new DateTime(2012, 3, 15), BaselineStart = new DateTime(2012, 3, 1), BaselineEnd = new DateTime(2012, 3, 14), Progress = 0d, Cost = 500, BaselineCost = 833d, }); taskDetails[0].ChildCollection.Add(new Task() { ID = 2, Name = "General Considerations", StartDate = new DateTime(2012, 7, 3), EndDate = new DateTime(2012, 7, 14), BaselineStart = new DateTime(2012, 7, 3), BaselineEnd = new DateTime(2012, 7, 14), Progress = 0d, Cost = 89, BaselineCost = 833d, }); - taskDetails[0].ChildCollection[0].ChildCollection.Add(new Task() { ID = 3, Name = "Finalize and Approve Plans", StartDate = new DateTime(2012, 3, 1), EndDate = new DateTime(2012, 3, 15), BaselineStart = new DateTime(2012, 3, 2), BaselineEnd = new DateTime(2012, 3, 16), Progress = 0d, Cost = 500, BaselineCost = 833d, }); taskDetails[0].ChildCollection[0].ChildCollection[0].ChildCollection.Add(new Task() { ID = 4, Name = "Review and Finalize Site Plans", StartDate = new DateTime(2012, 3, 1), EndDate = new DateTime(2012, 3, 20), BaselineStart = new DateTime(2012, 3, 1), BaselineEnd = new DateTime(2012, 3, 20), Progress = 0d, Cost = 500, BaselineCost = 833d, }); taskDetails[0].ChildCollection[0].ChildCollection[0].ChildCollection.Add(new Task() { ID = 5, Name = "Sign contract and Proceed", StartDate = new DateTime(2012, 3, 20), EndDate = new DateTime(2012, 3, 22), BaselineStart = new DateTime(2012, 3, 19), BaselineEnd = new DateTime(2012, 3, 21), Progress = 0d, Cost = 500, BaselineCost = 833d, }); @@ -501,7 +500,6 @@ public class ViewModel taskDetails[0].ChildCollection[6].ChildCollection[0].ChildCollection.Add(new Task() { ID = 40, Name = "Install Wall Insulation", StartDate = new DateTime(2012, 6, 19), EndDate = new DateTime(2012, 6, 21), BaselineStart = new DateTime(2012, 6, 19), BaselineEnd = new DateTime(2012, 6, 21), Progress = 0d, Cost = 53, BaselineCost = 83d, }); taskDetails[0].ChildCollection[6].ChildCollection[0].ChildCollection.Add(new Task() { ID = 41, Name = "Install Ceiling Insulation", StartDate = new DateTime(2012, 6, 21), EndDate = new DateTime(2012, 6, 22), BaselineStart = new DateTime(2012, 6, 21), BaselineEnd = new DateTime(2012, 6, 22), Progress = 0d, Cost = 89, BaselineCost = 83d, }); - taskDetails[0].ChildCollection[6].ChildCollection.Add(new Task() { ID = 42, Name = "Painting and Wallpaper", StartDate = new DateTime(2012, 6, 22), EndDate = new DateTime(2012, 6, 23), BaselineStart = new DateTime(2012, 6, 22), BaselineEnd = new DateTime(2012, 6, 23), Progress = 0d, Cost = 453, BaselineCost = 563, }); taskDetails[0].ChildCollection[6].ChildCollection[1].ChildCollection.Add(new Task() { ID = 43, Name = "Painting all Interior", StartDate = new DateTime(2012, 6, 22), EndDate = new DateTime(2012, 6, 23), BaselineStart = new DateTime(2012, 6, 22), BaselineEnd = new DateTime(2012, 6, 23), Progress = 0d, Cost = 453, BaselineCost = 563, }); taskDetails[0].ChildCollection[6].ChildCollection[1].ChildCollection.Add(new Task() { ID = 44, Name = "Painting all Exterior", StartDate = new DateTime(2012, 6, 23), EndDate = new DateTime(2012, 6, 25), BaselineStart = new DateTime(2012, 6, 23), BaselineEnd = new DateTime(2012, 6, 25), Progress = 0d, Cost = 352, BaselineCost = 342, }); @@ -527,7 +525,6 @@ public class ViewModel taskDetails[0].ChildCollection[7].ChildCollection.Add(new Task() { ID = 60, Name = "Final Inspection", StartDate = new DateTime(2012, 7, 16), EndDate = new DateTime(2012, 7, 17), BaselineStart = new DateTime(2012, 7, 16), BaselineEnd = new DateTime(2012, 7, 17), Progress = 0d, Cost = 0, BaselineCost = 5, }); taskDetails[0].ChildCollection[7].ChildCollection.Add(new Task() { ID = 61, Name = "Move In", StartDate = new DateTime(2012, 7, 17), EndDate = new DateTime(2012, 7, 17), BaselineStart = new DateTime(2012, 7, 18), BaselineEnd = new DateTime(2012, 7, 18), Progress = 0d, Cost = 0, BaselineCost = 0, }); - //Adding Resources taskDetails[0].ChildCollection[0].ChildCollection[0].ChildCollection[0].Resource.Add(ResidentialConstructionResources[1]); taskDetails[0].ChildCollection[0].ChildCollection[0].ChildCollection[0].Resource.Add(ResidentialConstructionResources[0]); @@ -715,7 +712,7 @@ Data Type Reference links -ShowBaseline +[ShowBaseline](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ShowBaseline) Controls the view of baseline in the Gantt Chart. Default value is false DependencyProperty bool @@ -738,14 +735,14 @@ Data Type Reference links -BaselineColor +[BaselineColor](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_BaselineColor) Used to customize the baseline color. Default value is Orange DependencyProperty Brush NA -BaselineStrokeThickness +[BaselineStrokeThickness](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_BaselineStrokeThickness) Used to customize the baseline thickness. Default value is 3d DependencyProperty bool @@ -792,7 +789,7 @@ Type Data Type -ShowAddNewColumn +[ShowAddNewColumn](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ShowAddNewColumn) Gets/Sets the value that is used in displaying/hiding the add new column combo box in grid DependencyProperty bool @@ -803,8 +800,8 @@ Adding On-Demand Baseline Column Inclusion to an Application To add the On-Demand Baseline Column Inclusion to an application you need to enable the AddNewColumn of Gantt Grid, which will have a drop down cell on its head, which in turn will have the baseline columns that can be added dynamically. To enable this feature: -1. To show the Add New Column of Gantt Grid, set the ShowAddNewColumn Property to true in Gantt. -2. To include the Baseline columns in the Add New Columns drop down cell, provide the corresponding mapping name in TaskAttributeMapping. +1. To show the Add New Column of Gantt Grid, set the [ShowAddNewColumn](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ShowAddNewColumn) Property to true in Gantt. +2. To include the Baseline columns in the Add New Columns drop down cell, provide the corresponding mapping name in [TaskAttributeMapping](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskAttributeMapping.html). 3. Mapped Baseline columns will be listed in the drop down cell. 4. By selecting a column name from the drop down cell, the corresponding column will be dynamically added to the Gantt Grid. @@ -898,7 +895,7 @@ Type Return Type -GetProjectStatistics +[GetProjectStatistics](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_GetProjectStatistics) this method is used to get the current statistics information about the project GetProjectStatistics() N/A diff --git a/wpf/Gantt/calendar-customization.md b/wpf/Gantt/calendar-customization.md index 9fc4fea083..89bee827b9 100644 --- a/wpf/Gantt/calendar-customization.md +++ b/wpf/Gantt/calendar-customization.md @@ -29,63 +29,63 @@ Data Type Reference links -WeekBeginsOn +[WeekBeginsOn](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_WeekBeginsOn) Gets or sets the starting day of a week in the project schedule. By default it is set to Sunday. DependencyProperty Enum N/A -FiscalYearBeginsOn +[FiscalYearBeginsOn](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_FiscalYearBeginsOn) Gets or sets the starting month of a fiscal year. By default it is set to January DependencyProperty Enum N/A -IsFYNumberingEnabled +[IsFYNumberingEnabled](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_IsFiscalYearNumberingEnabled) Gets or sets the Fiscal Year Numbering. If this property is changed, it will be reflected in the schedule.By default FY Numbering is set to false. Dependency Property bool N/A -DefaultStartTime +[DefaultStartTime](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_DefaultStartTime) Gets or sets the task starting time in a day. This is based on the {{ '_GanttTime_' | markdownify }} class of the Gantt control.By default this is set to 9.00 AM Dependency Property GanttTime N/A -DefaultEndTime +[DefaultEndTime](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_DefaultEndTime) Gets or sets the task ending time in a day. This is based on the {{ '_GanttTime_' | markdownify }} class of the Gantt control.By default this is set to 6.00 PM Dependency Property GanttTime N/A -Weekends +[Weekends](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_Weekends) Gets or sets the weekend days. Default value is Saturday, Sunday. Dependency Property Days N/A -ShowWeekends +[ShowWeekends](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ShowWeekends) Enables or disables the weekend days in schedule. Default value is true. Dependency Property bool N/A -ExcludeWeekends +[ExcludeWeekends](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ExcludeWeekends) Excludes or includes the weekend days in duration calculation. Default value is false. Dependency Property bool N/A -ShowNonWorkingHoursBackground +[ShowNonWorkingHoursBackground](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ShowNonWorkingHoursBackground) Enables or disables the background for weekend days. Default value is true. Dependency Property bool @@ -211,11 +211,11 @@ public class ViewModel { get { - return defaultstart; + return this.defaultstart; } set { - defaultstart = value; + this.defaultstart = value; } } @@ -227,11 +227,11 @@ public class ViewModel { get { - return defaultend; + return this.defaultend; } set { - defaultend = value; + this.defaultend = value; } } @@ -243,11 +243,11 @@ public class ViewModel { get { - return fynumbering; + return this.fynumbering; } set { - fynumbering = value; + this.fynumbering = value; } } @@ -316,11 +316,11 @@ public class ViewModel { get { - return _taskCollection; + return this._taskCollection; } set { - _taskCollection = value; + this._taskCollection = value; } } @@ -353,7 +353,6 @@ public class ViewModel taskDetails[0].Child = MarketAnalysis; - taskDetails.Add(new TaskDetails { StartDate = new DateTime(2010, 6, 18), FinishDate = new DateTime(2010, 7, 14), TaskName = "Infrastructure for Product Planning", TaskId = 9 }); ObservableCollection InfrastructureReq = new ObservableCollection(); InfrastructureReq.Add(new TaskDetails { StartDate = new DateTime(2010, 6, 18), FinishDate = new DateTime(2010, 6, 24), TaskName = "Define procedure for qualifying ideas", TaskId = 10 }); @@ -380,7 +379,6 @@ public class ViewModel Product[5].Predecessor.Add(new Predecessor { GanttTaskIndex = 17, GanttTaskRelationship = GanttTaskRelationship.FinishToStart }); Product[5].Predecessor.Add(new Predecessor { GanttTaskIndex = 18, GanttTaskRelationship = GanttTaskRelationship.FinishToStart }); - taskDetails[2].Child = Product; taskDetails.Add(new TaskDetails { StartDate = new DateTime(2010, 9, 2), FinishDate = new DateTime(2010, 9, 10), TaskName = "Analysing Customer Requirement", TaskId = 20 }); diff --git a/wpf/Gantt/custom-node-style.md b/wpf/Gantt/custom-node-style.md index b2e6de0076..6a2636ce97 100644 --- a/wpf/Gantt/custom-node-style.md +++ b/wpf/Gantt/custom-node-style.md @@ -9,7 +9,7 @@ documentation: ug # Custom Node Style in WPF Gantt -Custom node style enables you to design your own style to the nodes that will be displayed in the Gantt. You can also customize the progress bar of the Task Node.Currently Gantt Control supports three types of node. They are: +Custom node style enables you to design your own style to the nodes that will be displayed in the Gantt. You can also customize the progress bar of the Task Node.Currently [GanttControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html) supports three types of node. They are: * Header Node * Task Node diff --git a/wpf/Gantt/custom-schedule.md b/wpf/Gantt/custom-schedule.md index c9ee4eee95..a61c33d8b2 100644 --- a/wpf/Gantt/custom-schedule.md +++ b/wpf/Gantt/custom-schedule.md @@ -20,15 +20,15 @@ These types are included in the existing ScheduleType enum. ## Custom Numeric -Custom Numeric schedule is used to define your own schedule with any numeric measurement unit other than date time. With this schedule, you can track the progress based on your own measurement and there is no need to depend on Date Time. Two new API’s are added to the Mapping attributes to support this schedule in GanttChart and GanttGrid. +Custom Numeric schedule is used to define your own schedule with any numeric measurement unit other than date time. With this schedule, you can track the progress based on your own measurement and there is no need to depend on Date Time. Two new API’s are added to the Mapping attributes to support this schedule in [GanttChart](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttChart.html) and [GanttGrid](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttGrid.html). ## Custom DateTime Custom DateTime schedule is used to define your own date time schedule, which can match your current financial calendar. By using schedule type as custom schedule, you can define your schedule on quarterly basis. -In both the custom schedules, Gantt will get the information from the application to render the schedule. Gantt will accept the custom schedule information in the form of a collection of GanttScheduleRowInfo object, and process it to draw the schedule. +In both the custom schedules, Gantt will get the information from the application to render the schedule. Gantt will accept the custom schedule information in the form of a collection of [GanttScheduleRowInfo](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttScheduleRowInfo.html) object, and process it to draw the schedule. -GanttScheduleRowInfo class will have following fields: +[GanttScheduleRowInfo](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttScheduleRowInfo.html) class will have following fields: 1. PixelsPerUnit—Gets the information of the pixel value equivalent to one unit in custom measurement. 2. CellsPerUnit—Gets the information of a cell size of preceding row in the schedule based on the immediate next row. In CustomDateTime Schedule, the CellsPerUnit will be used to customize the cell. For example, in quarterly basis month cell, You need to draw a schedule by consolidating three months. For this, you need to define the CellsPerUnit of that corresponding row as 3. @@ -61,7 +61,7 @@ Type Data Type -CustomScheduleSource +[CustomScheduleSource](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_CustomScheduleSource) Gets/Sets the custom schedule items Source of the Gantt. DependencyProperty IList<GanttScheduleRowInfo> @@ -78,7 +78,7 @@ Arguments Type -ScheduleCellCreated +[ScheduleCellCreated](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ScheduleCellCreated) Event will be triggered whenever a schedule cell is created. The handler of the event will have the newly created cell (GanttScheduleCell) in the argument.By handling this event, you can customize the appearance of the cell. ScheduleCellCreated (object sender, ScheduleCellCreatedEventArgs args) Routed Event @@ -99,25 +99,25 @@ Type Data Type -CellDate +[CellDate](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttScheduleCell.html#Syncfusion_Windows_Controls_Gantt_GanttScheduleCell_CellDate) Gets/Sets the current schedule cell date in the datetime schedule. Dependency Property DateTime -CellToolTip +[CellToolTip](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttScheduleCell.html#Syncfusion_Windows_Controls_Gantt_GanttScheduleCell_CellToolTip) Gets/Sets the current schedule cell tool tip. Dependency Property Object -CellTimeUnit +[CellTimeUnit](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttScheduleCell.html#Syncfusion_Windows_Controls_Gantt_GanttScheduleCell_CellTimeUnit) Gets/Sets the current schedule row time unit (like weeks, months and so on). Dependency Property TimeUnit (Enum) -Content +`Content` Gets/Sets the current schedule cell content. Dependency Property Object @@ -127,9 +127,9 @@ Object To Add CustomNumeric Schedule to an application: -1. Define the Mapping for StartPointMapping and FinishPointMapping in TaskAttributeMapping. -1. Set the Gantt Schedule type as CustomNumeric. -2. Bind the GanttScheduleRowInfo collection to the CustomScheduleSource property of the Gantt. +1. Define the Mapping for [StartPointMapping](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskAttributeMapping.html#Syncfusion_Windows_Controls_Gantt_TaskAttributeMapping_StartPointMapping) and [FinishPointMapping](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskAttributeMapping.html#Syncfusion_Windows_Controls_Gantt_TaskAttributeMapping_FinishPointMapping) in [TaskAttributeMapping](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskAttributeMapping.html). +1. Set the Gantt [ScheduleType](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ScheduleType) as CustomNumeric. +2. Bind the [GanttScheduleRowInfo](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttScheduleRowInfo.html) collection to the [CustomScheduleSource](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_CustomScheduleSource) property of the Gantt. The following code illustrates Adding Custom Schedule to an Application: @@ -756,8 +756,8 @@ To view samples: To Add CustomDateTime Schedule to an application: -1. Define the Gantt Schedule type as CustomDateTime. -2. Bind the GanttScheduleRowInfo collection to the CustomScheduleSource property of the Gantt. +1. Define the Gantt [ScheduleType](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ScheduleType) as CustomDateTime. +2. Bind the [GanttScheduleRowInfo](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttScheduleRowInfo.html) collection to the [CustomScheduleSource](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_CustomScheduleSource) property of the Gantt. The following code illustrates this: diff --git a/wpf/Gantt/custom-tooltip.md b/wpf/Gantt/custom-tooltip.md index 90168646d2..7681ff9261 100644 --- a/wpf/Gantt/custom-tooltip.md +++ b/wpf/Gantt/custom-tooltip.md @@ -23,7 +23,7 @@ Type Data Type -ToolTipTemplate +[ToolTipTemplate](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ToolTipTemplate) Gets or set the TaskBarCollection Property of GanttControl Dependency Property DataTemplate @@ -410,7 +410,6 @@ public class ViewModel taskDetails[3].ChildCollection.Add((new Task() { ID = 20, Name = "Modify items as necessary", StartDate = new DateTime(2011, 8, 2), EndDate = new DateTime(2011, 8, 8), Progress = 20d })); taskDetails[3].ChildCollection.Add((new Task() { ID = 21, Name = "Post Implementation Progress", StartDate = new DateTime(2011, 8, 8), EndDate = new DateTime(2011, 8, 12), Progress = 30d })); - taskDetails[0].ChildCollection[1].Predecessor.Add(new Predecessor() { GanttTaskIndex = 2, GanttTaskRelationship = GanttTaskRelationship.StartToStart }); taskDetails[0].ChildCollection[2].Predecessor.Add(new Predecessor() { GanttTaskIndex = 3, GanttTaskRelationship = GanttTaskRelationship.StartToStart }); taskDetails[0].ChildCollection[3].Predecessor.Add(new Predecessor() { GanttTaskIndex = 3, GanttTaskRelationship = GanttTaskRelationship.StartToStart }); diff --git a/wpf/Gantt/data-binding.md b/wpf/Gantt/data-binding.md index 918976272a..b1c6beefec 100644 --- a/wpf/Gantt/data-binding.md +++ b/wpf/Gantt/data-binding.md @@ -11,13 +11,13 @@ documentation: ug ## TaskDetails Binding -Essential Gantt for WPF includes an built-in class called TaskDetails, which is inherited from the IGanttTask interface. A collection of the TaskDetails can be bounded as an ItemsSource for the GanttControl. +Essential Gantt for WPF includes an built-in class called [TaskDetails](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskDetails.html), which is inherited from the [IGanttTask](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.IGanttTask.html) interface. A collection of the [TaskDetails](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskDetails.html) can be bounded as an ItemsSource for the [GanttControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html). #### Use Case Scenarios -You can easily create the task details collection using the TaskDetails class or by creating a new class by inheriting the IGantt interface. +You can easily create the task details collection using the TaskDetails class or by creating a new class by inheriting the [IGanttTask](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.IGanttTask.html) interface. -Binding TaskDetails collection to Gantt Control +Binding [TaskDetails](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskDetails.html) collection to Gantt Control The following code illustrates how to bind the Task Details to the Gantt Control: @@ -82,7 +82,7 @@ public class ViewModel { get { - return taskDetails; + return this.taskDetails; } set { @@ -104,7 +104,6 @@ public class ViewModel taskDetails[0].Child.Add(new TaskDetails { TaskId = 5, TaskName = "Secure complete", StartDate = new DateTime(2011, 7, 14), FinishDate = new DateTime(2011, 7, 14), Progress = 20d }); taskDetails.Add(new TaskDetails { TaskId = 6, TaskName = "Risk Assessment", StartDate = new DateTime(2011, 7, 8), FinishDate = new DateTime(2011, 7, 24), Progress = 30d }); - taskDetails[1].Child.Add(new TaskDetails { TaskId = 7, TaskName = "Perform risk assessment", StartDate = new DateTime(2011, 7, 8), FinishDate = new DateTime(2011, 7, 21), Progress = 20d }); taskDetails[1].Child.Add(new TaskDetails { TaskId = 8, TaskName = "Evaluate risk assessment", StartDate = new DateTime(2011, 7, 8), FinishDate = new DateTime(2011, 7, 23), Progress = 30d }); taskDetails[1].Child.Add(new TaskDetails { TaskId = 9, TaskName = "Prepare contingency plans", StartDate = new DateTime(2011, 7, 12), FinishDate = new DateTime(2011, 7, 24), Progress = 30d }); @@ -151,9 +150,10 @@ To view samples: ## External Property Binding -Essential Gantt for WPF allow you to bind any type of IEnumerable source to Gantt.You can bind any collection to Gantt using the TaskAttributeMapping class. This will get the mapping name of the required fields from the underlying source. With this mapping the Gantt will get the required information to render the Chart nodes. +Essential Gantt for WPF allows you to bind any type of IEnumerable source to Gantt. You can bind any collection to Gantt using the [TaskAttributeMapping](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskAttributeMapping.html) class. This will get the mapping name of the required fields from the underlying source. With this mapping the Gantt will get the required information to render the Chart nodes. + +The following code illustrate how to map the properties using the [TaskAttributeMapping](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskAttributeMapping.html) class: -The following code illustrate how to map the properties using the TaskAttributeMapping class: {% tabs %} {% highlight xaml %} @@ -178,7 +178,6 @@ The following code illustrate how to map the properties using the TaskAttributeM {% endhighlight %} {% highlight c# %} - this.ganttControl.ItemsSource = new ViewModel().TaskDetails; // Task attribute mapping diff --git a/wpf/Gantt/datetime-indicator-customization.md b/wpf/Gantt/datetime-indicator-customization.md index a5f446f43b..1b9c5513c1 100644 --- a/wpf/Gantt/datetime-indicator-customization.md +++ b/wpf/Gantt/datetime-indicator-customization.md @@ -18,7 +18,7 @@ Essential Gantt provides support for indicating the current date or time in the These are all included in the CurrentDateLinePositions enum. -Essential Gantt allows you to customize the appearance of the DateTime indicator by using the CurrentDateLine property. +Essential Gantt allows you to customize the appearance of the DateTime indicator by using the [CurrentDateLine](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_CurrentDateLine) property. * Today: DateTime indicator will be positioned at the current date. * LoadedTime: DateTime indicator will be positioned at the Gantt control loaded time. @@ -42,13 +42,13 @@ Type Data Type -CurrentDateLine +[CurrentDateLine](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_CurrentDateLine) Get the user-defined line for the DateTime indicator. Dependency Property Line -StickCurrentDateLineTo +[StickCurrentDateLineTo](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_StickCurrentDateLineTo) Get/sets the StickCurrentDateLineTo property of the Gantt control.By default this is set to Today. Dependency Property EnumNoneTodayDynamic TimeLoaded TimeAbsolute @@ -58,8 +58,8 @@ EnumNoneTodayDynamic TimeLoaded TimeAbsolute Adding the DateTime indicator customization will change the appearance and position of the DateTime indicator. By default, the DateTime indicator will appear in the current date. The following steps explain how to add a customized DateTime indicator: -1. Set the StickCurrentDateLineTo value for positioning the DateTime indicator. By default this is set as Today. -2. Customize the appearance of the DateTime indicator using the CurrentDateLine API in the Gantt control. +1. Set the [StickCurrentDateLineTo](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_StickCurrentDateLineTo) value for positioning the DateTime indicator. By default this is set as Today. +2. Customize the appearance of the DateTime indicator using the [CurrentDateLine](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_CurrentDateLine) API in the Gantt control. The following code samples illustrate how to customize the DateTime indicator. {% tabs %} @@ -116,9 +116,9 @@ strokeArray.Add(5); strokeArray.Add(1); strokeArray.Add(5); -this.Gantt.CurrentDateLine.Stroke = Brushes.Green; -this.Gantt.CurrentDateLine.StrokeDashArray = strokeArray; -this.Gantt.CurrentDateLine.StrokeThickness = 1; +this.ganttControl.CurrentDateLine.Stroke = Brushes.Green; +this.ganttControl.CurrentDateLine.StrokeDashArray = strokeArray; +this.ganttControl.CurrentDateLine.StrokeThickness = 1; {% endhighlight %} diff --git a/wpf/Gantt/dependency-relationship.md b/wpf/Gantt/dependency-relationship.md index 06af8328db..f6270a4ae6 100644 --- a/wpf/Gantt/dependency-relationship.md +++ b/wpf/Gantt/dependency-relationship.md @@ -44,14 +44,14 @@ Data Type Reference links -Predecessor +[Predecessor](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.Predecessor.html) This enables you to set the relationship between the tasks. Object Object NA -GanttTaskRelationship +[GanttTaskRelationship](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.Predecessor.html#Syncfusion_Windows_Controls_Gantt_Predecessor_GanttTaskRelationship) This contains four relationships. They are: * StartToStart @@ -339,7 +339,6 @@ public class ViewModel /// private ObservableCollection GetDataSource() { - var taskDetails = new ObservableCollection(); taskDetails.Add(new Task() { ID = 1, Name = "Analysis/Planning", StartDate = new DateTime(2011, 7, 3), EndDate = new DateTime(2011, 8, 14), Progress = 40d }); taskDetails[0].ChildCollection.Add((new Task() { ID = 2, Name = "IDentify Components to be Localized", StartDate = new DateTime(2011, 7, 3), EndDate = new DateTime(2011, 7, 5), Progress = 20d })); @@ -355,7 +354,6 @@ public class ViewModel taskDetails[1].ChildCollection.Add((new Task() { ID = 11, Name = "User Assistance Components", StartDate = new DateTime(2011, 7, 10), EndDate = new DateTime(2011, 7, 14), Progress = 10d })); taskDetails[1].ChildCollection.Add((new Task() { ID = 12, Name = "Software components Progress", StartDate = new DateTime(2011, 7, 14), EndDate = new DateTime(2011, 7, 18), Progress = 10d })); - taskDetails.Add(new Task() { ID = 13, Name = "Quality Assurance", StartDate = new DateTime(2011, 7, 3), EndDate = new DateTime(2011, 7, 12), Progress = 40d, }); taskDetails[2].ChildCollection.Add((new Task() { ID = 14, Name = "Review project information", StartDate = new DateTime(2011, 7, 3), EndDate = new DateTime(2011, 7, 15), Progress = 20d })); taskDetails[2].ChildCollection.Add((new Task() { ID = 15, Name = "Localization Component", StartDate = new DateTime(2011, 7, 6), EndDate = new DateTime(2011, 7, 8), Progress = 20d })); @@ -430,7 +428,7 @@ Essential Gantt provides support for dynamic editing of predecessors in the Grid You can add/remove/update the predecessors and resources of tasks at run time. Initially, the Gantt is loaded with the Predecessor/Resource information in the underlying collection and you can update this information if required. -You can edit the predecessor information from the GanttGrid. For resource, you can edit in the underlying source, Gantt will listen to the change in the underlying source and reflect it in both GanttGrid and GanttChart. +You can edit the predecessor information from the [GanttGrid](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttGrid.html). For resource, you can edit in the underlying source, Gantt will listen to the change in the underlying source and reflect it in both [GanttGrid](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttGrid.html) and [GanttChart](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttChart.html). ## Predecessor Validation @@ -451,7 +449,7 @@ Data Type Reference links -ValidationMode +[ValidationMode](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ValidationMode) This contains two modes.
  • Manual,
  • Auto.
@@ -479,7 +477,7 @@ While creating a new predecessor in Grid, it should be in the following format: {% endhighlight %} -Here the {GanttTaskRelationship} is any one of the following: +Here the {[GanttTaskRelationship](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttTaskRelationship.html)} is any one of the following: * SS * FS @@ -497,7 +495,7 @@ If any other data is added, the current editing relationship will be deleted and #### Editing Resources -As of now, resources cannot be edited in Grid. You can update the resource collection in the underlying source whenever you need. Gantt will listen to the changes in the collection and will update the GanttGrid and GanttChart accordingly. +As of now, resources cannot be edited in Grid. You can update the resource collection in the underlying source whenever you need. Gantt will listen to the changes in the collection and will update the [GanttGrid](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttGrid.html) and [GanttChart](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttChart.html) accordingly. #### Use Case Scenario diff --git a/wpf/Gantt/drag-drop.md b/wpf/Gantt/drag-drop.md index 9b92dcc57f..936c5d8dab 100644 --- a/wpf/Gantt/drag-drop.md +++ b/wpf/Gantt/drag-drop.md @@ -8,7 +8,7 @@ documentation: ug --- # Drag and drop support in GanttControl -The WPF `GanttControl` allows you to reorder rows and columns within the `GanttGrid` and rearrange nodes in the `GanttChart` by dragging and dropping them. You can disable drag and drop by setting the `AllowDragDrop` property to false. The default value is `true`. +The WPF [GanttControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html) allows you to reorder rows and columns within the [GanttGrid](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttGrid.html) and rearrange nodes in the [GanttChart](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttChart.html) by dragging and dropping them. You can disable drag and drop by setting the [AllowDragDrop](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_AllowDragDrop) property to false. The default value is `true`. ![drag-and-drop-in-wpf-gantt-control](Drag-drop-images/drag-and-drop-in-wpf-gantt-control.gif) @@ -26,7 +26,7 @@ this.ganttControl.AllowDragDrop = false; {% endtabs %} ## Handle node drag starting in gantt grid -You can get the node details and handle whether the node can be draggable or not by using the `TreeGridNodeDragStarting` event. This event will be triggered when the node is started dragging. The `TreeGridNodeDragStartingEventArgs` argument contains the `Nodes` property which gets the nodes that contain the associated data while dragging the rows. +You can get the node details and handle whether the node can be draggable or not by using the [TreeGridNodeDragStarting](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_TreeGridNodeDragStarting) event. This event will be triggered when the node is started dragging. The [TreeGridNodeDragStartingEventArgs](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TreeGridNodeDragStartingEventArgs.html) argument contains the [Nodes](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TreeGridNodeDragStartingEventArgs.html#Syncfusion_Windows_Controls_Gantt_TreeGridNodeDragStartingEventArgs_Nodes) property which gets the nodes that contain the associated data while dragging the rows. {% tabs %} {% highlight xaml %} @@ -52,7 +52,7 @@ private void OnGanttControlTreeGridNodeDragStarting(object sender, TreeGridNodeD {% endtabs %} ## Handle node dragging in gantt grid -You can get the dragging node details in gantt grid by using the `TreeGridNodeDragging` event. This event will be continuously triggered when the node is being dragged. The `TreeGridNodeDraggingEventArgs` argument contains the `Nodes` property which gets the nodes that are being dragged. +You can get the dragging node details in gantt grid by using the [TreeGridNodeDragging](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_TreeGridNodeDragging) event. This event will be continuously triggered when the node is being dragged. The [TreeGridNodeDraggingEventArgs](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TreeGridNodeDraggingEventArgs.html) argument contains the [Nodes](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TreeGridNodeDraggingEventArgs.html#Syncfusion_Windows_Controls_Gantt_TreeGridNodeDraggingEventArgs_Nodes) property which gets the nodes that are being dragged. {% tabs %} {% highlight xaml %} @@ -77,10 +77,10 @@ private void OnGanttControlTreeGridNodeDragging(object sender, TreeGridNodeDragg {% endtabs %} ## Handle node drop in gantt grid -Using the `TreeGridNodeDrop` event you can get the dropping node details, target node, and you can handle whether the node can be dropped to the specific position or not. This event will trigger after dropping the node. The `TreeGridNodeDropEventArgs` argument contains the following properties. +Using the [TreeGridNodeDrop](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_TreeGridNodeDrop) event you can get the dropping node details, target node, and you can handle whether the node can be dropped to the specific position or not. This event will trigger after dropping the node. The [TreeGridNodeDropEventArgs](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TreeGridNodeDropEventArgs.html) argument contains the following properties. -* `Nodes` - Gets the item that contains the associated data. -* `TargetNode` - Gets a value indicating the target node which is going to drop. +* [Nodes](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TreeGridNodeDropEventArgs.html#Syncfusion_Windows_Controls_Gantt_TreeGridNodeDropEventArgs_Nodes) - Gets the item that contains the associated data. +* [TargetNode](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TreeGridNodeDropEventArgs.html#Syncfusion_Windows_Controls_Gantt_TreeGridNodeDropEventArgs_TargetNode) - Gets a value indicating the target node which is going to drop. {% tabs %} {% highlight xaml %} @@ -107,15 +107,15 @@ private void OnGanttControlTreeGridNodeDrop(object sender, TreeGridNodeDropEvent {% endtabs %} ## Handle drag and drop in gantt chart -You can get the dragging and dropping node details in gantt chart by using the `NodeDragDelta` and `NodeDragCompleted` events. The `NodeDragAndDropEventArgs` argument contains the following properties. - -* `Node` - Gets or sets the node. -* `HorizontalChange` - Gets or sets the horizontal change. -* `StartTime` - Gets or sets the start time. -* `EndTime` - Gets or sets the end time. -* `Start` - Gets or sets the start. -* `End` - Gets or sets the end. -* `NodePresenter` - Gets the node parent. +You can get the dragging and dropping node details in gantt chart by using the [NodeDragDelta](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_NodeDragDelta) and [NodeDragCompleted](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_NodeDragCompleted) events. The [NodeDragAndDropEventArgs](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.NodeDragAndDropEventArgs.html) argument contains the following properties. + +* [Node](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.NodeDragAndDropEventArgs.html#Syncfusion_Windows_Controls_Gantt_NodeDragAndDropEventArgs_Node) - Gets or sets the node. +* [HorizontalChange](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.NodeDragAndDropEventArgs.html#Syncfusion_Windows_Controls_Gantt_NodeDragAndDropEventArgs_HorizontalChange) - Gets or sets the horizontal change. +* [StartTime](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.NodeDragAndDropEventArgs.html#Syncfusion_Windows_Controls_Gantt_NodeDragAndDropEventArgs_StartTime) - Gets or sets the start time. +* [EndTime](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.NodeDragAndDropEventArgs.html#Syncfusion_Windows_Controls_Gantt_NodeDragAndDropEventArgs_EndTime) - Gets or sets the end time. +* [Start](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.NodeDragAndDropEventArgs.html#Syncfusion_Windows_Controls_Gantt_NodeDragAndDropEventArgs_Start) - Gets or sets the start. +* [End](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.NodeDragAndDropEventArgs.html#Syncfusion_Windows_Controls_Gantt_NodeDragAndDropEventArgs_End) - Gets or sets the end. +* [NodePresenter](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.NodeDragAndDropEventArgs.html#Syncfusion_Windows_Controls_Gantt_NodeDragAndDropEventArgs_NodePresenter) - Gets the node parent. ### Handle node dragging in Gantt chart {% tabs %} diff --git a/wpf/Gantt/filtering-sorting.md b/wpf/Gantt/filtering-sorting.md index 7da00505ea..b6a5ce905a 100644 --- a/wpf/Gantt/filtering-sorting.md +++ b/wpf/Gantt/filtering-sorting.md @@ -8,11 +8,11 @@ documentation: ug --- # Filtering and sorting support in GanttControl -`Filtering` is the process of retrieving values from a collection that satisfy specified conditions. In the `GanttControl`, filtering can be applied through the user interface, allowing users to narrow down the displayed data based on their criteria. -Additionally, the `GanttControl` enables sorting of data against one or more columns in either ascending or descending order. When sorting is applied, the rows are rearranged based on the specified sort criteria, providing users with organized and easily navigable data views. +`Filtering` is the process of retrieving values from a collection that satisfy specified conditions. In the [GanttControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html), filtering can be applied through the user interface, allowing users to narrow down the displayed data based on their criteria. +Additionally, the [GanttControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html) enables sorting of data against one or more columns in either ascending or descending order. When sorting is applied, the rows are rearranged based on the specified sort criteria, providing users with organized and easily navigable data views. ## Filtering -The `GanttControl` provides an Excel-inspired filtering UI with various options to easily filter data. Filtering can be enabled by setting the `AllowFiltering` property of `GanttControl` to `true`. This allows users to open the filter UI by clicking the filter icon on the column header to filter the nodes. The default value of the `AllowFiltering` property is `false`. +The [GanttControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html) provides an Excel-inspired filtering UI with various options to easily filter data. Filtering can be enabled by setting the [AllowFiltering](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_AllowFiltering) property of [GanttControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html) to `true`. This allows users to open the filter UI by clicking the filter icon on the column header to filter the nodes. The default value of the [AllowFiltering](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_AllowFiltering) property is `false`. ![filtering-in-wpf-gantt-control](Filtering-sorting-images/filtering-in-wpf-gantt-control.gif) @@ -30,7 +30,7 @@ this.ganttControl.AllowFiltering = true; N> By default, the WPF GanttControl uses the `Extended` filter level. This setting ensures that all parent nodes of any node that meets the filter criteria are shown. ## Sorting -The `GanttControl` allows you to sort column data in either ascending or descending order. When sorting is applied, the rows are rearranged based on the specified sort criteria. You can sort the data by touching or clicking the column header. Sorting can be enabled by setting the `AllowSorting` property to `true`. +The [GanttControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html) allows you to sort column data in either ascending or descending order. When sorting is applied, the rows are rearranged based on the specified sort criteria. You can sort the data by touching or clicking the column header. Sorting can be enabled by setting the [AllowSorting](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_AllowSorting) property to `true`. ![sorting-in-wpf-gantt-control](Filtering-sorting-images/sorting-in-wpf-gantt-control.gif) diff --git a/wpf/Gantt/getting-started.md b/wpf/Gantt/getting-started.md index 676781c89d..b76747c934 100644 --- a/wpf/Gantt/getting-started.md +++ b/wpf/Gantt/getting-started.md @@ -60,12 +60,24 @@ The following features are available in the Essential Gantt for WPF: * Data Binding * TaskDetails Binding * External Property Binding -* Dependency relationship +* Dependency Relationship +* Auto Update Hierarchy +* Baseline Support * CustomToolTip -* Calendar customization -* Custom Node style -* VisualStyle +* Custom Schedule +* Calendar Customization +* Holidays Customization +* Zooming +* Drag and Drop +* Filtering and Sorting +* Highlighting Tasks +* Custom Node Style +* DateTime Indicator Customization +* Resource View Gantt Inline Items +* Strip Lines * XML Import/Export +* Flow Direction +* Localization ## Adding GanttControl to an application @@ -128,13 +140,16 @@ this.Content = ganttControl; public class ViewModel { + /// + /// Holds the collection value. + /// + private ObservableCollection taskDetails; + public ViewModel() { - taskDetails = this.GetTaskDetails(); + this.taskDetails = this.GetTaskDetails(); } - private ObservableCollection taskDetails; - /// /// Gets or sets the task collection. /// @@ -143,11 +158,11 @@ public class ViewModel { get { - return taskDetails; + return this.taskDetails; } set { - taskDetails = value; + this.taskDetails = value; } } @@ -166,7 +181,6 @@ public class ViewModel taskDetails[0].Child.Add(new TaskDetails { TaskId = 5, TaskName = "Secure complete", StartDate = new DateTime(2011, 7, 14), FinishDate = new DateTime(2011, 7, 14), Progress = 20d }); taskDetails.Add(new TaskDetails { TaskId = 6, TaskName = "Risk Assessment", StartDate = new DateTime(2011, 7, 8), FinishDate = new DateTime(2011, 7, 24), Progress = 30d }); - taskDetails[1].Child.Add(new TaskDetails { TaskId = 7, TaskName = "Perform risk assessment", StartDate = new DateTime(2011, 7, 8), FinishDate = new DateTime(2011, 7, 21), Progress = 20d }); taskDetails[1].Child.Add(new TaskDetails { TaskId = 8, TaskName = "Evaluate risk assessment", StartDate = new DateTime(2011, 7, 8), FinishDate = new DateTime(2011, 7, 23), Progress = 30d }); taskDetails[1].Child.Add(new TaskDetails { TaskId = 9, TaskName = "Prepare contingency plans", StartDate = new DateTime(2011, 7, 12), FinishDate = new DateTime(2011, 7, 24), Progress = 30d }); diff --git a/wpf/Gantt/highlighting-tasks.md b/wpf/Gantt/highlighting-tasks.md index 6f702febf1..6029b2ea01 100644 --- a/wpf/Gantt/highlighting-tasks.md +++ b/wpf/Gantt/highlighting-tasks.md @@ -27,13 +27,13 @@ Type Data Type -HighlightedItems +[HighlightedItems](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_HighlightedItems) The items that are passed through this API will be highlighted in Gantt chart region. The items should be in linear form. Dependency IList -HighlightItemBrush +[HighlightItemBrush](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_HighlightItemBrush) Specifies the color in which items should be highlight Dependency Brush @@ -45,8 +45,8 @@ Brush To highlight a set of tasks in Gantt chart region: 1. Define the Gantt with initial setup. -1. Bind the tasks that need to be highlighted with Gantt’s HighlightedItems API. -2. If required, change the value of the Gantt’s HighlightItemBrush API to change the item highlight color. The default color is red. +1. Bind the tasks that need to be highlighted with Gantt’s [HighlightedItems](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_HighlightedItems) API. +2. If required, change the value of the Gantt’s [HighlightItemBrush](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_HighlightItemBrush) API to change the item highlight color. The default color is red. {% capture codesnippet1 %} {% tabs %} @@ -274,7 +274,7 @@ this.ganttControl.TaskAttributeMapping = taskAttributeMapping; { get { - return endDate; + return this.endDate; } set { @@ -286,7 +286,7 @@ this.ganttControl.TaskAttributeMapping = taskAttributeMapping; this.endDate = value; } else - endDate = value; + this.endDate = value; this.RaisePropertyChanged("EndDate"); /// Duration changed is invoked to notify the chagne in duration based on the new end date. this.RaisePropertyChanged("Duration"); diff --git a/wpf/Gantt/holidays-customization.md b/wpf/Gantt/holidays-customization.md index be6cb6b1ec..1f52b7bdce 100644 --- a/wpf/Gantt/holidays-customization.md +++ b/wpf/Gantt/holidays-customization.md @@ -11,21 +11,21 @@ documentation: ug The GanttControl allows customers to differentiate the dates of holidays. This support is used to highlight the holidays in the Gantt chart. -The holidays can be specified using the `Holidays` property in the SfGantt, which holds a collection of `GanttHoliday`. +The holidays can be specified using the [Holidays](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_Holidays) property in the SfGantt, which holds a collection of [GanttHoliday](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttHoliday.html). The following properties in the GanttHoliday are used to define the holidays: -* `Day`: Specifies the holiday date. +* [Day](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttHoliday.html#Syncfusion_Windows_Controls_Gantt_GanttHoliday_Day): Specifies the holiday date. -* `Background`: Specifies the brush to highlight the holiday. +* [Background](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttHoliday.html#Syncfusion_Windows_Controls_Gantt_GanttHoliday_Background): Specifies the brush to highlight the holiday. N> If the background is not defined, then the Non-WorkingDays background will be applied. The following properties in the GanttControl are used to customize the holiday feature: -* `ShowHolidays`: Indicates whether to enable or disable the holidays in the Gantt chart. +* [ShowHolidays](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ShowHolidays): Indicates whether to enable or disable the holidays in the Gantt chart. -* `ExcludeHolidays`: Indicates whether to include or exclude the holidays in duration calculation. +* [ExcludeHolidays](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ExcludeHolidays): Indicates whether to include or exclude the holidays in duration calculation. The following code sample demonstrates how to define the holidays. @@ -167,7 +167,6 @@ public partial class MainWindow : Window taskDetails[1].Child.Add((new TaskDetails() { TaskId = 11, TaskName = "User Assistance Components", StartDate = new DateTime(2011, 7, 10), FinishDate = new DateTime(2011, 7, 14), Progress = 10d })); taskDetails[1].Child.Add((new TaskDetails() { TaskId = 12, TaskName = "Software components complete", StartDate = new DateTime(2011, 7, 14), FinishDate = new DateTime(2011, 7, 19), Progress = 10d })); - taskDetails.Add(new TaskDetails() { TaskId = 13, TaskName = "Quality Assurance", StartDate = new DateTime(2011, 7, 3), FinishDate = new DateTime(2011, 7, 12), Progress = 40d, }); taskDetails[2].Child.Add((new TaskDetails() { TaskId = 14, TaskName = "Review project information", StartDate = new DateTime(2011, 7, 3), FinishDate = new DateTime(2011, 7, 15), Progress = 20d })); taskDetails[2].Child.Add((new TaskDetails() { TaskId = 15, TaskName = "Localization Component", StartDate = new DateTime(2011, 7, 6), FinishDate = new DateTime(2011, 7, 8), Progress = 20d })); diff --git a/wpf/Gantt/import-and-export-support.md b/wpf/Gantt/import-and-export-support.md index 2a56a55a42..c39f741dae 100644 --- a/wpf/Gantt/import-and-export-support.md +++ b/wpf/Gantt/import-and-export-support.md @@ -22,13 +22,13 @@ Type Data Type -ImportFromXMLCommand +[ImportFromXMLCommand](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ImportFromXMLCommand) Command binding used to import the XML file generated from MS Project to populate data’s in Gantt control. Command DelegateCommand -ExportToXMLCommand +[ExportToXMLCommand](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ExportToXMLCommand) Command binding used to export the XML file generated from Gantt control to populate data’s in MS Project. Command DelegateCommand @@ -47,14 +47,14 @@ Type Return Type -ExportToXML() +[ExportToXML()](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ExportToXML) Responsible for exporting the GanttControl to MSProject XML File. - - bool -ImportFromXML() +[ImportFromXML()](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ImportFromXML) Responsible for importing the data from MS Project XML file to GanttControl. - - diff --git a/wpf/Gantt/localization.md b/wpf/Gantt/localization.md index ecfae92139..741a5fe30c 100644 --- a/wpf/Gantt/localization.md +++ b/wpf/Gantt/localization.md @@ -10,7 +10,7 @@ documentation: ug # Localization in WPF Gantt -Localization is the process of translating the application resources into different language for the specific cultures. You can localize the GanttControl by [adding resource file](https://docs.microsoft.com/en-us/previous-versions/visualstudio/visual-studio-2010/aa992030(v=vs.100)). Application culture can be changed by setting `CurrentUICulture` and `CurrentCulture` before `InitializeComponent()` method. +Localization is the process of translating the application resources into different language for the specific cultures. You can localize the [GanttControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html) by [adding resource file](https://docs.microsoft.com/en-us/previous-versions/visualstudio/visual-studio-2010/aa992030(v=vs.100)). Application culture can be changed by setting `CurrentUICulture` and `CurrentCulture` before `InitializeComponent()` method. In the below application, culture is configured to French language. @@ -28,7 +28,7 @@ public MainWindow() {% endtabs %} -To localize the GanttControl based on `CurrentUICulture` using resource files, follow the below steps. +To localize the [GanttControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html) based on `CurrentUICulture` using resource files, follow the below steps. 1.Create new folder and named as **Resources** in your application. 2.Add the default resource file of GanttControl into **Resources** folder. You can download the Syncfusion.Gantt.WPF.resx [here](http://www.syncfusion.com/downloads/support/directtrac/general/ze/Resources-2137559261.zip). diff --git a/wpf/Gantt/migration-to-26v-or-higher.md b/wpf/Gantt/migration-to-26v-or-higher.md index 7526d00bba..47ef12c3cd 100644 --- a/wpf/Gantt/migration-to-26v-or-higher.md +++ b/wpf/Gantt/migration-to-26v-or-higher.md @@ -49,7 +49,7 @@ Syncfusion.Windows.Controls.Gantt.Chart -{{'[GanttGrid](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.Grid.GanttGrid.html)'| markdownify }} +{{'[GanttGrid](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttGrid.html)'| markdownify }} {{'[GridTreeControl](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Grid.GridTreeControl.html)'| markdownify }} {{'[SfTreeGrid](https://help.syncfusion.com/cr/wpf/Syncfusion.UI.Xaml.TreeGrid.SfTreeGrid.html)'| markdownify }} diff --git a/wpf/Gantt/resource-view-gantt-inline-items.md b/wpf/Gantt/resource-view-gantt-inline-items.md index f0af942df2..4cc2a091c1 100644 --- a/wpf/Gantt/resource-view-gantt-inline-items.md +++ b/wpf/Gantt/resource-view-gantt-inline-items.md @@ -11,7 +11,7 @@ documentation: ug By default, the Gantt chart will display a single node in a row. This helps you to manage the project. When you want to manage the resources in a project, you need multiple nodes in a single row. A Resource view Gantt enables you to manage the resources involved in a project. -In a normal Gantt, a node represents a task or activity of the project. In a resource view Gantt, the node represents task assigned to a resource. Multiple tasks assigned to a resource can be displayed in a single row. You can achieve this by using the mapping attribute of the InLineTaskMapping. +In a normal Gantt, a node represents a task or activity of the project. In a resource view Gantt, the node represents task assigned to a resource. Multiple tasks assigned to a resource can be displayed in a single row. You can achieve this by using the mapping attribute of the [InLineTaskMapping](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskAttributeMapping.html#Syncfusion_Windows_Controls_Gantt_TaskAttributeMapping_InLineTaskMapping). Essential Gantt will listen to the dynamic inclusion of inline items and refresh the chart region. @@ -42,7 +42,7 @@ Example: A very big development project that contains multiple phases to complet ## Adding Inline Items to an Application -You can populate a resource view Gantt by populating the collection of tasks in a single row by mapping the corresponding field in the underlying source to the InLineTaskMapping. +You can populate a resource view Gantt by populating the collection of tasks in a single row by mapping the corresponding field in the underlying source to the [InLineTaskMapping](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskAttributeMapping.html#Syncfusion_Windows_Controls_Gantt_TaskAttributeMapping_InLineTaskMapping). You can populate a Resource view Gantt for both date-time schedules and numeric schedules. @@ -51,7 +51,7 @@ You can populate a Resource view Gantt for both date-time schedules and numeric To populate a Resource view Gantt in a Custom Numeric Schedule: 1. Define the Gantt with a custom numeric schedule source. For more information about custom numeric schedules, visit the following link: -2. You can populate the collection of tasks in a single row by mapping the corresponding field in the underlying source to the InLineTaskMapping. +2. You can populate the collection of tasks in a single row by mapping the corresponding field in the underlying source to the [InLineTaskMapping](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskAttributeMapping.html#Syncfusion_Windows_Controls_Gantt_TaskAttributeMapping_InLineTaskMapping). {% tabs %} {% highlight xaml %} @@ -641,7 +641,7 @@ The following shows the Resultant output: To populate the Resource view Gantt with a date-time schedule: 1. Define the Gantt with DateTime values. -2. Populate the collection of tasks in a single row by mapping the corresponding field in the underlying source to the InLineTaskMapping. +2. Populate the collection of tasks in a single row by mapping the corresponding field in the underlying source to the [InLineTaskMapping](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.TaskAttributeMapping.html#Syncfusion_Windows_Controls_Gantt_TaskAttributeMapping_InLineTaskMapping). {% tabs %} {% highlight xaml %} diff --git a/wpf/Gantt/strip-lines.md b/wpf/Gantt/strip-lines.md index 4a135499f5..0b7c8e1151 100644 --- a/wpf/Gantt/strip-lines.md +++ b/wpf/Gantt/strip-lines.md @@ -54,103 +54,103 @@ Type Data Type -Background +[Background](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_Background) Gets/sets background color of strip line. CLR Brush -Content +[Content](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_Content) Gets/sets the content of the strip line. CLR Object -ContentTemplate +[ContentTemplate](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_ContentTemplate) Gets/sets the content template of the strip line. CLR DataTemplate -ContentTemplateSelector +[ContentTemplateSelector](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_ContentTemplateSelector) Gets/sets the TemplateSelector of the strip line. CLR DataTemplateSelector -StartDate +[StartDate](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_StartDate) Gets/sets the start date of the strip line. CLR DateTime -EndDate +[EndDate](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_EndDate) Gets/sets the end date of the strip line. CLR DateTime -RepeatBehavior +[RepeatBehavior](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_RepeatBehavior) Gets/sets the repeat behavior of the strip line. CLR Repeat (Enum) -RepeatFor +[RepeatFor](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_RepeatFor) Gets/sets the intervals between the repeating strip lines. CLR Integer -RepeatUpto +[RepeatUpto](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_RepeatUpto) Gets/sets DateTime value. The strip line will be repeated up to this value. CLR DateTime -Style +[Style](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_Style) Gets/sets the style for the strip line. CLR Style -StyleSelector +[StyleSelector](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_StyleSelector) Gets/sets the style selector of the strip line. CLR StyleSelector -VerticalContentAlignment +[VerticalContentAlignment](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_VerticalContentAlignment) Gets/sets the vertical alignment of the content present in the strip line. CLR VerticalAlignment -HorizontalContentAlignment +[HorizontalContentAlignment](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_HorizontalContentAlignment) Gets/sets the horizontal alignment of the content present in the strip line. CLR Horizontal Alignment -Type +[Type](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_Type) Gets/sets the type of the strip line. CLR StriplineType(Enum) -Position +[Position](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_Position) Gets/sets the absolute position of the strip line for Absolute strip line type. CLR Point -Height +[Height](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_Height) Gets/sets the absolute height of the strip line for Absolute strip line type. CLR Double -Width +[Width](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StripLineInfo.html#Syncfusion_Windows_Controls_Gantt_StripLineInfo_Width) Get/sets the absolute width of the strip line for Absolute strip line type. CLR Double @@ -173,13 +173,13 @@ Type Data Type -ShowStripLines +[ShowStripLines](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ShowStripLines) Get the user option to show the strip lines. Dependency Property Bool -StripLines +[StripLines](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_StripLines) Get/sets the collection of StripLineInfo from the user. Dependency Property IEnumerable @@ -197,11 +197,11 @@ Property Description -Repeat +[Repeat](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.Repeat.html) This property contains the following values:Year: Repeating the strip line on a yearly basis depends on the RepeatFor value in StripLineInfo.Month: Repeating the strip line on a monthly basis depends on the RepeatFor value in StripLineInfo.Week: Repeating the strip line on a weekly basis depends on the RepeatFor value in StripLineInfo.Day: Repeating the strip line on a daily basis depends on the RepeatFor value in StripLineInfo.Hour: Repeating the strip line on an hourly basis depends on the RepeatFor value in StripLineInfo.Minute: Repeating the strip line on per-minute basis depends on the RepeatFor value in StripLineInfo. -StriplineType +[StriplineType](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.StriplineType.html#fields) This property contains the following values:Regular: This denotes the normal strip line.Absolute: This denotes the absolute strip line. You can customize the position, size, and appearance of the strip line in this type. @@ -219,7 +219,7 @@ Arguments Type -StripLineCreated +[StripLineCreated](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_StripLineCreated) Whenever a strip line is created, this event will be triggered. the handler of the event will have the newly created strip line (StripLineInfo) in the argument.By handling this event, you can customize the appearance of the strip line. StripLineCreated(object sender, StriplineCreatedEventArgs args) Event diff --git a/wpf/Gantt/zooming.md b/wpf/Gantt/zooming.md index d08f2ed900..4fda5da121 100644 --- a/wpf/Gantt/zooming.md +++ b/wpf/Gantt/zooming.md @@ -26,8 +26,8 @@ Built-in zooming allows you to zoom in and zoom out of the schedule rows. The bu To add the built-in zooming: 1. Define the Gantt with initial values. -2. Set the UseOnDemandSchedule API value as _true_. If need set BaseCellMinLength and BaseCellMaxLength, the default value of these APIs are 20 and 40 respectively. -3. Use a slider or any control to provide the zoom factor dynamically. Bind the Gantt’s zoom factor to that control value. +2. Set the [UseOnDemandSchedule](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_UseOnDemandSchedule) API value as _true_. If need to set [BaseCellMinLength](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_BaseCellMinLength) and [BaseCellMaxLength](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_BaseCellMaxLength), the default value of these APIs are 20 and 40 respectively. +3. Use a slider or any control to provide the zoom factor dynamically. Bind the Gantt’s [ZoomFactor](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ZoomFactor) to that control value. {% capture codesnippet1 %} {% tabs %} @@ -256,10 +256,10 @@ When you like to view tasks that are scheduled on a month unit in the day/hours To add custom zooming: 1. Define the Gantt with initial values. -2. Set the UseOnDemandSchedule API value as true. -3. If needed, set BaseCellMinLength and BaseCellMaxLength. The default value of these APIs are 20 and 40 respectively. -4. Use any control to provide the zoom factor dynamically. Bind the Gantt’s zoom factor to that control value. -5. Handle the ZoomChanged event handler in code behind and change the schedule row information in that event handler as illustrated in the following code example: +2. Set the [UseOnDemandSchedule](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_UseOnDemandSchedule) API value as true. +3. If needed, set [BaseCellMinLength](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_BaseCellMinLength) and [BaseCellMaxLength](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_BaseCellMaxLength). The default value of these APIs are 20 and 40 respectively. +4. Use any control to provide the zoom factor dynamically. Bind the Gantt’s [ZoomFactor](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ZoomFactor) to that control value. +5. Handle the [ZoomChanged](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ZoomChanged) event handler in code behind and change the schedule row information in that event handler as illustrated in the following code example: {% capture codesnippet2 %} {% tabs %} @@ -574,25 +574,25 @@ Type Data Type -UseOnDemandSchedule +[UseOnDemandSchedule](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_UseOnDemandSchedule) To get the expected performance you need to use dynamic schedule rendering. Dependency boolean -BaseCellMaxLength +[BaseCellMaxLength](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_BaseCellMaxLength) Splits the schedule cells by comparing the cell size with the API value on zooming-in Dependency double -BaseCellMinLength +[BaseCellMinLength](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_BaseCellMinLength) Merges schedule cells by comparing the cell size with the API value on zooming-out Dependency double -ZoomFactor +[ZoomFactor](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ZoomFactor) Zooming takes place based on the ZoomFactor. The ZoomFactor should be greater than zero. Dependency double @@ -610,7 +610,7 @@ Arguments Type -ZoomChanged +[ZoomChanged](https://help.syncfusion.com/cr/wpf/Syncfusion.Windows.Controls.Gantt.GanttControl.html#Syncfusion_Windows_Controls_Gantt_GanttControl_ZoomChanged) Event triggers when the zoom factor is changed. This can be handled in application level. ZoomChangedEventArgs Simple event From 00801676a5b064fc2544fbbccef7618bb35b7781 Mon Sep 17 00:00:00 2001 From: TamilarasanGunasekaran Date: Tue, 25 Jun 2024 20:11:39 +0530 Subject: [PATCH 2/2] CI issue resolved --- .../localization-in-wpf-gantt-control.png | Bin 116709 -> 35140 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/wpf/Gantt/Localization_images/localization-in-wpf-gantt-control.png b/wpf/Gantt/Localization_images/localization-in-wpf-gantt-control.png index d07745e68c12c7380acfbb89ca4489302f54b1e8..f77944ee8c2ccaf947e383510a5787749e8edf55 100644 GIT binary patch literal 35140 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 literal 116709 zcmXuK1yJSA(>1(?Ebi{^?z*^KxVXE!I~Q5pVR47W-4^%7-QD5hc5%0FfB)zGx+;^( zq>@UflbN2==R_z1r4Zrp;68o&geW5|uKelKmyS=LK0Coe|LcjT05$yEeRq`Ba{2TL z9{s=V^QVj~oPV94U6iFnKUGf>9REA`W+5Uk^667u9Q>;h)Thrw-ZJ7Ms-BQ~lEJMXZab$1sAjI$ zUPI{-O|0T`&`*X=x`Z(dm+I)I7KSWNVWy=O`Ux=ksMJM6f>(0ZTRd9CQyhXSV-m5gR) z{m)bfZ^MhLT$usFYvMBPSwtrGX0Ja@IV_Ml)a$KQl(~p%dW7w8;x;(H$m`&qrZAbU z9jk-AV+{{l{JzoJ&SMZ;EI|Z4-O~pe^o_u)?k7>Pb)YGs)!rfJrQvV(=BqYQnjMbJ zVvuyP8k8;Ox7FbkwcI=icTR1748bMg0C|CO_pRSw`x&Jik0d?NJv!H!m1I$ykFR&r zI4CHFT3c!8ZfEDkfmGA|;FAqKwR^S6@gf0(pHp-uU$T&sUlK%bvKLW`wcI$}b?N*z za^BFEaew<>Z!bf%#Vt@;438H}k8ubYvTqp@L%M7J3k}>eG2XRsQyQB+d8U+JI>o;5 z;~hd-$>qM=wTXn~P+>9{EhBEJX22KJ_m<;vz7A~Ez?vI$EvYhOyb)dz>pP_53rrX8 zh!Wb-erPTZJZI4U69ZP~*BhEJI@zYca2xX4%^pxqn|HG6kw1hC_&%uc4Wi)*9b`_CED(17yBXKF^Um~sDbS)K?@8aD=393xi z?%!0KJa9UFZiaO%@DI zp=dx24kJv3KSkxg^7-&-gF;Y<5(4YWX0uC}cq}VfQ{y&u#$$b9c$8M@xQ1Z?c!OVs zy)!KQZ^a-uIl&UN)V)%^2S4G2yevqY8k_|9D)?Uxx<{(lRTw}Ib{Pp&P9Ka`1n;Iq zARV`?<+==s%;uK3gl{#$|E&KZ<+%^wX%&wW$D8^1Pyt`+lt#PS9qjK{n=)ALJN~xE zKAI_yE!fprmCPqP0?Cl}wubIG=c6;Fla%WY8+l{@4v#ECUT@@)bB?tm<9JO1N#n}c zd$cruRa=gs%CMI2FE&RfPW>TSiS0JPCkmFj?4P1nj?)RmTuo8nNaq+D?|#dW@RFwA=8Vwb(^=U? z?KkDV{?h7G?z-HpD8TWULKooZqPOlMKGS(eigL$JsDC2V$M7l}SQ%a1C%#&FM<>vG zVRG@na2i=b{lez;D5c;CXtunn)bsp(c~8m06a2#fGr35u-|UV;(T!_>{)qEg-5z&7 zrlrtR6cb2b$EZ3Fir?sj8PPg6edJP92Fs_S)<2H0&#gXJ9xdwLM@6K~V{e zY-{R^L5ZBaX>{luzVHF@M@AgG8I2zJ>m)%QY2J{bcgdrYt0Ofivln+-4OY8^AVj%; zzSFd{W1!oenuy3*pj#IJ8jY9Xd@$P~P271Z(uV?ueN7kL!P2yjLFwh1q2ayJQIzw5 zzLo8rQypxof(o`M+}&l|4ABjcvt&{b#*{5V3=<1I8)NS46SKY9K7jN)##~`c&D``V zjIZY?0P~WowP;KCEgrrXZ4Hz5KjZT>IAh-B`AWwugr}BccuBvWRsA6MFs=uMzmmIj zCd7`B{NLQ;w9g~He}bV;byWvPx_`X$W9xv#X&Zyc%Mm&@pOJu1Z>UvlOI!BgYNnhl zbmM_Uud%v(IY2L5H!nZ<9__?jcvc{x)#ZC0m} z;xSfZTi2U7`EbJjzi5CnOzKuG9hPqNM9Nfm%(xV{rls}tq5yNcD0=dw5^9XO4-dEM z72g}09otGXz}IAWok`y`@idz~QC|Q$iluMA_{VW7E#e&WD+C666&6tz9T)ujn>R$EfsST*a69s)9GI#&T}>(Q>N7w;G5fy&I!!o5=w&X*I$wL3UFUv%4cHpK>+7BNXos13Yzq*bZ`+!??6b zl3YPK&-^;d$Q~~_6*^E;`=q`f@?gUx*xO-dCh!;q6VVwA!M9m#}WW5>-_(01xz_Cu_p;sNVo=ZC?nJe{NWO|nF)4GSat=LNX=T>BK6EUZ#Rp&Y#gLym_9^HFR*J~qA=i`KEr44*3m};&P%CvH=l>>LPs&cgk zIyUCdB?*s{EcxeEXFP!h@sMYuDxqGf3m?&B1?1wXbUF9hX8`k-q>UaXA{L^|jEJI& z_Peb&9pF?+Y6$(etFe{9AU!j4$BV85nk6H$R4{H^%Ocv*9--*KO2s z6cYz(yOst(%S(_7^*({#_j^<{$&Z2-!*2e}uGm@V@W}5H3nOWoDsJB;&0tXjGNM9f zvhwAuQJp|hY>n2yP)Jc;iY`^ zr;@03|A&*6g|~~C=F8yhlyV;~zh@??ujZF$8*ekR&-*s5Iq(WRXLe_L*Frb3f6;|~ zgI&9U$y8f5)fc_!=GNCCLQj^YA_YVTlX+z{4$}gz@gdaLUKa+;_3fouU!x2T3@(^0 zUQ!yzUmS@tT`FpIkL23e)H~jo)?}k~BL{aYysi=nTc|DSj%JEu4!U&0c6K|Y&r07v z)x18~#cH_RwOm|zy}unON9yQhJK||RO~Nw>YECxhzyCGX*L3{_kjI!ytB+jT(g$kY zP`a}<{yCjf(Dd#=$V8!nj*32$d2n9)3!4Q!2G#qCFV^8TEfpIgCYrAjzW5NUu(kb! zEb+eCkn=?B+kX-?plkW;-Yy--pE6~!K&s(=wtl=8`EWJMKUP|jcoeDmdc8(q>FDcZ z%;h!f0w%nTg)gi!#lGlZkDF@@1?2Xv|BZdRs5{X-U($dYQUt=GnN z5mQa(QZEL~-G5KujOn3+^c$DoUMqnmFD|>_zs8nQMC?Dc3fg6iAE5iGTm#imdkSfH zWfbXuwahpg+S*YX{l$>V(yg-Sg*8fLoGHnvl}jcjh;d(qV&hV7+;It zp>07u2WWyRL>440_ZyFPueJNeIbNabki9O^9 zMdnjCT7iN?i;U)1u|8))PI7G~TyMsF9m)gkLS~ye1O!l$T%iK88BB5K_%4=r2!``j zxb|`Kz7W36Cs!D6RO{A@nFz=(!=2RA7V$&)%LI6F1zqO8$U=!#bY6z9ZO}eya5_0t0!sVm*#`m9eyV zY3loS>-fi8rw+xqab7bBN7w|~7wrq5;4)a0>yE?r@K-0kN*INU<-*Xs#4UNT7qL#H z?c=vlHYYF&o_me?#=G)76yv%eh~o1z+9IRQXf+vox)?Q^oiz5mK6fVBEg45EvdVxI zcu;(YuxEOtnarsGEH9c{=cAD#^rYQ$N}5=p{DQj0Ot`;zKF`?*+k;P%WQmD?FhRa$ z@$CU21d6y4Q%U(NOp0%Rd7CMuy&#ijI<=0HERD8PB8^QlyjI49r*kEWA95tS(WG~q zQf_rz5i5iocz%+8<~=jc65)AE>D; zUi%t{=ITsK96tKzbjo~2i*U(onE6a0Qmpv9BgTJaT! zP;sCc%#Xmm6+Jo@u4qq+Rig95$r>m zKkM&c#)&K_l$i)Pxaw)6@$=GIx^XDX%aWC%a3LZB?nE|g)w&D65#b%b(;98ttvltX zC*q>xBw6kb+Z#{`U4A>*AZxf;p)z)e+TTcBn!C#j3m?}S4g);Q8q7;b79g8Ivj4^^ z2pK<3R?DeZTO2E4Hg9=QzifiCr(VCdI=Dh793=BZ*<=tp zD`a;dyc=2{Gi>S-)Q&neEPJCQp>kVjBAiQ{Hb4Y+2m{OW!=JAR?0p@f15URL zJ1s3Kq!8Ws5&8N;Y-LkYm5($1ZaTp0?e_G^q0&?p= zIm8f0Txpp$?-_3BN{t-TS&y3sx;!Z9Y)GmkuM={`Kne+0mp_|6GMTPbn|#aE^H`Mj zauSRXbU@WlF-;N#KW_D?G~BzNXNspTOUsG|mMxk8!pWoL`*E7%e!xIk6w-UjpP-+P z+n_q|2NE1`63I3WCUUtyD`{(tp{t>*J52rN;3!bmWQ_z_m2vZ>f8K_#fvUbmBBdNn z{o3BF$lL)W;@V-Qr!8V+i4qc=3y;bTDsGBtBM;kn$izhlI{n7xtWqDjYHnLJt`L5>1=K~k( zv|K@?*Pia)NpH(kQdO3+_|p{nPEIP1P6Skl(ODf?{tP`I62>e2m60!gSI%5nTx@ZD z{fASOa3AzNg-&>bW_KUXty|Ipr|~UcPmW~4@Ge!x`FrV?KCoy?htbM^Qwp{es;9S~nPUOo9w@~~4@O}x@dtIwpKj0afO z(awLM%@fm(#EfsyEQl6oCO{0HI(D4Bsg3wb1e+CGWuY5@2G7gd;T}e91`~CR`TEW)bcw#ceV1dpG23>w)>Jf?qu2IgChR>TOApHxGAdi@-mZie zO^y;95nWNoSI)DlB~UeG9a&s)KVE&O8m@TeA@ExV-_q>nss zCU+Q5>wC;=h!ZCK9Q{^g=SsY{(==dydUSdqTUZTOT~8{Gte`-Eh2P{t6ezZwhY(J| zUs3W>aQSg!spE1iBJ}1;NSkOLZ_7};?7VZMg8;>l)BMfr;mQ>dk-t}Z+8SkHQr9Xt z54>uACA;C|BOrPV8AzbbNmOw6xY8$U;p)4guxH9@SXxjtnVD7D>^+eHlzqRD+Dg)t zjm_P1TA;ly3DcEO6{XwA2hI4aesY>24EZzGepI_UnQ1dm`+k^*ftsJ>$|m+QZLkj* zUs;INJzh2vG?v{3hP=!=h8<~2XD{LPIiStusG`Ef-AM!3nG5hUYks(t} z*S{Ewl1)`p+)g-G%j;Tq`~*QXU{3y8Dixd0wd*+e2xx1*&&YfsOFYWJlv~;~376?y z{mjDW8k3BIdjEvgTDl$>G$mYPGo5jYD=8W3(yBXA$MpH|S$CvPgI)SaGzht7sE$bq z0}n4y*~_f=KsIMijkuyc!(^=nl#wuNa@b0AT=!e|;V!Vbh$9TK0)DyUo<(bph=TTY zoV3U2cKFh0;Th9YDw9`rMOrvHvQl4}mpEzWYS75n*aQto`FGLbv+Rl3h0{mz9KcnV^0T~m){os$U^Zj@km26iQk`er zrRm{bfIlDY#&h_~+ThH!=3cVsI6ShW_xMviwPv&(Bz`6K-dQ%%hQ(^4C3G(<+iM1} zE2Gmx3k-oVa-vgOaU-+UiQdeKG%!Z~(|DtGcV#?30J6N`%!XjMG@k{0UFpvMH9Px> z;I8EAoG*E})&@T%>CwKRX3}IM(gz75B)xpeKa9lU(t9R;ZdP2`l69aiTl-T6x|_?S#*Do`N>ea1OBl*|7$i2WGP5LVi1p?7OP@w;@3$-Who@f^jS->8Z|} zOi}MXhp_#;ZTZ0kSss5z<54aw(AgqsLq3zrqfr?h6SU&VR#;7f`M%)oZ&JacH%uk( z$MLKew(@6(g4ZnHd05~9mRRW>(ePuHY;^1kOUgdV@*&pqZMcz%8?IT=-5xd$E;=gU z=k>K<+9CMl{y&`X%8vA92igBI?8o_&@%UE*@LU4yZ0VJ&=CqE$2$4JdE=*ybkd88_ z^m|m~k79@3Qdrj-(wvMOprke%DI9rn40LZIXquf9&!HwZQi`#oPhWJ8Z^7x7_*ZOW z9g@}$4BFnrBpSL|xt$(WJbZBymS_?3uy~9-iDEbsUe3=|HcjlgifnD}1ybhU?2<8$ zFpX}H*AkE5$1fI+;Eb{k1uq@Lu6lP9BjDyyz!|36gg=b6@$~+%!D^(H*)*Z8*-#X` z^cSF!>JvLTjPwTWlB%HKBuo3W#9i9cevgTw)SYvZSJ)YenP0ZFazP_MQ;?P})@f!k z4Yes{s1ZX=k?YQ}daUS}Tn~ZK?=mvIKbA@84k}j1N0k{N`-Uf_+ncUf($ci55Yjjx z?IgC*2tl$`bOBbqbDyYR2l3P5uCy=*30(LybqvIWp=r-uVt z;M?>gRJg!i{{i8|w33)~WDFU@51>tb1j&va5FkfI$ryi0f{2tD;CZFzXFj4(P-k+F z)A$@ki>^0Aj=U4WnIZ2PX2IguYpEPUD1wSwYJ1)Qx5iel93BxtEyM)pP&ZMAQ~;>a z7pGq&thvUPE1Psq3sQwrw?s?y7pb>Lh2$K zXPzxC_V7ZRSsz{8$2FLSyi@!eRmx-OkB+xq>2P>4%2E05X`U+(NhGtCN9x1SJ|gcD zxif3#{AbePm3e^a#||-;RB&AOa~qY9F=)113j1mj{i=>j zWezSv4>Ze3D!wjuXx3Jt6G%VNdUV-EGlN_C7;)?7-cEn}WQOb@g`>G%_OZ`BUUQ(i z^wuV%0nTnyd_G~o_KwRnS&D*|;v~XjluaMnCw$>-XlQ7&bGy6i(CyMr(H$}gs<~Y* zrsum)uo|VE^;9bg_W|v?1bE*S1LC%}>$X(AIgU@tu(VZ+)aQzA+NK3MxM2*^!!$&} zpz*sb{u{~N=ShHjJGs#D8pu% z!(V7Z%Y&`nVi@Y;ArzjpnP@)*n``!AQ|g$wqP4@MI~1J2cE!|NBc0`ArvRq{C*uGhqKlbv1GLW&!-kG&3kBzwzD*l&TA;-x6 z?^X_6f~z!wZ5etYM(fT1gURgG#{?@`gTF8rRn&I>U;;{?MuY2^G$MK=CgYjUX%)vWww=57zOE)(&;f_mPn^{WFD{rT2amdG|#pl|hG3M}=rC$>lCk z{xu8#6xMQ)$lLHlk$_v2&-3tYaT{YcpYPDjRa={Oe5|0MC)mK0Y(*x%bT9jq*}g_k-Kzb+y?R^k9)oRl%!ODE6}?>Z$b zy6eX3kY_Vf_64|*F0oezm6-ZrMgT(6_ba?36p7{v9?Pqu%FXAKo{&a8uT@EEpcx*P z#+YhFN5zPb#jl9uRniO!3&*gqD2_bxI5f>t5xi4+enr#t|?j}A*W-E>PNYgXm{5;Tjt8lc%0`TdsE9k!8*WR zh*6?L7Uj@SYL)@O1O9vGKJYl_WJy+^KY&NP6?K7TH^RlL@zO~h!BnD8=2nM$DGFNa zS))HK*doIpp9Nmgdwn{O2)N2!xa&(BW47d?3^x)mzsdVoCI&76>6vj1{GgW)XkV0+jlH+5CWJGr$=d7_#jAMGi7&7L14 zHrKu%m<><svgG zJvg!zYwVK4v>GRd&xT{2^q1^Q>;EhI28&ZW$tRy}j4*-P{uE$vL9u!bX3ODjC7w3^ z^wyMRE}q0u$R%Nar|oOCIYDWtx|{c%$oH?VBdXhgW^*~fNtjRdI8)mx%L6Pi?3tDD zs;Y}M(j`@vP6DI$3p>k*f>sh+AVFzDW)x*c*#xDf^d=9RXn%$_rm}RTW*JM_Bi~Q1 z;G#{Ag1;lk-}UX_581I7&+>}{<X9^=Gig$R-2JMAi?SWKA(Dk&G`L35oq7@cZ349 zmiphODygeDY0A}-`k++P{yV&>U|UX53gceiRFm?;EUz1+L7OG>-%K;(j-Y$pCe&ks zoQ{wzx_RZd=bYrcwDoUU@vR$4VJTl*!}Dx`WbQE$>q7px2Qg{UGFVEWX%28*{uP|Y ztvcKC9rRSR5KX2(N@TTrXftVO7St>u!(Xb^jC6*8joD~+)Q1FBD z>j9$tF-ZqRzs1u>viPY`tmvql$7jpL1bqU-V`?4uwpkPLTg(#vMU{*<2MH>w)maXk(jK>SI-htg7D!eoH3@LsH-O?PHvP7rn&n%)O*tKM$&2O%kQfBLGw^4n@{qyUnU^Mf;s}`9 zLDohkIct@ugqoNY>;i#%Z|?h{c!C0L`s@x-l=x=i&>kaJT;JXKh%i>Bm14 zk(PtoDCnEMgUFZW-^{&11yiFH@eL1sfRN&Tic={_OU|XU#^lhU{gIk|>DN8*zhsql zKQi>@Pe?1bB$OEY40q%lNR3(({INT5pMeIZ4i<#mI zh5a}YywcfF#L*xk+8bh%K6YW_H+_7&Zi^E`^}z4ODC|vc+~mW``?lhG*tX?T7jaQl zWw&hGbkn5OU#F3v{(m`9&T%pUi1YZ=dUJPy;M5z)SXBj?xkw#bNTSqmIs2DL95|55 z%N*C;=+@lQczIG%biw#&+4|%@7E=d4b2+Y1BpTF=v@#L5pI4xp`SBuphks~|yN@3* z_t*99pnO@5otbW3$eQHO4TI?s$<`}7^+|$bemIo9yz9KimDdY$>WVRW^LeYyAk=Jq z712~w@~VW-g^@3%1_s8M>clBlEc$W zPpj3L^Y}_OH!-SqdK-9giq*kAXBb=0!NIYW!2%mXp}>aNuZrivEh ze14I$IPs_o-?p5n?m)#%6}BT>Xhfu=dsnT zg(4A$mRB!V3QtUN7ms+r zJ~a%9?W~+CiYwu{xiHkt#KlNUeA}|U;QFHt%Fi}>MAUMmw+d&v!hIQYpy5Ue7B>3u zL=acJhMhQ8&dB3uE7$5_ZlymS@Uin(6y^BKt$bmH5#-@XC-4z2b&XEfe}#bRr{CpI zMQY|P_fpJbi3NUGC5CK2+Im|I?E0E#iJ5E?x$X#lZ%nDT`EXj@7cn*UAm>~koixiV z6XH)9(XqW)O=MEi7LcpLQ0GD+zzoYfLy=NYGyVlL>oNT)zfpf4o7iZp&X}Of>Gn8N zz9kM@T@0QQ3W`Jf%h4)5ZX?Zh)u4La`L{-*8HC~3&PVMlcX~BSY8p$&=|&r@_k6S_ z+!Njo3*milTvjW+<9M`y_1#n3>%M8#@c`c;OQ+}f)dJ+>9U;OPNu#;CSuAjV5Uc8e z^Q9>ik)M+5>B_E+-7GEH2r#M_9)?PfT;i$q=ntgUUr zg*onC)baGairOI|ztqmf)vT zIWIXBmu+c+pDCS-8WyqY?4*!_U>@tv`eOPg2qe-p;PJ7hN+z9QI#(Ajt!_$z@cPKi zjir10JQ>J0$1nKb31&05)i=zdr5p|)uQkdtSaYP>hhY)soY9fYQ(Ne=II=VcGAl-p zGr#~y2N?nKW{d;GI)&JtgpxA&&IZdweRHhzmPFue!d9yx=qJAkPoo>I6r%PQJE>v% zGVmts>I_z{%ujp58jR(~uuil}rFc;*Eq;{yq68OL z{^8C3C_X!bl{9OMo&0gHe<^yi2Rbgbzxux)(;!v-16NxNE*9S~IB~r^2WjT7nF0EQ z?FU`4;I2alo}SZdGGH#(8~vJ&w)S#|*$tF`;(sFs&f$nk{feB8&8ZjvuqhjdkWgt7 zHr^ZFX!x2%yrZWO0KS?*z`4_seu{dj8(ZwF%Ziqvxny}lB%#AqSe4y3Rf1yq!~yi~ zr|(*$Y@7Z&m|O%^6u%E`-`~!r*)2-Jjayx^CvW~nrnfTsZ*Nr40(|M{QJZE@J;r3- zz#XZ$tx$g((y_zNiD&ZtLb(rG1v!Yw&s3NN&fdP=>`?U$=^vhayCv(gpya6opAcOLD%M{UYwyZt5~(y;KF zQJA|0+=ppDUZ{bO?AUmHXjGuF(_njtNTsjP2cFY!?ffm{D-RCSj`xF~5?~9#nTX-1 zOz3aSk6E{Cr9fy614)Mdc{vxZ6|M|yAZ8)I93uD^=GRQE4;+rkg)vBieC3Vvx~=Pl_7xZFYWyY!wQEvZ&=ji+gcbv=qu zpZ+f2RQn0Z`}C3MU%DA7wnv&48`I-EiB+z+Y!T^#4Gcc-zDTJYussz$n(nV?T*sv} zJY>}`{&L}V2Z>%cR+hOUS%b1lUW7aGdW!sa!MC}+M>B%8+4_TFxk<2@bWB!r9dCq; z3i6g{eGaWr<>!cJG_6SzY-phhc?Ry-UoszD&f;`v%gc5fdU~c=6OT_+dUCh6#Jt)g zI6k5(#V#65%6Z5C;p~5_d)>XGbNe=$Z-2WU;++INvlmwoXJYwAlbW%8=On)FnRI_` z2X4RH3SM-!|5UjHDpkMc@WW8&r;siF%UZcf4l(6R;Nc{2j;`ZT0=nYbXe}h9N2S)DaZCn~4Qd*QLS@$tJ7zo=KG^L9Fqq`u+hr;Dsbuk+gOf z)`8XUuZN8vsLn^6>O?N`6DIlB{Yqcj&0&#af>Krm78!Jg0~Lf#0I{(xV%!#*b4KS05+9_l;X@A?qJ^!{<`_t7H^&cPwQNqcg_dp z4wQ{%u1-vsd>GKd{Q|5_k+1e@x6q8T>W?IxE|`>+O@D=V&GC;uc4!GCEE@S=0){x^ zMYK7eWJ=`qX!K4g?x5zznMc~Q?!VPZK}mI~H)xMVR@)J<-8IrL?wPmJl{|+S1beTH zmYyz?RD)a;pzR7xzIw#ef3E%4;9VJ@ z+m`14{sv_XirKGjF~sU_%@VxZ=Qyk>ECMQsdLb?*p~b5AJL&{torJIttnBn$saoRl z-ne^v#1xo;hBznN{p@*7{{2Tg62I_Lg5zfK{fjd2lz0v1bN>k?w6`hzJlW_RgrR}i zksD%?je@a)^!mm&0CsuHy0mWZ(!53))m7)>fu|@Ns>BKCYa7PlAaWT%#DET^RGzXS z$3|KOzl^Sh0H!F%C<~4pPbCoUR9pJw08S0V;1&g-#{`h=OLGC4N~H$ftL&wOviNBm zhE2OV!8HUHK(Az9MjYIv)3I!=~k$3%JCeIM@`*)t;Ze2tz4 z#+c+fnYE28xvYY_SE$CVpp2|Iz)5)9&*sIsv8dojX`ekJQ}>IZc(>f^)F5m7)`#!C z3%cyO`-Sox(0kW6?bMvb4F+WLDTqqA*Aj#|wzV~xF;B5Gb1c(c&7Q{2AfxKz<|);$*mi6t0JEi# zq&QjCTlVgi8tQ^YW!3ukF7@@;PJqe7-jOu?YoJ*Ycaw2*W*H-G?@@`_VOw(P%lpqE z6W~>@0fE!SiFcL7Kr?*uAhv-LEmspB?7d~l3>o=~LC-`pONIEMA}R(%-U&o+p2?hC zWamk>Ld(;U&E>|nOI@_>xl0MeTA0jZTZhNk{l8>Gb1p0chVoiNA?qxPtfrpZU!*L%nz`Hj8geF}rOQ;Ug@?g?%z((}a;gDS)e4twl@H+-GG`)Cw$ zt)U*#rk_5CSLt!Sdcr)2BP`W^XYQHYvn&utNPQ%>pey>r%Cv+^Q0U>gaZ)|0cucKB z$P{_P^dq6@_3&2mmJce(AzQMx^sMPZE3Qse6`{*6Z5%H@!C32$I}xvv-i8$28#yjn z@0`n)FJV<`#NyfJIMR(dKH8ST>k(T=Gpw6`zklotoJiX6c-eaz@Z9XFn$h+a^~?0Z zP+EiZ$<3ir1R)??lB)N8=QjG%Xn%ca`ND31{tx#RX%`N@Gmoxa!AnwqEG`OyStUP> zNxup!;nv!X*V`7e3Z9U3cx9{YLMWTPDsd>Nb7E}j1E#Sx9#TL|a;XikpDZj062IO& ziF=y*?4aF2)=JJ4{HHVOGP3I&jY}fpNFMeSyQ@bi9W|3L05y_rG3U}~d>KXe&Rgfo zJ;&dP=%6s5GEFDcL;6brjD>+prm1Mw+UWh&>Ic&HVO|NZ9m;V&>-qdro$m%8a2^MT z&l;mEk{$c%GQZIinZB8jO4BS)&z=J-;s7?f2nJq5@^)VX7mC`|MB5JyY5$c?j0WTCz>d? zIG-Jzj9R*WLnZdxx1lw#xxR*z0RVa_J#9vT-zn4OT5>DyF8ZfcfgwGajz#fYUa&Kt zH|N#%OlJB~j_tsv_Ck^&#M%n%87)ku+9!2SP-qMe=I=1MJ9GYUiS1Im4Nd>VL2_#K z-*bOiCYbbIIcN0W!Ijz07a+w_|F(m1Ab{U%eu#DqbBwWDnCJFF!@>`}&hpt(H#q1@ ztF*Zcm5y=OhTfgJ5_>?GC^!4e5hVbG_WM4Vn@@t`|c`~E?z#-%dhrBDSPMU z!GgxaCg8eB)G7Dga8aW(yh-9i)Tq^WgG{sP@&&QKYc1#Xi5hZr zCvQNiui!3L8oj`!+5S56r=zKFgr>5HxVX5>cyP4k7_2C{ENrv8in+%i8_UZ4%~A?B zI@lU^Ah`>GHst)hP|8Nw!H|oKtMxNg9sg1CDJY>W(vzNdH9IU)vDO5|ITXyqd+7H(`<^_L0-1|uQ; zH0=sny6WE(bmVlriKU;CUx?h=+&wZ}X4*BHr{)X`FMs52K(y6)n5Y)@T5|^)8yrnk z$ajo(AQyIggr`e21^)^mVSPYtS-b+t=r+T7CA5z0L+fu2UJ|^lGpX#2huG4A%`X3_ zS#AmfB;Pk{6czoRwP82$6PdqVH15{>3rp)SZwUCDvIMFsYfAp(A!5RBX8wf#zInlS z2)~IRXG7_!$3uXG#h|;5RDg`fBMrL-4^Jg?=}shbxw$MI_^`T*){&42VM}{ITl>G- zg|P0Iho=Z>Aqm?@IdFuO$J?nipT%{KO|D|KZ)BKxEQme zTF4+_JNehq_DdGAZjM9|_<-(EH%BjZ`HgAW^`5B6ujSwKZBZ!`|IdN{!Nr+)GMBRd zbMs%bKL5}ENJr!P6-P3s1s*#NH4G)yjb84k+sXflgekgebep|ADZn0 z!q|%a`K+Jrw5rCJ-80_S@Q>Nrghg_h`wMm-Lj@m^aKt)_*)6QhrpoVv5n7Tdyodm) z>g<+_j;hHZ%@%87$$#|Gl4w%?`BdPHes7x~A9U>G!NHl9*3hH^GCHTzdQomopRC=a z_oe_*Z>}HTZij_YsnBGTHRdiz|5)~?dO2`U`4CmI!vS**c?FlFjyYiVY%Y6fwSSY7 zenqF4y7)zL@BuKSVlZGIpBkru6FxySIs9(**tXQ;rVO$rU)T|oZaAp(+hr<0f4?PW zO@TP6FLnvVz1Dxd>->7mZ%pJ&B(+_kP(gEvhBgZ=0@D7Q}@OU`|C4$Re@ z3!G}IY8rm;8$%ism1{%)(S|m_&#G_k>_gm4Mk)cJs9zI#+gyY`&nU2S2>m<_C}YgE zqlbefcCOyGqqgYtCi}xr@42?zZjG9LEP5#!lCS{?s;LZJsPU6F$z8+6_*d(>W`j0^ z?P>QDRpPY4zX7WG568+l2!l3v%aYx=%=EcA~104sFk5u>`z>e+_Xf z^bJBj`e{uY&JPwdcHABJmK38l&HMQCG9ErtWwj5ml zBHJMclpufU7-ZYe4_uNtj&0V`MjJ`WfotjzOf8)^NKj4eD>jC2jyq-+FXEngw=fs3 zRreUB`v2&9tDrc-wp%+1P9Qi05AN>n?(XjHFnEGH!JP^25ZocSLvSD585{;@llR?w zSM9I<|2de0KIrPHsqVRZt#z%Zy*1WhmGiGL-a(h7oX!_G*VRa5TZ`#%y~s9;Pa?75 z-fv{MLM=jz*f+tS59 zzJ=EF?-6qU#nk}1X5F@jtr!jk`9vhB8^dkdMZVa{Oi_}rXce>@UxTP5Vh`JM3ri|4 z-FbOv`+Bp1Qifx=LNaT`!h?a$4?)N39a04y@1{PT4O$JA&@cH09YQuJkILAwUo21} z*-rf$0+?jwxYq{@FU~_Xo)6A?PK_WW=S-`ilWeK0M2{aaw0kaat`C8!!{>p|UjxeB zh}!!^BdtF?AI)Pe1z}`3ujZ`HtOExE-^l1buOdX9^i)y>{26ZfGH>nhPVL~oZO@81 zgp}Ou_ec?u=Q}VtMMm*8FNll2W$-&g%yqHX`sDTmE*U{`RYoX-#mCE?5X|C3J-{9p zhR)NS9zj)QaYr4@8{>}m@#XUU;+Zq>AVg7YDi5Q@W7N9Cbz=v@ok>o(mC@U{)B6?#x$%E?m(}3Gz za6B{jY+7v1YiRtPW?t-w>9a#TGjC&DTEH91mw7}hy;0_Xt6&=-u+NmYClN<4{kBA; z^1gecw(HM#FLR}U`?)^%OX|%coQ+N4#+>S%gNwtPyvoOG=cXnImE8^0GeDMdLn(7) zIUv&zgUG6P^P4DbGrUUa4hTfr858qOds?w?%VDnR(1m+|t$K7vT;6Mt?_|lsjn#JM zYg@T3x1bjf7V?)cc$dRo{kmj|)akWctX*uHlp-pT^-$@&eN{)_^t@oUzv&&z^!#mp^REJegbKg(=fA+CZiq*meOK~f+1}q3 z)-b^vdNZ~0QYC@GI1J06DvsfK*$#g5d+2b~)Azq`#T7;3vt)&o_6>_9OU(6czYFK| zVLlB-@l)dthl!i+bC$KuJ>0N?f&tol%jfm-971E8lqBGe*gQp~I4@PB%yEI{IQ9GT zXv6Ri`=v>~B9rCABnCID)%86*-Fepq0)?kbr;8f^uwwivWwBW+yH`%Z9>8Uui)c<{ zc&Mx3H+xS_CKLU+kD3&1KDOjvwTI)sdr*E)t|mZiEwC9IOkRRm9BSKo#!ai;{w-YZ z^&UH^PZsc6a{hV9frXfXr#FK5Eqp6;_Sp>d(RQ1SWvs9Dz$&o+T1jwW=ApI^{)<42EP zhM~k4x`q_Tm~(wy5ZnB-Y!;)l_{abXl2DOiMB9@ah4ovvMs+9Vv8Wxj2Lc6cv%X9I zD`_RUzR`bX8avwDm|PTLo=(*6`|JXTYJ9kSD>7}Wt0^oWYXIfV#K0FYN8AFg%(E*V z_4?Fc8{_k9AY?0{9iwxa8t;?dCGiX9x#g-ixbHT*^e}9e?t7lsYfSrN=+(=BtZ#)v zglgJ%^#Wv6CWT^hdfp#{9TOdOmT*|9sE!J;!ut(Bjg&=nU9pLpJg5IKx5cYbcU)kZ z&h6MA*jVAiX`Ygrj@FCQ>K|~Zy5@iXMbiB1%PcF4ynS7x^L;%svpp^1wc;re9=}2R z<2?p#1;&rpik=|FLVu4Tgi93FEobhZ50dD62}5TNC)7?irqBKm7D}DIktC1a;*UmV zYHV=LK=Ocb%ujnn+ADaa)(dF!Y>9tbFvD7jEudBx!BVpaiYBvzc6Ld_zbqvCJVnv0%jkT zST?H~%>+4FYx()lLqqT-(UCh0tI7OTX>CKZcT2x2CTp5q1hu4VcW59(!%_bhANqA= z^Nq6~Bdh&P8RKid#2$|9Vxe)|;aDlZFOdKl_aDDq(cp zkE|NWfiJxtwuUt3@WC-))0a^;TgD3UGoYk<1YQb526i83W+OzZqVAZo4$7aVteVv0ulA+gt3*7T7O|C!1-TG_ zxzMcNUXPKdQD$86;sjoXZvqpnKiGTqjp)UMvOGJ-?;3!b$QcxlA@!NW&hlWW#_d8K zrmydr$Km1|1LsvDXU6DVT^C2Jktc%ts#ckVoJbzRVBZ=O#N`+adgUAF>e%N-bpq&34wr&Y^=GS2*n7_iq?@-;V_(RXyUFR z6gR_YlhAVj4cXZX4OB;s!L5pp#>j{o)qA37h#D{N@$Opdry4CUW(Vh=tlHVOP2&3j z?a1{k#BP-yIua5WH|KTe8VRl8nKYvww@0Pc5+m{r#DE{<(8r}^oQb%mg%iePYpdbE zVrtj;d^uls8rV6S%{Z`spNbB7i9Q4DOb=NuIR}L<;B5pgNha;Bqj7{ELLpjZ{*hq5 zBtEAsG0B#oFiof~M7{z4vrVRYsHLaN8gFj}qgNh*zCBxEe4>!bBDCNOKssKubutVF zX6IxnU$lf)i#|qvZIRJ$cOx!zRk*9+Io!1sy55&pjV@hH zd(lr$L1goojm@S_56XsXLG%NYBmVf)4~5gsPQ)v5rzG8#xpx<~w0JK^glEzD62XIV z5)~kEzF781cA9JSSOH%;UoJ3($zS;GPJ@gQ$&n^x08%HAI_0E2r`LZ>$Gvwn8}6J$ zb0?C5Ir)Pc{;dzb2uD#eJX01#g9pn$QeN4)Ef2;nCU*9L^SO>8`GBZMKWBIob7Sh- z+uu9yq8}C=!olgF+YoH11|%1qHc@*8twSUE^@713d-d73=a(|xp>) z)2m7kKx?@SQ*_ocEqXW{;h+_FSnY?GGIYV&BTqALG+=8dl+^YHsx8DQD+M%88kLg% zQ`$!tHdY}vBs>%d@pVubs&lZAPGhcHVEHIi2Wx2DJ@87tuPx}zgLXY7PBMD*safhQ&n1f{lwh%>gYs7Yad zJMT3PL*d7%c%~CZ9%J|?UoJ=Bd@r%K9u@|TALEh9*$qg&dUz4!p{9pO$UCaaZ`78Seujg9S$iyKBYg|j@ zGb=4B{$HyBS!uvG6k9hke<>m1O$`LYz_xh&KXt8dTN`>B>?@DgfO4+#HA_#XfV3A` zo?8amK@f)6@`wUpVC}AvlhAX}O;1)hT%pbH4m*_DQZ~G~xeCC?)Lo0|HX{rQEI>N{ z2`z~-*;dRsk}S(#9)I!p7Ps{-u(Noe8VC`ioQBr!eno1WHRvv=6@^uTHiREG}JbBWzsJY zc|9~RF*V^uaD;z}Qucn21nA)nPcexeD5ImLiKaIv3}SEjN5c0_zYf%bv3Qbk*$dnF z%V1zdS)r^2RpMA#u!PVCnQYRM(9yoQO@};qg(FsLaYAnp}Fj6CAx>jq}Pr> zO0?mEV3l`Ltso7J5GdWUG_|BIDI$YRS(11k!x$3jTY+_6r`<2#DA+r;jUj6K{QxFc z3tmAY+~!+Ma?7`4MPPp0dK4{l7~=>U@Uw1Ocx%J&@36r^o5oK3^CtbFk8LnNHN5sS z!k%V9+A=0K$etRgxHbsAWR@jm5>iTKN-t3KrSC)S~ z_W;>8SwLuyF14*kqt2D^Q%7aMqDlxiM+Z0%Xm9ZT5B2`scAO#sy=d$B`O78UxoGEAoDzSo=me9E15fM8g6kg9Hy)|smuoNu)B)ViViT--j_=&F>D9vyv z2gqcN>SdFQyTgN0vqSy#ll#e%d|S>({%Xq_nlugz5vJY!KbrmWYOQ_E|JLl85#CRu zk6znjBp+*PTeYt)!sE$QMIFD5fQF3K-YNl*i?%^U;p1n?DHU!UhRe?$6^NDDimqt^ zZuXO(PQ(s3{(wewv9qlzXekWhY!8xli7oxZ_VSbIyWNqQ)_-(*uF2vaX%)%r_3CNs zwe{-L{2o94gLL23BK{7@#tWTSpzb@7L4f>O9#t`dxyuGmybp9+yUd_1&WnJd(xjC3 zoORABS%8(*nDlbfCH^1bo<$!4WDDck%Kq}UxHXCa`;vlu>g3?yAyw88kS3%kOM>?- zyEn0{)%olB#sj@$>HPK5iY_YZEP3lKox zuID5(91^RAlikd~Llb-Pm+8)JqOU^Tz_-RtMu&x>XaE@K6$=C$XYlx?B|x9Y#*zbS z1Q>hhkojH&xA)}UY?}YIZ(SPv8Iqca5A@lffLvmpS;kH^0*&71%N=piZA)QW+y4Me z|5WmS3i*Fa<^GB8#e?fbc`b$6S;+MRu4*e3BrX)%T|*B&7VXiTIk{Odi~5aio&r&W zmX6}52lDy>oa;IMDE~Zy4OqvX6Fh0>dKJ^Awg2k;p%R1V4guCS;Pm7bqbG*SvwLI} zJ*{|P4GIXvwa-op27?Q@vP`G2JF6b|OniW_j zNpyoI&5;*{;Amt;ILiu!?CVcdjhqSXUMLb1nvU@O0&Sr1br&oY;s2g-n{UcP4-= zHr^yM`~y`S-b@*Rf`>Y9aFMUJD&dI1iy4zk6Rl>qbF!n7!lvw^u$zIEOBwO38ozcU zggQ7(iE8ETgvz{zw>G?kRwxXfZ;}#eJ(9yum!R)dkP{?WyglvsW#5U;^t5Fw8N4cK zC+;+8E)kKMl(UlEIKF}GRdTl-GzZ*#=!6YmFXKuJo}C*{s2bDmV8C&h5k6~iz*Ffm zS{c!v2vhJbL?RZ>F7DF|*O(e?9J`Rkow&GBuAW$Z&3z9Sy{vgH|E!^M`6GUo`xmEC znxMFiA3LB8$?TBXa{N&0Ctoce%_?VF`7Ul@X57VPkj5N9lEr5fDXcK#{=$ptriN&MgZ2#dQH$c%uh!t(1tN4Goi-KOK(?H_s7 z=MLuPh2KuAmb5uEF|9>RBDso43VQ_0%_%SYjQl)R2k(Z18qBq!Z*U*7Ynwt#QbvYh zr2%gmmr9M{85CV;Lgvgg*6n<6qOUFwY3BL(Y1)wlRh zRuzVqGuo(i7SruWnHOMtmv?rB2&{4{V{nG8hLaoizf&^T?SPjTtU12muk03_%{LJb zQCxkNDGWnxOf8L z61%5oUsqfDdPm~$e`cGDKXgq|Y_>yI>DAHLx)-3{dtEfnE3#xtOMQ$hxQrzYhImR$ z;82hVvHrK!x@>BNe~Xzlt)~GQZzn=lNz~t;-^@7$Zhh$TU&+aZ#mo!@B)2wi?oddE zSAT#S*MPIqa_vw>gYm{i8Bsz0r_@eGPZ#p4?I;wwXc4WgpE?zOymuQof8WS>qTaVI zdyffEYa{<_`yqkc^({`pH7+h6mqm7TdiOK`fX|A22Y?}+W&ZvbT6DD;w+$!m4OxWu zaN*kp$+IBU_(|g)8VDMv_4*=@yDnWdTg+=GhjpjL*OkfU*)g@H8EvWhksoQY1US3l zDq6jfeYD%G&lf6o(@}P|JMAo#>d|#B$nDpk0JhRfl3#A9hE@BHgZavokj;Lfc7QCQ z>VAUcftw1I=MN*Jp_bq9Lic7A>lJxOXqZ_kY5UGO6?LgLP}?v?=Mj~VE(HiC@?tO1fF3_)t?aa% zY+VPH~E!Uo;_O<4IiCYZ+T?XwsHH-g#jP1^)+-rxVES+fxoo>o!2 z_p9xYe1IdDJmu69{D>$CdV^2Jp!0qM-|}BO&rvworoyn=YjaK(t7=wi2UWjf>e<$1 zP(YuDIv>kvUo1$Ph9V~o?`<&o3qQ(rQ|`%OaBIg->=JH7(|gm0EL%HbT4W7G&M-v? z6Emq$99J^Qwoy3^O-1&Qe~L8VSP(9NTrroO@*`WO1tL ztM>jB30{{ITvVU0_u2c>{2_IOSKM*H1_n`O&^;`%yr7|pE8>|}@tM5yq>Pd}b5oICpW-v@0oM#y^serEq3NVg z*W%TRVzX$SrA^?Z@^PCo}1Hb)v}iL+1=@x}Xhx!a=&N4TELRTI;ER2ArWt zO!~`*B;TQ2rn*XpQzOB6rKa3|wJOOR!6;(+6AAFE1pSgN-WZ>D9@JOYCCsdJrgw0Z%HQtp zru^-ef;HUMIHHR#RZ^tDCDaqA5F(`uw)a5IQe-Tt>k&3}Wq)nShb30CCzwn&7iwPY ztmZTV_|?NhE{jg8nrFHAV9uLpNpW(p<7V_-Me6{?QoJA%u?&bPk4I)gFWn>jE!@F% zHw>X$dwGM2e8)N0+_}F2fQ4yZx9ni9OVdYyGkF}7Zs)Oc;>RpD>|M0;h8{SQbVb6< zMp_kCfkqVhZ>dtnmV=5Moh+;_sl8}z`AE?i~!t%^ks#qD+}LJ$61VdE5!IoJh5M@ z$5>w2!PEV@0#DYCjwZVoCO{{M3LFO3+Q3V5A7!6?y~nX%-m6W1wJcg(l#gwe64|>H z=%G*Cb3#K#&7WBw{P|&>3ZJBoxPa`r)o>{jk2%b1NNIU=pX+TbY8Fh6)RD6E8{X7c z$xQq0wc*q!wizY2I54c#di&}65X!7J4O}=yC}ied{sRT*pG#KF1IjV%zsndGKpFEs zyOqdRmfy2-8>}s4O+tXe7%{pZ@G$e8+Rf9;R|zP4ZCu?A@#+rUn3O5DUxz!z0x`%b zkpQNSpiD|fO-2%Y_MZ=%%^y-PHv+46jBBXN;}52v?u?iz7sSt|`C}yce#n?TfOlR@ zR)y}D&rD&h{2vewc{<*{cAoqGpqZ{Zt!grB1|)C-cv0?R%!aaRT#nt5FF(pQ$Up&} zt&&Fc?pXC8grou|y;JNie>>N7?Mf)!V2|ox1qD?Hem}hmYsDvZ@Oi;V1h*wHkhc4n z46Qt(zTPhaH~n4Fd{eWmov2L?$`Hdquk<=Z;of#&BHG05Wv}sYxL1gnsjebC$&*Cv zy3_G2Qhk;AN(`Fw4H=|q=H>IW#oDCN`LUwInPYinKDrC7H1Qj}&<)MDmD5??48Sx0 ziSv%ZQ2LZ1aQ{cH=Kjky3PI&755W3J=;Y&|Wb<_zBn0PdD)3j06>ibs$-?Xb>`<7B z6W=VBc<7)OxV+Y;vO2$RK~`UtuYG~OV7|=6b^|^N(Qa6J{2gU?uEMV8o`h=E57W&X z+_C4fwPN#4BP6q&nSys~zPM3`Prwy4r9BoV4ufE1RU+FzI17xbKz`LaVh31m*|>v` z!D7G1DHf|?>B2nuY#|8q_qH0`lRPFWTO_+C!4Zh4h@b`8vocB(wa3M!xj&$JDwzy{ z9O2e*>k3Yl*;2AgTv>~0XiMF>?i?3&k zv(2<@CX)OSSVd}irQ~h=J$2pfttZpp;4mQ1zyc2)E@t<~2rhyC1)ezaftHe2L3OcC zve~@yfZhVM(R^Iw8Uum`<{tH zAe-+DZ}dz-V)tOdq^VqpW8-G?4zq}{Zh>yRCjl7~N3&-<~mqq6vi zf_%YD@fEgCHh-`&#pQnk;itk;t(@}m^N|daVk`fAnA27AK|&IEFyTL%ng3P87zi+ghJ(ppxW`EO z8M24~mBxJT7DHO-1DH@uB?^FFr1O9#hgWL-7&O<=%qjAVc#Ae+u3>wvoD#`lZ`a9a zqF8`OlpF9DJ9*$jhOO03Qt8Y z#?5`wjYO}8p07`?!k;e$)shiwk$rUOhGb8!tI70nOo3?(JSEdb71R|qq%;nd+_L9i zcG_~g#K`T#XD=Uk++m({_Lftu+Tq$l8#*nyhO*dNsYG^O9oaaY?RP%iJ>KlUy3ha! zRv!nz@D@I|eIycqhilcTAK+{Z-dieem(tub6!RUj>p#i{3JLSUj%a9U4Q03Yl3yP0 z_N;7ln~^8>hDz(K*l5+g2a9<3RI@+_1AIQ+D=AC;MPb;*HVAPoH-zBMzg6 za5!}KW&-@tv`Q=>m9uObU$lZeg8o5j=5$@bY&C z!VNnPADC+Fu??r6a|l?eF0umOg7PhD>QwZpqE_(Tt*03;hcsg1Tm>D~iu=p_j)a$#z1tg0C zb-eDYRr+pG$gcM;2#Xb5d_U4Fqh>_+T2TY!Fm(|e>eOo-Q@6zujf1^jf_`jqZoSx$ za_9FA?2?HyYDihL>s{K~d1@hct$a;{i`}`)5V92hEfXR=0qs5K+A`+wY_ShT;Byk* zQQw%^9TVSn*x1*Hv8t@4hUmMUF`ivt)IDSxY6 znTEM3Rb?4deuLRa9o%&f0I1B`7S8L6)n6=(7;Jr(!|?UmOPn_&Pe9Z*GqtDmB#A}1e(16P5^ETJ0; zrzI&Yqy%Y{<6_zuUvpSPD{?IXKeizfT{SK|J!A=b5{m4; zcXadE(BT3?849#o?Q8pmYUz1QIMk^I+OpYs?oL|`_T5BW^Br&z>ZLN0*bY00ueyt> zkE+~gv{N^V`^SO0tSS;xhxb==F3}y@-oWLCz(v{oV9?sXpy}lAokLI*P zj5#ynJsds=ZEaPFZs4PR)98xDL}&^yu{qLqzEjA(2n}Oz&C$HDFur1uUStZJSC@tn!u'=XjFNnCs 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 fw*M{`;pY#`VYn!xA;05)AWKF