OnEvent_SchedulerDrag auch für MoveBars
Informationen
- Kategorien: GUI | Scheduler
- Version: .0
- Veröffentlichungsdatum: Dienstag, 17. Juni 2014
- Entwickler: Götzen
- Benötigt Datenbankänderung: Ja
- Betreff: OnEvent_SchedulerDrag regiert zusätzlich auf das Verschieben von Balken
Beschreibung
OnEvent_SchedulerDrag() regiert jetzt zusätzlich auf das Verschieben von Balken im Scheduler. Hierbei hat das Argument "EventId" dann die Nummer 2.
Achtung wenn in diesem Event nun ein Defaultwert von 0 zurückgegeben wird, ist ein verschieben von Balken nicht mehr möglich. Damit dies auf bestehende Projekte keinen Effekt hat, wird diese Funktionalität nur für Events mit den 3 zusätzlichen Argumenten: "byref string $DragWndMsg", "byref string $DragWndTitle" und "byref string $DragWndImage" berücksichtigt.
Beispielcode
int onEvent_SchedulerDrag( string $sSchedulerName, int $eEventType, entity $eDragEntity, entity $eResourceEntity, time $DragTime , byref string $DragWndMsg, byref string $DragWndTitle, byref string $DragWndImage )
{
var ::Task $Task;
switch( $eEventType )
{
case 1: // Eventype 1 ist the Drag event.
if( $sSchedulerName == "2" && IsKindOf( $eDragEntity, name_of(::Task )) )
{
$Task = $eDragEntity;
$DragWndTitle = $Task.$Displayname;
$DragWndMsg = "Drop allowed at " + DateToStr( "dd'.'MM'.'", $DragTime ) + TimeToStr( " hh':'mm':'ss", $DragTime );
$DragWndImage = "ok";
return 1;
}
break;
case 2: // Eventype 2 ist the Moving event.
if( $sSchedulerName == "2" )
{
$Task = $eDragEntity;
$DragWndTitle = $Task.$Displayname;
$DragWndMsg = "Moving allowed to " + DateToStr( "dd'.'MM'.'", $DragTime ) + TimeToStr( " hh':'mm':'ss", $DragTime );
$DragWndImage = "ok";
return 1;
}
break;
}
// Default behavior
//
switch( $eEventType )
{
case 1: // Eventype 1 ist the Drag event.
$DragWndTitle = "Dragging";
$DragWndMsg = "Drag not allowed!";
$DragWndImage = "cancel";
return 0; // Drop not allowed as default
break;
case 2: // Eventype 2 ist the Moving event.
return 1; // Moving allowed as default
break;
}
return 1;
}