325
|
Clear Undo/Redo queue (method 2)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
LOCAL c
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
c := oSchedule:UndoRedoQueueLength()
oSchedule:UndoRedoQueueLength := 0
oSchedule:UndoRedoQueueLength := c
DevOut( oSchedule:UndoListAction() )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
324
|
Clear Undo/Redo queue (method 1)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:AllowUndoRedo := .T.
DevOut( oSchedule:UndoListAction() )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
323
|
Removes Redo operations
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:Undo()
oSchedule:RedoRemoveAction(13)
DevOut( oSchedule:RedoListAction() )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
322
|
Removes Undo operations
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:UndoRemoveAction(13)
DevOut( oSchedule:UndoListAction() )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
321
|
Record the UI operations as a block of undo/redo operations
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:StartBlockUndoRedo()
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:EndBlockUndoRedo()
DevOut( oSchedule:UndoListAction() )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
320
|
Groups the next to current Undo/Redo Actions in a single block
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:GroupUndoRedoActions(2)
DevOut( oSchedule:UndoListAction() )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
319
|
Limits the number of entries within the Undo/Redo queue
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:UndoRedoQueueLength := 1
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
DevOut( oSchedule:UndoListAction() )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
318
|
Lists the Redo actions that can be performed on the control
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:Undo()
DevOut( oSchedule:RedoListAction() )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
317
|
Lists the Undo actions that can be performed on the control
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
DevOut( oSchedule:UndoListAction() )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
316
|
Checks whether the Undo operation is possible
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:Undo()
DevOut( "CanRedo" )
DevOut( Transform(oSchedule:CanRedo(),"") )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
315
|
Call Redo by code
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:Undo()
oSchedule:Redo()
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
314
|
Checks whether the Undo operation is possible
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
DevOut( "CanUndo" )
DevOut( Transform(oSchedule:CanUndo(),"") )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
313
|
Call Undo by code
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:Undo()
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
312
|
Save the calendar-event's properties for Undo/Redo operations, by code
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvent
LOCAL oSchedule
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:Events():Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oSchedule:StartBlockUndoRedo()
oEvent := oSchedule:Events():Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
h := oEvent:StartUpdateEvent()
oEvent:SetProperty("BodyBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 0,0,1 } ) , .F. ))
oEvent:SetProperty("BodyForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oEvent:SetProperty("StatusColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,0,0 } ) , .F. ))
oEvent:EndUpdateEvent(h)
oSchedule:EndBlockUndoRedo()
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
311
|
No color is restored for the calendar-event when Undo/Redo operation is performed
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvent
LOCAL oSchedule
LOCAL h
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:Events():Add("01/10/2001 10:00:00","01/10/2001 11:30:00")
oSchedule:StartBlockUndoRedo()
oEvent := oSchedule:Events():Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
h := oEvent:StartUpdateEvent()
oEvent:SetProperty("BodyBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 0,0,1 } ) , .F. ))
oEvent:SetProperty("BodyForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oEvent:SetProperty("StatusColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,0,0 } ) , .F. ))
oEvent:EndUpdateEvent(h)
oSchedule:EndBlockUndoRedo()
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
310
|
How can I ensure that a specified calendar-event fits the control's visible area
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oPattern
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oEvents := oSchedule:Events()
oPattern := oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00"):BodyPattern()
oPattern:Type := 6/*exPatternBDiagonal*/
oPattern:SetProperty("Color",AutomationTranslateColor( GraMakeRGBColor ( { 224,224,224 } ) , .F. ))
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00"):EnsureVisible()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
309
|
LayoutEndChanging(exUndo), LayoutEndChanging(exRedo) or LayoutEndChanging(exUndoRedoUpdate) notifiy your application once a Undo/Redo operation is executed (CTRL+Z, CTRL+Y) or updated
PROCEDURE OnLayoutEndChanging(oSchedule,Operation)
DevOut( "LayoutEndChanging" )
DevOut( Transform(Operation,"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:LayoutEndChanging := {|Operation| OnLayoutEndChanging(oSchedule,Operation)} /*Notifies your application once the control's layout has been changed.*/
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
308
|
Turn on the Undo/Redo feature
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
307
|
How can I make the header (date/group) always visible, so it stays on the top while the user scrolls the chart
PROCEDURE OnLayoutEndChanging(oSchedule,Operation)
DevOut( Transform(Operation,"") )
oSchedule:DayViewHeight := 2016
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oGroup,oGroup1
LOCAL oGroups
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:LayoutEndChanging := {|Operation| OnLayoutEndChanging(oSchedule,Operation)} /*Notifies your application once the control's layout has been changed.*/
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:SetProperty("SelectDate","05/20/2012",.T.)
oCalendar:Select(3/*exSelectWeek*/)
oSchedule:ScrollBars := 2/*exVertical*/
oSchedule:ShowViewCompact := 3/*exViewSingleRowLockHeader*/
oSchedule:DayViewHeight := 2016
oSchedule:TimeScales:Item(0):MinorTimeRuler := "00:10"
oSchedule:DayStartTime := "00:00"
oSchedule:DayEndTime := "24:00"
oSchedule:OnResizeControl := 3073/*exCalendarAutoHide+exCalendarFit+exResizePanelRight*/
oSchedule:Calendar():Selection := "05/24/2012"
oSchedule:DisplayGroupingButton := .T.
oSchedule:ShowGroupingEvents := .T.
oSchedule:ApplyGroupingColors := .F.
oGroups := oSchedule:Groups()
oGroup := oGroups:Add(1,"Group 1")
oGroup:Visible := .T.
oGroup:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 128,128,128 } ) , .F. ))
oGroup:Title := "1'st Group"
oGroup1 := oGroups:Add(2,"Group 2")
oGroup1:Visible := .T.
oGroup1:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,0,0 } ) , .F. ))
oGroup1:Title := "2'nd Group"
oSchedule:DefaultEventLongLabel := "<%=%256%><br>Group's Caption: <b><%=%262%></b><br>Group's Title: <b><%=%263%></b>"
oSchedule:DefaultEventShortLabel := oSchedule:DefaultEventLongLabel()
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 01:00:00","05/24/2012 02:00:00"):GroupID := 1
oEvents:Add("05/24/2012 01:45:00","05/24/2012 02:30:00"):GroupID := 2
oEvents:Add("05/24/2012 02:30:00","05/24/2012 04:30:00"):GroupID := 1
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
306
|
It appears that Width property of the Group does not what. What am I doing wrong
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oGroup,oGroup1,oGroup2
LOCAL oGroups
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:DisplayGroupingButton := .T.
oSchedule:ShowGroupingEvents := .T.
oSchedule:OnResizeControl := 3073/*exCalendarAutoHide+exCalendarFit+exResizePanelRight*/
oGroups := oSchedule:Groups()
oGroup := oGroups:Add(1,"Group 1")
oGroup:Title := "First"
oGroup:Visible := .T.
oGroup1 := oGroups:Add(2,"Group 2")
oGroup1:Title := "Second"
oGroup1:Visible := .T.
oGroup2 := oGroups:Add(3,"Group 3")
oGroup2:Title := "Third"
oGroup2:Visible := .T.
oSchedule:DayViewWidth := 144
oSchedule:Groups:Item(1):Width := 48
oSchedule:Groups:Item(2):Width := 48
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00"):GroupID := 1
oEvents:Add("01/10/2001 10:00:00","01/10/2001 13:00:00"):GroupID := 2
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
305
|
ImageSize property on 32 (specifies the size of control' icons/images/check-boxes/radio-buttons)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/24/2012"
oSchedule:ImageSize := 32
oSchedule:Font():Size := 16
oSchedule:EventsFont():Size := 16
oSchedule:TimeScaleFont():Size := 16
oSchedule:TimeScales:Item(0):Width := 128
oSchedule:Images("gBJJgBAIDAAEg4AEEKAD/hz/EMNh8TIRNGwAjEZAEXjAojKAjMLjABhkaABAk0plUrlktl0vmExmUzmk1m03nE5nU7nk9miAoE+oVDolFo1HpFJpU5h8Sf9OqFNqUOqNUqdPq9VrFWrlbr1QpdhAFAkFis1ntFptVrtkrpszrNvmVxqk3uVtm1kmF3sdBvF/wGBmV+j9BYGHwWJulfxdax2NyFdx2JlV6l9Nw7AAGZymdz2Cy2GxErvWcz9ivlwyV21cuxugwktzGIzmvwtl0+53U5y0a0Wazmmyu/3dCyOMyXHx/J5nIr9q3uyqnBxFN3G46ma4vb7mD2Ng4nZze00fDkHC7t7us2rOX5tguetpHRlmz4HVqnXk1PjHO+CMPo9MBMC+j2vC8j7wS8cFNI4kBo05UIvfCT/NsnsApU+0Fqg/T+oy/kPxC0sEQfErKQK96+w28UWRI8UGvO8sTLS9r2PWmsMJTDTask3CsIbIEQRA3shOXEEAO/GclJ9" +;
"FEKrrA8FRbKMXRIlb0JxCkjS1LMswhCcvuel0cv26cSMa8Ufx+2sQwhEUoSXOCjSbLcnxjKc7sdKUVyq28NtVI71P9P7JxtQEapjQ6fzfM8zPfNE2PhIsLL63E40slk5y7N89LcyU9SvMb3SdUc6VJLj5VLVLfO/PS9KzNFHUa/0XyBD0dxlS9cxhMlTRSoNXypPErWDPyfNS+MwprRNO0FD8wVVZ1AI08URwVRjtJ1WCn21QkkUrXVLVPQS/XIkFgTxT9iONZ9xVTdq+L1eKg3kkF6Upe68XtfV51/MtrVjBlwYFL1ev8y1/P6/lyzzYl02wntj0RVFmS1Qa+M5as93QxEUW9e993rfmQ2+vy65M/mL1lhl/2bj2ByVduMtNhCJT9hdz41nN14Ld12Z9UjfI/oUAaGseiw6+uFLLhcVabJOS5RqOE0BHlZ5VnEr5fOMs3st+aa/bbRzrJGV51Y0b0DbqaWXZD90hIsPbjWu52+6Wyadpe66hhO+P/Xi" +;
"oW5rD8ZbrUZuVg6n1dsE/cXmewu1m9PVwnd35/nueXho/NaJzmjc61W76esuT77eG8pTquy9TwWH8LEzG8RDfFalx3Gcfvna9rvG/cptGLd9tuI6TZOP5Fiqi99vea+X4VRcBq/JZZtVQ9cwSs5lsXE372+a9z7PbfB3VVqHyvMctLto8uob6eV0m/cD6MN2v+T33t6sBut42vdv2bJ8a997x2maFJfK+qArbGJPEKE+1qTflMsIdW/GCJX17KcT6/czr/X+u1g29B7j/4BQfWkkx4zIHisjhPCmE0K4SwtXM+d4BvHRwNZOoBph9IJvPek9d40FoMJxf691jj2ywQQcHEWET4XJwkTszlVqm2GokewxtBT1DpQjRxDN0rUVDNKdC3lb6tzNOwh6upMSSYfv4YBCl/bsn9PxiFCEo7SI6Obc9HeOrnY8x4jtHtdpN4GRbaorhsbu18Pph5CiHymI0RpSXGJ/z2oUOxYxG858AyiI+bfJtuTcG5yelBJy" +;
"T8okhqFd4a5yxL0rvulYtKCsZiWxWkc1s1cRoxxwhA31DLE0mR9l9HqX8fJgTDmFMVH0MIsRzVYnwnMi1dyzmhLt2kS2pxIiU62Wj5ptQGlSYFakLonTUJNLKaM5WzlffEkuFkk5wTrhVO2eE7G6lJhxFFYUZ55zmn0WuBCD4pzhirFCKkbomsOoIYmZx5p90LoYWGPdD5g0QmJRKYxbZ6zYoVQ2jVGylSak7KSkFH6RSjpHKFuU+YMyNo5SulkC6I0vonTCitMXPoEpVS2H5FQfEqp2R1opIgAEkJISYARTCukOhmPNI5Ex/wzGHUsicMwA1LHgQ90Y/KpoQHAD+pB/R4NzIaMAB9Xaw1gqaAOsh/A/ptIkWUfhGK1kZH8RgH5GqvgArqRmt4AAPrTroRofBGADkqr6Rmu4D7CEaHARiwpJrEEZsXXwlVjyMWRsaRqwdkLGNBABZmytmyMnaINZqyVpLR2ftKAAAdd6h2osbaskdiq4EZtgSmyNcbVW" +;
"RJNXe3AA7REar3b0stlAAXBtoRmvJGLjEYAHUWsFcwCD/rnaop9aEICMAPdK5hT6xpeuzdOtAgKuJeGfdq6ggEbkTvAP+p9UCHXrvKkcgIA==")
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 11:30:00","05/24/2012 14:30:00"):Pictures := "1/2"
oEvents:Add("05/24/2012 12:45:00","05/24/2012 15:45:00"):Pictures := "1,2"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
304
|
ImageSize property on 16 (default) (specifies the size of control' icons)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/24/2012"
oSchedule:ImageSize := 16
oSchedule:Images("gBJJgBAIDAAEg4ACEKAD/hz/EMNh8TIRNGwAjEZAEXjAojJAjMLjABAAgjUYkUnlUrlktl0vmExmUzmk1m03nE5nU7nkrQCAntBoVDolFo1HoM/ADAplLptImdMYFOqdSqlXq1QrVbrlGpVWsFNrNdnNjsk7pQAtNroFnt0sh8Yr9iulTuNxs1Eu8OiT/vsnsNVutXlk/oGGtVKxGLxWNtsZtN8iUYuNvy0Zvd+xNYwdwvl4p870GCqc8vOeuVttmp1knyOayWVy+WzN/ze1wOElenm+12WUz/Bv2/3UyyWrzeutux2GSyGP2dQ33C1ur3GD3M4zUNzHdlWjq/E3nGzVpjWv4HA7fRy/Tv2IrN8rPW6nZ3ve7mUlfu20Z8acvQyb+vY9jasYoDwMm+LytVBDqKG3z8O3Cb8P+mkAuY9cCQ2uL4KaxDKvkp8RNLEjqugnrwQo/UWPzFyeQw5sNLZFENrI4kOqU66pw8uzmOKvTqNqjULJvGL1JO48GtT" +;
"GsbLdEL3scxLlyiw8dQeoUVxdLTtyKmUjwGlslRPJsnK1HbAKbKCrsQo8uQk/CeP44iaR/ATnTNPLvyxPU+z9P9AUDQVBowiofJXQ6Oo+kKMpIkjztE4TKn4P6JowfgPnwD5/nAjB8AOeAPo0eAA1IAFH07UhAIMpYAVIYFHqBUhwVjV1S1EtQAHxW65V0AZwAeuQAnwB5gAPYViEDVhwAHTQBkCjB4gOhwDmCyhH0sACAg==")
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 11:30:00","05/24/2012 14:30:00"):Pictures := "1/2"
oEvents:Add("05/24/2012 12:45:00","05/24/2012 15:45:00"):Pictures := "1,2"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
303
|
Is it possible to show a different background color for alternate days
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:SetProperty("Background",41/*exScheduleDayHeaderBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 0,0,0 } ) , .F. ))
oSchedule:SetProperty("Background",42/*exScheduleDayHeaderForeColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 0,0,0 } ) , .F. ))
oSchedule:SetProperty("Background",159/*exScheduleDayBackColorAlternate*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oSchedule:SetProperty("Background",160/*exScheduleDayForeColorAlternate*/,AutomationTranslateColor( GraMakeRGBColor ( { 128,128,128 } ) , .F. ))
oSchedule:Calendar():Select(3/*exSelectWeek*/)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
302
|
How can I select all events
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/24/2012"
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00")
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00")
oSchedule:SelectAll()
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
301
|
How can I unselect all events
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/24/2012"
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00")
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00")
oSchedule:SelectAll()
oSchedule:Selection := ""
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
300
|
How do I immediately select a newly added event
PROCEDURE OnAddEvent(oSchedule,Ev)
/*Ev.Selected = True*/
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:AddEvent := {|Ev| OnAddEvent(oSchedule,Ev)} /*Notifies your application once the a new event is added.*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
299
|
I would like to know if this allows me to setup a number of room(column). Let's say, i need to go up to 10 rooms is it possible. Also, the possibility to have a complete week of that 10 rooms.
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oGroup,oGroup1,oGroup2,oGroup3,oGroup4
LOCAL oGroups
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:DisplayGroupingButton := .T.
oSchedule:ShowGroupingEvents := .T.
oSchedule:SetProperty("BodyEventForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oSchedule:DayStartTime := "09:00"
oSchedule:DayEndTime := "14:00"
oCalendar := oSchedule:Calendar()
oCalendar:SetProperty("SelectDate","05/24/2012",.T.)
oCalendar:Select(3/*exSelectWeek*/)
oSchedule:ScrollBars := 0/*exNoScroll*/
oSchedule:ShowViewCompact := 1/*exViewSingleRow*/
oGroups := oSchedule:Groups()
oGroup := oGroups:Add(1,"1")
oGroup:Visible := .T.
oGroup:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,0,0 } ) , .F. ))
oGroup:SetProperty("HeaderBackColor",oGroup:EventBackColor())
oGroup:SetProperty("HeaderForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oGroup1 := oGroups:Add(2,"2")
oGroup1:Visible := .T.
oGroup1:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 204,0,0 } ) , .F. ))
oGroup1:SetProperty("HeaderBackColor",oGroup1:EventBackColor())
oGroup1:SetProperty("HeaderForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oGroup2 := oGroups:Add(3,"3")
oGroup2:Visible := .T.
oGroup2:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 153,0,0 } ) , .F. ))
oGroup2:SetProperty("HeaderBackColor",oGroup2:EventBackColor())
oGroup2:SetProperty("HeaderForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oGroup3 := oGroups:Add(4,"4")
oGroup3:Visible := .T.
oGroup3:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 102,0,0 } ) , .F. ))
oGroup3:SetProperty("HeaderBackColor",oGroup3:EventBackColor())
oGroup3:SetProperty("HeaderForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oGroup4 := oGroups:Add(5,"5")
oGroup4:Visible := .T.
oGroup4:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 51,0,0 } ) , .F. ))
oGroup4:SetProperty("HeaderBackColor",oGroup4:EventBackColor())
oGroup4:SetProperty("HeaderForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00"):GroupID := 1
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00"):GroupID := 2
oEvents:Add("05/24/2012 11:30:00","05/24/2012 13:30:00"):GroupID := 3
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00"):GroupID := 4
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00"):GroupID := 5
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
298
|
I would like to know if this allows me to setup a number of room(column). Let's say, i need to go up to 10 rooms is it possible
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oGroup,oGroup1,oGroup2,oGroup3,oGroup4
LOCAL oGroups
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:Calendar():Selection := "05/24/2012"
oSchedule:DisplayGroupingButton := .T.
oSchedule:ShowGroupingEvents := .T.
oSchedule:SetProperty("BodyEventForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oSchedule:DayStartTime := "09:00"
oSchedule:DayEndTime := "14:00"
oGroups := oSchedule:Groups()
oGroup := oGroups:Add(1,"Room1")
oGroup:Visible := .T.
oGroup:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,0,0 } ) , .F. ))
oGroup:SetProperty("HeaderBackColor",oGroup:EventBackColor())
oGroup:SetProperty("HeaderForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oGroup1 := oGroups:Add(2,"Room2")
oGroup1:Visible := .T.
oGroup1:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 204,0,0 } ) , .F. ))
oGroup1:SetProperty("HeaderBackColor",oGroup1:EventBackColor())
oGroup1:SetProperty("HeaderForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oGroup2 := oGroups:Add(3,"Room3")
oGroup2:Visible := .T.
oGroup2:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 153,0,0 } ) , .F. ))
oGroup2:SetProperty("HeaderBackColor",oGroup2:EventBackColor())
oGroup2:SetProperty("HeaderForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oGroup3 := oGroups:Add(4,"Room4")
oGroup3:Visible := .T.
oGroup3:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 102,0,0 } ) , .F. ))
oGroup3:SetProperty("HeaderBackColor",oGroup3:EventBackColor())
oGroup3:SetProperty("HeaderForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oGroup4 := oGroups:Add(5,"Room5")
oGroup4:Visible := .T.
oGroup4:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 51,0,0 } ) , .F. ))
oGroup4:SetProperty("HeaderBackColor",oGroup4:EventBackColor())
oGroup4:SetProperty("HeaderForeColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00"):GroupID := 1
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00"):GroupID := 2
oEvents:Add("05/24/2012 11:30:00","05/24/2012 13:30:00"):GroupID := 3
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00"):GroupID := 4
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00"):GroupID := 5
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
297
|
Please could you let me know if it is possible to change the increment when the user scrolls the mouse wheel as its to slow by default
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:VerticalScrollWheel := 3
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
296
|
I am using the DefaultEventLongLabel property to specify the event's label. Is it possible to change the way the event's label is displayed when it is an all day event (sample 2)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvent,oEvent1,oEvent2
LOCAL oEvents
LOCAL oGroup,oGroup1
LOCAL oGroups
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:SelectEventStyle := 48/*exLinesSolid*/
oSchedule:AllowAllDayEventScroll := 4416/*exAllDayEventWheelScroll+exAllDayEventMax4*/
oSchedule:DefaultEventLongLabel := "<%=%><%= ( %3 = 0 ? (`Group's ID:` + %4 + `<br>Group's Caption:` + %262 + `<br>Group's Title: ` + %263 + `<br>` + %256 ) : ( (`Group's ID:` + %4 + ` , ` + %256 ) replace `<br>` with `,` ) ) %>"
oSchedule:DefaultEventShortLabel := "<%=%><%= ( %3 = 0 ? (`Group's ID:` + %4 + `<br>Group's Caption:` + %262 + `<br>Group's Title: ` + %263 + `<br>` + %256 ) : ( (`Group's ID:` + %4 + ` , ` + %256 ) ) replace `<br>` with `\r\n` ) %>"
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:DisplayGroupingButton := .T.
oSchedule:ShowGroupingEvents := .T.
oSchedule:HeaderGroupHeight := 1
oSchedule:ShowAllDayHeader := .T.
oSchedule:OnResizeControl := 3073/*exCalendarAutoHide+exCalendarFit+exResizePanelRight*/
oGroups := oSchedule:Groups()
oGroup := oGroups:Add(1,"Group 1")
oGroup:Title := "First"
oGroup:Visible := .T.
oGroup1 := oGroups:Add(2,"Group 2")
oGroup1:Title := "Second"
oGroup1:Visible := .T.
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00"):GroupID := 1
oEvents:Add("01/10/2001 10:00:00","01/10/2001 13:00:00"):GroupID := 2
oEvent := oEvents:Add("01/10/2001","01/10/2001")
oEvent:GroupID := 1
oEvent:AllDayEvent := .T.
oEvent1 := oEvents:Add("01/10/2001","01/10/2001")
oEvent1:GroupID := 2
oEvent1:AllDayEvent := .T.
oEvent2 := oEvents:Add("01/10/2001","01/10/2001")
oEvent2:GroupID := 2
oEvent2:AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
295
|
I am using the DefaultEventLongLabel property to specify the event's label. Is it possible to change the way the event's label is displayed when it is an all day event (sample 1)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvent,oEvent1,oEvent2
LOCAL oEvents
LOCAL oGroup,oGroup1
LOCAL oGroups
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:SelectEventStyle := 48/*exLinesSolid*/
oSchedule:DefaultEventLongLabel := "<%=%><%= %4 < 0 ? `<b>` + %256 + `</b> <off -4>(all)` : ( (`Group's ID:` + %4 + `<br>Group's Caption:` + %262 + `<br>Group's Title: ` + %263 + `<br>` + %256 ) replace ( %3 ? `<br>` : ``) with `,` ) %>"
oSchedule:DefaultEventShortLabel := "<%=%><%= %4 < 0 ? %256 : ( %3 = 0 ? (`Group's ID:` + %4 + `<br>Group's Caption:` + %262 + `<br>Group's Title: ` + %263 + `<br>` + %256 ) : ( (`Group's ID:` + %4 + ` , ` + %256 ) ) replace `<br>` with `\r\n` ) %>"
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:DisplayGroupingButton := .T.
oSchedule:ShowGroupingEvents := .T.
oSchedule:HeaderGroupHeight := 1
oSchedule:ShowAllDayHeader := .T.
oSchedule:OnResizeControl := 3073/*exCalendarAutoHide+exCalendarFit+exResizePanelRight*/
oGroups := oSchedule:Groups()
oGroup := oGroups:Add(1,"Group 1")
oGroup:Title := "First"
oGroup:Visible := .T.
oGroup1 := oGroups:Add(2,"Group 2")
oGroup1:Title := "Second"
oGroup1:Visible := .T.
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00"):GroupID := 1
oEvents:Add("01/10/2001 10:00:00","01/10/2001 13:00:00"):GroupID := 2
oEvent := oEvents:Add("01/10/2001","01/10/2001")
oEvent:GroupID := 1
oEvent:AllDayEvent := .T.
oEvent1 := oEvents:Add("01/10/2001","01/10/2001")
oEvent1:GroupID := -1
oEvent1:AllDayEvent := .T.
oEvent2 := oEvents:Add("01/10/2001","01/10/2001")
oEvent2:GroupID := 2
oEvent2:AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
294
|
The Event.Caption does not support HTML, and so if using in DefaultEventLongLabel/DefaultEventShortLabel no HTML is applied, instead HTML tags are displayed as plain text. What can be done
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/24/2012"
oSchedule:DefaultEventLongLabel := "<%=%><%=%5%><br><%=%256%>"
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 09:00:00","05/24/2012 10:00:00"):Caption := "textzeile1<br>textzeile2<br>textzeile3"
oEvents:Add("05/24/2012 10:00:00","05/24/2012 11:00:00"):Caption := "textzeile1<br><fgcolor-FF0000><b>textzeile2</b></fgcolor>"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
293
|
Please could you let me know how I can remove/hide the time scale/marks from the scheduler. I am creating a month view that only requires a box for the day and no time markers required
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:TimeScales:Item(0):Visible := .F.
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "05/24/2012"
oCalendar:Select(2/*exSelectMonth*/)
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00")
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00"):ShowStatus := .F.
oEvents:Add("05/24/2012 11:30:00","05/24/2012 13:30:00")
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
292
|
Is it possible to lock down the view to allow resizing of the days column but not to allow the scrolling outside of the dictated time zone
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "05/21/2012"
oCalendar:Selection := "value in (#5/21/2012#,#5/22/2012#,#5/23/2012#,#5/24/2012#,#5/25/2012#)"
oSchedule:OnResizeControl := 768/*exChangePanels+exHideSplitter*/
oSchedule:ScrollBars := 2/*exVertical*/
oSchedule:ShowViewCompact := 1/*exViewSingleRow*/
oSchedule:AllowMoveSchedule := 0/*exDisallow*/
oSchedule:AllowResizeSchedule := 0/*exDisallow*/
oSchedule:AllowToggleSchedule := 0/*exDisallow*/
oSchedule:AllowExchangePanels := 0/*exDisallow*/
oSchedule:AllowMoveTimeScale := 0/*exDisallow*/
oSchedule:AllowResizeTimeScale := 0/*exDisallow*/
oSchedule:AllowMultiDaysEvent := .F.
oSchedule:SetProperty("Background",36/*exScheduleBorderSelColor*/,oSchedule:Background(37/*exScheduleBorderSelColorUnFocus*/))
oSchedule:TimeScales:Item(0):MinorTimeRuler := "00:10"
oSchedule:DayStartTime := "10:00"
oSchedule:DayEndTime := "14:00"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
291
|
I would also like to control the column view to only show 5 days at a time with a side scroll, how would I achieve this please
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:ShowAllDayHeader := .T.
oSchedule:Calendar():Selection := "05/21/2012"
oSchedule:Calendar():Selection := "value in (#5/21/2012#,#5/22/2012#,#5/23/2012#,#5/24/2012#,#5/25/2012#)"
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:ScrollBars := 2/*exVertical*/
oEvents := oSchedule:Events()
oEvents:Add("05/22/2012","05/23/2012"):AllDayEvent := .T.
oEvents:Add("05/21/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/24/2012"):AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
290
|
Can I force the schedule grid to only show a single day and then to step through each day using either a custom button click or using the built in schedule calendar
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:SetProperty("SelectDate","05/20/2012",.T.)
oCalendar:Select(5/*exSelectFocusDay*/)
oSchedule:OnResizeControl := 768/*exChangePanels+exHideSplitter*/
oSchedule:ScrollBars := 0/*exNoScroll*/
oSchedule:ShowViewCompact := 1/*exViewSingleRow*/
oSchedule:AllowMoveSchedule := 0/*exDisallow*/
oSchedule:AllowResizeSchedule := 0/*exDisallow*/
oSchedule:AllowToggleSchedule := 0/*exDisallow*/
oSchedule:AllowExchangePanels := 0/*exDisallow*/
oSchedule:AllowMoveTimeScale := 0/*exDisallow*/
oSchedule:AllowResizeTimeScale := 0/*exDisallow*/
oSchedule:AllowMultiDaysEvent := .F.
oSchedule:SetProperty("Background",36/*exScheduleBorderSelColor*/,oSchedule:Background(37/*exScheduleBorderSelColorUnFocus*/))
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
289
|
Can I colour the background of the schedulers grid from a time point to another EG 9:00 to 12:00. This is to show users that they can only book appointments in this time zone
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oMarkZone,oMarkZone1
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:OnResizeControl := 768/*exChangePanels+exHideSplitter*/
oSchedule:Calendar():Selection := "06/27/2012"
oMarkZone := oSchedule:MarkZones():Add("zoneA","06/27/2012 09:00:00","06/27/2012 11:00:00")
oMarkZone:Pattern():Type := 0/*exPatternEmpty*/
oMarkZone:LongLabel := "Yellow"
oMarkZone:SetProperty("BackColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,0 } ) , .F. ))
oMarkZone1 := oSchedule:MarkZones():Add("zoneB","06/27/2012 12:00:00","06/27/2012 13:30:00")
oMarkZone1:Pattern():Type := 0/*exPatternEmpty*/
oMarkZone1:LongLabel := "Green"
oMarkZone1:SetProperty("BackColor",AutomationTranslateColor( GraMakeRGBColor ( { 0,255,0 } ) , .F. ))
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
288
|
My programming language has the following format for date 2012-05-24-13.04.06.810000 every other format returns a compiler error. Is there a possibility to use a string for the date
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oMarkTime
LOCAL oMarkTimes
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := oSchedule:ExecuteTemplate("#5/24/2012#")
oMarkTimes := oSchedule:MarkTimes()
oMarkTime := oMarkTimes:Add("timer",oSchedule:ExecuteTemplate("#5/24/2012 11:35#"))
oMarkTime:Movable := .T.
oMarkTime:SetProperty("LineColor",AutomationTranslateColor( GraMakeRGBColor ( { 0,0,255 } ) , .F. ))
oMarkTime:SetProperty("StatusEventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 0,0,255 } ) , .F. ))
oMarkTime:SetProperty("TimeScaleLineColor",AutomationTranslateColor( GraMakeRGBColor ( { 0,0,255 } ) , .F. ))
oMarkTime:TimeScaleLabel := "<fgcolor=0000FF><b><%hh%>:<%nn%> <%AM/PM%>"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
287
|
How do I display a picture with transparency
PROCEDURE OnPictureClick(oSchedule,Key)
DevOut( Transform(Key,"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oExPictures
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:PictureClick := {|Key| OnPictureClick(oSchedule,Key)} /*Occurs when the user clicks a picture within an event ( Event.Pictures/ExtraPictures ).*/
oSchedule:BeginUpdate()
oSchedule:ShowSelectEvent := .F.
oSchedule:Calendar():Selection := "05/24/2012"
oExPictures := oSchedule:Pictures()
oExPictures:Add("pic1","gCJKBOI4NBQaBQAhQNJJIIhShQAEEREAIA0ROZ6PT0hQKYZpIZDKBJkIgKByN5mNJsMsKPABVqXBI4KjrD7HL6GWKPJKiCIhMiySidKxbOzZZJWMLsGL2FqyLjZMonNa2CyiZDOUqsQqUEq0ZCNISFXDIFxzZ4hUrbdrefZ/fz3ZgzZ75Tz3XjvHZnZznPieb55AKgAqmRyOOzEhR7XirWaWQQMTa+QIhDbZOZAAoYUCPDAQG7FXI4JRrNCoIRdPyyFr0AYifDUKZ+PCufK4RReALLUbtdBHSrGTCCNKqT4MbRqUxxQx+CAAEQ2VCBbxqGaLYDZNgzFbCbLDarRCrqMYMM6cWqpHKUDqhZjnVijEoLcp0FCjVg2OYhTjN/QWk4bo4iseBsAcABIDoPA5g2HgADIkQfDCNxwkEQYnFmAIAB4OJHGcKAPioGRKFKdh2g6UB8iiZ5QkYQp3gKWhDlsWYmAARBcgCIAUniVpmiSA5AF3A4wG8P41nGWwDDA" +;
"W4MAAIpSG+bRzBoGx3AeCJhh6C4ljCUJGnSRBUFKAIQA6EgIHMWBoHqYgAngHJDCALBmhCCAfHOARAScUBvAmc5zHYXxoguXQ8DEMIAH8dI8HmP4/AyQJAEAYAoHqRByEQGJiECBAzAkKIpBYNIcikAp8kcZhDn4EBChmUoMgqHIqhiWoIgaDImgyVQImaRw/F0EZGCcSw3DaM4Kn6GBBhwYYZDGZo3C+RgOAmNQnhYeYqgsTZenEVgSFYLo2CydhGg4OROF2HJjlydR7i+cJjDGFo8BgHgVl4Po+DufJRgcbQOlkCxyKuCJNAsdwIhSC4mgieYKkeHJWD0Ih8BQaYYkkMYppwTg0EsFhJC0SxEkgeodDSFpTheV5SDgLBIieRIigyVo5CeOpymoWhtEQfRACMR4zE2KxRnsV5dF2ehFCeC50G+GBkBiZgaCUGYnBySY+BsdIuEkJJJDSSRsjGeYqEWOhliYVYOHWDYbFuNhFmcS5siqbZrnGLYOh0Dp" +;
"PhyXo7D8d4ZHGXR1CcdRAnsMh7GELwIHiSx7CiXY0HYNZ1nOcoPg0SB+CWLwwGqUpbFAQJwEeEImlCVQwk4cJxAiFRIhMS4ulGYRRlmMQVDEHZxG8YxXhIaQSniLhIiaGwnDiJZGicZYnjeZw8D6OoSkWEIthwI4emudwtGwepNhuLQ3F8Zojm4bQrhALo0D0HZwCcJwoimeI0ASWR6CAJkJQORfAiFcLIXgahaiGCgMsKIpw8DPH8H4Pj2BhjrBMGQGYfxFjuEGIsB4rxbg+DSFsPAxBtChHoAQaYmRojVG0D0e6JALjVD2K0F4qxfjjGyPIRY/QXi1AOAILwFQGgOF8KYDwOgdBsHmCYcobRtjIHoGgZAmBgi7HgPcWoHxTAmCQCcVwTgDB+FYJgfQMAOj0F2PoZgkRMjeKQLkWATwdDzEkPMF4FxzAXDGJYfAlgPAuB+FkeIWxuizC0LkUwvQbD9ByHIDouxvBCBgCMCAvh4CXCMEgSA0BJDEH+As" +;
"fwMgfjhDeL0Ro/xkgvH4JMXA7RYjyAONgPAWhfjyCuBEcAFRSAWE4BIOwEAUgTCaIYfA4wSBUAcAsDowQOBFA4J0Hg9h2B4EmCQTYVBdB0FwIwU4rByjJGmHIRQ8gJAKB4IoZgShaDKAQOUIolQkjVBuGoSw6hugaFaJoeoWgajaDKDoO4dB5j0FcJ0Zw1Ang3CQDEdgNQnA6EmHgGw4QuCiCSAKFIXBgilEwGcLAZAtDmC0N0WgLhaApFiK0HgfxniuGKP4GIvhrhhGgHEZgaRtB5GSBUcIhg5BnHkOAeQFB5A6DiEEao2xoDHH0KIQ4bxYBfFEP8RogB5BfA8AQHwvwqAZBIBURgCgwgPAqAkKYCgfgTHCBwDIegcgjFUDQXQPQzA4DsCkDwnRABNAwE8OgTw5C6AkJEPgPRSg+DqCANoMRBjuHUKEJglQWDrHYOATg3BuDGDWEMa4CQbj3HMB0Z4Pw5jLFuCAWYsB/D2DgBEUQmB1iuDEMkfI0hUC" +;
"yEkPIfwihKgqGsGobIGhNhfFGGoZY6gDDuGWDceANA1A2DyDUM4txaA/EwG0bo0wTDXEcH8Sg/BcD2GSHQC4pgtiuGOOkNIRg3hbG+MIGYjhzgaBeHwL4FgHAMAYFIfgJh4nJBQGkfAwRNiFAiO4KIlhoiKFiOoO4EwPiYGONUE4RATg6BOMcUwEApgZGmP4X4lxnjYGaLIZg7RNirH6FQG47xZCAC6OQLK5B1BYF8LgOQZAqh0FqGcBo/xMhpE6HsXomQwBKCwIcfA6w/DxA+IURAIxwgmBSCMKoJgOhFD0JMeIkQdhREwFAEQKRFioAYKkJIqQlhpBYFEPYUQui0GCGgFI9BlCOAUDoS4nRhA7HOOkFYdguhgEgGYUgZB2DeE6IIYIMQEgyAiPYHgYgnBlFiNsPYghKiODqISfddhPgVEOCQE4hg5iWHWPEfwfB3BgFYPkAIWQPAOC8BIb1MwrD+QsNEQ43ACAMAKGUQgsBhBoHCGUSNrxBBoEqNgG" +;
"o8QMAJF+MMOwRxGCOFUBwHYdhODvDwMEBILgk21AKKkOI6RrgyD6LIDoJxNjkDUOQF4yAXgoC4FMXgqhKCiE4KACQow9D5CoJgLQiA9CwEMLUYwOxmhAFaEAdoSwdBBF0CEPQEWWDrGOBoEgGhTAaDyBsPoNgXA4CmHIWw+guCDCSJsNIjxsgADcNQPg2hxC2FKLACo2hNDFEMMcKw/BeCcE6LYXoGRvDJGCN8GIxgUjYAyOUbg6BpDrB0OYWw5AgjtGSOoEofAgjRG2NgY4+RRCfBeKUN4qQvi7H+HAYAchwCOCWAcQQZBBFiG4EIUYww3CFFuEQSgRAlBdDMIwCQiRrCMGCMcIwxhuiKDeE0PAlxCC8GFZQS4YhIgaEkJYS43hLAxE8EkTodQUBbBWMcHoNxy0lHqOETYyAeDeD4I0AQlRhD0G2E0O4PgKCjHeEoSgmBKCGEsBUS4vxUA8C6M0K4ox7irD+O0VouhfD7FUA33I+gmiXE0IsLY1gtip" +;
"G0CQbQLQPjFDuDQHw2RtjFGsK0bw4x9j0CcO8N4/RtBnhSgvAcBehmAOh0ANgiAhAnhih8gwh1gbhugRhSBRhDhjh2Bvgyhfh3gPhThOBIBOA6B9gsAYAah+BdhlBWBtAuBoBThtB8gnhFheAlhcByh6BKhvAahNBnh5B1gJB1g+hCAsgAAbB1gOguAJhIAoAmhFBvqzACABh0BlgFggA6CaBvBQA7BDEHAaA0AABoAcgGBEACg5AAgYgZgLAIBKgFBBhWh9AggCAIBoBNgAANA9AJhwABBxBwAKAYAAALCJu9ADAYAFBLExBEAiBEgmBEgxBEANBENbhmgJh5gJBNgJgzgJBfgRAvAhpKhnAQg5AIpkARASA/ASKGAPBJhZBIAdBJAbARh7n4BIhshkAnAZDVgkBZAUg5AWh5AVB5AEgFAbBFA4BFACglA5hlAfAVAChVAtBVAig1AQh1ABBNB+gaAcgUA7AqAbAWgTg2gfB2gSB9AIBdA1BDh2BHAn" +;
"BdAZg6Apgdh+h0g7lCBoAXh3BJBugahkBwBihkBkAsBYgtg/h7gNATBNgkhIgUhBg0gzI6BZgJRJglhvAvARgrAtBrALBbBFh2BxB2BZh9hFAcgOAcAdAcgCgcBzhcAVB7h9g5BlgxhohsArgDh5A8heA8BKh8hMB8gzB8APgPBmAdByAShQAVgUAWMMAaAThuATgpAWhNASgLARB3ASAwg+AsEwhiAoimBTBxhUAJhEAJhVhJBPhSBTBSBjgyhvBPlWAbgUgfhRhYBUAkAoBTAoBQgrgygfyhgTBShXBSgwhUh0hWgKhTguhQBphRAdhWAjhoBvg1gQA0g0A1AKACAehLgegzgrgmhcAmBahmB+A4AihzAhhLA6ArAFBrAfAbAyhbAPh2hYB7BzB8AOBDgwhTg+hnALAXB8hXBph3AxAPA/BPA2gLg7A8hxg+AlAXANB9ARB+A6B+h5gBgEBAg9BLhFBBAUghAWAhANhhhsgRgBARBvgjAUgiALhjBp" +;
"Big8hjhHgSA1ASBqgvA4gkhzAmgkglhRgnB7hlh8BKA0hNgxhMBtg7guh5gjAzhPAtB/BJgBBmhhBvAdhDAighg7g2glAzBlg+AVhUAVAphVAHhqURAGhvh7g0AgAahvA2FigMg2BhhaBrg6AMAegTA6AVi5B6BlgehNgMgoA9gigMAZA/hBgMgGg+hfgbAvAegSgbApgegXhZhqBagzBYgogfgwB/Cwg7hgh/hDA/gTg5B+gNh/gXh6B8hbh8B/hEhfASg2h/BHh6BfhZBbhuAjB/g9h7BbBth0h/gbh2Ayh/hAh+h/gnh/Ajh3AwgnA/gigPBzBPBVBegigfA1h8BPhshr1HgNhvAxB/hoBdgGgBhZh3sUhMh0gmh1hLg9hIgchQB7BthugQh5hbgugth6BTgLi/ALBkocoPgCA/BQBfhmh+hXhzA/hzh+g7B1hbgch/heh4gvhEg3hsBfBOgbA2B9ArhrANhPTSKXAMg7A+Bhh4AfgZh/AVhdg/hz" +;
"B7BTBsgfh5B+gdhZh/g7oQBogSh/BMrPhUhYBshvheBfA9AThph7ANhvhNgog/hZBNg/hdhvgIAxhjB2hHBhhOBtg1gPBCg3hZBDAmhDg0gfhNhAg8xMhgBiBvkig7BGgKBHBDBfBJhDBWhPg6BPxKAvBOBUhPB5hMhLhAh0mXBXAFhhB/A3hXBIhwB9AAgUBKg4AHA8AMgdgDhuB8hGghhcACgUAAgOA4AAA8AQABh2BQAegHA2BOB9BYhxhrBAA/hfg7hah4BCBrAxgABkAdAcK4BtgsAshdhZCSAVglgFgbASgeB3AQAPhNhIFJ2TBnhahchDBBh9gQBogABSAlhhBUgbBLANBvA+hbh+gAgWBzB5BXBWhFh/knAAAChpAkgiAggqAsAEhigrAkgmASAygKB/BVhVB7hTBNg3BNA2hQBOg4BAAAgiBhB1BIA8BMgCAxBxAGAbhBAJgJgHBnAkhyhQBjBhgmAoBBgwgaAPBghJgLgShogYAxAIAZAZ" +;
"AghLBhhQAEgPAEAwgBAwhIgkBBBwhwAYBhhsBoBhhtAbAqArgrh8hehLBVAqA7grgXhPA+Bkglh+h6i4hfh7hehygvgMB9hPhEh9gXh/AKgihUhBh/A1hwA1gwAdh8ASg4AEB+ADh8AAB+AFh8AThHBxg7B4BmhFBZABAABjgbgwh2gBg4A8grArB/3UgDgQBfgzhpBzhpgUhOYogKBlBZB+ARgAA+NxgDhZgWBcgKg9BfgjBRhogngj4zBCg6AfApAzBwB+OiBtA2AbA/hHqYg6ADBZBMBNgfgfAfBfByh4g8BUAiAkgyBMBAg4AcA+BsgyAZBGgRgFA/gbAIh/h6h2AMh/huheg9hbB6h6g6hJhA1zAc5RhhgN5TBLASB3gIXagQAMAGBdAghJhUAvhahohBAiBshzBzBTB4A9AzhTgDh9AOAZBjBfAPAOAeA2ZlBKAJB61xhBE+gmhKATiWhnBvhlhrAcgMghhGg2hBAQA4B85xBWBQBQXiBIAcho" +;
"hkhih/gN36hyBqhiDRgABQgoB0AJAKBvAbAkAxhlBzAVgVAVBJA2gbANg5gdAOAWBrh2gzAW6HBIiagwh9hRhiBTBGAVgAgNB3g5giB/grARBlA6B/gsBhhjaTB2A0AaBQhahah6hWBVBVBlAUB+hNAEh2BVAtkNhSgFBxAAOjBOg2gxBhBTgnAzB9ADABAAh/BohRgjgzBPhrhVgaAaAagihWArSxA0gGhzB3gBhgAdhVPTgOhgA8gShjAsgcgjhUhcBdg+zcBshsgsgtgvAvAPA5hdguBWBUs1LxBbh7gsBahLhzBtjjBpg9AABDgjA6hVBtB0hygt7IAhAz7Jg3AkgkhEtvh5hYhRBhAhBzB6g9AsgwA3hng0AFgNB6hHB7hRBrgxAcBaAGVWhYgehXgjhLgcBvBththxhd7egugB7gBThoAzh57igHA5A3BYgsW8gshMgiAgBZgQh0AKghA3hLsfAGAwAWB0ARgagNBXhWBWAEB+7yBTga7zhpB6" +;
"BqBKBmh0g6AZAxBdhuhnAvWAB6huA0BGhIhGBzuRgcgThpAZAABigYAUhThRhbcEgEBmgpgHgWcHgsAUh+g6B8AsBoA+B6gGgGgxBTB6hVA2h2ACZYAxhSAAhIASB0gngQAphyg0hf3pAJgrAMBwg4BZAYgVAihihKgVhzgMBhg/h9AAAqBRh0BbgTsbgHhwAbhFATANhNBMhMhYgwhlhihRAThT6WBahYh6AzhZgLBAA7h6ALhJgLBZBnhzhthAhAhGB7h7htOfA0hzh4gxhJgBg6hThzBlg4hchyBFc/AsA0hIBihGEnB8BQgvAkgBggAhAmBvBrgngNBGhTgTAThWg1B5gsgAhABRBTgZB+AYAZBxBMBMhPBbJ9BohlhIB/Awh+g/gOAAAuBhhBhUB2gXBSgagKgXgXAXAtA5AXAdBvhCBJBKgrgqBEAHhjBjhO7dBthhBGh7B7BaAdgAzWgxBthXBTACAoAuAuAOBBBxgXgpF2AFhEhtgHgDACg1" +;
"AfARAiVxAHA4Af9zhc0CB3BOAoATApBWhCp0gJA+hTA7gnAxhWgEhqgEgQB+BzBweFANBGBahVgZB6oehXBwBrAphiAkBCAhhbB0AEBLA3guBfg/AtArgvgXhVGUhfBPhwBlHFBYhcBlh0AxAYgb6phyA0A3g3hPgAAEA9ACgpgqBNAPAPAWBuB1B1BVBUgNBbgvBUhvgPhqgdheBoBxgUAFgiAsAPgN8VhvhxBWg4ANhRBSA+hNB8AwASAjh+B8B8AcAMhMg3A0DThhgxhRgGBahxhggBApBEWFBmhS+/BBBhhwgIB4BgAYAJhJgOA2BDARgAhmF6A4gGB8Bo/Jgrg/Bfh/hXBnA8gOAEAWgZAUAIH8ApAshmA8Bjgcg5/Ugehh/WB3gxhNhugiAaA7AcBFgcgRADhSBWAThPBzgyBPALgSAABHABBRhCA72hBpBpApA/4BBrgBhKBFgnBfAZgYA2grgMhWBAgkAChgBBBWhzBiBkh0BghxeEZdALg9" +;
"iNBvbw7whhhvBbgwgIhygrBfgrBTA6AhgvhjAYg+haBAF4vH4cze70OQyenwMnkQoiQrzCFQA9SUXGy9CMMAuywARTOoQYIFaLgw9RErSKcCginiCw7MHqeDoXjsuW69iWxWKDgAjGAaQQvTiMBuN1ugSmcgaaDsOSyDjA/Tm2FEN2E33AMEwTlUtAACAgAVAM2yhh0O0gVFuJCQHnogCO4QonwkVR4ShoaiOHmq/iCPTwiQmuBmgXGjgqjh2RA2HCUfHoiES4gi7EgcyU/xymE4UwSNCU3EMVA2YikFCiSycVCIBBGR2CdGQUBU9wqWVswAUgRIwGwIlkBFmImECyGcEUL3SESm1HIOFS9kgxRQsQIJCosyAmQg8HIslA+RYOEI6EwtS2cHyiiYJHAlAC0iiAUmEzEiksmHUrWUKBqAoih0OMyAIAAKSQFwnRTAEmS9Mwa36GQOhhCc5BcA8gAcFAfTJCEOSiDEsSaNEuC0EMrjRD8XB4LYziiOIJgN" +;
"ACNAAEkRROEQrhCGAgkBA")
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00"):Pictures := "pic1"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
286
|
I need a border around each event/item on scheduler. Can you direct me to propery to use (to all)
PROCEDURE OnAddEvent(oSchedule,Ev)
/*Ev.BodyBackgroundExt = "[frame=RGB(0,0,0),framethick]"*/
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:AddEvent := {|Ev| OnAddEvent(oSchedule,Ev)} /*Notifies your application once the a new event is added.*/
oSchedule:SelectEventStyle := 48/*exLinesSolid*/
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:OnResizeControl := 3073/*exCalendarAutoHide+exCalendarFit+exResizePanelRight*/
oSchedule:StatusEventSize := 0
oSchedule:SetProperty("DefaultEventPadding",-1/*exPaddingAll*/,4)
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oEvents:Add("01/10/2001 09:00:00","01/10/2001 13:00:00")
oEvents:Add("01/10/2001 12:30:00","01/10/2001 13:00:00")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
285
|
I need a border around each event/item on scheduler. Can you direct me to propery to use (distinct)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:SelectEventStyle := 48/*exLinesSolid*/
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:OnResizeControl := 3073/*exCalendarAutoHide+exCalendarFit+exResizePanelRight*/
oSchedule:StatusEventSize := 0
oSchedule:SetProperty("DefaultEventPadding",-1/*exPaddingAll*/,4)
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00"):BodyBackgroundExt := "[frame=RGB(0,0,0),framethick]"
oEvents:Add("01/10/2001 09:00:00","01/10/2001 13:00:00"):BodyBackgroundExt := "[frame=RGB(128,128,128),framethick]"
oEvents:Add("01/10/2001 12:30:00","01/10/2001 13:00:00"):BodyBackgroundExt := "[frame=RGB(0,0,0),framethick]"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
284
|
How can I change/specify the caption of the groups, when the user clicks the drop down button
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oGroup,oGroup1
LOCAL oGroups
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/24/2012"
oSchedule:DisplayGroupingButton := .T.
oSchedule:ShowGroupingEvents := .T.
oGroups := oSchedule:Groups()
oGroup := oGroups:Add(1,"Group A")
oGroup:Caption := "<fgcolor=808080><c><b>Group A</b><c><br><font ;6>France, Romania, Albania and Switzerland"
oGroup:Visible := .T.
oGroup:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 128,128,128 } ) , .F. ))
oGroup1 := oGroups:Add(2,"Group B")
oGroup1:Caption := "<fgcolor=FF0000><c><b>Group B</b><c><br><font ;6>England, Russia, Wales and Slovakia"
oGroup1:Visible := .T.
oGroup1:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,0,0 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00"):GroupID := 1
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00"):GroupID := 2
oEvents:Add("05/24/2012 11:30:00","05/24/2012 13:30:00"):GroupID := 1
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
283
|
Is it possible to hide the group header, but still display the groups/captions
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oGroup,oGroup1
LOCAL oGroups
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:SetProperty("HTMLPicture","pic1","gCJKBOI4NBQaBQAhQNJJIIhShQAEEREAIA0ROZ6PT0hQKYZpIZDKBJkIgKByN5mNJsMsKPABVqXBI4KjrD7HL6GWKPJKiCIhMiySidKxbOzZZJWMLsGL2FqyLjZMonNa2CyiZDOUqsQqUEq0ZCNISFXDIFxzZ4hUrbdrefZ/fz3ZgzZ75Tz3XjvHZnZznPieb55AKgAqmRyOOzEhR7XirWaWQQMTa+QIhDbZOZAAoYUCPDAQG7FXI4JRrNCoIRdPyyFr0AYifDUKZ+PCufK4RReALLUbtdBHSrGTCCNKqT4MbRqUxxQx+CAAEQ2VCBbxqGaLYDZNgzFbCbLDarRCrqMYMM6cWqpHKUDqhZjnVijEoLcp0FCjVg2OYhTjN/QWk4bo4iseBsAcABIDoPA5g2HgADIkQfDCNxwkEQYnFmAIAB4OJHGcKAPioGRKFKdh2g6UB8iiZ5QkYQp3gKWhDlsWYmAARBcgCIAUniVpmiSA5AF3A4wG8P41nGWwDDA" +;
"W4MAAIpSG+bRzBoGx3AeCJhh6C4ljCUJGnSRBUFKAIQA6EgIHMWBoHqYgAngHJDCALBmhCCAfHOARAScUBvAmc5zHYXxoguXQ8DEMIAH8dI8HmP4/AyQJAEAYAoHqRByEQGJiECBAzAkKIpBYNIcikAp8kcZhDn4EBChmUoMgqHIqhiWoIgaDImgyVQImaRw/F0EZGCcSw3DaM4Kn6GBBhwYYZDGZo3C+RgOAmNQnhYeYqgsTZenEVgSFYLo2CydhGg4OROF2HJjlydR7i+cJjDGFo8BgHgVl4Po+DufJRgcbQOlkCxyKuCJNAsdwIhSC4mgieYKkeHJWD0Ih8BQaYYkkMYppwTg0EsFhJC0SxEkgeodDSFpTheV5SDgLBIieRIigyVo5CeOpymoWhtEQfRACMR4zE2KxRnsV5dF2ehFCeC50G+GBkBiZgaCUGYnBySY+BsdIuEkJJJDSSRsjGeYqEWOhliYVYOHWDYbFuNhFmcS5siqbZrnGLYOh0Dp" +;
"PhyXo7D8d4ZHGXR1CcdRAnsMh7GELwIHiSx7CiXY0HYNZ1nOcoPg0SB+CWLwwGqUpbFAQJwEeEImlCVQwk4cJxAiFRIhMS4ulGYRRlmMQVDEHZxG8YxXhIaQSniLhIiaGwnDiJZGicZYnjeZw8D6OoSkWEIthwI4emudwtGwepNhuLQ3F8Zojm4bQrhALo0D0HZwCcJwoimeI0ASWR6CAJkJQORfAiFcLIXgahaiGCgMsKIpw8DPH8H4Pj2BhjrBMGQGYfxFjuEGIsB4rxbg+DSFsPAxBtChHoAQaYmRojVG0D0e6JALjVD2K0F4qxfjjGyPIRY/QXi1AOAILwFQGgOF8KYDwOgdBsHmCYcobRtjIHoGgZAmBgi7HgPcWoHxTAmCQCcVwTgDB+FYJgfQMAOj0F2PoZgkRMjeKQLkWATwdDzEkPMF4FxzAXDGJYfAlgPAuB+FkeIWxuizC0LkUwvQbD9ByHIDouxvBCBgCMCAvh4CXCMEgSA0BJDEH+As" +;
"fwMgfjhDeL0Ro/xkgvH4JMXA7RYjyAONgPAWhfjyCuBEcAFRSAWE4BIOwEAUgTCaIYfA4wSBUAcAsDowQOBFA4J0Hg9h2B4EmCQTYVBdB0FwIwU4rByjJGmHIRQ8gJAKB4IoZgShaDKAQOUIolQkjVBuGoSw6hugaFaJoeoWgajaDKDoO4dB5j0FcJ0Zw1Ang3CQDEdgNQnA6EmHgGw4QuCiCSAKFIXBgilEwGcLAZAtDmC0N0WgLhaApFiK0HgfxniuGKP4GIvhrhhGgHEZgaRtB5GSBUcIhg5BnHkOAeQFB5A6DiEEao2xoDHH0KIQ4bxYBfFEP8RogB5BfA8AQHwvwqAZBIBURgCgwgPAqAkKYCgfgTHCBwDIegcgjFUDQXQPQzA4DsCkDwnRABNAwE8OgTw5C6AkJEPgPRSg+DqCANoMRBjuHUKEJglQWDrHYOATg3BuDGDWEMa4CQbj3HMB0Z4Pw5jLFuCAWYsB/D2DgBEUQmB1iuDEMkfI0hUC" +;
"yEkPIfwihKgqGsGobIGhNhfFGGoZY6gDDuGWDceANA1A2DyDUM4txaA/EwG0bo0wTDXEcH8Sg/BcD2GSHQC4pgtiuGOOkNIRg3hbG+MIGYjhzgaBeHwL4FgHAMAYFIfgJh4nJBQGkfAwRNiFAiO4KIlhoiKFiOoO4EwPiYGONUE4RATg6BOMcUwEApgZGmP4X4lxnjYGaLIZg7RNirH6FQG47xZCAC6OQLK5B1BYF8LgOQZAqh0FqGcBo/xMhpE6HsXomQwBKCwIcfA6w/DxA+IURAIxwgmBSCMKoJgOhFD0JMeIkQdhREwFAEQKRFioAYKkJIqQlhpBYFEPYUQui0GCGgFI9BlCOAUDoS4nRhA7HOOkFYdguhgEgGYUgZB2DeE6IIYIMQEgyAiPYHgYgnBlFiNsPYghKiODqISfddhPgVEOCQE4hg5iWHWPEfwfB3BgFYPkAIWQPAOC8BIb1MwrD+QsNEQ43ACAMAKGUQgsBhBoHCGUSNrxBBoEqNgG" +;
"o8QMAJF+MMOwRxGCOFUBwHYdhODvDwMEBILgk21AKKkOI6RrgyD6LIDoJxNjkDUOQF4yAXgoC4FMXgqhKCiE4KACQow9D5CoJgLQiA9CwEMLUYwOxmhAFaEAdoSwdBBF0CEPQEWWDrGOBoEgGhTAaDyBsPoNgXA4CmHIWw+guCDCSJsNIjxsgADcNQPg2hxC2FKLACo2hNDFEMMcKw/BeCcE6LYXoGRvDJGCN8GIxgUjYAyOUbg6BpDrB0OYWw5AgjtGSOoEofAgjRG2NgY4+RRCfBeKUN4qQvi7H+HAYAchwCOCWAcQQZBBFiG4EIUYww3CFFuEQSgRAlBdDMIwCQiRrCMGCMcIwxhuiKDeE0PAlxCC8GFZQS4YhIgaEkJYS43hLAxE8EkTodQUBbBWMcHoNxy0lHqOETYyAeDeD4I0AQlRhD0G2E0O4PgKCjHeEoSgmBKCGEsBUS4vxUA8C6M0K4ox7irD+O0VouhfD7FUA33I+gmiXE0IsLY1gtip" +;
"G0CQbQLQPjFDuDQHw2RtjFGsK0bw4x9j0CcO8N4/RtBnhSgvAcBehmAOh0ANgiAhAnhih8gwh1gbhugRhSBRhDhjh2Bvgyhfh3gPhThOBIBOA6B9gsAYAah+BdhlBWBtAuBoBThtB8gnhFheAlhcByh6BKhvAahNBnh5B1gJB1g+hCAsgAAbB1gOguAJhIAoAmhFBvqzACABh0BlgFggA6CaBvBQA7BDEHAaA0AABoAcgGBEACg5AAgYgZgLAIBKgFBBhWh9AggCAIBoBNgAANA9AJhwABBxBwAKAYAAALCJu9ADAYAFBLExBEAiBEgmBEgxBEANBENbhmgJh5gJBNgJgzgJBfgRAvAhpKhnAQg5AIpkARASA/ASKGAPBJhZBIAdBJAbARh7n4BIhshkAnAZDVgkBZAUg5AWh5AVB5AEgFAbBFA4BFACglA5hlAfAVAChVAtBVAig1AQh1ABBNB+gaAcgUA7AqAbAWgTg2gfB2gSB9AIBdA1BDh2BHAn" +;
"BdAZg6Apgdh+h0g7lCBoAXh3BJBugahkBwBihkBkAsBYgtg/h7gNATBNgkhIgUhBg0gzI6BZgJRJglhvAvARgrAtBrALBbBFh2BxB2BZh9hFAcgOAcAdAcgCgcBzhcAVB7h9g5BlgxhohsArgDh5A8heA8BKh8hMB8gzB8APgPBmAdByAShQAVgUAWMMAaAThuATgpAWhNASgLARB3ASAwg+AsEwhiAoimBTBxhUAJhEAJhVhJBPhSBTBSBjgyhvBPlWAbgUgfhRhYBUAkAoBTAoBQgrgygfyhgTBShXBSgwhUh0hWgKhTguhQBphRAdhWAjhoBvg1gQA0g0A1AKACAehLgegzgrgmhcAmBahmB+A4AihzAhhLA6ArAFBrAfAbAyhbAPh2hYB7BzB8AOBDgwhTg+hnALAXB8hXBph3AxAPA/BPA2gLg7A8hxg+AlAXANB9ARB+A6B+h5gBgEBAg9BLhFBBAUghAWAhANhhhsgRgBARBvgjAUgiALhjBp" +;
"Big8hjhHgSA1ASBqgvA4gkhzAmgkglhRgnB7hlh8BKA0hNgxhMBtg7guh5gjAzhPAtB/BJgBBmhhBvAdhDAighg7g2glAzBlg+AVhUAVAphVAHhqURAGhvh7g0AgAahvA2FigMg2BhhaBrg6AMAegTA6AVi5B6BlgehNgMgoA9gigMAZA/hBgMgGg+hfgbAvAegSgbApgegXhZhqBagzBYgogfgwB/Cwg7hgh/hDA/gTg5B+gNh/gXh6B8hbh8B/hEhfASg2h/BHh6BfhZBbhuAjB/g9h7BbBth0h/gbh2Ayh/hAh+h/gnh/Ajh3AwgnA/gigPBzBPBVBegigfA1h8BPhshr1HgNhvAxB/hoBdgGgBhZh3sUhMh0gmh1hLg9hIgchQB7BthugQh5hbgugth6BTgLi/ALBkocoPgCA/BQBfhmh+hXhzA/hzh+g7B1hbgch/heh4gvhEg3hsBfBOgbA2B9ArhrANhPTSKXAMg7A+Bhh4AfgZh/AVhdg/hz" +;
"B7BTBsgfh5B+gdhZh/g7oQBogSh/BMrPhUhYBshvheBfA9AThph7ANhvhNgog/hZBNg/hdhvgIAxhjB2hHBhhOBtg1gPBCg3hZBDAmhDg0gfhNhAg8xMhgBiBvkig7BGgKBHBDBfBJhDBWhPg6BPxKAvBOBUhPB5hMhLhAh0mXBXAFhhB/A3hXBIhwB9AAgUBKg4AHA8AMgdgDhuB8hGghhcACgUAAgOA4AAA8AQABh2BQAegHA2BOB9BYhxhrBAA/hfg7hah4BCBrAxgABkAdAcK4BtgsAshdhZCSAVglgFgbASgeB3AQAPhNhIFJ2TBnhahchDBBh9gQBogABSAlhhBUgbBLANBvA+hbh+gAgWBzB5BXBWhFh/knAAACB5gkgiAggqAsAEhigrglg0ASAqgKBWgng7hSg9gdBPyphph0gQgeoOgyBNBMBIBMBnhjBsgEBJgMACAIgSBhAQAzAwg7BXA6A4BKgUBHB8Agg4BJgIgBA3ASAQAFAIhkhh" +;
"AEA/ABRgBIhQAFgTgQhFARAEgsgkhngmAMAdhJh6A3gdBUhXBHhzhaB5hFB1HEgNgasJAOB1Bq3OB3Aeh3vth3A9gSgkh/g5hJ01A/hthbB9hQB/gCB4DPgCA9BAAeBYAGh2AAhvgBAvhkBZBOBiB5gsB2gsACBwB8AFBWBegGA6AOLkgvgiBvAABIhvh/AnAvhUhShIBmgzBRhLAyg+gDABB3gBgOhAA6AmAuBDBvA7hTA0hfAagfgfhXhrB5A4gyACAHAHgHhdh+A/B/gTh8AcAvBlhgOnhfBngyAZK2A4BMAlgqBohVAJAUAKAFALgaAmgthBA7AlhigLh/ghBAA0LxBchch8g6A7g7hbh3B+heBBBgB3B3A3ARhtBLgsBfgXBXh5A/g+B/hqBzh5heh0BagohIgBg4B/ApAatAg6BdBBBWBrhMA8AbgGAhhlByg5AvB+gzhFhihxBxghAjgeBlgEByB5h8g5gMA8BQgtBRAGh6B7gjgTZzANArAr" +;
"grh+hquoAlhSgpB5B6B6A6BYBb57g858hcghAHhbAvhWhMhKAkBeKBguh/hRgNAjAjgjh6h0BshZg7AWALBZhD6KvyAtgtg7husuhJhJh7gYAzAihRhohJBnBtBGgNg9h3A4hogfgcAcA8ApBmBPBnhZAEAwALBngwBtp5gYAZgZhJg9h6BpBSgxA1g1hVga6XgsA2A3g3wIA9AR6pA9ARBIgYBnhjhxgTBRBIB2h3B0gYhuBxhRAHhPgnhciZh1gCAzAEgGBWBdADgPgoA/gXgIAEAuAKBbA+hRBBhRBohSgUAygAgIghgTh+hGAYBrghBQhoA2gNA7AEAQB5hxgmBSBpg0B4AJhChPg5ABAIBUBTgi4jAHBEBEgdAIhAB5hhA0gIggAhB5ACAWgahDgABFBjh3hThKABgJB5B2gzAagBBfhwB4AIh5BFAThbhohjBjBDT3BIgXgSgoBEhtgkAyAHARhkAtBoBrBrAzAqgMBcAXhgBbgkh7hghyAiBQ" +;
"BShSgShEgphFhzh7hIgzhgB2B2A2A4A0g0hUgXAMAGAlA6hNATB8k5gAgMgdBjBWB0BuBOBfA/AegBgBAjh8hTh3BZA9hoBUgBgKBRBvAvgChhhrhuAFBvA/AZBMgqB7B7h7hKh2h2g2gPg1A9hEgkANgOAjhhAwh9gxARAwg8B6heh3gQAdPFgiA/beAZABAd8lgQgKBEgPggBBAzhhBEgbhnAPBwg/hnA2hcBWB5AQBCA8gUBehjhIAfAABMAkB6BbhuhnBsgXgRggAAhhB5j+A/qYgEhbhrkOgqBuAIhVhuhrgyBuAuBLAdolAXBBggAGAyNFAABCgnhRALBUh9gdAFB6AOguhlAYB5hHhIByB3grB9hrAlhAAHBKBChCgCgNB8BdBf9XgngqhqhDgkAAAoAw7ShThwhsBrBoB7hRgvgBByg+AjhBBUgABkgJAuAjAMhEh+gggeAPA/gJg7BOhuh1ATBxBOgIvMAthpgv9wcYg1A1AFBnhmhmguh2" +;
"77ZQhiAGcchkgIgOhcBGhYBXgUBZbABVc5gTB1BEgAhJBUha+BB0h4+Chng4hjgyBygd7agAA1hCAQUPgRg8A7hNAQBQBwhaAFBQh0BCB4g4h1hoeRBhgp+Shnhxi8hhgygagABrAZAWBcBkgtgQA0Ahr4gkhLgvdwB/hzBtBagrgfBfA6h1hnAmguAiA8ANgLACA8AUgagOg3h0d5iBgBBCBjbIhWAGgYANAggsBthwBQAOzogx+yBHr+AGAuA0A0A2AGBPZoBnBAAwAIgnB5hcBmB3BWhWBWB+BdBcBcB8AZhsU6hxBuBgh7g7gwgVgBhuABiEh1giAmgBASAiABBWBkhAgZg0AEA1BRhQgNAwhyAgAMA0hsAxBNg7BsAbBmgQBxAUJZB1hQgMBZAVAPrchOBYgyg8gPg0hYA3gUAzAtBpB6gaB2Qvhhg/gEBoA8gshMg7AlAYgDBsBcAbACAKg6hWCthtqBAAhXgvhDgsA9hDAZAygthLADAVgSAk" +;
"hhBsANBLAAhZgdBTArhAAQBDgTh6gEBnBNBHAVhrAPBAFkUnmLgChRECkYhG03G4rBi83imysh3uoBMaTqulIkxwIyAHSCmCcCGclnAegWGTOzSSUVurCrHwKymKmBA5EeSAivxCGV8rEopTmNwCOnA+mkIQ6sSeiEQlkKHTkp36CVC7BWPDcJ3SmgBYAASSKTiIriEYEFAQ=")
oSchedule:SetProperty("HTMLPicture","pic2","gCJKBOI4NBQaBQAhQNJJIIhShQAEEREAIA0ROZ6PT0hQKYZpIZDKBJkIgKByN5mNJsMsKPABVqXBI4KjrD7HL6GWKPJKiCIhMiySidKxbOzZZJWMLsGL2FqyLjZMonNa2CyiZDOUqsQqUEq0ZCNISFXDIFxzZ4hUrbdrefZ/fz3ZgzZ75Tz3XjvHZnZznPieb55AKgAqmRyOOzEhR7XirWaWQQMTa+QIhDbZOZAAoYUCPDAQG7FXI4JRrNCoIRdPyyFr0AYifDUKZ+PCufK4RReALLUbtdBHSrGTCCNKqT4MbRqUxxQx+CAAEQ2VCBbxqGaLYDZNgzFbCbLDarRCrqMYMM6cWqpHKUDqhZjnVijEoLcp0FCjVg2OYhTjN/QWk4bo4iseBsAcABIDoPA5g2HgADIkQfDCNxwkEQYnFmAIAB4OJHGcKAPioGRKFKdh2g6UB8iiZ5QkYQp3gKWhDlsWYmAARBcgCIAUniVpmiSA5AF3A4wG8P41nGWwDDA" +;
"W4MAAIpSG+bRzBoGx3AeCJhh6C4ljCUJGnSRBUFKAIQA6EgIHMWBoHqYgAngHJDCALBmhCCAfHOARAScUBvAmc5zHYXxoguXQ8DEMIAH8dI8HmP4/AyQJAEAYAoHqRByEQGJiECBAzAkKIpBYNIcikAp8kcZhDn4EBChmUoMgqHIqhiWoIgaDImgyVQImaRw/F0EZGCcSw3DaM4Kn6GBBhwYYZDGZo3C+RgOAmNQnhYeYqgsTZenEVgSFYLo2CydhGg4OROF2HJjlydR7i+cJjDGFo8BgHgVl4Po+DufJRgcbQOlkCxyKuCJNAsdwIhSC4mgieYKkeHJWD0Ih8BQaYYkkMYppwTg0EsFhJC0SxEkgeodDSFpTheV5SDgLBIieRIigyVo5CeOpymoWhtEQfRACMR4zE2KxRnsV5dF2ehFCeC50G+GBkBiZgaCUGYnBySY+BsdIuEkJJJDSSRsjGeYqEWOhliYVYOHWDYbFuNhFmcS5siqbZrnGLYOh0Dp" +;
"PhyXo7D8d4ZHGXR1CcdRAnsMh7GELwIHiSx7CiXY0HYNZ1nOcoPg0SB+CWLwwGqUpbFAQJwEeEImlCVQwk4cJxAiFRIhMS4ulGYRRlmMQVDEHZxG8YxXhIaQSniLhIiaGwnDiJZGicZYnjeZw8D6OoSkWEIthwI4emudwtGwepNhuLQ3F8Zojm4bQrhALo0D0HZwCcJwoimeI0ASWR6CAJkJQORfAiFcLIXgahaiGCgMsKIpw8DPH8H4Pj2BhjrBMGQGYfxFjuEGIsB4rxbg+DSFsPAxBtChHoAQaYmRojVG0D0e6JALjVD2K0F4qxfjjGyPIRY/QXi1AOAILwFQGgOF8KYDwOgdBsHmCYcobRtjIHoGgZAmBgi7HgPcWoHxTAmCQCcVwTgDB+FYJgfQMAOj0F2PoZgkRMjeKQLkWATwdDzEkPMF4FxzAXDGJYfAlgPAuB+FkeIWxuizC0LkUwvQbD9ByHIDouxvBCBgCMCAvh4CXCMEgSA0BJDEH+As" +;
"fwMgfjhDeL0Ro/xkgvH4JMXA7RYjyAONgPAWhfjyCuBEcAFRSAWE4BIOwEAUgTCaIYfA4wSBUAcAsDowQOBFA4J0Hg9h2B4EmCQTYVBdB0FwIwU4rByjJGmHIRQ8gJAKB4IoZgShaDKAQOUIolQkjVBuGoSw6hugaFaJoeoWgajaDKDoO4dB5j0FcJ0Zw1Ang3CQDEdgNQnA6EmHgGw4QuCiCSAKFIXBgilEwGcLAZAtDmC0N0WgLhaApFiK0HgfxniuGKP4GIvhrhhGgHEZgaRtB5GSBUcIhg5BnHkOAeQFB5A6DiEEao2xoDHH0KIQ4bxYBfFEP8RogB5BfA8AQHwvwqAZBIBURgCgwgPAqAkKYCgfgTHCBwDIegcgjFUDQXQPQzA4DsCkDwnRABNAwE8OgTw5C6AkJEPgPRSg+DqCANoMRBjuHUKEJglQWDrHYOATg3BuDGDWEMa4CQbj3HMB0Z4Pw5jLFuCAWYsB/D2DgBEUQmB1iuDEMkfI0hUC" +;
"yEkPIfwihKgqGsGobIGhNhfFGGoZY6gDDuGWDceANA1A2DyDUM4txaA/EwG0bo0wTDXEcH8Sg/BcD2GSHQC4pgtiuGOOkNIRg3hbG+MIGYjhzgaBeHwL4FgHAMAYFIfgJh4nJBQGkfAwRNiFAiO4KIlhoiKFiOoO4EwPiYGONUE4RATg6BOMcUwEApgZGmP4X4lxnjYGaLIZg7RNirH6FQG47xZCAC6OQLK5B1BYF8LgOQZAqh0FqGcBo/xMhpE6HsXomQwBKCwIcfA6w/DxA+IURAIxwgmBSCMKoJgOhFD0JMeIkQdhREwFAEQKRFioAYKkJIqQlhpBYFEPYUQui0GCGgFI9BlCOAUDoS4nRhA7HOOkFYdguhgEgGYUgZB2DeE6IIYIMQEgyAiPYHgYgnBlFiNsPYghKiODqISfddhPgVEOCQE4hg5iWHWPEfwfB3BgFYPkAIWQPAOC8BIb1MwrD+QsNEQ43ACAMAKGUQgsBhBoHCGUSNrxBBoEqNgG" +;
"o8QMAJF+MMOwRxGCOFUBwHYdhODvDwMEBILgk21AKKkOI6RrgyD6LIDoJxNjkDUOQF4yAXgoC4FMXgqhKCiE4KACQow9D5CoJgLQiA9CwEMLUYwOxmhAFaEAdoSwdBBF0CEPQEWWDrGOBoEgGhTAaDyBsPoNgXA4CmHIWw+guCDCSJsNIjxsgADcNQPg2hxC2FKLACo2hNDFEMMcKw/BeCcE6LYXoGRvDJGCN8GIxgUjYAyOUbg6BpDrB0OYWw5AgjtGSOoEofAgjRG2NgY4+RRCfBeKUN4qQvi7H+HAYAchwCOCWAcQQZBBFiG4EIUYww3CFFuEQSgRAlBdDMIwCQiRrCMGCMcIwxhuiKDeE0PAlxCC8GFZQS4YhIgaEkJYS43hLAxE8EkTodQUBbBWMcHoNxy0lHqOETYyAeDeD4I0AQlRhD0G2E0O4PgKCjHeEoSgmBKCGEsBUS4vxUA8C6M0K4ox7irD+O0VouhfD7FUA33I+gmiXE0IsLY1gtip" +;
"G0CQbQLQPjFDuDQHw2RtjFGsK0bw4x9j0CcO8N4/RtBnhSgvAcBehmAOh0ANgiAhAnhih8gwh1gbhugRhSBRhDhjh2Bvgyhfh3gPhThOBIBOA6B9gsAYAah+BdhlBWBtAuBoBThtB8gnhFheAlhcByh6BKhvAahNBnh5B1gJB1g+hCAsgAAbB1gOguAJhIAoAmhFBvqzACABh0BlgFggA6CaBvBQA7BDEHAaA0AABoAcgGBEACg5AAgYgZgLAIBKgFBBhWh9AggCAIBoBNgAANA9AJhwABBxBwAKAYAAALCJu9ADAYAFBLExBEAiBEgmBEgxBEANBENbhmgJh5gJBNgJgzgJBfgRAvAhpKhnAQg5AIpkARASA/ASKGAPBJhZBIAdBJAbARh7n4BIhshkAnAZDVgkBZAUg5AWh5AVB5AEgFAbBFA4BFACglA5hlAfAVAChVAtBVAig1AQh1ABBNB+gaAcgUA7AqAbAWgTg2gfB2gSB9AIBdA1BDh2BHAn" +;
"BdAZg6Apgdh+h0g7lCBoAXh3BJBugahkBwBihkBkAsBYgtg/h7gNATBNgkhIgUhBg0gzI6BZgJRJglhvAvARgrAtBrALBbBFh2BxB2BZh9hFAcgOAcAdAcgCgcBzhcAVB7h9g5BlgxhohsArgDh5A8heA8BKh8hMB8gzB8APgPBmAdByAShQAVgUAWMMAaAThuATgpAWhNASgLARB3ASAwg+AsEwhiAoimBTBxhUAJhEAJhVhJBPhSBTBSBjgyhvBPlWAbgUgfhRhYBUAkAoBTAoBQgrgygfyhgTBShXBSgwhUh0hWgKhTguhQBphRAdhWAjhoBvg1gQA0g0A1AKACAehLgegzgrgmhcAmBahmB+A4AihzAhhLA6ArAFBrAfAbAyhbAPh2hYB7BzB8AOBDgwhTg+hnALAXB8hXBph3AxAPA/BPA2gLg7A8hxg+AlAXANB9ARB+A6B+h5gBgEBAg9BLhFBBAUghAWAhANhhhsgRgBARBvgjAUgiALhjBp" +;
"Big8hjhHgSA1ASBqgvA4gkhzAmgkglhRgnB7hlh8BKA0hNgxhMBtg7guh5gjAzhPAtB/BJgBBmhhBvAdhDAighg7g2glAzBlg+AVhUAVAphVAHhqURAGhvh7g0AgAahvA2FigMg2BhhaBrg6AMAegTA6AVi5B6BlgehNgMgoA9gigMAZA/hBgMgGg+hfgbAvAegSgbApgegXhZhqBagzBYgogfgwB/Cwg7hgh/hDA/gTg5B+gNh/gXh6B8hbh8B/hEhfASg2h/BHh6BfhZBbhuAjB/g9h7BbBth0h/gbh2Ayh/hAh+h/gnh/Ajh3AwgnA/gigPBzBPBVBegigfA1h8BPhshr1HgNhvAxB/hoBdgGgBhZh3sUhMh0gmh1hLg9hIgchQB7BthugQh5hbgugth6BTgLi/ALBkocoPgCA/BQBfhmh+hXhzA/hzh+g7B1hbgch/heh4gvhEg3hsBfBOgbA2B9ArhrANhPTSKXAMg7A+Bhh4AfgZh/AVhdg/hz" +;
"B7BTBsgfh5B+gdhZh/g7oQBogSh/BMrPhUhYBshvheBfA9AThph7ANhvhNgog/hZBNg/hdhvgIAxhjB2hHBhhOBtg1gPBCg3hZBDAmhDg0gfhNhAg8xMhgBiBvkig7BGgKBHBDBfBJhDBWhPg6BPxKAvBOBUhPB5hMhLhAh0mXBXAFhhB/A3hXBIhwB9AAgUBKg4AHA8AMgdgDhuB8hGghhcACgUAAgOA4AAA8AQABh2BQAegHA2BOB9BYhxhrBAA/hfg7hah4BCBrAxgABkAdAcK4BtgsAshdhZCSAVglgFgbASgeB3AQAPhNhIFJ2TBnhahchDBBh9gQBogABSAlhhBUgbBLANBvA+hbh+gAgWBzB5BXBWhFh/knAAADBngkgiAggqAsAEhiiig2AqUgBPA5hnB3Bshug3A9g7BbhthqALPBglN0gCgUoQh4AQAIgAgVgTAhBEAIBYACBIhEB4hggoASBiBKBsBJARRDhwBkgMABBrAQADA+AUAlAm" +;
"hGBJBaAVALghgSgaA2gpApgpgEgigEBehTBAhLB2g7Bdhdgzhnhih3gvg9AbA9gWhUAHgnB5BPhMgZh5hnh/g/h5hvgzAMB9hPgNh7gnh6h1vtAIA9hVAggVggAbAoWrgAB1ABhGhBg/AAg+hng4huAAB9BjhbATiLhihNgQB2gegoBkgxrEgxAQAQBGgABpAdgJgfgfhpgRBWh8h+tWgmhpgXAABgAzuAYRAhAtAEhfBVhVBVA/BsLNAWAyBpAZhRgChhBwg4BUjtB/LiAehMgCAeBwg+B9hiY9g7BThpgkgXAlA0AMgAgCBBhghshRAUBbBBBthOhYBxgvh/BgANAOgbg3hvAuAvgvAvAXBjhFgkB1hBADgHgPAkATBJh0gWAbBcgzgZA75YBbhUhWBaBqBegxhjgHAEg9hcBMg8BQg6V8h1gegPBXhOBjA0gAgkX2AFhggphNBmBOB+ZSgDBxBdAdAdhihWgagahXBdg7h3gzB6B6h6BvBmhIgkAy" +;
"A6uihKAGhAggBQAoAIBCBJgwAZBigZhTANhz5+A1hs5/g9A3g3hXhEAgBygXAuhdAyAshaA0AohiX/A1h0h8BThzheAFgLAWAcA9h/B+A8hOh/ApgxAABAh7gIgHB6g7BeBABghggghfBWhWgmgCAYADBrgYAJg9AAhehgB5hGBj6KBbAbA1g/21gEgQBMBs40AHgOAeB0AV6oAphxAyhiBHhghbhuoEB/AgA5gUgAAhBQhoBPhMBHgCgPBpBEAqgqAqBcBIg9guArArALAZgEABBMBqlEAzAohGQ8gAgjACgASQq7hNAvBvhoBwBhhfAmAQBfKYg7gEAgBBAFhQBuBFhcg7g0s6gSMxhhAageBgB4BEAHgjBKBJhOhmh2A7V4jtBGAuAogcA1hLAlAQKehwBFhdBxgshXgrgUgUAUAkBzhHBhAhhDgHA+glAdAJAWAAASh1hQh4A5ghg8g5Bvg7h1hLB0h0BohRhJBVAUAeAshgApgqBSBeBbA4gxhQ" +;
"BSBSASAxB4A7A6A6AsBnBOAfBOgegbAbOoYxAb5uBGgkgHAjhqBvgDAHh64bAOAHAYQPACh4BegTgpgVA68JhMh7h3hvh3hABKg8BqADvRBLhThqh3BvB2hBgICDA5hHAPgdhzA2Bcg4BggHBZhlhdh7h2B4whAoBDgagIA2BbAGAZB5gEgkABAAB+AFh0hMAXgvhfZVhqBrglglASBhAQhkAMBVARg9hUhdA9AVARBlhuBkgJgTgOAe8zBLBwhQgQhp7dhXhtBfTJBJBFBFhFhKhyhlhLhDgUAfBkARB0gyBhBpBrAKAAAwAGATAZhb9FBNhQgeFVgNBGhDgjhchnhzBmBMgJh0h1h1gZgngmgmhigHAAgFhZBthMAhhshygEgCAygFnlB7AoBIAjgbg0BRACgKAihchLgGAwAvguguhHBGBJgzDtB9BzAWgtgBBwAwgiBJhAgAAyhChTAQglg0AHgfASAXhNBTAkArtGhLAAApgtATBlhSA/gAAMAS" +;
"B/AMA9B9HUhPAyBzBzgrhWBIYwhVByBhgjhHB8ArBXgsgJgRAqhEABhrA4hxhDAygXBBBXheBRARAGAwgmBBgoBZBgBVh1hrAmgtAWALBO8sBkh5BnBPgPgkhLAEgqgBhjBihKAoB2goBgklgfBdBfgxgyhcBYhYg4hJBgAMg2hkhJAShwg1hrhXAsgog+A2VGBHhZA6htgbB/hOgdg7hBARhhhhgTBqB9BEAVgbgrh+hTBchsg/AHhCgUgBAlhehcA1AqhkBsA1iOBqPEgJhpBIATA+gfAvgWgnApA3gYASB725he22BXgJh3gCAggiAQhVBWBWBKAog/ByhBBhAhA61gAvggBmAiBVgRLNgYAPhvAqgth1gnhLAAhFmbhcguBugaBPgBAwAyAyBiBHAOB/gGgQAFBJgbgNB/hR/fB+BjhDgHglghhETkgkgIgsgggyhNAuAgBXAgBbBYAygqgqhQhbg7B3BOBSB6h8AjBThDh8gvgbhzCIBoBhB8f0" +;
"hNgIB7BEhghKBXBThdEpDkheg/B+hdB8Brh2htgzBVBAEADiS0kU52cjV4vDsbRgwy6gA0pl5EQke1MpQKMAa4iWgDwJU68n+MHuAScfxUfj+wi6EFuwHC5Wkhgkuwkc40G2qeE8elEOF8lHCNAeTwsMTwqWOyWeIGQjxIbyQB0AFHgLayJHARwI0iE+HuGQEAAlT0IR0KiDWW2I2EYcUoaE8/giYAEiGAEiijXAEGwpx4HmeAWQNXcBFGTwaQikDlE9Bo41iYTuOA4zjnB2qzk2NzeEy4YkGwlQIikAE8hGM805rEEAmAKmUtQEkHuO9yj2u1GofEONxMVR8SiSulw6EMjEESDOTgGgEQi2MjjU5mI5l4pSWl0s1e+vUCXC+iGQtjEIwOCXi+xqAGowVeoQU+jgeX63GgsHeq1CoTREEpAkL0hgNAA9AoFUQTRBYLzAJgIwAEQIhZAAZjNIEUAXMw+gUBQPCNHE0YFBsKgXC8Xg8DsRySGwhQFAWFQY" +;
"IE0gAB4pjjFcrhcPk4ziMUiy/AMzQwAIZwUPsxwgGsAg0AUCiCOgkQyhEAhFAAzAgCs6h9BYjAqCkgjiEQDA4BEhhuF01SdLoqjaGARwjIY4APF44QEC4JBwNwhDOHEDwRAYDwVF49QxFk9hBA4KQnPMh4BDw9hIEkKDFFgoBGL4IQiEYGS+OQZBdKYLDAIsSwLMM9xkMo+y4OsRRICEkAEBgqShCkEArOMeBBEwTCiCcPgiDoNQpE48A9P4owtJ0CxoMEsACFkQjIM0zQVCk8hRH4LT4LcoT2FkZAmBMeCyAA8QYIASQJBEnSWIg/BtMw0SpOkUDEBsayZAAEADK0GTrAYICzIsuTMLgkBNH45gnOU8QAEgAT5JcFCSCIGgTBkFiNJkHRzLE9g3CA5QJAk0CGBF7gAywSRFE4RCuEIYCCQE=")
oSchedule:Calendar():Selection := "05/24/2012"
oSchedule:DisplayGroupingButton := .T.
oSchedule:ShowGroupingEvents := .T.
oGroups := oSchedule:Groups()
oGroup := oGroups:Add(1,"<c><b>Group</b><br><c><img>pic1</img>")
oGroup:Visible := .T.
oGroup:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 128,128,128 } ) , .F. ))
oGroup1 := oGroups:Add(2,"<c><b>Group</b><br><c><img>pic2</img>")
oGroup1:Visible := .T.
oGroup1:SetProperty("EventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,0,0 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00"):GroupID := 1
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00"):GroupID := 2
oEvents:Add("05/24/2012 11:30:00","05/24/2012 13:30:00"):GroupID := 1
oSchedule:HeaderGroupHeight := -1
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
282
|
When using the CopyTo method to print a range of dates the printed page is not showing the timescale, is there a way to make it appear (as is, without calendar, multiple-selection)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oSchedule
LOCAL s,var_CopyTo
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:OnResizeControl := 768/*exChangePanels+exHideSplitter*/
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "#1/1/2016#"
oCalendar:Selection := "(int((yearday(value) -1- ((7-weekday(value - yearday(value) + 1)) mod 7) )/7) = int((yearday(#1/7/2016#))/7))"
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oEvents := oSchedule:Events()
oEvents:Add("01/10/2016 08:30:00","01/10/2016 14:30:00")
oEvents:Add("01/11/2016 09:30:00","01/11/2016 11:30:00")
oEvents:Add("01/15/2016 10:30:00","01/15/2016 11:30:00")
s := oSchedule:Calendar:Selection()
oSchedule:Calendar():Selection := "0"
var_CopyTo := oSchedule:CopyTo("c:/temp/test.png")
DevOut( "Look for c:/temp/test.png file" )
oSchedule:Calendar():Selection := s
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
281
|
When using the CopyTo method to print a range of dates the printed page is not showing the timescale, is there a way to make it appear (as is, without calendar)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oSchedule
LOCAL var_CopyTo
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:OnResizeControl := 768/*exChangePanels+exHideSplitter*/
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "01/01/2012"
oCalendar:SetProperty("SelectDate","01/01/2012",.F.)
oEvents := oSchedule:Events()
oEvents:Add("01/01/2012 08:30:00","01/01/2012 09:30:00")
oEvents:Add("01/01/2012 08:35:00","01/01/2012 09:35:00")
oEvents:Add("01/01/2012 10:30:00","01/01/2012 12:30:00")
var_CopyTo := oSchedule:CopyTo("c:/temp/test.png")
DevOut( "Look for c:/temp/test.png file" )
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
280
|
When using the CopyTo method to print a range of dates the printed page is not showing the timescale, is there a way to make it appear (as is, with calendar)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oSchedule
LOCAL var_CopyTo
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "01/01/2012"
oCalendar:SetProperty("SelectDate","01/01/2012",.F.)
oEvents := oSchedule:Events()
oEvents:Add("01/01/2012 08:30:00","01/01/2012 09:30:00")
oEvents:Add("01/01/2012 08:35:00","01/01/2012 09:35:00")
oEvents:Add("01/01/2012 10:30:00","01/01/2012 12:30:00")
var_CopyTo := oSchedule:CopyTo("c:/temp/test.png")
DevOut( "Look for c:/temp/test.png file" )
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
279
|
I've seen that all-day header can be limited up to 4, 8 or 12 events. Can I change that limit, for instance, 3 events only
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowSelectCreateEvent := 2/*exHighlightCreateEvent*/
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:ShowAllDayHeader := .T.
oSchedule:Calendar():Selection := "05/21/2012"
oSchedule:Calendar():Selection := "value >= #5/20/2012# and value <= #5/26/2012#"
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:AllowAllDayEventScroll := 4403/*0x23+exAllDayEventWheelScroll+exAllDayEventNoMax*/
oSchedule:SetProperty("BodyEventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 128,128,128 } ) , .F. ))
oSchedule:SetProperty("Background",165/*exScheduleAllDayEventScrollBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 220,220,220 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("05/21/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/23/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/23/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/24/2012","05/25/2012"):AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
278
|
Is it possible to highlight the newly created event ( runtime creation )
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:AllowSelectCreateEvent := 2/*exHighlightCreateEvent*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
277
|
Is it possible to select the newly created event ( runtime creation )
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:AllowSelectCreateEvent := 1/*exSelectCreateEvent*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
276
|
I have noticed that the all-day header change its background, if has scrolling events. Is it possible to change that (ebn)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:VisualAppearance():Add(1,"gBFLBCJwBAEHhEJAAChABRUIQAAYAQGKIaBoAKBQAGaAoDDQMQ3QwAAwjSLEEwsACEIrjKCRShyCYZRrGQBQTCIZBqEqSZLiEZRQCWIAxATGchwHIEQgND6cIDmMAHfj2PI+RZKMoRZJUExZFyERhASQZZoyN40UzOc6vfL9KRDEAEIRKAyTDLQdRyGSMMgEVBJBCbMiNBqhESIJo+GI4BhFYSUZalGSnO6gIBAgIA==")
oSchedule:AllowSelectCreateEvent := 2/*exHighlightCreateEvent*/
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:ShowAllDayHeader := .T.
oSchedule:Calendar():Selection := "05/21/2012"
oSchedule:Calendar():Selection := "value in (#5/21/2012#,#5/22/2012#,#5/23/2012#,#5/24/2012#,#5/25/2012#)"
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:AllowAllDayEventScroll := 4416/*exAllDayEventWheelScroll+exAllDayEventMax4*/
oSchedule:SetProperty("Background",165/*exScheduleAllDayEventScrollBackColor*/,0x1000000)
oEvents := oSchedule:Events()
oEvents:Add("05/22/2012","05/23/2012"):AllDayEvent := .T.
oEvents:Add("05/21/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/23/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/24/2012","05/26/2012"):AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
275
|
I have noticed that the all-day header change its background, if has scrolling events. Is it possible to change that (solid)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowSelectCreateEvent := 2/*exHighlightCreateEvent*/
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:ShowAllDayHeader := .T.
oSchedule:Calendar():Selection := "05/21/2012"
oSchedule:Calendar():Selection := "value in (#5/21/2012#,#5/22/2012#,#5/23/2012#,#5/24/2012#,#5/25/2012#)"
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:AllowAllDayEventScroll := 4416/*exAllDayEventWheelScroll+exAllDayEventMax4*/
oSchedule:SetProperty("Background",165/*exScheduleAllDayEventScrollBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 220,220,220 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("05/22/2012","05/23/2012"):AllDayEvent := .T.
oEvents:Add("05/21/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/23/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/24/2012","05/26/2012"):AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
274
|
I have noticed that the all-day header change its background, if has scrolling events. Is it possible to remove that
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowSelectCreateEvent := 2/*exHighlightCreateEvent*/
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:ShowAllDayHeader := .T.
oSchedule:Calendar():Selection := "05/21/2012"
oSchedule:Calendar():Selection := "value in (#5/21/2012#,#5/22/2012#,#5/23/2012#,#5/24/2012#,#5/25/2012#)"
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:AllowAllDayEventScroll := 4416/*exAllDayEventWheelScroll+exAllDayEventMax4*/
oSchedule:SetProperty("Background",165/*exScheduleAllDayEventScrollBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 0,0,0 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("05/22/2012","05/23/2012"):AllDayEvent := .T.
oEvents:Add("05/21/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/23/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/24/2012","05/26/2012"):AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
273
|
The user scrolls through the all-day events, when mouse wheel is rotated. Can I disable that
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowSelectCreateEvent := 2/*exHighlightCreateEvent*/
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:ShowAllDayHeader := .T.
oSchedule:Calendar():Selection := "05/21/2012"
oSchedule:Calendar():Selection := "value in (#5/21/2012#,#5/22/2012#,#5/23/2012#,#5/24/2012#,#5/25/2012#)"
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:AllowAllDayEventScroll := 320/*exAllDayEventScroll+exAllDayEventMax4*/
oEvents := oSchedule:Events()
oEvents:Add("05/22/2012","05/23/2012"):AllDayEvent := .T.
oEvents:Add("05/21/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/23/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/24/2012","05/26/2012"):AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
272
|
Is it possible to specify the number of all-day events to be visible
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowSelectCreateEvent := 2/*exHighlightCreateEvent*/
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:ShowAllDayHeader := .T.
oSchedule:Calendar():Selection := "05/21/2012"
oSchedule:Calendar():Selection := "value in (#5/21/2012#,#5/22/2012#,#5/23/2012#,#5/24/2012#,#5/25/2012#)"
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:AllowAllDayEventScroll := 4416/*exAllDayEventWheelScroll+exAllDayEventMax4*/
oEvents := oSchedule:Events()
oEvents:Add("05/22/2012","05/23/2012"):AllDayEvent := .T.
oEvents:Add("05/21/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/23/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/24/2012","05/26/2012"):AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
271
|
How do I disable scrolling the all-day header
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:AllowSelectCreateEvent := 2/*exHighlightCreateEvent*/
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:ShowAllDayHeader := .T.
oSchedule:Calendar():Selection := "05/21/2012"
oSchedule:Calendar():Selection := "value in (#5/21/2012#,#5/22/2012#,#5/23/2012#,#5/24/2012#,#5/25/2012#)"
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:AllowAllDayEventScroll := 0/*exAllDayEventNoMin*/
oEvents := oSchedule:Events()
oEvents:Add("05/22/2012","05/23/2012"):AllDayEvent := .T.
oEvents:Add("05/21/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/24/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/22/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/23/2012","05/25/2012"):AllDayEvent := .T.
oEvents:Add("05/24/2012","05/26/2012"):AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
270
|
How can I display the current week only, when the user selects the date in the calendar panel
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:OnResizeControl := 129/*exDisableSplitter+exResizePanelRight*/
oCalendar := oSchedule:Calendar()
oCalendar:OnSelectDate := 1/*exEnsureVisibleDate*/
oCalendar:Selection := "01/10/2001"
oCalendar:SingleSel := .T.
oSchedule:Calendar():FirstWeekDay := 1/*exMonday*/
oSchedule:ScrollBars := 0/*exNoScroll*/
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:AllowResizeSchedule := 0/*exDisallow*/
oSchedule:AllowMoveSchedule := 0/*exDisallow*/
oSchedule:AllowToggleSchedule := 0/*exDisallow*/
oSchedule:SetProperty("Background",35/*exScheduleBorderMonthColor*/,oSchedule:Background(34/*exScheduleBorderDateColor*/))
oSchedule:TimeScales:Item(0):AllowResize := .F.
oSchedule:DayViewWidth := 0
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
269
|
How do I capture the control and save it as PDF (Method 2)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oSchedule
LOCAL var_CopyTo
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "06/01/2001"
oCalendar:Selection := "value in (#6/11/2001#,#6/12/2001#)"
oSchedule:DayViewWidth := 512
oSchedule:DayViewHeight := 512
oEvents := oSchedule:Events()
oEvents:Add("06/11/2001 10:00:00","06/11/2001 13:00:00")
oEvents:Add("06/12/2001 10:00:00","06/12/2001 13:00:00")
var_CopyTo := oSchedule:CopyTo("C:/Temp/test.pdf")
DevOut( "Look For: C:/Temp/test.pdf file" )
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
268
|
How do I capture the control and save it as PDF (Method 1)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oPrint
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "06/01/2001"
oCalendar:Selection := "value in (#6/11/2001#,#6/12/2001#)"
oSchedule:DayViewWidth := 512
oSchedule:DayViewHeight := 512
oEvents := oSchedule:Events()
oEvents:Add("06/11/2001 10:00:00","06/11/2001 13:00:00")
oEvents:Add("06/12/2001 10:00:00","06/12/2001 13:00:00")
oPrint := CreateObject("Exontrol.Print")
oPrint:Options := "FitToPage=On"
oPrint:PrintExt := oSchedule
oPrint:CopyTo("C:/Temp/test.pdf")
DevOut( "Look For: C:/Temp/test.pdf file" )
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
267
|
How do I capture the control and save it as an image (JPG or BMP) (Method 2)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oSchedule
LOCAL var_CopyTo,var_CopyTo1
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "06/01/2001"
oCalendar:Selection := "value in (#6/11/2001#,#6/12/2001#)"
oSchedule:DayViewWidth := 512
oSchedule:DayViewHeight := 512
oEvents := oSchedule:Events()
oEvents:Add("06/11/2001 10:00:00","06/11/2001 13:00:00")
oEvents:Add("06/12/2001 10:00:00","06/12/2001 13:00:00")
var_CopyTo := oSchedule:CopyTo("C:/Temp/test.bmp")
var_CopyTo1 := oSchedule:CopyTo("C:/Temp/test.jpg")
DevOut( "Look For: C:/Temp/test.* file" )
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
266
|
How do I capture the control and save it as an image (JPG or BMP) (Method 1)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oPrint
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "06/01/2001"
oCalendar:Selection := "value in (#6/11/2001#,#6/12/2001#)"
oSchedule:DayViewWidth := 512
oSchedule:DayViewHeight := 512
oEvents := oSchedule:Events()
oEvents:Add("06/11/2001 10:00:00","06/11/2001 13:00:00")
oEvents:Add("06/12/2001 10:00:00","06/12/2001 13:00:00")
oPrint := CreateObject("Exontrol.Print")
oPrint:Options := "FitToPage=On"
oPrint:PrintExt := oSchedule
oPrint:CopyTo("C:/Temp/test.bmp")
oPrint:CopyTo("C:/Temp/test.jpg")
DevOut( "Look For: C:/Temp/test.* file" )
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
265
|
Recurrence: The 2nd to last weekday of the month
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/29/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/29/1997 09:00:00","09/29/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-2"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
264
|
Recurrence: The 3rd instance into the month of one of Tuesday, Wednesday or Thursday, for the next 3 months
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/04/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/04/1997 09:00:00","09/04/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;COUNT=3;BYDAY=TU,WE,TH;BYSETPOS=3"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
263
|
Recurrence: The last work day of the month
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/30/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("08/05/1997 09:00:00","08/05/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;BYDAY=MO,TU,WE,TH,FR;BYSETPOS=-1"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
262
|
Recurrence: An example where the days generated makes a difference because of WKST (Sample 2)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "08/05/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 0/*exSunday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("08/05/1997 09:00:00","08/05/1997 14:00:00"):Repetitive := "FREQ=WEEKLY;INTERVAL=2;COUNT=4;BYDAY=TU,SU"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
261
|
Recurrence: An example where the days generated makes a difference because of WKST (Sample 1)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "08/05/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("08/05/1997 09:00:00","08/05/1997 14:00:00"):Repetitive := "FREQ=WEEKLY;INTERVAL=2;COUNT=4;BYDAY=TU,SU"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
260
|
Recurrence: Every four years, the first Tuesday after a Monday in November, forever (U.S. Presidential Election day)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "11/05/1996"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("11/05/1996 09:00:00","11/05/1996 14:00:00"):Repetitive := "FREQ=YEARLY;INTERVAL=4;BYMONTH=11;BYDAY=TU;BYMONTHDAY=2,3,4,5,6,7,8"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
259
|
Recurrence: The first Saturday that follows the first Sunday of the month, forever
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/13/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/13/1997 09:00:00","09/13/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;BYDAY=SA;BYMONTHDAY=7,8,9,10,11,12,13"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
258
|
Recurrence: Every Friday the 13th, forever
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "02/13/1998"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/02/1997 09:00:00","09/02/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;BYDAY=FR;BYMONTHDAY=13"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
257
|
Recurrence: Every Thursday, but only during June, July, and August, forever
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "06/05/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("06/05/1997 09:00:00","06/05/1997 14:00:00"):Repetitive := "FREQ=YEARLY;BYDAY=TH;BYMONTH=6,7,8"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
256
|
Recurrence: Every Thursday in March, forever
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "03/13/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("03/13/1997 09:00:00","03/13/1997 14:00:00"):Repetitive := "FREQ=YEARLY;BYMONTH=3;BYDAY=TH"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
255
|
Recurrence: Monday of week number 20 (where the default start of the week is Monday), forever
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "05/12/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("05/12/1997 09:00:00","05/12/1997 14:00:00"):Repetitive := "FREQ=YEARLY;BYWEEKNO=20;BYDAY=MO"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
254
|
Recurrence: Every 20th Monday of the year, forever
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "05/19/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("01/01/1997 09:00:00","01/01/1997 14:00:00"):Repetitive := "FREQ=YEARLY;BYDAY=20MO"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
253
|
Recurrence: Every 3rd year on the 1st, 100th and 200th day for 10 occurrences
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "01/01/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("01/01/1997 09:00:00","01/01/1997 14:00:00"):Repetitive := "FREQ=YEARLY;INTERVAL=3;COUNT=10;BYYEARDAY=1,100,200"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
252
|
Recurrence: Every other year on January, February, and March for 10 occurrences
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "03/10/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("03/10/1997 09:00:00","03/10/1997 14:00:00"):Repetitive := "FREQ=YEARLY;INTERVAL=2;COUNT=10;BYMONTH=1,2,3"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
251
|
Recurrence: Yearly in June and July for 10 occurrences
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "06/10/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthX := 2
oCalendar:MaxMonthY := 2
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("06/10/1997 09:00:00","06/10/1997 14:00:00"):Repetitive := "FREQ=YEARLY;COUNT=10;BYMONTH=6,7"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
250
|
Recurrence: Every Tuesday, every other month
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/02/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/02/1997 09:00:00","09/02/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;INTERVAL=2;BYDAY=TU"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
249
|
Recurrence: Every 18 months on the 10th thru 15th of the month for 10 occurrences
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/10/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/10/1997 09:00:00","09/10/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;INTERVAL=18;COUNT=10;BYMONTHDAY=10,11,12,13,14,15"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
248
|
Recurrence: Monthly on the first and last day of the month for 10 occurrences
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/30/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/03/1997 09:00:00","09/03/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;COUNT=10;BYMONTHDAY=1,-1"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
247
|
Recurrence: Monthly on the 2nd and 15th of the month for 10 occurrences
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/02/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/02/1997 09:00:00","09/02/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;COUNT=10;BYMONTHDAY=2,15"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
246
|
Recurrence: Monthly on the third to the last day of the month, forever
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/28/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/28/1997 09:00:00","09/28/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;BYMONTHDAY=-3"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
245
|
Recurrence: Monthly on the second to last Monday of the month for 6 months
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/22/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/22/1997 09:00:00","09/22/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;COUNT=6;BYDAY=-2MO"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
244
|
Recurrence: Every other month on the 1st and last Sunday of the month for 10 occurrences
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/07/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/07/1997 09:00:00","09/07/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;INTERVAL=2;COUNT=10;BYDAY=1SU,-1SU"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
243
|
Recurrence: Monthly on the 1st Friday until December 24, 1997
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/05/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/05/1997 09:00:00","09/05/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;UNTIL=19971224T000000Z;BYDAY=1FR"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
242
|
Recurrence: Monthly on the 1st Friday for ten occurrences
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/05/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/05/1997 09:00:00","09/05/1997 14:00:00"):Repetitive := "FREQ=MONTHLY;COUNT=10;BYDAY=1FR"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
241
|
Recurrence: Every other week on Tuesday and Thursday, for 8 occurrences
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/16/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 0/*exSunday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/02/1997 09:00:00","09/02/1997 14:00:00"):Repetitive := "FREQ=WEEKLY;INTERVAL=2;COUNT=8;WKST=SU;BYDAY=TU,TH"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
240
|
Recurrence: Every other week on Monday, Wednesday and Friday until December 24, 1997, but starting on Tuesday, September 2, 1997
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/17/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 0/*exSunday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/02/1997 09:00:00","09/02/1997 14:00:00"):Repetitive := "FREQ=WEEKLY;INTERVAL=2;UNTIL=19971224T000000Z;WKST=SU;BYDAY=MO,WE,FR"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
239
|
Recurrence: Weekly on Tuesday and Thursday for 5 weeks
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/16/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 0/*exSunday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/02/1997 09:00:00","09/02/1997 14:00:00"):Repetitive := "FREQ=WEEKLY;UNTIL=19971007T000000Z;WKST=SU;BYDAY=TU,TH"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
238
|
Recurrence: Weekly on Tuesday and Thursday for 5 weeks
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/16/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 0/*exSunday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/02/1997 09:00:00","09/02/1997 14:00:00"):Repetitive := "FREQ=WEEKLY;COUNT=10;WKST=SU;BYDAY=TU,TH"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
237
|
Recurrence: Every other day - forever
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/04/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/02/1997 09:00:00","09/02/1997 14:00:00"):Repetitive := "FREQ=DAILY;INTERVAL=2"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
236
|
Recurrence: Daily until December 24, 1997
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/17/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oCalendar:FirstWeekDay := 1/*exMonday*/
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/02/1997 09:00:00","09/02/1997 14:00:00"):Repetitive := "FREQ=DAILY;UNTIL=19971224T000000Z"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
235
|
Recurrence: Daily for 10 occurrences
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oHighlight
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "09/09/1997"
oCalendar:ShowNonMonthDays := .F.
oCalendar:MaxMonthY := 4
oHighlight := oCalendar:HighlightEvent()
oHighlight:Pattern():Type := 256/*exPatternFrame*/
oHighlight:Bold := .F.
oCalendar:FirstWeekDay := 1/*exMonday*/
oSchedule:ShowViewCompact := -1/*exViewCalendarCompact*/
oSchedule:BorderSelStyle := -1/*exNoLines*/
oSchedule:SetProperty("Background",81/*exScheduleMarkTodayBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oEvents := oSchedule:Events()
oEvents:Add("09/02/1997 09:00:00","09/02/1997 14:00:00"):Repetitive := "FREQ=DAILY;COUNT=10"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
234
|
How do I display the week number according, so the January 1st is in the first week
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "01/01/2016"
oCalendar:FirstWeekDay := 0/*exSunday*/
oCalendar:DisplayWeekNumberAs := 1/*exSimpleWeekNumber*/
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
233
|
How do I display the week number according to ISO8601 standard
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "01/04/2016"
oCalendar:FirstWeekDay := 1/*exMonday*/
oCalendar:DisplayWeekNumberAs := 0/*exISO8601WeekNumber*/
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
232
|
How do I hide the week number
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:FirstWeekDay := 1/*exMonday*/
oCalendar:ShowWeeks := .F.
oCalendar:ShowNonMonthDays := .F.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
231
|
How can I change the background color of the all day header
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:OnResizeControl := 2048/*exCalendarAutoHide*/
oSchedule:ShowAllDayHeader := .T.
oCalendar := oSchedule:Calendar()
oCalendar:FirstWeekDay := 1/*exMonday*/
oCalendar:SetProperty("SelectDate","05/08/2012",.T.)
oCalendar:Select(3/*exSelectWeek*/)
oCalendar:SetProperty("SelectDate","05/15/2012",.F.)
oCalendar:Select(19/*exSelectToggle+exSelectWeek*/)
oSchedule:SetProperty("Background",87/*exScheduleAllDayHeaderBackColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oSchedule:HeaderAllDayEventHeight := -20
oSchedule:Events():Add("05/08/2012","05/17/2012"):AllDayEvent := .T.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
230
|
How can I display a single text on a specified date
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/26/2012"
oSchedule:Calendar():Selection := "value in (#05/23/2012#,#05/24/2012#,#05/25/2012#)"
oSchedule:NonworkingPatterns():Add(1234,0/*exPatternEmpty*/):BackgroundExt := "[text=`<font ;6><fgcolor 808080>just a notice`,align=0x11]"
oSchedule:NonworkingTimes():Add("value = #05/25/2012#","09:00","10:00",1234)
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
229
|
I am using the control's DataSource property, the question is how can I get the event's identifier Datafield(exEventID)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
LOCAL rs
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
rs := CreateObject("ADOR.Recordset")
rs:Open("Events","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExSchedule\Sample\Access2007\datasource.accdb",3/*adOpenStatic*/,3/*adLockOptimistic*/)
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "11/11/2013"
oSchedule:SetProperty("DataField",1/*exEventStartDateTime*/,"Start")
oSchedule:SetProperty("DataField",2/*exEventEndDateTime*/,"End")
oSchedule:SetProperty("DataField",11/*exEventExtraLabel*/,"Extra")
oSchedule:DataSource := rs
DevOut( Transform(oSchedule:Events:Item(1):KnownProperty(12/*exEventID*/),"") )
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
228
|
Is it possible to display some text/image on the schedule's view background
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/25/2012"
oSchedule:NonworkingPatterns():Add(1234,6/*exPatternBDiagonal*/):BackgroundExt := "[text=`<fgcolor 808080>just a caption`,align=0x11]"
oSchedule:NonworkingPatterns():Add(1235,0/*exPatternEmpty*/):BackgroundExt := "[text=`<fgcolor 808080>just another caption`,align=0x11]"
oSchedule:NonworkingTimes():Add("weekday(value) = 5","08:00","08:59:59",1234)
oSchedule:NonworkingTimes():Add("weekday(value) = 5","09:00","09:59:59",1235)
oSchedule:NonworkingTimes():Add("weekday(value) = 5","10:00","10:59:59",1234)
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
227
|
How can I display a text on the schedule's view background
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/25/2012"
oSchedule:NonworkingPatterns():Add(1234,0/*exPatternEmpty*/):BackgroundExt := "[text=`<fgcolor 808080>just a caption`,align=0x11]"
oSchedule:NonworkingTimes():Add("weekday(value) = 5","12:00","13:00",1234)
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
226
|
Is it possible to change the visual appearance of the edit's context menu
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:VisualAppearance():Add(1,"c:\exontrol\images\normal.ebn")
oSchedule:SetProperty("Background",99/*exContextMenuAppearance*/,0x1000000)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
225
|
How do I customize the edit's context menu
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:Images("gBJJgBAIDAAGAAEAAQhYAf8Pf4hh0QihCJo2AEZjQAjEZFEaIEaEEaAIAkcbk0olUrlktl0vmExmUzmk1m03nE5nU7nk9n0/oFBoVDolFo1HpFJpVLplNp1PqFRqVTqlVq1XrFZrVbrldr1fsFhsVjslls1ntFptVrtltt1vuFxuVzul1u13vF5vV7vl9v1/wGBwWDwmFw2HxGJxWLxmNx0xiFdyOTh8Tf9ZymXx+QytcyNgz8r0OblWjyWds+m0ka1Vf1ta1+r1mos2xrG2xeZ0+a0W0qOx3GO4NV3WeyvD2XJ5XL5nN51aiw+lfSj0gkUkAEllHanHI5j/cHg8EZf7w8vl8j4f/qfEZeB09/vjLAB30+kZQAP/P5/H6/yNAOAEAwCjMBwFAEDwJBMDwLBYAP2/8Hv8/gAGAD8LQs9w/nhDY/oygIA=")
oSchedule:EditContextMenuItems := "Insert[group=3](<img>1</img>[id=57763],<img>2</img>[id=57763])"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
224
|
How can I lock/fix the date header, so it stays on the top while the user scrolls the chart
PROCEDURE OnLayoutEndChanging(oSchedule,Operation)
DevOut( Transform(Operation,"") )
oSchedule:DayViewHeight := 2016
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:LayoutEndChanging := {|Operation| OnLayoutEndChanging(oSchedule,Operation)} /*Notifies your application once the control's layout has been changed.*/
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:SetProperty("SelectDate","05/20/2012",.T.)
oCalendar:Select(3/*exSelectWeek*/)
oSchedule:ScrollBars := 2/*exVertical*/
oSchedule:ShowViewCompact := 3/*exViewSingleRowLockHeader*/
oSchedule:DayViewHeight := 2016
oSchedule:AllowMoveSchedule := 0/*exDisallow*/
oSchedule:AllowResizeSchedule := 0/*exDisallow*/
oSchedule:AllowToggleSchedule := 0/*exDisallow*/
oSchedule:AllowExchangePanels := 0/*exDisallow*/
oSchedule:AllowMoveTimeScale := 0/*exDisallow*/
oSchedule:AllowResizeTimeScale := 0/*exDisallow*/
oSchedule:AllowMultiDaysEvent := .F.
oSchedule:TimeScales:Item(0):MinorTimeRuler := "00:10"
oSchedule:DayStartTime := "00:00"
oSchedule:DayEndTime := "24:00"
oSchedule:OnResizeControl := 3073/*exCalendarAutoHide+exCalendarFit+exResizePanelRight*/
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
223
|
Is there any way to control the vertical size of each hour other than by the font and/or the minor time scale being changed
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:SetProperty("SelectDate","05/20/2012",.T.)
oCalendar:Select(3/*exSelectWeek*/)
oSchedule:OnResizeControl := 768/*exChangePanels+exHideSplitter*/
oSchedule:ScrollBars := 2/*exVertical*/
oSchedule:ShowViewCompact := 1/*exViewSingleRow*/
oSchedule:DayViewHeight := 2016
oSchedule:AllowMoveSchedule := 0/*exDisallow*/
oSchedule:AllowResizeSchedule := 0/*exDisallow*/
oSchedule:AllowToggleSchedule := 0/*exDisallow*/
oSchedule:AllowExchangePanels := 0/*exDisallow*/
oSchedule:AllowMoveTimeScale := 0/*exDisallow*/
oSchedule:AllowResizeTimeScale := 0/*exDisallow*/
oSchedule:AllowMultiDaysEvent := .F.
oSchedule:SetProperty("Background",36/*exScheduleBorderSelColor*/,oSchedule:Background(37/*exScheduleBorderSelColorUnFocus*/))
oSchedule:TimeScales:Item(0):MinorTimeRuler := "00:10"
oSchedule:DayStartTime := "00:00"
oSchedule:DayEndTime := "24:00"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
222
|
How can I show a single week, no calendar
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:SetProperty("SelectDate","05/20/2012",.T.)
oCalendar:Select(3/*exSelectWeek*/)
oSchedule:OnResizeControl := 768/*exChangePanels+exHideSplitter*/
oSchedule:ScrollBars := 0/*exNoScroll*/
oSchedule:ShowViewCompact := 1/*exViewSingleRow*/
oSchedule:AllowMoveSchedule := 0/*exDisallow*/
oSchedule:AllowResizeSchedule := 0/*exDisallow*/
oSchedule:AllowToggleSchedule := 0/*exDisallow*/
oSchedule:AllowExchangePanels := 0/*exDisallow*/
oSchedule:AllowMoveTimeScale := 0/*exDisallow*/
oSchedule:AllowResizeTimeScale := 0/*exDisallow*/
oSchedule:AllowMultiDaysEvent := .F.
oSchedule:SetProperty("Background",36/*exScheduleBorderSelColor*/,oSchedule:Background(37/*exScheduleBorderSelColorUnFocus*/))
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
221
|
How do I select the dates within a giving interval only
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "05/01/2012"
oCalendar:Selection := "(value >= #5/13/2012#) and (value <= #5/26/2012#)"
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 09:00:00","05/24/2012 12:00:00")
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:45:00")
oEvents:Add("05/24/2012 11:30:00","05/24/2012 14:30:00")
oEvents:Add("05/24/2012 12:45:00","05/24/2012 15:45:00")
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
220
|
How do I display the dates within a giving interval only
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oCalendar := oSchedule:Calendar()
oCalendar:Selection := "05/24/2012"
oCalendar:MinDate := "05/13/2012"
oCalendar:MaxDate := "05/26/2012"
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 09:00:00","05/24/2012 12:00:00")
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:45:00")
oEvents:Add("05/24/2012 11:30:00","05/24/2012 14:30:00")
oEvents:Add("05/24/2012 12:45:00","05/24/2012 15:45:00")
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
219
|
Is it possible that the time is displayed starting from 00:00 to 24:00 00 instead of 08:00 AM to 04:00 PM
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oTimeScale
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:DayStartTime := "00:00"
oSchedule:DayEndTime := "24:00"
oTimeScale := oSchedule:TimeScales:Item(0)
oTimeScale:MajorTimeLabel := "<%hh%>:<%nn%>"
oTimeScale:Width := 32
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
218
|
How do I show a double frame
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvent,oEvent1,oEvent2,oEvent3
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:SelectEventStyle := 48/*exLinesSolid*/
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:DefaultEventLongLabel := ""
oSchedule:DefaultEventShortLabel := ""
oEvents := oSchedule:Events()
oEvent := oEvents:Add("01/10/2001 08:00:00","01/10/2001 10:00:00")
oEvent:BodyBackgroundExt := "top[25%,back=RGB(255,0,0),align=0x21,pattern=0x000,frame=RGB(0,0,0)],client[back=RGB(255,255,0),align=0x21,pattern=0x000,frame=RGB(0,0,0)]"
oEvent:SetProperty("BodyBackgroundExtValue",1/*exIndexExt1*/,1/*exBackColorExt*/,255)
oEvent:SetProperty("BodyBackgroundExtValue",1/*exIndexExt1*/,2/*exClientExt*/,"35%")
oEvent1 := oEvents:Add("01/10/2001 10:00:00","01/10/2001 12:00:00")
oEvent1:BodyBackgroundExt := "top[25%,back=RGB(255,0,0),align=0x22],client[back=RGB(255,255,0),align=0x22]"
oEvent1:SetProperty("BodyBackgroundExtValue",1/*exIndexExt1*/,2/*exClientExt*/,"35%")
oEvent1:SetProperty("BodyBackgroundExtValue",2/*exIndexExt2*/,1/*exBackColorExt*/,65535)
oEvent2 := oEvents:Add("01/10/2001 12:00:00","01/10/2001 14:00:00")
oEvent2:ShowStatus := .F.
oEvent2:BodyBackgroundExt := "left[4,back=RGB(128,128,128)],top[25%,back=RGB(255,0,0)],client[back=RGB(255,255,0)],none[(0%,0%,100%,100%),pattern=0x000,frame=RGB(0,0,0)]"
oEvent3 := oEvents:Add("01/10/2001 14:00:00","01/10/2001 16:00:00")
oEvent3:ShowStatus := .F.
oEvent3:BodyBackgroundExt := "left[4,back=RGB(128,128,128)],top[25%,back=RGB(255,0,0)],client[back=RGB(255,255,0)],none[(4,0%,100%-4,100%),pattern=0x000,frame=RGB(0,0,0)]"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
217
|
How can I add more colors on the event
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:SelectEventStyle := 48/*exLinesSolid*/
oSchedule:Calendar():Selection := "01/10/2001"
oEvents := oSchedule:Events()
oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00"):BodyBackgroundExt := "bottom[15%](left[65%,frame,back=RGB(128,255,255)],client[back=RGB(255,0,0),frame])"
oEvents:Add("01/10/2001 10:00:00","01/10/2001 13:00:00"):BodyBackgroundExt := "right[15%](bottom[35%,frame,back=RGB(128,255,255)],client[back=RGB(255,0,0),frame])"
oEvents:Add("01/10/2001 11:00:00","01/10/2001 14:00:00"):BodyBackgroundExt := "left[33%,back=RGB(0,128,0)](top[50%,back=RGB(0,255,0)]),left[33%](top[33%,back=RGB(0,255,255)],top[33%,back=RGB(0,0,128)],client[back=RGB(0,0,255)]),client(top[25%,back=RGB(240,240,240)],top[25%,back=RGB(192,192,192)],top[25%,back=RGB(128,128,128)],client[back=RGB(0,0,0)])"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
216
|
When I have 3 month visible in the calendar section, it seems I can only move back and forth through the months 3 months at a time. Is it possible to move back and forth through the months 1 month at a time
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oCalendar := oSchedule:Calendar()
oCalendar:AlignDate := .F.
oCalendar:MinMonthY := 2
oCalendar:MaxMonthY := 2
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
215
|
How can I bound the control to a data source
PROCEDURE OnError(oSchedule,Error,Description)
DevOut( Transform(Description,"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
LOCAL rs
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:Error := {|Error,Description| OnError(oSchedule,Error,Description)} /*Fired when an internal error occurs.*/
rs := CreateObject("ADOR.Recordset")
rs:Open("Events","Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Program Files\Exontrol\ExSchedule\Sample\Access2007\datasource.accdb",3/*adOpenStatic*/,3/*adLockOptimistic*/)
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "11/11/2013"
oSchedule:SetProperty("DataField",1/*exEventStartDateTime*/,"Start")
oSchedule:SetProperty("DataField",2/*exEventEndDateTime*/,"End")
oSchedule:SetProperty("DataField",11/*exEventExtraLabel*/,"Extra")
oSchedule:DataSource := rs
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
214
|
How can I start drag and drop an event
PROCEDURE OnOLEStartDrag(oSchedule,Data,AllowedEffects)
/*Data.SetData( "your data to be dragged" )*/
AllowedEffects := 1
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:OLEStartDrag := {|Data,AllowedEffects| OnOLEStartDrag(oSchedule,Data,AllowedEffects)} /*Occurs when the OLEDrag method is called.*/
oSchedule:BeginUpdate()
oSchedule:OLEDropMode := 1/*exOLEDropManual*/
oSchedule:SelectEventStyle := 48/*exLinesSolid*/
oSchedule:DefaultEventLongLabel := "<%=%256%><br><%=%5%>"
oSchedule:DefaultEventShortLabel := oSchedule:DefaultEventLongLabel()
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:OnResizeControl := 3073/*exCalendarAutoHide+exCalendarFit+exResizePanelRight*/
oSchedule:Events():Add("01/10/2001 09:00:00","01/10/2001 12:30:00"):ExtraLabel := "Click the event and wait to start dragging."
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
213
|
I use the HighlightDate property to mark a date, instead the selection is not visible if I select the same date. What can be done
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:ShowHighlightDate := 4353/*exHighlightDateCalendarEllipticClip+exHighlightDateCalendarGradient+exShowHighlightDateCalendar*/
oSchedule:Calendar():Selection := "01/01/2001"
oSchedule:SetProperty("HighlightDate","01/09/2001",65280)
oSchedule:SetProperty("HighlightDate","01/17/2001","65280,255")
oSchedule:SetProperty("HighlightDate","01/25/2001","255,65280,16711680")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
212
|
How can I arrange the colors to highlight the date vertically
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:ShowHighlightDate := 49/*exHighlightDateVertical+exShowHighlightDateCalendar*/
oSchedule:Calendar():Selection := "01/01/2001"
oSchedule:SetProperty("HighlightDate","01/09/2001",65280)
oSchedule:SetProperty("HighlightDate","01/17/2001","65280,255")
oSchedule:SetProperty("HighlightDate","01/25/2001","255,65280,16711680")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
211
|
Is it possible to highlight a date in gradient
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:ShowHighlightDate := 257/*exHighlightDateCalendarGradient+exShowHighlightDateCalendar*/
oSchedule:Calendar():Selection := "01/01/2001"
oSchedule:SetProperty("HighlightDate","01/09/2001",65280)
oSchedule:SetProperty("HighlightDate","01/17/2001","65280,255")
oSchedule:SetProperty("HighlightDate","01/25/2001","255,65280,16711680")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
210
|
Is it possible to highlight a date in the calendar panel only
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:ShowHighlightDate := 1/*exShowHighlightDateCalendar*/
oSchedule:Calendar():Selection := "01/01/2001"
oSchedule:SetProperty("HighlightDate","01/09/2001",65280)
oSchedule:SetProperty("HighlightDate","01/17/2001","65280,255")
oSchedule:SetProperty("HighlightDate","01/25/2001","255,65280,16711680")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
209
|
Is it possible to highlight a date in the control
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:ShowHighlightDate := 3/*exShowHighlightDate*/
oSchedule:Calendar():Selection := "01/25/2001"
oSchedule:SetProperty("HighlightDate","01/09/2001",65280)
oSchedule:SetProperty("HighlightDate","01/17/2001","65280,255")
oSchedule:SetProperty("HighlightDate","01/25/2001","255,65280,16711680")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
208
|
How we need to put "nonworking time" to each group, because staff A is working different times then staff B. Is this possible
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oNonworkingTimes
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:BeginUpdate()
oSchedule:SetProperty("BodyEventBackColor",AutomationTranslateColor( GraMakeRGBColor ( { 240,240,240 } ) , .F. ))
oSchedule:ShowGroupingEvents := .T.
oSchedule:DisplayGroupingButton := .T.
oSchedule:Groups():Add(1,"Group 1"):Visible := .T.
oSchedule:Groups():Add(2,"Group 2"):Visible := .T.
oSchedule:Calendar():Selection := "05/25/2012"
oSchedule:NonworkingPatterns():Add(1234,11/*exPatternBrick*/)
oNonworkingTimes := oSchedule:NonworkingTimes()
oNonworkingTimes:Add("1","00:00","08:45",1234)
oNonworkingTimes:Add("weekday(value) = 5","10:00","11:45",1):GroupID := 1
oNonworkingTimes:Add("weekday(value) = 5","12:00","13:00",1234):GroupID := 2
oSchedule:Events():Add("05/25/2012 09:30:00","05/25/2012 13:00:00"):GroupID := 1
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
207
|
I have a double click event set to launch a window so the user can supply input. The problem is that double click changes the view. How do I change this behavior
PROCEDURE OnDblClick(oSchedule,Shift,X,Y)
DevOut( "DblClick " )
DevOut( Transform(X,"") )
DevOut( Transform(Y,"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:DblClick := {|Shift,X,Y| OnDblClick(oSchedule,Shift,X,Y)} /*Occurs when the user dblclk the left mouse button over an object.*/
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/24/2012"
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00")
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00"):SetProperty("StatusColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,0,0 } ) , .F. ))
oEvents:Add("05/24/2012 11:30:00","05/24/2012 13:30:00")
oSchedule:AllowEditEvent := 0/*exDisallow*/
oSchedule:AllowToggleSchedule := 0/*exDisallow*/
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
206
|
I have two-time scales. How do I change the label while updating the events to show the date-time on the second time-scale
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oTimeScale
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:DayEndTime := "13:00"
oTimeScale := oSchedule:TimeScales():Add("+3:00")
oTimeScale:AlignLeft := .T.
oTimeScale:Caption := "EST <b>+03"
oSchedule:BeginUpdate()
oSchedule:Calendar():Selection := "05/24/2012"
oSchedule:UpdateEventsLabel := "Start: <%=date(%1+3/24)%><br>End: <%=date(%2+3/24)%>"
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00")
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:30:00")
oEvents:Add("05/24/2012 11:30:00","05/24/2012 13:30:00")
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
205
|
Is there a way to add a hyperlink to the event that would run a report with parameters
PROCEDURE OnAnchorClick(oSchedule,AnchorID,Options)
DevOut( Transform(AnchorID,"") )
DevOut( Transform(Options,"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:AnchorClick := {|AnchorID,Options| OnAnchorClick(oSchedule,AnchorID,Options)} /*Occurs when an anchor element is clicked.*/
oSchedule:Calendar():Selection := "06/20/2012"
oEvents := oSchedule:Events()
oEvents:Add("06/20/2012 09:00:00","06/20/2012 11:00:00"):LongLabel := "<%=%256%><br><a 1234;option 1>more ...</a>"
oEvents:Add("06/20/2012 11:00:00","06/20/2012 13:00:00"):LongLabel := "<%=%256%><br><a 1235;option 2>more ...</a>"
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
204
|
Can I have multiple months in the calendar section
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oCalendar
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oCalendar := oSchedule:Calendar()
oCalendar:MinMonthY := 2
oCalendar:MaxMonthY := 2
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
203
|
I need to make sure that at least the order number stays visible when the event is resized. Is there a way during event modification (another event be added at the same time that makes the event size shrink) to adjust the caption location
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvent,oEvent1
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:Calendar():Selection := "06/20/2012"
oEvents := oSchedule:Events()
oEvent := oEvents:Add("06/20/2012 09:00:00","06/20/2012 11:00:00")
oEvent:UserData := 1234
oEvent:ShortLabel := "<%=%256%><br>Order: <%=%6%>"
oEvent:LongLabel := oEvent:ShortLabel()
oEvent1 := oEvents:Add("06/20/2012 11:00:00","06/20/2012 13:00:00")
oEvent1:UserData := 1235
oEvent1:ShortLabel := "<%=%256%>, Order: <%=%6%>"
oEvent1:LongLabel := oEvent1:ShortLabel()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
202
|
I need to make sure that at least the order number stays visible when the event is resized. Is there a way during event modification (another event be added at the same time that makes the event size shrink) to adjust the caption location
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:Calendar():Selection := "06/20/2012"
oSchedule:DefaultEventShortLabel := "<%=%256%><br>Order: <b><%=%6%>"
oSchedule:DefaultEventLongLabel := oSchedule:DefaultEventShortLabel()
oEvents := oSchedule:Events()
oEvents:Add("06/20/2012 09:00:00","06/20/2012 11:00:00"):UserData := 1234
oEvents:Add("06/20/2012 11:00:00","06/20/2012 13:00:00"):UserData := 1235
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
201
|
Can you add text with links in the event
PROCEDURE OnAnchorClick(oSchedule,AnchorID,Options)
DevOut( Transform(AnchorID,"") )
DevOut( Transform(Options,"") )
RETURN
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvent,oEvent1
LOCAL oEvents
LOCAL oSchedule
oForm := XbpDialog():new( AppDesktop() )
oForm:drawingArea:clipChildren := .T.
oForm:create( ,,{100,100}, {640,480},, .F. )
oForm:close := {|| PostAppEvent( xbeP_Quit )}
oSchedule := XbpActiveXControl():new( oForm:drawingArea )
oSchedule:CLSID := "Exontrol.Schedule.1" /*{9B09E13D-7A88-4299-9DBE-383380435377}*/
oSchedule:create(,, {10,60},{610,370} )
oSchedule:AnchorClick := {|AnchorID,Options| OnAnchorClick(oSchedule,AnchorID,Options)} /*Occurs when an anchor element is clicked.*/
oSchedule:Calendar():Selection := "06/20/2012"
oEvents := oSchedule:Events()
oEvent := oEvents:Add("06/20/2012 09:00:00","06/20/2012 11:00:00")
oEvent:ShortLabel := "<a 1><%=%256%></a>"
oEvent:LongLabel := oEvent:ShortLabel()
oEvent1 := oEvents:Add("06/20/2012 11:00:00","06/20/2012 13:00:00")
oEvent1:ShortLabel := "<a 2><%=%256%></a>"
oEvent1:LongLabel := oEvent1:ShortLabel()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|