Skip to content

Commit 0b1adcc

Browse files
committed
add Español support in TFMXCalendarControl
1 parent 418debe commit 0b1adcc

File tree

3 files changed

+68
-37
lines changed

3 files changed

+68
-37
lines changed

Diff for: ComponentsSource/FMX.CalendarControl.pas

+16
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ interface
5959
const
6060
TCnWeeks: TWeekNames = ('', '', '', '', '', '', '');
6161
TEnWeeks: TWeekNames = ('SUN', 'MON', 'TUE', 'WED', 'THU', 'FRI', 'SAT');
62+
TEsWeeks: TWeekNames = ('dom', 'lun', 'mar', 'mié', 'jue', 'vie', 'sáb');
6263

6364
TCnMonths: TMonthNames = ('一月', '二月', '三月', '四月', '五月', '六月',
6465
'七月', '八月', '九月', '十月', '十一月', '十二月');
@@ -76,6 +77,21 @@ interface
7677
'November',
7778
'December'
7879
);
80+
TEsMonths: TMonthNames = (
81+
'Enero',
82+
'Febrero',
83+
'Marzo',
84+
'Abril',
85+
'Mayo',
86+
'Junio',
87+
'Julio',
88+
'Agosto',
89+
'Septiembre',
90+
'Octubre',
91+
'Noviembre',
92+
'Ciciembre'
93+
);
94+
7995
type
8096
TWeekLayout = class(TControl)
8197
private

Diff for: Demo/CalendarDemo/CalendarDemoMain.fmx

+43-35
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ object CalendarDemoMainForm: TCalendarDemoMainForm
88
FormFactor.Height = 480
99
FormFactor.Devices = [Desktop]
1010
OnCreate = FormCreate
11-
DesignerMasterStyle = 3
11+
DesignerMasterStyle = 0
1212
object Rectangle1: TRectangle
1313
Align = Client
1414
Fill.Color = xFFF0F0F0
@@ -25,7 +25,7 @@ object CalendarDemoMainForm: TCalendarDemoMainForm
2525
StartDate = 42948.000000000000000000
2626
EndDate = 43020.422420370370000000
2727
FirstDayOfWeek = 7
28-
SelectedDate = 43110.000000000000000000
28+
SelectedDate = 43178.000000000000000000
2929
IsShowLunarDate = False
3030
OnSelectedItem = FMXCalendarControl1SelectedItem
3131
end
@@ -87,16 +87,33 @@ object CalendarDemoMainForm: TCalendarDemoMainForm
8787
IsChecked = True
8888
Position.X = 16.000000000000000000
8989
Position.Y = 13.000000000000000000
90-
TabOrder = 1
91-
Text = #20013#25991
90+
Size.Width = 112.000000000000000000
91+
Size.Height = 19.000000000000000000
92+
Size.PlatformDefault = False
93+
TabOrder = 2
94+
Text = #27721#35821
9295
OnChange = rbChineseChange
9396
end
9497
object rbEnglish: TRadioButton
9598
GroupName = 'Lang'
96-
Position.X = 184.000000000000000000
99+
Position.X = 132.000000000000000000
97100
Position.Y = 13.000000000000000000
101+
Size.Width = 112.000000000000000000
102+
Size.Height = 19.000000000000000000
103+
Size.PlatformDefault = False
104+
TabOrder = 1
105+
Text = 'English'
106+
OnChange = rbChineseChange
107+
end
108+
object rbSpanish: TRadioButton
109+
GroupName = 'Lang'
110+
Position.X = 248.000000000000000000
111+
Position.Y = 13.000000000000000000
112+
Size.Width = 112.000000000000000000
113+
Size.Height = 19.000000000000000000
114+
Size.PlatformDefault = False
98115
TabOrder = 0
99-
Text = #33521#25991
116+
Text = 'Espa'#241'ol'
100117
OnChange = rbChineseChange
101118
end
102119
end
@@ -105,34 +122,25 @@ object CalendarDemoMainForm: TCalendarDemoMainForm
105122
Left = 168
106123
Top = 224
107124
ResourcesBin = {
108-
3F010000420061007300690063000D000A004C006100620065006C0031000D00
109-
0A0041006E0069006D006100740069006F006E000D000A00370035000D000A00
110-
53006C0069006400650072000D000A004200420043006F00640065000D000A00
111-
47007500650073007400750072006500500061007300730077006F0072006400
112-
0D000A00500061007300730077006F00720064003A000D000A00430061006C00
113-
65006E006400610072000D000A003E663A799C5186530D000A002D4E87650867
114-
FD4E0D000A00F18287650867FD4E0D000A005300650067003700530068006100
115-
700065000D000A0053007500660066006C0065000D000A0054006F0061007300
116-
74000D000A0054006F006100730074002000440065006D006F000D000A005300
117-
68006F007700200054006F006100730074000D000A004900730062006C006F00
118-
63006B000D000A004D006500730073006100670065003A000D000A0041006C00
119-
690067006E000D000A0054006F0070000D000A00430065006E00740065007200
120-
0D000A0042006F00740074006F006D000D000A0046006F006E00740043006F00
121-
6C006F0072000D000A004200610063006B0043006F006C006F0072000D000A00
122-
5100520043006F00640065000D000A004C0069006E00650073000D000A004600
123-
6F007200650043006F006C006F0072000D000A00510075006900740065005A00
124-
6F006E0065003A000D000A00490063006F006E00530069007A0065003A000D00
125-
0A0046004D00580043006F006D0070006F006E0065006E007400730020004400
126-
65006D006F0020004100700070006C00690063006100740069006F006E000D00
127-
0A0053006F0075007200630065000D000A002D4E87650D000A00F18287650D00
128-
0A0002000000020000007A006800340000003E663A799C5186533D003E663A79
129-
9C5186530D000A002D4E87650867FD4E3D002D4E87650867FD4E0D000A00F182
130-
87650867FD4E3D00F18287650867FD4E0D000A002D4E87653D002D4E87650D00
131-
0A00F18287653D0045006E0067006C006900730068000D000A00020000006500
132-
6E004D000000F18287650867FD4E3D0045006E0067006C006900730068002000
133-
4D006F006E00740068000D000A002D4E87650867FD4E3D004300680069006E00
134-
65007300650020004D006F006E00740068000D000A003E663A799C5186533D00
135-
530068006F00770020004C0075006E006100720020000D000A00F18287653D00
136-
45006E0067006C006900730068000D000A002D4E87653D002D4E87650D000A00}
125+
2F00000033000D000A0035000D000A0034000D000A003E663A799C5186530D00
126+
0A00496CED8B0D000A007F89ED735972ED8B0D000A0045006E0067006C006900
127+
730068000D000A004500730070006100F1006F006C000D000A00F182ED8B0D00
128+
0A0003000000020000007A0068004E0000003E663A799C5186533D003E663A79
129+
9C5186530D000A00496CED8B3D00496CED8B0D000A0045006E0067006C006900
130+
730068003D0045006E0067006C006900730068000D000A004500730070006100
131+
F1006F006C003D004500730070006100F1006F006C000D000A00F182ED8B3D00
132+
45006E0067006C006900730068000D000A007F89ED735972ED8B3D0045007300
133+
70006100F1006F006C000D000A000200000065006E00540000003E663A799C51
134+
86533D00530068006F00770020004C0075006E00610072000D000A00F182ED8B
135+
3D0045006E0067006C006900730068000D000A007F89ED735972ED8B3D004500
136+
730070006100F1006F006C000D000A0045006E0067006C006900730068003D00
137+
45006E0067006C006900730068000D000A004500730070006100F1006F006C00
138+
3D004500730070006100F1006F006C000D000A00496CED8B3D00496CED8B0D00
139+
0A000200000065007300570000003E663A799C5186533D004D006F0073007400
140+
72006100720020004C0075006E00610072000D000A00496CED8B3D00496CED8B
141+
0D000A00F182ED8B3D0045006E0067006C006900730068000D000A007F89ED73
142+
5972ED8B3D004500730070006100F1006F006C000D000A004500730070006100
143+
F1006F006C003D004500730070006100F1006F006C000D000A0045006E006700
144+
6C006900730068003D0045006E0067006C006900730068000D000A00}
137145
end
138146
end

