-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakeTableOfEasterSunday.prg
116 lines (72 loc) · 2.77 KB
/
MakeTableOfEasterSunday.prg
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
*-----------------------------------------------------------------------------*
* TableOfEaster | MakeTableOfEasterSunday.prg
*-----------------------------------------------------------------------------*
*-----------------------------------------------------------------------------*
#include "toe_hmg.ch"
*-----------------------------------------------------------------------------*
*-----------------------------------------------------------------------------*
PROCEDURE MakeTableOfEasterSunday()
*-----------------------------------------------------------------------------*
LOCAL nLeapYear
LOCAL nX
LOCAL nY
LOCAL nBreak := 5
LOCAL maxX := 5
LOCAL maxY := 10
LOCAL nWidth := ( ROUND( ( ( 1530 - ( 200 * 2 ) - ( nBreak * ( maxX - 1 ) ) ) / maxX ) , 0 ) )
LOCAL nHeigth := ( ROUND( ( ( 0820 - ( 200 * 2 ) - ( nBreak * ( maxY - 1 ) ) ) / maxY ) , 0 ) )
FOR nX := 1 TO maxX
FOR nY := 1 TO maxY
cValue := STRZERO( nY + ( maxY * ( nX - 1 ) ) - 1 , 3 )
IF VAL ( cValue ) < 100
cValue := SUBSTR( cValue , 2 , 2 )
ENDIF
cLabel := "Label_" + cValue
nLeapYear := nYear + VAL( cValue )
IF !IsControlDefined( &cLabel , win_Main )
DEFINE LABEL &(cLabel)
PARENT win_Main
ROW ( 200 + ( nHeigth * ( nY ) ) + ( ( nY - 1 ) * nBreak ) ) * APP_ADJUST_Y
COL ( 200 + 3 + ( nWidth * ( nX - 1 ) ) + ( ( nX - 1 ) * nBreak ) ) * APP_ADJUST_X
WIDTH nWidth * APP_ADJUST_X
HEIGHT nHeigth * APP_ADJUST_Y
VALUE ALLTRIM( EasterSunday( nLeapYear ) )
FONTNAME fCOURIER
FONTSIZE 16 * APP_ADJUST_X
TOOLTIP ""
FONTBOLD .T.
FONTITALIC .F.
FONTUNDERLINE .F.
FONTSTRIKEOUT .F.
HELPID Nil
VISIBLE .T.
TRANSPARENT .F.
ACTION Nil
AUTOSIZE .F.
IF ISLEAP( CTOD ( "02/01/" + STR( nLeapYear ) ) )
BACKCOLOR YELLOW
ELSE
BACKCOLOR GREEN
ENDIF
FONTCOLOR Nil
CENTERALIGN .T.
#IFDEF _HMG_2_
VCENTERALIGN .T.
#ENDIF
BORDER .T.
END LABEL
ELSE
SetProperty( "win_Main" , cLabel , "Value" , ALLTRIM( EasterSunday( nLeapYear ) ) )
IF ISLEAP( CTOD ( "02/01/" + STR( nLeapYear ) ) )
SetProperty( "win_Main" , cLabel , "BackColor" , YELLOW )
ELSE
SetProperty( "win_Main" , cLabel , "BackColor" , GREEN )
ENDIF
Do_Events()
ENDIF
NEXT nY
NEXT nX
RETURN
*-----------------------------------------------------------------------------*
*-----------------------------------------------------------------------------*
*-----------------------------------------------------------------------------*