Quintiq file version 2.0
|
#parent: #root
|
StaticMethod CheckType (
|
LibCal_Participations selection_i,
|
Boolean isEvent_i
|
) remote as Boolean
|
{
|
TextBody:
|
[*
|
ok := false;
|
|
if( selection_i.Size() = 1 )
|
{
|
// Give more accurate feedback when there is only one element selected.
|
ok := LibCal_Participation::CheckType( selection_i.Element( 0 ), isEvent_i );
|
}
|
else
|
{
|
feedback := FeedbackObject::LocalFeedback();
|
|
// All selected elements must be of correct type (i.e. all Event (i.e. LeadingParticipation) or all Subscription).
|
isAllowed := ifexpr( isEvent_i, forall( selection_i, Elements, participation, true, participation.IsLeading() ),
|
forall( selection_i, Elements, participation, true, participation.IsSubscription() ) );
|
|
if( not feedback.CheckHard( isAllowed ) )
|
{
|
subject := ifexpr( isEvent_i, "an event", "a subscription" );
|
feedback.AddHard( Translations::Participation_NotAllTheSame( subject ) );
|
}
|
|
ok := feedback.IsAllowed();
|
}
|
|
return ok;
|
*]
|
}
|