2018-04-20 12:58:33 +00:00
|
|
|
unit main;
|
|
|
|
|
|
|
|
{$mode objfpc}{$H+}
|
|
|
|
|
|
|
|
interface
|
|
|
|
|
|
|
|
uses
|
2019-05-28 09:54:35 +00:00
|
|
|
{$IFDEF LINUX}clocale,{$ENDIF}
|
2018-04-20 12:58:33 +00:00
|
|
|
Classes, SysUtils, Forms, Controls, Graphics, Dialogs, Spin, StdCtrls, Grids,
|
2019-05-28 09:54:35 +00:00
|
|
|
ExtCtrls, ComCtrls, JvYearGrid;
|
2018-04-20 12:58:33 +00:00
|
|
|
|
|
|
|
type
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
{ TMainForm }
|
2018-04-20 12:58:33 +00:00
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
TMainForm = class(TForm)
|
|
|
|
cmbMonthFormat: TComboBox;
|
|
|
|
cmbDayNamesAlignment: TComboBox;
|
|
|
|
cmbDayFormat: TComboBox;
|
|
|
|
cmbMonthNamesAlignment: TComboBox;
|
|
|
|
cmbDaysAlignment: TComboBox;
|
2018-04-20 12:58:33 +00:00
|
|
|
CbFlat: TCheckBox;
|
|
|
|
JvYearGrid1: TJvYearGrid;
|
|
|
|
EdLeftMargin: TSpinEdit;
|
|
|
|
EdRightMargin: TSpinEdit;
|
|
|
|
EdTopMargin: TSpinEdit;
|
|
|
|
EdBottomMargin: TSpinEdit;
|
|
|
|
Label1: TLabel;
|
|
|
|
Label2: TLabel;
|
|
|
|
Label3: TLabel;
|
2019-06-02 10:36:18 +00:00
|
|
|
Label4: TLabel;
|
2019-05-28 09:54:35 +00:00
|
|
|
lblYear: TLabel;
|
2018-04-20 12:58:33 +00:00
|
|
|
Panel1: TPanel;
|
2019-05-28 09:54:35 +00:00
|
|
|
udYear: TUpDown;
|
|
|
|
procedure cmbDayFormatChange(Sender: TObject);
|
|
|
|
procedure cmbDayNamesAlignmentChange(Sender: TObject);
|
|
|
|
procedure cmbDaysAlignmentChange(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
procedure CbFlatChange(Sender: TObject);
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure cmbMonthFormatChange(Sender: TObject);
|
|
|
|
procedure cmbMonthNamesAlignmentChange(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
procedure EdBottomMarginChange(Sender: TObject);
|
|
|
|
procedure EdLeftMarginChange(Sender: TObject);
|
|
|
|
procedure EdRightMarginChange(Sender: TObject);
|
|
|
|
procedure EdTopMarginChange(Sender: TObject);
|
|
|
|
procedure FormCreate(Sender: TObject);
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure udYearClick(Sender: TObject; Button: TUDBtnType);
|
2018-04-20 12:58:33 +00:00
|
|
|
private
|
|
|
|
|
|
|
|
public
|
|
|
|
|
|
|
|
end;
|
|
|
|
|
|
|
|
var
|
2019-05-28 09:54:35 +00:00
|
|
|
MainForm: TMainForm;
|
2018-04-20 12:58:33 +00:00
|
|
|
|
|
|
|
implementation
|
|
|
|
|
|
|
|
{$R *.lfm}
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
uses
|
|
|
|
DateUtils;
|
|
|
|
|
|
|
|
{ TMainForm }
|
|
|
|
|
|
|
|
procedure TMainForm.cmbDayNamesAlignmentChange(Sender: TObject);
|
|
|
|
begin
|
|
|
|
JvYearGrid1.DayNamesAlignment := TAlignment(cmbDayNamesAlignment.ItemIndex);
|
|
|
|
end;
|
2018-04-20 12:58:33 +00:00
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure TMainForm.cmbDayFormatChange(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
begin
|
2019-05-28 09:54:35 +00:00
|
|
|
JvYearGrid1.DayFormat := TJvDayFormat(cmbDayFormat.ItemIndex);
|
2018-04-20 12:58:33 +00:00
|
|
|
end;
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure TMainForm.cmbDaysAlignmentChange(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
begin
|
2019-05-28 09:54:35 +00:00
|
|
|
JvYearGrid1.DaysAlignment := TAlignment(cmbDaysAlignment.ItemIndex);
|
2018-04-20 12:58:33 +00:00
|
|
|
end;
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure TMainForm.CbFlatChange(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
begin
|
|
|
|
JvYearGrid1.Flat := CbFlat.Checked;
|
|
|
|
end;
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure TMainForm.cmbMonthFormatChange(Sender: TObject);
|
|
|
|
begin
|
|
|
|
JvYearGrid1.MonthFormat := TJvMonthFormat(cmbMonthFormat.ItemIndex);
|
|
|
|
end;
|
|
|
|
|
|
|
|
procedure TMainForm.cmbMonthNamesAlignmentChange(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
begin
|
2019-05-28 09:54:35 +00:00
|
|
|
JvYearGrid1.MonthNamesAlignment := TAlignment(cmbMonthNamesAlignment.ItemIndex);
|
2018-04-20 12:58:33 +00:00
|
|
|
end;
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure TMainForm.EdBottomMarginChange(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
begin
|
|
|
|
JvYearGrid1.CellMargins.Bottom := EdBottomMargin.Value;
|
|
|
|
end;
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure TMainForm.EdLeftMarginChange(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
begin
|
|
|
|
JvYearGrid1.CellMargins.Left := EdLeftMargin.Value;
|
|
|
|
end;
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure TMainForm.EdRightMarginChange(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
begin
|
|
|
|
JvYearGrid1.CellMargins.Right := EdRightMargin.Value;
|
|
|
|
end;
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure TMainForm.EdTopMarginChange(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
begin
|
|
|
|
JvYearGrid1.CellMargins.Top := EdTopMargin.Value;
|
|
|
|
end;
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure TMainForm.FormCreate(Sender: TObject);
|
2018-04-20 12:58:33 +00:00
|
|
|
begin
|
2019-05-28 09:54:35 +00:00
|
|
|
JvYearGrid1.Year := YearOf(Date);
|
|
|
|
|
2018-04-20 12:58:33 +00:00
|
|
|
EdLeftMargin.Value := JvYearGrid1.CellMargins.Left;
|
|
|
|
EdRightMargin.Value := JvYearGrid1.CellMargins.Right;
|
|
|
|
EdTopMargin.Value := JvYearGrid1.CellMargins.Top;
|
|
|
|
EdBottomMargin.Value := JvYearGrid1.CellMargins.Bottom;
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
cmbDayNamesAlignment.ItemIndex := ord(JvYearGrid1.DayNamesAlignment);
|
|
|
|
cmbMonthNamesAlignment.ItemIndex := ord(JvYearGrid1.MonthNamesAlignment);
|
|
|
|
cmbDaysAlignment.ItemIndex := ord(JvYearGrid1.DaysAlignment);
|
|
|
|
cmbDayFormat.ItemIndex := ord(JvYearGrid1.DayFormat);
|
|
|
|
cmbMonthFormat.ItemIndex := ord(JvYearGrid1.MonthFormat);
|
2019-06-02 10:36:18 +00:00
|
|
|
cmbMonthFormatChange(nil);
|
2019-05-28 09:54:35 +00:00
|
|
|
|
|
|
|
udYear.Position := JvYearGrid1.Year;
|
2018-04-20 12:58:33 +00:00
|
|
|
|
|
|
|
CbFlat.Checked := JvYearGrid1.Flat;
|
|
|
|
end;
|
|
|
|
|
2019-05-28 09:54:35 +00:00
|
|
|
procedure TMainForm.udYearClick(Sender: TObject; Button: TUDBtnType);
|
|
|
|
begin
|
|
|
|
JvYearGrid1.Year := udYear.Position;
|
|
|
|
end;
|
2018-04-20 12:58:33 +00:00
|
|
|
|
|
|
|
end.
|
|
|
|
|