|
346
|
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.Jet.OLEDB.4.0;Data Source=C:\Program Files\Exontrol\ExSchedule\Sample\Access\datasource.mdb",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
|
|
345
|
Loading events from a XML file

#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:LoadXML("C:\Program Files (x86)\Exontrol\ExSchedule\Sample\VFP\XML\schedule.xml")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
344
|
Generates a PDF document on a single A0 page with no margins
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
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:BeginUpdate()
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()
var_CopyTo := oSchedule:CopyTo("c:/temp/sample.pdf|33.11 in x 46.81 in|0 0 0 0|single")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
343
|
Generates a PDF document that scales the content proportionally by 75% using B3 pages (default margins)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
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:BeginUpdate()
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()
var_CopyTo := oSchedule:CopyTo("c:/temp/sample.pdf|6.93 in x 9.84 in||75%")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
342
|
Generates a PDF document that fits the content exactly to 3 A4 pages wide by 2 pages tall (default margins)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
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:BeginUpdate()
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()
var_CopyTo := oSchedule:CopyTo("c:/temp/sample.pdf|||3 x 2f")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
341
|
Generates a PDF document that fits the content to 3 A3-landscape pages wide by 2 pages tall (custom margins)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
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:BeginUpdate()
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()
var_CopyTo := oSchedule:CopyTo("c:/temp/sample.pdf|16.54 in x 11.69 in|5 mm 5 mm 5 mm 5 mm|3 x 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
340
|
Generates a PDF document that fits the content to 2 Letter pages tall, automatically determining the number of pages wide (default margins)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
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:BeginUpdate()
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()
var_CopyTo := oSchedule:CopyTo("c:/temp/sample.pdf|8.50 in x 11.00 in||x 2")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
339
|
Generates a PDF document that fits the content to 1 page wide and as many A4 pages tall as required (default margins)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
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:BeginUpdate()
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()
var_CopyTo := oSchedule:CopyTo("c:/temp/sample.pdf|||1 x")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
338
|
Generates a PDF document on a single A4 page (default margins)
#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
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:BeginUpdate()
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()
var_CopyTo := oSchedule:CopyTo("c:/temp/sample.pdf|||single")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
337
|
How do I limit the number of all-day events to a range of 1 to 25 items

#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 := 1053073/*0x100001+exAllDayEventWheelScroll+exAllDayEventMax8+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
|
|
336
|
Arranges all days to a single column (vertically)

#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:SetProperty("Background",41/*exScheduleDayHeaderBackColor*/,0x80000004)
oCalendar := oSchedule:Calendar()
oCalendar:SetProperty("SelectDate","01/01/2006",.T.)
oCalendar:Select(3/*exSelectWeek*/)
oSchedule:ShowViewCompact := 2/*exViewSingleColumn*/
oSchedule:Calendar():OnSelectDate := 0/*exNoViewChange*/
oSchedule:TimeScales:Item(0):Visible := .F.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
335
|
Arrange the view to display weekdays vertically across 7 rows, with one row for each weekday

#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:SetProperty("Background",41/*exScheduleDayHeaderBackColor*/,0x80000004)
oCalendar := oSchedule:Calendar()
oCalendar:SetProperty("SelectDate","01/01/2001",.T.)
oCalendar:Selection := "month(value) = 1"
oSchedule:ShowViewCompact := 4/*exViewSingleWeek*/
oSchedule:Calendar():OnSelectDate := 0/*exNoViewChange*/
oSchedule:TimeScales:Item(0):Visible := .F.
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
334
|
Ubuntu appearance

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oAppearance
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("BackColor",AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oSchedule:SetProperty("Background",6/*exCalendarDaysHeader*/,0x1000000)
oSchedule:SetProperty("Background",28/*exCalendarDaysHeaderForeColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 128,128,128 } ) , .F. ))
oSchedule:SetProperty("Background",29/*exCalendarWeeksHeaderForeColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 128,128,128 } ) , .F. ))
oSchedule:SetProperty("Background",8/*exCalendarHeader*/,0x1000000)
oSchedule:SetProperty("Background",41/*exScheduleDayHeaderBackColor*/,0x1000000)
oSchedule:SetProperty("Background",36/*exScheduleBorderSelColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 255,0,0 } ) , .F. ))
oSchedule:SetProperty("Background",19/*exCalendarSelBackColor*/,0x2b000000)
oSchedule:SetProperty("Background",20/*exCalendarSelForeColor*/,AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oSchedule:ScrollHeight := 13
oSchedule:ScrollWidth := 13
oSchedule:ScrollButtonWidth := 13
oSchedule:ScrollButtonHeight := 13
oSchedule:SetProperty("Background",64/*exToolTipAppearance*/,0x1000000)
oSchedule:SetProperty("Background",511/*exScrollSizeGrip*/,AutomationTranslateColor( GraMakeRGBColor ( { 255,255,255 } ) , .F. ))
oSchedule:SetProperty("Background",18/*exSplitBar*/,0x1000000)
oSchedule:SetProperty("Background",256/*exVSUp*/,0x2000000)
oSchedule:SetProperty("Background",257/*exVSUpP*/,oSchedule:Background(256/*exVSUp*/))
oSchedule:SetProperty("Background",258/*exVSUpD*/,0x4000000)
oSchedule:SetProperty("Background",259/*exVSUpH*/,oSchedule:Background(256/*exVSUp*/))
oSchedule:SetProperty("Background",260/*exVSThumb*/,0x6000000)
oSchedule:SetProperty("Background",261/*exVSThumbP*/,0x7000000)
oSchedule:SetProperty("Background",262/*exVSThumbD*/,oSchedule:Background(260/*exVSThumb*/))
oSchedule:SetProperty("Background",263/*exVSThumbH*/,0x8000000)
oSchedule:SetProperty("Background",264/*exVSDown*/,0xa000000)
oSchedule:SetProperty("Background",265/*exVSDownP*/,oSchedule:Background(264/*exVSDown*/))
oSchedule:SetProperty("Background",266/*exVSDownD*/,0xc000000)
oSchedule:SetProperty("Background",267/*exVSDownH*/,oSchedule:Background(264/*exVSDown*/))
oSchedule:SetProperty("Background",276/*exVSBack*/,0xe000000)
oSchedule:SetProperty("Background",268/*exVSLower*/,oSchedule:Background(276/*exVSBack*/))
oSchedule:SetProperty("Background",272/*exVSUpper*/,oSchedule:Background(276/*exVSBack*/))
oSchedule:SetProperty("Background",384/*exHSLeft*/,0x12000000)
oSchedule:SetProperty("Background",385/*exHSLeftP*/,oSchedule:Background(384/*exHSLeft*/))
oSchedule:SetProperty("Background",386/*exHSLeftD*/,0x14000000)
oSchedule:SetProperty("Background",387/*exHSLeftH*/,oSchedule:Background(384/*exHSLeft*/))
oSchedule:SetProperty("Background",388/*exHSThumb*/,0x16000000)
oSchedule:SetProperty("Background",389/*exHSThumbP*/,0x17000000)
oSchedule:SetProperty("Background",390/*exHSThumbD*/,oSchedule:Background(388/*exHSThumb*/))
oSchedule:SetProperty("Background",391/*exHSThumbH*/,0x19000000)
oSchedule:SetProperty("Background",392/*exHSRight*/,0x1a000000)
oSchedule:SetProperty("Background",393/*exHSRightP*/,oSchedule:Background(392/*exHSRight*/))
oSchedule:SetProperty("Background",394/*exHSRightD*/,0x1c000000)
oSchedule:SetProperty("Background",395/*exHSRightH*/,oSchedule:Background(392/*exHSRight*/))
oSchedule:SetProperty("Background",404/*exHSBack*/,0x1e000000)
oSchedule:SetProperty("Background",396/*exHSLower*/,oSchedule:Background(404/*exHSBack*/))
oSchedule:SetProperty("Background",400/*exHSUpper*/,oSchedule:Background(404/*exHSBack*/))
oAppearance := oSchedule:VisualAppearance()
oAppearance:Add(1,"gBFLBCJwBAEHhEJAEGg4BL4Cg6AADACAxRDAMgBQKAAzQFAYaBmG6GAAGEaRWgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDGAkRRdDSOYDmGQYDiCIoRShOMaTVJ8bQ2ASEZwjNhGBT0AJEUZFU6ABJMZRRICeYRAaKwIoGJYaUhRdCxPCIZBqEqua7iEZRQqCCZkWZUMB1BC9JwHCKXbSpSi6NAAMokXDcMxzHIEfQ1ISBbpuWB5KrGfgABhCNqBVS8LpcVJSQAxfIaKwXAYgYRgNqSFIFXYRBKqYDxSZaDpuWYWWDaNzWFY9SzHVzDMShHCYDx7I55S5dGYUXjkN1c6A3XJ8WraT6xbTVUB6Dj/BRvDjWJi6EALIxfiqCxbCQFpIg4e4Dk6XJoCEJQDEmDJoHUOQZEYMgFDUQIEE2dhGiKMAxEeBxFCWbwAA4GY+BKFRSi4fxfnesAAmAJ54j0MBMEMUJXDYTwzlCdIDGCeA6BCBJgmgHgJgK" +;
"YJTlSZw6E6KBuB2BwhmgegWgKDYYDidQ6CGSIgmqCoikgcgjgKTxDlYJw6g6M4iDSDYjFiXg0guYknHZKIzjIQIQiQGQOEODwjmOWJqDsDpZC4TYTCSaQ6EgPYPGkBJthWJYJDIVoPCUQ5eEwO4lnnTAYCYORwneF4OmOPJshoZo5ipWJmGOXhjDuZw5lYaYcmOSYcniGhPAmch+DuZ5aAIeQ+A+CgAnGIYogOQoHiKI5KBCeYig8KhChIPBpBoUoND4T4aFCcomimQ5KhuJ9tGCeYng8OoSiYPIqFqIohXQI5OA2K4gnqPoyD0KgTmqLYMGGGpmjiDBjkqWJ7gwTxrAKQoPiwCp0nsPpkhsJhUjKDxonKRw+k8aYelEPZtDsVhnjOD5D1WIQtjOYpdjeaBInKWQ/Cia4UngPhuGOZpijYagrjabooi6M5wn2PJvEuVp2gWL4ICKeQxC+O5tAEgI=")
oAppearance:Add(43,"gBFLBCJwBAEHhEJAEGg4BPIDg6AADACAxRDAMgBQKAAzQFAYaBmG6GAAGIYxYgmFgAQhFcZQSKUOQTDKMIziYBYfgkMIgSbJUgDEAkRRdDSOYDmGQYDiCIoRShOMaTVJ8bQ2ASEaAmWK2RJgJwAUTRcTTYAEUxlFChJakAC4bA2QYlRpSNIUNC8IhkGoSa6sCIRVDCYYJWTZc61PDVKQHKKXbTgOjqNowNIkXDcMxzHIEfQ1HCVMBpfAqShsE5sAAFdYRPTVNSXQi6ILka4IbpOCaHQLVUB4VQdMy5RyEbCtKIrDqiZpkabcMgVDjAATdRK8dSyCS6MiKfgAVDrGw3FauCYlObKIyyaz4JxoAKtbrfcaaLKXGABNLUNDiaoOi8EYvmQch2lCEBECSIBpDGHQOicIwokYQJOgYEIJj4eJQloEgomKQhzhIEJEF0MQRmSCZLA0H5Pm+dZ8H+X5oAWfYAooDAAH8BBxmCcICGCOAqAyA5gmgRgNgSYJHnI" +;
"Bx+gTE5xBARwTjAQQck6QQAHIOphniBgjSkKIGB2CghmGSJtgYTwYFmfASkeM5EEJK5YHya4IiIQZODuCZhlEAgrggBAxlCbYNCMF5qBcNBElGdJyBCBxDjoHw7GQKB6DiFRlgkDJthETppDScoMh+IRAH8PJEEGVJuUiWJmCmGgm0wK4LiQU40EWGYmCOThgDQRQiAIZAdg6eRyDeFplBmfBChqRwzjgRIRgQWZyHmHYkiecBUCCDxBBgdw8AQQZY1cZoaFaF4aGWSRyHMOxEHoToPD0JxxFiBA9GoE5CgkO5mFOOorisaB6BgdQ7kQaZwEiAoqGOVh3BYSBjloMARiCIQUHeLQsBsDhzDubAoEwSQeg8GpwnaHZFjIIJ2BKB4jkgSAeE8ChInCNZthoTBHh8KQjkYMASm0WxGk+IxfiEdIKD2RJBmycgSiMWxynAPBtkEJB4j0IYrFCcQTAeQ5KmoPZnHEfILD4BJBnScwSi+WwsnGQgPCwKp6jKTw" +;
"hC6fYTE8PAIniHZGCINJ4BOB5jk8BZEEeS5uE6RIPBiUwgDyJZsHCc5GHEe4glEGQInOZBPB+DxMisKZHGWYQ0HwPJxEyTJzh0cwDmYdwZgkE5qGIPREnIAJ0BOZl7kuGJFAGdxLk1XpQFEIAPF0EJ6h2RoCEye5VnUYgEnUFA0iERxilkDxNFcZA9HYY5UFKWI1lObh3BqSRDmwUlvm2HkdoswPCbGsPkHg7RNgQc0J4YQnh4i6DcFkOA2glgfEEKEA4wh4jiE+icTw3A7ggD2NEc4sBVBCA8PwLI+XtjkGCPsKYHwODZHeNMOoHByhNGmPUIgIR2jSDoCcdg7gcCTCOOgVwQhPDiFuHEboHwOjXDkEIe4vRviBG+AocgMR4jaDtBIcwTgPjeC+JscweRvCPFCOkfI/hXidB2MAXwzACjtCAJACAABACAICA")
oAppearance:Add(2,"gBFLBCJwBAEHhEJAEGg4BMsMQAAYAQGKIYBkAKBQAGaAoDDQMw3QwAAwjGK0EwsACEIrjKCRShyCYZRhGcTSBIAYRKASEYjlCBBTiKK4hSJAYKwTKcBxBF5/YRnGKpEgkCIJFAaJhnIapZDKGKQB6lMgiNoqGoVQKKEyVHKwAAxC4EJbmGKlTTdOz2PY9dgWFYNRzNMq0LItKw2SZRVwAVzXdo2PZdZztNS2bbuG5LcrefZ4W5cFbXfglfTTPLBLitJpMMLLDhtZBkOQ4caWqZ0Yhedz5MamOoGQZCM5OTJrfxmXj1PTYGZ4Ya2W5JQx7cQWZaVda9bzwYXcB4HRzlcTyPK0bStQACfqGYxuG5cDaeMqFZjnOi2DZNaADMJbG6Lw4k8N4blOGx1HuPQeg8XgTGGSJlHQAA2m8FgzCGsJljOOx6h2BYPkKdRrjYWx9CaZAOHYAA/k6Q40m8MZMiMNJADEDIDHyYA4huM5JigPYbkOSJjDkDhjDiUA1A0" +;
"ZxYm4bZflSaZ9HqHRzH4BAzEwEwUkgMIMFMJJHDITJTDyUg1E4E4MmWBxfngdQBIC")
oAppearance:Add(4,"gBFLBCJwBAEHhEJAEGg4BNEMQAAYAQGKIYBkAKBQAGaAoDDQMw3QwAAxDGLEEwsACEIrjKCRShyCYZRhGcTSBIAYRKASEmpyRAgZxFFiQZCgMDYJjSA4gTA/cIzVDUSQSBCESgNEwzULUchlDDIA7SYQRGyXDQbIRFCZaUjcAAYRaCEwTFDSUJYWB7HqeewbDqKZJnWZaNi2XYjCKOZYAK6sCyrIqydJ3WrbVwXFatezxPy8bbuGr8AbrBqGPriGJPVhODTrPTBbjtNw3DaRLqXKrmOZZVi6XLLT7HcCvS6MUaRL6nLjqOjqfj7S4BSC5HpeWwdExVMK3azgGxPNiCVpeWZ2XadfALEbNcz0cRYTwPA6LDKSZoAFrXJbmXYyluZJdjsNhHAOCZIk4aA1AADQmiMXRkjYXQ8h4XILn+MZvkYegxnmbZWnuBh2j4YQxFebA2DeP4xkUcZMlMQJTDQDQjFUAxPAABJwn8MAfjKXI5C8TYjGyXg7k6c5AnQ" +;
"bJhEORJeH0H4zCWXw0mAeIGCKAoNEMWJZC+DATBGZwvh0Ip4juCgMGMIJMDaDZDHoI4IFAECAgA==")
oAppearance:Add(6,"gBFLBCJwBAEHhEJAEGg4BOQDg6AADACAxRDAMgBQKAAzQFAYaBmG6GAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQJADCJQCQk2MBJJDAMAlSJKEhRVDsBxrEKBZFJDCIZBqEqeZ7iEZZPiAN4sTLOExgbBIPQ/BKZAAfeCaThqQZARxQUI0IItDALJKlIqCtpkBydHKoKotKpqZpiNpaQLXFByfCMRR1BIDLIvKyLAo+fAADBXdwyeJoaSjFSQIpsC54DqUAKOBTfV6xPIkEgRBIoDRMM5DVLIZQxSA5VIEERuRQ0GyERQvMALHiEGIXLBSGRxPSuaqcaBqF6YBhFUTZOiwLKtayLOrafqEYpqGqbGA9V4yaz/cYxKzLQrjMpaG6PAeC8J4zlmbpsHYO4ag0VpCleKJEGMMh5lUKonM0RBjj0XovH+G5dmidB7DyHhPEcc49l6aw7E6Y4kmoOpLneOZvDKHJikmPgtguEpxlwPZdkOYZxD2Dw3lmWg8mA" +;
"A4+AMOxOGOHJqDmDoDiWZQvAyIwwk8AALAKUI4DaTZDHyeA+E+F5OBIfIPDOTJ1HYTwzjCbQ7mAI4yB0OhOFiAJRDSTRSmyPgwgAAo9kGBRPEiPgxD2T4YE4FQ9GEc42ACCBjykaQ5CQGRwmYLJgkkJgKD6T4znCd4LmMKRJncPBPBiZhXgCJAThyYg4k4U4kxYCp4CoYgtg+WZ2GeE5jDOVhMgWY4jjYWg6mWQ4iHNKoomoeQtwKcJ8D8Z54EWdg9h8aJdlqDoOykaA6g4M4QmYOBnEoNJtiOaQaE6FQ9g+Chcn+K5rAqQoeigKgqhCZYpirVASiUIp6Fmdwvh6awAkSMIrDqBojikaJpmqOoqiuWoyheJhdhOSocjEaxbCKJ4yiCKpuiuKxfHqRpejULB6l6SYkCyOpwnmL4PYKah7i4CpajiNgLGsapNjcKYDlKGo0iAC42laLhthsMpnjOLZbHqMonmwa46mOKhuGuIprjCbpMBKVY4i0e4Sn2Qh" +;
"wAuVp3jScJrgab5Ei8G56miNApjuZwZkGMQcCKW4zm8axHBiLQxiwHplkmXx8gKeInHIO5unCHxuGmJJ1gULxnmYbg7mmc4uHGMYxxqOITiMKA+X8HYjkibh/COWQEmiHQOHmXwljKT5JDoER8E8eJWhqT5iBOLgdlSThIHmX4uGSN5bEiGZmiOUxNgYYA5GSaoXA4fZQjMLRLhiIgqgsBseIhR/B8B2JcVY8A8pHHCOEAI5hID8FqCEZAtiFgFAuFAMIewDi+DkI4O4KR4CPGyN4PATh4AMAOFlXgLAnDmB0CYCY3h3CfAeKUdgeh4CHFeDYPAQwZi0MqD0B4UxrCpB0DwSIskyCzDGLYdwOxzh0EQGsYgZgPhrG2KoXwQxMDbE0G0aIhwYA3HcAsQwXYXiZFYGwHoTg1ACICA==")
oAppearance:Add(7,"gBFLBCJwBAEHhEJAEGg4BVwDg6AADACAxRDAMgBQKAAzQFAYaBmG6GAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQJADCJQCQk2MBJJDAMAlSJKEhRVDsBxrEKBZFJDCIZBqEqeZ7iEZZPiAN4sTLOExgbBIPQ/BKZAAfeCaThqQZARxQUI0IItDALJKlIqCtpkBydHKoKotKpqZpiNpaQLXFByfCMRR1BIDLIvKyLAo+fAADBXdwyeJoaSjFSQIpsC54DqUAKOBTfV6xPIkEgRBIoDRMM5DVLIZQxSA5VIEERuRQ0GyERQvMALHiEGIXLBSGRxPSuaqOZJmFTVVYEaR1ICUJamW6qApiXpkZpnWigPZeLqtfyuLCtCaJcoLFJMGcOgdE6J4LkmZJmHOOZ2myJJfFEZo1FwcxqFUToClEWIuFgPA+C6dx7kGVpsHaOZdC6JwnH2RplDmHZziCKR7gsQpZmgeoKDKGIqCcCZygmcQ8B8M5Em0O4OnOJJrH4" +;
"HYTgyZA5k4A4ImQNxNmOBgaDkYJCgiOAukucAAhkb4MmMPJRHcTw3lCcQ7CEQ4pnYOZhhecJfgiDY4gYIA4gwQwYkiAhKiAAZACbOA5lwPJfBOSgTDuTojjCbIOA6KBomYN8pAyXA3E4AxmD0OAOBOCZBCcQACEiFQmA+A5knkPBdkeRgzHyTo4F4VA4g4M4Yl6BxNiMcJfDYDYjHWdg7AkMhYhmGUEmSeg+iTNhyg0JQJkiaQ6GJLZhDaTZZm4fR9k6WYYhiIQJgmKhrDwYwTj4M4El+I4xl8OhhmmWh4h6J5DHYUomGYehygaJ5PCOOJwgSIRKBye4uiuKRwzqDZjGCWQ3CeehqjIPorEqWo4DuXRChKTYzGuawCkKMQlCsGoaiyZpKlaN4TmcE40mYdhiCOFpRg8bQ7BaMY1myC2bhOa5DmqO47i4OwGkOOYpjuIpJjaYRLDyIYzi+O5GmWNRuHoFppHcLo4FKXY3k6K4Gn6PJwAuVwCj2bI7jabw" +;
"+nCOxQmyNYwnuKp4jNsZoiSRRvEsHJ6gwKgpDoNYNk6CoiHWJROBMaoUisap8GKHYaiaSJHBuBYlDuAZ+ksJ4THyV5DDEfAGh2IZohmMhPg2IYKiGf40E2SwGHmTB0CoGoIHcI18HSFBtmyJoph2TgjG6LA2GqY42jCQ40DOao3DyNRch6JoFjXW5ik8TYKFMUJZCgfROEyRpfG0JZ+hWMsGgoRfgvA2ucMomgPBZFoCUHAURpCrH+CwJYUhzB7B+NAGgHBHB2GEDwFw0wjDDA4FQHIDwiAZDYPUGAnA5wjG+DkAwhwFB6SGIUDIrAfgvGyMoOgTAYD8Du9gMwGRFBjGQqoRA4RdiHEoN0aowh8pKH8HYB49w0grAmDAMgTwKC5DKEEKwVwKhOBYN0BQPhfAJGkHYPAhwQotGAAcHITQAi9EeEsagqQ8jFDmIYdYGRXDLFsO4fYZwfhuDIbUfYdgsi9BUK8Yw2hNAGESKYKQFByhVAICcDgix/h7HELA" +;
"NIjQoiuH6E4NIASAg")
oAppearance:Add(8,"gBFLBCJwBAEHhEJAEGg4BEQDg6AADACAxRDAMgBQKAAzQFAYaBmG6GAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQJADCJQCQk2MBJJDAMAlSJKEhRVDsBxrEKBZFJDCIZBqEqeZ7iEZZPiAN4sTLOExgbBIPQ/BKZAAfeCaThqQZARxQUI0IItDALJKlIqCtpkBydHKoKotKpqZpiNpaQLXFByfCMRR1BIDLIvKyLAo+fAADBXdwyeJoaSjFSQIpsC54DqUAKOBTfV6xPIkEgRBIoDRMM5DVLIZQxSA5VIEERuRQ0GyERQvMALHiEGIXLBSGRxPSuaqSZZnFgWJZVBSNJicJ4oO6qMqKZpsZ5oWjgPZeLqtfyzLSuChqKpDJpUGsPBeE8J5nHGYZePeGhdDUQphHKPJmlSKodAWRxBG6eZ3j8fg/C6Y5xnGbx6j2HpdheHwXiKOh5l6FxQuqChiiSeIBk+aAlnIfJdkOXgHDyTxDlCcA8E8E44m8PAeDK" +;
"aI9DAQACHyIQpE0QxUlaAhiEOegMH0D5IDieA8iECBcnGBZPAMNJODQCoSiyLgAAmNwEnODpiFgKZxgoIJTlyd4LA8M4+BcOwOlOOJpDqDs6CROQiHCH4PGIWIcnuFZPGkCZaDyYRjkISA7SCVJ1CaCZSgIUIUg+eYmFSFYlgkCZ7gWDpzi4SB+A8aREh+GZJnmJJ/hqY53HIVw+mWE5eG+BYnCONh0h2J4JmofA/GeKg2GmBQPCkJJuUWQ4ygeFIohmKg9HyChyiSLInGmeh6hCJIpEoWZ5iIJxqCqG4fE+SZ+gGKJOmoTtYGceomhqFRfBoOoNiwKwqhodYmCsaZuisPxqAsFoiHYahKk6J4wCaCpeCSGwoAmOpIiwahalKGYwiuCgyjqI5tDqdpWjAaI7BqIQrCuSxWkuLRslsYpP4maxKhGNQsiqfpoh4bJonifR9C6WgJlqEhnBmTpnjWaI7mIbY+iWSgSn6PIwUCAo0HASZCgWN5uhwBh+kCZY" +;
"5HSaw7Gga5+mCQokAkChDg6ZBpHoSZECUORSnaEAihgHgsD0IwDjKMYYGYOYWDiDojksDgngrMhKBSPwOhOLhNCgCg4HYHx1g0WguCcfYPhyQZZDyIpjDIMgqCMYACAIcJenOZprgKXxNFYYg9iWNx4nAcJhiMARUCsSwCk2fR7k+KAuiyVRfhoCJxDySpmmmax6B6FRLGQLJcD0EhbH0DsY4iRNDwBwGUSIaAti9AUK4dQ2hNBGEyKsDQlRiDpB8FECYcwUg9FABUPYJAiBsHgK4NQAiAg==")
oAppearance:Add(10,"gBFLBCJwBAEHhEJAEGg4BMEMQAAYAQGKIYBkAKBQAGaAoDDQMw3QwAAxDGLEEwsACEIrjKCRShyCYZRhGcTSBIAYRKASEmpyRAgZxFFiQZCgMDYJjSA4gTA/cIzVDUSQSBCESgNEwzULUchlDDIA7SYQRGyXDQbIRFCZaUjcAAYRaCEwTFIUeL+d54HhbNrXAYdSjNMCxLIMEwrEqOZJmWbaJpXCaNZoDV5eE5uY5rXzMwgxDDte4DRLhMJ6XpebB3SaNZDmM40DSNMzLNrdMK9LAeGzWMYiZzzPK9DzPM6+R5LUjTNKeR5HVZfFTZNo3F5NRYaeJ+YZ5NB1HSNcyfPqqaw0bStRh7UABW5jG4sTa9fz3TLMOY5botQzTOgAFsLhXi6ewHD8e4HHidx3k8F4Lk+BJYAALJWmuPBOg+HYkGofAOl8L4DFOQ6ljUGp+g8V4HmgdB/kgMgMgQf5HEeUZhH4H4niSOxzB8QZKA4GxhAgRgRgOBwoBmPYCB+" +;
"OAtm4cxhkeWYkgYIIoHoHYGlySIBnyCQigiDY+gmIYoioIoBl+EABAEgI")
oAppearance:Add(12,"gBFLBCJwBAEHhEJAEGg4BNEMQAAYAQGKIYBkAKBQAGaAoDDQMw3QwAAxDGLEEwsACEIrjKCRShyCYZRhGcTSBIAYRKASEmpyRAgZxFFiQZCgMDYJjSA4gTA/cIzVDUSQSBCESgNEwzULUchlDDIA7SYQRGyXDQbIRFCZaUjcAAYRaCEwTFIUeS8ahrWxXdgWETZOi+LauS6rWrzAqMZBmGybRroDp6dY7OK5LjsAwbDJsXJeWybNrXOa9cD0PS9Tr4MzzPrDPpkWaaBo3FaZaJ3XTbLCre0zcjzPQ9TzPPoWSZHUrSXj0BjcTZBUjVXa0VgLFYzZY/VDTdx0ba9JyBRzJMy3OLABZKfTCbbcN43LieJaBYjkZI1AAKWp6ZptkKcw3E8XBLmGcJ5myPZeA8B4LBug5UCsFgdj0FwvEaZZ3iwPgui+Hx3j+WpEjEGJsj8P4nkGbw5EqeAEjmAJgBKPZzDqHxXCWeR+l6ApBkkOJODOEIugSSo4FYFoFiE" +;
"Mo4mYOYOHgKZ6H8IJnjWSoIl4BoWAuCAiFiCgpG6Yh4DYK4LmIKI1n2CojEiEY6gmUAQICA==")
oAppearance:Add(14,"gBFLBCJwBAEHhEJAEGg4BSoCg6AADACAxRDAMgBQKAAzQFAYaBmG6GAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQJADCJQCQk2MBJJDAMAlSJKEhRVDsBxrEKBZFJDCIZBqEqeZ7iEZZPiAN4sTLOExgbBIPQ/DZ/YRqGKqBoCHJCQjRAi0MAtEyVCwLYRpSA6OjmUJSRrVNpVTJ9BzbLydIRAawoJqGZpeRrJEIgRBJIDSMY6DpOIxRRiBZpIEITODxUK0pJ0WRTYYROqFETxCxZVrXN5nWbfHD3Og6LpMeyLKqIY5lGDYZimJYtTzWNg2TqOY52P4+aRqGrADKVbbVdT2NA0TSre00TjQNK2DYtYzbOK+bRuG6aVp2ZY1TxpjcW5uB2c5bHGOpeGkGoMCYIwhi2SxtDaW5clae0DmCbI4FuTgHBeSZElMao2Bufw+nabw0jsL4MCcTJaGwTZXiGahzh6V49lofRdiODJgDgTg3HmfBvBqUw9lQNwgEg" +;
"GZrgIXwIDIEEgCOEZQDeIQ2GmOA2CEeBlmmBpemgdZzgMYgDhID4EFuF50jsbANjiJJagEYo4CILYCmKeB+CEOIODOFglg2TYImWS4KiAd4yD8fBkBODgxhEJBolWPIOCOKJyE2BwkAOCgwhCZBZB4WISmOOBqD6AolAkehCDkJRJgoSYWGYaQ6GiB4lCmAhVHeWYpg4GIZGOWZKC6GonFmMhhhWJ4Zj4ZIWiKSZOFGFJoDmYhIhKJ46CIZ4fmWegKHeDYnikMoJiUJo5jaBIjmcCZ2FyGhpFoeoOiYZ5JG4T4dCiSheRmKQZkaI4rCcaY6hCJopDkdoliMaYKkKOIfiuKh2jyK5rHqJobjAaAahqPYxGkKwCiSMIqmoFpMiyKo6C6NYnmqCw2jONYpGkHgnigaoqCqAIMGMOQeBWOAsHsPoBgiZBymoAB0k2Op+luIAuFaZhHDOW4DAiRQyCEexSmIfRfHMYJeDeTgpB2XBwFwNopkcchcjeLgjgCDJ" +;
"nF2UR2lueQdjYZxOHOIYjDQTRDA3oQakaOYwDaDo2lMFw9l+RAEIC")
oAppearance:Add(18,"gBFLBCJwBAEHhEJAEGg4BL8MQAAYAQGKIYBkAKBQAGaAoDDQMw3QwAAxDGLEEwsACEIrjKCRShyCYZRhGcTSBIAYRKASEmpyRAgZxFFiQZCgMDYJjSA4gTA/cIzVDUSQSBCESgNEwzULUchlDDIA7SYQRGyXDQbIRFCZaUjcAAYRaCEwTFIUeS8chyXQbBqmdZNVTYNI1DT2TZdVTZN63LSnNznPbCYzcWY1bjOO5LYrkeZ7HqefAcDwLBKHYZgU5tMzDNqubJtXoeR5cIwXFqVZhiThOG4rHqgah5zw5PgTKZNUbCAAZdomVaNZDmahiLz6MyhZZtWJ7QAYdiWNbCfq4bQdHBGbwmcE6MSyLy5JobYz8OzoEDQNBOEK3RhgveDwNncAxNkIOh1HiTB2FMNY+mAcRuDCGxNjGS4Mlsbo4BgDBGEOTxDmmUppnYWRQAWVZjmMM4MgMLJOH0TxHl2JIBlOM4wm0O5dhMMI8C+TAzHGcA7k6c5FksYBfig" +;
"ZYWE6UAzn2fRYk2WBAkYLYLhKdIzC2S44h4KYKCKKI2CyCgAAQBCAgA==")
oAppearance:Add(20,"gBFLBCJwBAEHhEJAEGg4BN0MQAAYAQGKIYBkAKBQAGaAoDDQMw3QwAAxDGLEEwsACEIrjKCRShyCYZRhGcTSBIAYRKASEmpyRAgZxFFiQZCgMDYJjSA4gTA/cIzVDUSQSBCESgNEwzULUchlDDIA7SYQRGyXDQbIRFCZaUjcAAYRaCEwTFIUeS8bpvXBZZoGUYZSTNMQxbJ2TZdVTZN63LSnNxXrieaJqbKZVwHCaRcDwPC9LyvNgjb4LQ57MKxHBZbqNUzNNA0bxvG6mEYVS7LMxxEAGaZxXjDMYyWR5LheS4xRJydRfJ6nbxpdwA4YZRrrBy7FqpOSrW5PXrmXAAXZeWBddz3RzbKKpK7yKp88K3JqMLauS6vJgeXZGWB2BcHYuFqL4bj4WwuheTpnHuQ4MnccY4lyHIVH8c49k+TYvlgLDXG2PZmkKegchuJR2i+HYnGuTRDFiWQtkuEp0nIZQfHYJZ5HmE4zAGIAvloBoOAkf5ZGSbJjDkThyni" +;
"QQxEsJ4AlcNhNjOOZjGCGBHj4FBmlANR6CkNBgBcRI+CqSpykyKArAsCJODWDQjGiZg4g0AAEAQgI")
oAppearance:Add(22,"gBFLBCJwBAEHhEJAEGg4BLYDg6AADACAxRDAMgBQKAAzQFAYaBmG6GAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQJADCJQEQjBIwCKAUUhnESWZCjKLYDjSIYDSBIUQxCKQahLHifJAGegpZhuRYaAbCIKxfBMYgAf6EagjKgJfhyQYJULWFLSFIALw2DylKYgOjqSo+G5UWhCIyyXCNVyrGSbiTRWBlQxxOCLZAAWypLC0NIlSAOFLDDJ9cRBOqNAoua4bYrmtIEIRKAyTDLQdRyGSMMmiIEsJrOIyGaCRIgmYIDUrdYYROpmO4bDSpNhZJjGPTtPjBLKtS4qeqSbZ5Xzed74LgeE4DRrDcbxPIbfrKc5sYLZWbgPYeThbMRiDGGQrFWQpxiKUxqjkHIuHcU4xliax2DsfJum8I43lmbp0HufY/A+H5LmucZ2DofJ+BcOxDj+WwvB2AwplUWYVBcYJJC+TATBCZw6A6I4YmgOhfjODJkDmTg3giYg4k4" +;
"Y4GBWBoOFgcgegaYgIHYIYHmIKIWBcOYhHOFZ7HiDoIDiaYCAwSAaAMNQNGMYI2HcIJDiyaQ6g6OAuA0eJOGgLJlgOIRThoEoRg4SQiEqEZkkkJhNhKZJpESZh4E6CQMmeEBOhkYhBDqI4Xn4NA2FAMp8kIMRdnMXJtDuDp3ioPB6l4eA+DoeQgmOKg+hyYJJlIcodGeCZeHqHYnDeZgPhcDoTjIOx7E6M41mgO4NEMVJYhiDBUAyNAtkuJ4WGgPAPAoToThmTp3iCbw7iaCgeh6GZoHaXJED+ahKgYCYpA+eoaiOKRqAqNoG3WWo0m+Jl4mWaIjkuNAMjALJLHOWo+DyDwzlaQA9A8KwAnGMRPAORJzjGTwrCSc4yGyWwelCKIqgsTonikLRqiyf40C0CwekuMotmsOpe5KSp4neLpLHQDY5C6DwbjSdA9E8U5Om8PQuFuSJ0DybAbki7QPFuUp9jybp7FKJI/jAI5/ASNZwGwApxj0L4rkqcY+G8S5" +;
"QnaNAu4mPgwAwQxklsNxPHwdpw7ybB+v0bhsgMEpJm4XIgnaSoykyJwukqbhbkMMg9jII5UneR5xlOXJZDaDZcXwQJMmMQJUG6C5bhsHQ+GuY5jd8NIdC8R5SHUA5bEyVI1B0TxWlUdYNEsTg9nSI5cnmUp0hyDY6C8NATFGVnDCMGNUgwc5bFwPhPiOaNbE+HZPHWXQ3G2Px6lyd49H8PkX47xuAOH2MEdwexbDtDmEEEwPEABADgBkf4Rg0CGGyLgN44gTjnBYH4eYHBngvGaJ8Q47wcjPDmLwf4RRoD0E4MkfQfRPhnHKO0ZIGx9gdAyMcHQ3A5h6C6BYAooQ4BXGuI4LYlRui5B6O8Oo3wchVHOGoLgdg+iEAQIAQBAQ=")
oAppearance:Add(23,"gBFLBCJwBAEHhEJAEGg4BMoDg6AADACAxRDAMgBQKAAzQFAYaBmG6GAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQJADCJQEQjBIwCKAUUhnESWZCjKLYDjSIYDSBIUQxCKQahLHifJAGegpZhuRYaAbCIKxfBMYgAf6EagjKgJfhyQYJULWFLSFIALw2DylKYgOjqSo+G5UWhCIyyXCNVyrGSbiTRWBlQxxOCLZAAWypLC0NIlSAOFLDDJ9cRBOqNAoua4bYjKIAIQiUBomGahajkMoYZAcKSAAIITabRoNUIiRBNQQHJa7QwidTMcw2GpSbAuC5reoaTJUS5NE5SNJkZRJFSYb5wG78DwnB6NYTkOJ5Hh+BztGa4JztKpbEp+AeMJrEWNgLDWKpdDiHhQjEGJsgcC4Jkaax2DsPJ+h8R4rlubJ3nqfg+m+F5DlWaB2nqPIOCYIwZhGXgoF2MphlgWYVBcbI3CoSpCjiZQ5E4cx4mAOJNiMcJfuEcxglk" +;
"NxhGgYgXgYYZIG4HoGiICB2CGB5NHMZJcDYDYjHSWQ2k2Yx0l4OIOEOFJmgICpoAYAwzEycxEhwJ5KCgLJmgODgzHSXw4GKY4ElwNxOAiLJehKJJIjITYSmSaRGFCFJknkPJagsIRJByYILCQQx4mGApOHibIhg4DQkAyLArksF50kqDBOHOBJjDkXhDhCYIMA2eA+EiEQOAmYh6h2Z5JmYfYemeagGgAOEznyYs/imVJjhCTg5kyZIbk4YwckkMoKlKPIyECW4SHyZg5k6A4QmaJxpniRJo3CehCG6HAmnqHoqhuXZyhCeg+g+Ooei2K5rBqMIhiuKwKiyZQ4mmZ83C8K56HqPA5mmY4eAwOZbhKAQDCUG4DkScg8g6A4kmyNBOjOHJpDqKZLGKV4nk6Kxyl4OgtluAoziwLZLgye45GsepSl+NguAsZpujsbpbF6Tg8iyQhpAMJhjjOJpXDrmo0mqPxOiOMp+j8b5HmMBJBnAbAmmaQRwjudwNkIXp" +;
"cAGaI/k6Q4nASQIuAOKp4CeUAyiyLQsAyMwwk4O4OnOQJskkMhzj8KQ7E6c48m3cp8jsMM7CyVwxk2cxMmMNpNA6TI3DGSpyEyNJwDKMgsHiMBAmkIwyDsKIPA0NxNDwdAshcUA8PaOxUlWNRdF8WpWHWTRjF6Vp1n0dxblOdJTksUpLHUDIXEuUhdhmII0gISwbDicw8g8M5THKXZsmOI4eYvRPBbGsPsXwbxuAPACMEd45xLCpGEO4KweRzi9A8DAJIYArgWBKKQA4ARPjlDiGALIkxYjhE6Bwcopw8jzGeJ8E41wfjRDoD0D4TRpD1A6CcKo0x6h9CeEAPgnwOD+CQHcOYcRqB5GWBYPgoxZjKB0EQZIOgoBeFcFcQg5g8COC+I0cI+BrivD4FAHQXRqAIEAIAgIA=")
oAppearance:Add(25,"gBFLBCJwBAEHhEJAEGg4BegCg6AADACAxRDAMgBQKAAzQFAYaBmG6GAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQJADCJQEQjBIwCKAUUhnESWZCjKLYDjSIYDSBIUQxCKQahLHifJAGegpZhuRYaAbCIKxfBMYgAf6EagjKgJfhyQYJULWFLSFIALw2DylKYgOjqSo+G5UWhCIyyXCNVyrGSbiTRWBlQxxOCLZAAWypLC0NIlSAOFLDDJ9cRBOqNAoua4bYrmtIEIRKAyTDLQdRyGSMMmiIEsJrOIyGaCRIgmYIDUrdYYROpmO4bDSpNhXJbWAShKyuJ4oKiJUjqQI0ThPd74HgOC4XRLHcLyPDcVxHC57XJSNqVbY2BgPMZrEWNgrCWIpdEKIxTDMGYsmcS4tladB6noHpPGeL4rlma52nwPZ/C8d5TmOdZ5nqPJvF8I4vkSUAokoUogjgLoLkcYRmFQXYylyLgsAsI5AnAPBOngPJtDuDpzjCbkjEg" +;
"TJrDsTpTi4GYHiGWBkmoOwOkiDglgkIhoiYKIKmIc4yCCCAhhONgZgUIJjjoDwsEsMpUjgLhgFgHJVDWTYXHiJg8E8E5KEYPJkFOSgPgRNw+BGDQhEOPgXDuYQ5FIFIVGWCReFqFYlkkZhSgUIxJDicIEE8GQuEmAAKgMPJRDSUAyiyLQsAyUw8lAeoPHeJZ6DyTxDlCcoeCeM5OEeERkgmbhJhEDwqBKBoRGgegWgiIpoFkGoAhGZ5ZmydIeB4d4qHINIdjKWQDCeCgCg4Dg8E+GoGiIPgqBOXJ4XwaogncPZPGqLotisKpqiyJwqEqQ5+jaK5rDqVo3iyKxKlif4rmwCpGiuMJqHqJokD4ZgpAkAwmluU5yk6M5tAsRpSD6bRLFaVo1CuGp6lWNhrGsbo9jcbR7gaUo4myYhxjkQJJlIfIihGDwjnabo7m8C46mSPJPkscJ/jObxrmKX49m8S4OnEPxkhsKAACoWxzEyVA1G+fAnAqQpwkwNwOkObp" +;
"sBiVoDAsVFcDSTRZAqIg/jGTB3B6R5yAyBwikichMhcIIpk+AoQiYKgMhMLJOHYYIyk4OAtGoE5rCaTZzgyZwmiiI4Sl4OQuCAaAYn9ixykoQpBg0U5OHiRxrm0N0oHUDRHFKU5xl0KJzkGTRihIAYCHQJxnEKABKkIfIhCkSY2mWS5ZlyXYlkyWp2g2LxlCgdgihcYJXGAdAEICA")
oAppearance:Add(26,"gBFLBCJwBAEHhEJAEGg4BMUMQAAYAQGKIYBkAKBQAGaAoDDQMw3QwAAxDGLEEwsACEIrjKCRShyCYZRhGcTSBIAYRKASEmpyRAgZxFFiQZCgMDYJjSA4gTA/cIzVDUSQSBCESgNEwzULUchlDDIA7SYQRGyXDQbIRFCZaUjcAAYRaCEwTFDTJKoa6vLArewbEqOXzTNS2DYNUzrSLMdCBZ4uIAHWbZd51XbdV4XXbVbLieR5XKcdybIZdWTaNw7TwPDaNaT7PLIL4yHD3UbRdaGNq1TYtXhuJY9OxqNBzfIHTxZTjQNQ4ThuNh2J5cOTYNBaTQ7YaObjPNI1yxLWK3Ph0cBsWhvA6DZKOZJmdzxfIteK1AyDIQdXRPDb+JJ1HqPYYEwVhPCsXR4macAOhwLhdluCJxGCMRZB2XQekCZZjm8XYbm4BwTCGFZJl4ZA9noPADlGAJEDGTYzHSYB6l4R5BiQaRfFMNgJDuWI4BIBh1k8Y4+AwNwgCKcI/DC" +;
"XoTDCbA7E6dg0jMLZLjgfghggIgohYJIIAsYpkj2BZMGMYgBgMGJAAEcxAEAgIA==")
oAppearance:Add(28,"gBFLBCJwBAEHhEJAEGg4BM8MQAAYAQGKIYBkAKBQAGaAoDDQMw3QwAAxDGLEEwsACEIrjKCRShyCYZRhGcTSBIAYRKASEmpyRAgZxFFiQZCgMDYJjSA4gTA/cIzVDUSQSBCESgNEwzULUchlDDIA7SYQRGyXDQbIRFCZaUjcAAYRaCEwTFDTCKOZavLArewbEqOXzGMizLLNAyjOq+cKBZ4uIAHWbZd51XbdV4XXazarqex4HgeFwHCaSaDNNA0TS3DhleTzR7HMhuZ43TbTCDTM60LR4bbWO4hOxzNBfB6HZxJd6UPQwdoNUzjPTpTzTFa2JytUyPJawXY3Vr2QxmX4/X5VeBVfg9UarNqOO47bwLWrzA59Uy8OBVNaOURhlaPxdHOTxLnqXR0j6Z5uDGfQuBqPZLmaUxyF4CxuneAx/HiWQrjyThegWWY0lsbovlgLBPG6GZGmMOQfEOXJyDyDwyliOQvE0QxclkfweBgBgDD0C5zAiRgwBqJhxm4" +;
"eBdgONZJgKDYykoBhzEwVgwAAToKgKMIwgkYh4hoKIKmKKIYisK5LDcdI+DSIIYgkcxAEAgI=")
oAppearance:Add(30,"gBFLBCJwBAEHhEJAEGg4BTQCg6AADACAxRDAMgBQKAAzQFAYaBmG6GAAGIYxYgmFgAQhFcZQSKUOQTDKMIziaQJADCJQEQjBIwCKAUUhnESWZCjKLYDjSIYDSBIUQxCKQahLHifJAGegpZhuRYaAbCIKxfDbfwTJyNKAneLKBgmQ5WTDMUgBPDYPSVJiNKgACwoWpKZoJDTKcQ2TScZRuAADIzDCr5Yq6WpgAACEIlAZJRjoOo5DJGGQHCigABCEzhMZDNFSCZeQLSdy3HCyWYNOyLWiaRp8axzG6daBnehZdtyJajaZqOoaXo+W5NAZ7Hqed5XVbZXjgOJnLZNZq7QrGcRxXJ4DguB4PRrFchxHJcPxfE6ZYZwN63NrsdY/jiWhsHYWwNhacZAlMao2DoLg3AuCZJmScx5HyfovE+M5Rm6dZ7n2PwPh+S5LmKb42BuLZ3A6RZvAMOpOkOOJODQDQ2lyYh+k4OAiAob4gjgJgMgOYJoEYDYEmECBSBK" +;
"BRbmgGJODOTQzjIARAk0YxgloNRNHMagGgmW4IiCYoKiKSImC6CpiniNgwgyYwolWOIJA2GIElsQJMhMLJPHSX4jgYQYQl+OQSEKERkgkHhKhGJJJCYTYSmSaREmEdJjlMPQDDCTE4lsfodlkdY3heDgJgIYoXmYSYGGWGJmGmJhohqWx5GyX4WAyKRckcMoNgMZJcDaTZDH4eIeieGZuH6HxoAmcoCh+aA6AaBIhmgagmgUN5nFMcJEhyUAzDyUQ1CAMxMlpYhqF6GYmCmKh2hyJ5pjqBoeiiKgKg6JopGqCoQl6JRpCMVQDDmToDiiP4WA0aZaCINxrHqZJai4K46mqPIvmuawGj2MJsAsEpCjETZYmiPwwgwY4gmkOodjOXJRHeTAjBSSIOg0eZalkNwtjsdpajebZLgKXo4G4S4OmaOIugMcgkDbm4QkhGgjFWfY0F3FwTC6C5jAoVY8E2CJqn4NgNjufwBkAMAsBcBJBnAPAnAYNpZiMYhVj4DA" +;
"rliVB2C8MAAjMLZLjwXwZkYMYsHcHJHnGPIHB6SIyAyDwmkkcoMhMKpIlANAEICA=")
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
333
|
How can I replace or add an icon at runtime

#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:ReplaceIcon("gAAAABgYACEHgUJFEEAAWhUJCEJEEJggEhMCYEXjUbjkJQECj8gj8hAEjkshYEpk8kf8ClsulsvAExmcvf83js5nU7nkCeEcn8boMaocXosCB9Hn09pkzcEuoL/fE+OkYB0gB9YhIHrddgVcr9aktZADAD8+P8CgIA==")
oSchedule:ReplaceIcon("C:\images\favicon.ico",0)
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 11:30:00","05/24/2012 14:30:00"):Pictures := "0"
oEvents:Add("05/24/2012 12:45:00","05/24/2012 15:45:00"):Pictures := "0"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
332
|
Expandable-caption

PROCEDURE OnAddEvent(oSchedule, Ev)
/*Ev.Editable = 3*/
RETURN
PROCEDURE OnAnchorClick(oSchedule, AnchorID, Options)
DevOut( Transform(AnchorID,"") )
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:AddEvent := {|Ev| OnAddEvent(oSchedule, Ev)} /*Notifies your application once the a new event is added.*/
oSchedule:AnchorClick := {|AnchorID, Options| OnAnchorClick(oSchedule, AnchorID, Options)} /*Occurs when an anchor element is clicked.*/
oSchedule:BeginUpdate()
oSchedule:AllowUndoRedo := .T.
oSchedule:SelectEventStyle := 48/*exLinesSolid*/
oSchedule:DefaultEventLongLabel := ""
oSchedule:DefaultEventShortLabel := ""
oSchedule:CreateEventLabel := ""
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:OnResizeControl := 3073/*exCalendarAutoHide+exCalendarFit+exResizePanelRight*/
oEvents := oSchedule:Events()
oEvent := oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oEvent:Editable := 19/*exEditAcceptsReturn+exEditLongLabel*/
oEvent:LabelAlign := 4/*0x4+*/
oEvent:LongLabel := "<solidline> <c><b>Bank Account</b></solidline><br>+ owner: String <r><a 1;e64=gA8ABzABvABsABpABkg8JABuABlAA+AAgAECMcTi4AMwAM4AjMGhEGOUVAA4AAwk8plcqihwAElg0wiUlOkOiUEgQvgcFhsKhkIhUQiUUnccj0gn0jmMagUlowAMNOpEfkMNkkmlEqrctjQmAAjAA5AA2sssHcbnkdq1Ln1QtVSjQAAEBA==>▲</a><br><solidline>+ balance: Currency = 0</solidline><br>+ deposit(amount: Currency)<r><a 2;e64=gA8ABjAA+AECMwAM8DABvABshoAOQAEAAHAAGEWjEajMGNoAMoAOgANERMgAOcHAAvAEJhcEh0Qh0Tg0CmkqMMFlUuhkxiMTisXjNCjk6EwAEYAHIAG1MjY7lUsnkwh8/nUClk5gwAAEBA==> " +;
"650;</a><br>+ withdraw(amount: Currency)"
oEvent1 := oEvents:Add("01/10/2001 10:00:00","01/10/2001 13:00:00")
oEvent1:Editable := 19/*exEditAcceptsReturn+exEditLongLabel*/
oEvent1:LongLabel := "just another label"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
331
|
Expandable-caption

#include "AppEvent.ch"
#include "ActiveX.ch"
PROCEDURE Main
LOCAL oForm
LOCAL nEvent := 0, mp1 := NIL, mp2 := NIL, oXbp := NIL
LOCAL oEvent
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:SelectEventStyle := 48/*exLinesSolid*/
oSchedule:DefaultEventLongLabel := ""
oSchedule:DefaultEventShortLabel := ""
oSchedule:CreateEventLabel := ""
oSchedule:Calendar():Selection := "01/10/2001"
oSchedule:AllowEditEvent := 0/*exDisallow*/
oEvents := oSchedule:Events()
oEvent := oEvents:Add("01/10/2001 09:00:00","01/10/2001 12:30:00")
oEvent:Editable := 19/*exEditAcceptsReturn+exEditLongLabel*/
oEvent:LabelAlign := 4/*0x4+*/
oEvent:LongLabel := "<solidline><b>Header</b></solidline><br>Line1<r><a ;exp=show lines>+</a><br>Line2<br>Line3"
oSchedule:EndUpdate()
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
330
|
Display a custom tooltip
PROCEDURE OnMouseMove(oSchedule, Button, Shift, X, Y)
oSchedule:ShowToolTip("new content",X,,"+8","+8")
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:MouseMove := {|Button, Shift, X, Y| OnMouseMove(oSchedule, Button, Shift, X, Y)} /*Occurs when the user moves the mouse.*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
329
|
Force hover-all feature
#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",500/*exScrollHoverAll*/,-1)
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
328
|
Disable hover-all feature (Windows 11 or greater)
#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",500/*exScrollHoverAll*/,AutomationTranslateColor( GraMakeRGBColor ( { 1,0,0 } ) , .F. ))
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
327
|
Display a custom tooltip
PROCEDURE OnMouseMove(oSchedule, Button, Shift, X, Y)
oSchedule:ShowToolTip("new content","",,"+8","+8")
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:MouseMove := {|Button, Shift, X, Y| OnMouseMove(oSchedule, Button, Shift, X, Y)} /*Occurs when the user moves the mouse.*/
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
326
|
Shows the tooltip of the object moved relative to its default position
PROCEDURE OnMouseMove(oSchedule, Button, Shift, X, Y)
oSchedule:ShowToolTip("<null>","<null>",,"+8","+8")
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:MouseMove := {|Button, Shift, X, Y| OnMouseMove(oSchedule, Button, Shift, X, Y)} /*Occurs when the user moves the mouse.*/
oSchedule:Calendar():Selection := "05/24/2012"
oEvents := oSchedule:Events()
oEvents:Add("05/24/2012 10:00:00","05/24/2012 12:00:00"):ToolTip := "just a tooltip"
oEvents:Add("05/24/2012 10:45:00","05/24/2012 12:45:00")
oEvents:Add("05/24/2012 13:45:00","05/24/2012 15:45:00")
oForm:Show()
DO WHILE nEvent != xbeP_Quit
nEvent := AppEvent( @mp1, @mp2, @oXbp )
oXbp:handleEvent( nEvent, mp1, mp2 )
ENDDO
RETURN
|
|
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\Access\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\Access\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
|