summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--UCoreUtils.pas14
-rw-r--r--UPreferences.pas6
2 files changed, 14 insertions, 6 deletions
diff --git a/UCoreUtils.pas b/UCoreUtils.pas
index 3290019..4beec94 100644
--- a/UCoreUtils.pas
+++ b/UCoreUtils.pas
@@ -58,7 +58,7 @@ function GetSignalString(SignalNo: integer): string;
function UnixTimeToTDateTime(UnixTime: Int64): TDateTime;
function FormatSize(Value: Int64; Base: integer; OverrideSizeFormat: integer = -1): string;
-function FormatDate(Value: TTimeT; const FormatTime, FormatDate: boolean; OverrideTimeFormat: integer = -1; OverrideDateFormat: integer = -1; OverrideDateTimeFormat: integer = -1): string;
+function FormatDate(Value: TTimeT; const FormatTime, FormatDate: boolean; OverrideTimeFormat: integer = -1; OverrideDateFormat: integer = -1; OverrideDateTimeFormat: integer = -1; OverrideCustomDateFormat: string = ''; OverrideCustomTimeFormat: string = ''): string;
function AttrToStr(const Mode: Cardinal; IncludeFileType: boolean = True): string;
function AttrToOctal(const Mode: Cardinal): integer;
@@ -270,9 +270,10 @@ begin
end;
(********************************************************************************************************************************)
-function FormatDate(Value: TTimeT; const FormatTime, FormatDate: boolean; OverrideTimeFormat: integer = -1; OverrideDateFormat: integer = -1; OverrideDateTimeFormat: integer = -1): string;
+function FormatDate(Value: TTimeT; const FormatTime, FormatDate: boolean; OverrideTimeFormat: integer = -1; OverrideDateFormat: integer = -1; OverrideDateTimeFormat: integer = -1; OverrideCustomDateFormat: string = ''; OverrideCustomTimeFormat: string = ''): string;
var DateString, TimeString: string;
DateFormat, TimeFormat: string;
+ CustDateFormat, CustTimeFormat: string;
df, tf, dtf: integer;
time_tm: Ptm;
Buf: PChar;
@@ -289,6 +290,11 @@ begin
else tf := ConfTimeFormat;
if OverrideDateTimeFormat >= 0 then dtf := OverrideDateTimeFormat
else dtf := ConfDateTimeFormat;
+ if Length(Trim(OverrideCustomDateFormat)) > 0 then CustDateFormat := OverrideCustomDateFormat
+ else CustDateFormat := ConfCustomDateFormat;
+ if Length(Trim(OverrideCustomTimeFormat)) > 0 then CustTimeFormat := OverrideCustomTimeFormat
+ else CustTimeFormat := ConfCustomTimeFormat;
+
time_tm := localtime(@Value);
if FormatDate then begin
@@ -308,7 +314,7 @@ begin
12: DateFormat := '%m/%d/%y'; // 06/24/08
13: DateFormat := '%y-%m-%d'; // 08-06-24
14: DateFormat := '%y/%m/%d'; // 08/06/24
- else DateFormat := ConfCustomDateFormat; // Custom date format
+ else DateFormat := CustDateFormat; // Custom date format
end;
Buf := malloc(255);
memset(Buf, 0, 255);
@@ -332,7 +338,7 @@ begin
9: TimeFormat := '%k:%M'; // 13:11
10: TimeFormat := '%k:%M:%S'; // 13:11:11
11: TimeFormat := '%H%M'; // 1311
- else TimeFormat := ConfCustomTimeFormat; // Custom Time format
+ else TimeFormat := CustTimeFormat; // Custom Time format
end;
Buf := malloc(255);
memset(Buf, 0, 255);
diff --git a/UPreferences.pas b/UPreferences.pas
index 90d5a5e..c289b7c 100644
--- a/UPreferences.pas
+++ b/UPreferences.pas
@@ -273,6 +273,7 @@ begin
CustomDateFormatEntry := TGTKEntry.Create(Self);
CustomDateFormatEntry.Enabled := False;
CustomDateFormatEntry.Tooltip := 'Enter custom date format string.'#10'Please see "man strftime" for syntax reference.';
+ CustomDateFormatEntry.OnChanged := DateTimeFormatOptionMenuChanged;
Table2.AddControlEx(2, 10, 2, 1, CustomDateFormatEntry, [taoShrink], [taoShrink], 10, 2);
TimeFormatLabel := TGTKLabel.Create(Self);
@@ -299,6 +300,7 @@ begin
CustomTimeFormatEntry := TGTKEntry.Create(Self);
CustomTimeFormatEntry.Enabled := False;
CustomTimeFormatEntry.Tooltip := 'Enter custom time format string.'#10'Please see "man strftime" for syntax reference.';
+ CustomTimeFormatEntry.OnChanged := DateTimeFormatOptionMenuChanged;
Table2.AddControlEx(2, 12, 2, 1, CustomTimeFormatEntry, [taoShrink], [taoShrink], 10, 2);
DateTimeFormatLabel := TGTKLabel.Create(Self);
@@ -681,10 +683,10 @@ begin
OldIndex := DateTimeFormatOptionMenu.ItemIndex;
DateTimeFormatOptionMenu.Items.Clear;
Item := TGTKMenuItem.CreateTyped(Self, itLabel);
- Item.Caption := FormatDate(FormatTime, True, True, TimeFormatOptionMenu.ItemIndex, DateFormatOptionMenu.ItemIndex, 0);
+ Item.Caption := FormatDate(FormatTime, True, True, TimeFormatOptionMenu.ItemIndex, DateFormatOptionMenu.ItemIndex, 0, CustomDateFormatEntry.Text, CustomTimeFormatEntry.Text);
DateTimeFormatOptionMenu.Items.Add(Item);
Item := TGTKMenuItem.CreateTyped(Self, itLabel);
- Item.Caption := FormatDate(FormatTime, True, True, TimeFormatOptionMenu.ItemIndex, DateFormatOptionMenu.ItemIndex, 1);
+ Item.Caption := FormatDate(FormatTime, True, True, TimeFormatOptionMenu.ItemIndex, DateFormatOptionMenu.ItemIndex, 1, CustomDateFormatEntry.Text, CustomTimeFormatEntry.Text);
DateTimeFormatOptionMenu.Items.Add(Item);
DateTimeFormatOptionMenu.ItemIndex := OldIndex;
end;