Diff for: Demo/CalendarDemo/CalendarDemoMain.pas

+9-2
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,11 @@ TCalendarDemoMainForm = class(TForm)
1616
Rectangle2: TRectangle;
1717
txtCnDate1: TText;
1818
txtCnDate2: TText;
19-
lng1: TLang;
2019
Layout1: TLayout;
2120
rbChinese: TRadioButton;
2221
rbEnglish: TRadioButton;
22+
rbSpanish: TRadioButton;
23+
lng1: TLang;
2324
procedure rbChineseChange(Sender: TObject);
2425
procedure chkShowLunarDateChange(Sender: TObject);
2526
procedure FormCreate(Sender: TObject);
@@ -75,11 +76,17 @@ procedure TCalendarDemoMainForm.rbChineseChange(Sender: TObject);
7576
FMXCalendarControl1.SetMonthNames(TCnMonths);
7677
FMXCalendarControl1.SetWeekNames(TCnWeeks);
7778
end
78-
else
79+
else if rbEnglish.IsChecked then
7980
begin
8081
LoadLangFromStrings(lng1.LangStr['en']);
8182
FMXCalendarControl1.SetMonthNames(TEnMonths);
8283
FMXCalendarControl1.SetWeekNames(TEnWeeks);
84+
end
85+
else
86+
begin
87+
LoadLangFromStrings(lng1.LangStr['es']);
88+
FMXCalendarControl1.SetMonthNames(TEsMonths);
89+
FMXCalendarControl1.SetWeekNames(TEsWeeks);
8390
end;
8491
end;
8592

0 commit comments

Comments
 (0)