Skip to content

Commit 993dfa3

Browse files
committed
added background color select option
1 parent 50dcebf commit 993dfa3

File tree

10 files changed

+132
-19
lines changed

10 files changed

+132
-19
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
2+
ImageViewer.lps
3+
files/PackageFiles/AppxManifest.xml

ImageViewer.lpr

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,10 +36,12 @@ procedure TranslateLCL;
3636
//Debug Output: 'Lang is jp_JP FallbackLang is jp'
3737
// What??? It supporsed to be "ja_JP"!!
3838

39+
//Lang := FallbackLang+'_'+Country;
40+
3941
//LazGetShortLanguageID(Lang);
4042
//OutputDebugString(PChar(TrimRight( 'Lang is '+ Lang )));
4143
//Debug Output: 'Lang is jp'
42-
// What?
44+
// What? not ja?
4345

4446
if (Lang = 'en') or (Lang = 'en_US') or (Lang = 'us')
4547
or (FallbackLang = 'us') or (FallbackLang = 'US') or (FallbackLang = 'en') then

languages/ImageViewer.en.po

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,21 @@ msgctxt "umain.resstrstayontop"
137137
msgid "Stay on top"
138138
msgstr ""
139139

140+
#: umain.resstrbackground
141+
msgctxt "umain.background"
142+
msgid "Background Color"
143+
msgstr ""
144+
145+
#: umain.resstrbackgroundblack
146+
msgctxt "umain.backgroundblack"
147+
msgid "Black"
148+
msgstr ""
149+
150+
#: umain.resstrbackgroundwhite
151+
msgctxt "umain.backgroundwhite"
152+
msgid "White"
153+
msgstr ""
154+
140155
#: umain.resstrstopfullscreenslideshow
141156
msgctxt "umain.resstrstopfullscreenslideshow"
142157
msgid "&Stop Fullscreen Slideshow"

languages/ImageViewer.ja_JP.po

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ msgstr "Content-Type: text/plain; charset=UTF-8"
44
#: umain.resstrabout
55
msgctxt "umain.resstrabout"
66
msgid "About"
7-
msgstr "詳細"
7+
msgstr "ImageViewerについて"
88

99
#: umain.resstrclose
1010
msgctxt "umain.resstrclose"
@@ -137,6 +137,21 @@ msgctxt "umain.resstrstayontop"
137137
msgid "Stay on top"
138138
msgstr "最前面"
139139

140+
#: umain.resstrbackground
141+
msgctxt "umain.background"
142+
msgid "Background Color"
143+
msgstr "背景色"
144+
145+
#: umain.resstrbackgroundblack
146+
msgctxt "umain.backgroundblack"
147+
msgid "Black"
148+
msgstr "黒"
149+
150+
#: umain.resstrbackgroundwhite
151+
msgctxt "umain.backgroundwhite"
152+
msgid "White"
153+
msgstr "白"
154+
140155
#: umain.resstrstopfullscreenslideshow
141156
msgctxt "umain.resstrstopfullscreenslideshow"
142157
msgid "&Stop Fullscreen Slideshow"

uabout.lfm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1011,7 +1011,7 @@ object frmAbout: TfrmAbout
10111011
Height = 21
10121012
Top = 180
10131013
Width = 351
1014-
Caption = 'https://github.com/torumyax/'
1014+
Caption = 'https://torum.github.io/Image-viewer/'
10151015
OnClick = StaticTextWebSiteClick
10161016
OnMouseEnter = StaticTextWebSiteMouseEnter
10171017
OnMouseLeave = StaticTextWebSiteMouseLeave

uabout.pas

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ interface
66

77
uses
88
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls,
9-
StdCtrls, lclintf;
9+
StdCtrls, lclintf, Menus;
1010

1111
type
1212

@@ -42,6 +42,7 @@ implementation
4242

4343
procedure TfrmAbout.StaticTextWebSiteClick(Sender: TObject);
4444
begin
45+
// APPX MS STORE doesn't like shellexecute,but...
4546
OpenURL(StaticTextWebSite.Caption);
4647
end;
4748

ufullscreen.lfm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
object frmFullscreen: TfrmFullscreen
2-
Left = 921
2+
Left = 1373
33
Height = 301
4-
Top = 411
4+
Top = 501
55
Width = 400
66
Align = alClient
77
AlphaBlend = True

ufullscreen.pas

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,8 +62,7 @@ TfrmFullscreen = class(TForm)
6262
procedure Image1DblClick(Sender: TObject);
6363
procedure Image1MouseDown(Sender: TObject; Button: TMouseButton;
6464
Shift: TShiftState; X, Y: Integer);
65-
procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer
66-
);
65+
procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer);
6766
procedure Image1MouseUp(Sender: TObject; Button: TMouseButton;
6867
Shift: TShiftState; X, Y: Integer);
6968
procedure MenuItemStartClick(Sender: TObject);

umain.lfm

Lines changed: 21 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
object frmMain: TfrmMain
2-
Left = 954
2+
Left = 1376
33
Height = 301
4-
Top = 203
4+
Top = 464
55
Width = 400
66
AlphaBlend = True
77
AlphaBlendValue = 0
@@ -19,7 +19,7 @@ object frmMain: TfrmMain
1919
OnShow = FormShow
2020
PopupMode = pmAuto
2121
Position = poScreenCenter
22-
LCLVersion = '1.8.2.0'
22+
LCLVersion = '1.8.4.0'
2323
object Image1: TImage
2424
Left = 0
2525
Height = 301
@@ -10185,6 +10185,17 @@ object frmMain: TfrmMain
1018510185
Caption = 'Stay on top'
1018610186
OnClick = MenuItemStayOnTopClick
1018710187
end
10188+
object MenuItemBackgroundColor: TMenuItem
10189+
Caption = 'Background Color'
10190+
object MenuItemBackgroundBlack: TMenuItem
10191+
Caption = 'Black'
10192+
OnClick = MenuItemBackgroundBlackClick
10193+
end
10194+
object MenuItemBackgroundWhite: TMenuItem
10195+
Caption = 'White'
10196+
OnClick = MenuItemBackgroundWhiteClick
10197+
end
10198+
end
1018810199
object MenuItemBo8: TMenuItem
1018910200
Caption = '-'
1019010201
end
@@ -10198,6 +10209,13 @@ object frmMain: TfrmMain
1019810209
ShortCut = 70
1019910210
OnClick = MenuItemSlideshowClick
1020010211
end
10212+
object MenuItem2: TMenuItem
10213+
Caption = '-'
10214+
end
10215+
object MenuItemAbout: TMenuItem
10216+
Caption = 'About'
10217+
OnClick = MenuItemAboutClick
10218+
end
1020110219
object MenuItemBo9: TMenuItem
1020210220
Caption = '-'
1020310221
end

umain.pas

Lines changed: 68 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
{
66
Source:
7-
https://github.com/torumyax/Image-viewer
7+
https://github.com/torum/Image-viewer
88
99
No extra components required.
1010
@@ -44,7 +44,7 @@ interface
4444

4545
uses
4646
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, ExtCtrls,
47-
LclType, LclProc, LclIntf, Menus, StdCtrls, ExtDlgs, //LCLTranslator,//DefaultTranslator,
47+
LclType, LclProc, LclIntf, Menus, StdCtrls, ExtDlgs,
4848
strutils, Types, XMLConf{$ifdef windows}, Windows{$endif};
4949

5050
type
@@ -54,6 +54,11 @@ interface
5454
TfrmMain = class(TForm)
5555
ApplicationProperties1: TApplicationProperties;
5656
Image1: TImage;
57+
MenuItemAbout: TMenuItem;
58+
MenuItem2: TMenuItem;
59+
MenuItemBackgroundBlack: TMenuItem;
60+
MenuItemBackgroundWhite: TMenuItem;
61+
MenuItemBackgroundColor: TMenuItem;
5762
MenuItemBo8: TMenuItem;
5863
MenuItemSysAbout: TMenuItem;
5964
MenuItemSysBo: TMenuItem;
@@ -90,6 +95,9 @@ TfrmMain = class(TForm)
9095
procedure Image1MouseWheelUp(Sender: TObject; Shift: TShiftState;
9196
MousePos: TPoint; var Handled: Boolean);
9297
procedure Image1Resize(Sender: TObject);
98+
procedure MenuItemAboutClick(Sender: TObject);
99+
procedure MenuItemBackgroundBlackClick(Sender: TObject);
100+
procedure MenuItemBackgroundWhiteClick(Sender: TObject);
93101
procedure MenuItemNextClick(Sender: TObject);
94102
procedure MenuItemBackClick(Sender: TObject);
95103
procedure MenuItemQuitClick(Sender: TObject);
@@ -122,6 +130,7 @@ TfrmMain = class(TForm)
122130
FOptRepeat:boolean;
123131
FOptRandom:boolean;
124132
FoptStayOnTop:boolean;
133+
FoptBackgroundBlack:boolean;
125134
FOptFileExts:string;
126135
FOptPlaylistExts:string;
127136
FOptIncludeSubFolders:boolean;
@@ -222,6 +231,10 @@ TfrmMain = class(TForm)
222231

223232
resstrOpenPictures = 'Open picture(s)';
224233

234+
resstrBackground = 'Background Color';
235+
resstrBackgroundBlack = 'White';
236+
resstrBackgroundWhite = 'Black';
237+
225238
implementation
226239

227240
uses UFullscreen, UAbout;
@@ -237,13 +250,15 @@ procedure TfrmMain.FormCreate(Sender: TObject);
237250
folderfiles:TStringlist;
238251
fileSearchMask,fileFolder:string;
239252
begin
240-
FstrAppVer:='0.1.2';
253+
FstrAppVer:='1.2.2';
241254
// Init Main form properties.
242255
self.Caption:=ReplaceStr(ExtractFileName(ParamStr(0)),ExtractFileExt(ParamStr(0)),'');
243256
self.Visible:=false;
244257
self.AlphaBlend:=true;
245258
self.AlphaBlendValue:=255;
246259

260+
self.Color:=clBlack;
261+
247262
TimerEffectStart.Enabled:=false;
248263

249264
// Init main lists.
@@ -295,11 +310,14 @@ procedure TfrmMain.FormCreate(Sender: TObject);
295310
MenuItemSlideshow.Caption := resstrFullscreenSlideshow;
296311
MenuItemQuit.Caption := resstrQuit;
297312
MenuItemSysAbout.Caption := resstrAbout;
313+
MenuItemAbout.Caption := resstrAbout;
298314
MenuItemSysQuit.Caption := resstrQuit;
299315

300316
OpenPictureDialog1.Title:=resstrOpenPictures;
301317

302-
318+
MenuItemBackgroundColor.Caption:=resstrBackground;
319+
MenuItemBackgroundBlack.Caption:=resstrBackgroundBlack;
320+
MenuItemBackgroundWhite.Caption:=resstrBackgroundWhite;
303321

304322

305323
// Load settings
@@ -329,6 +347,7 @@ procedure TfrmMain.FormCreate(Sender: TObject);
329347
// Don't load FOptMinimulFileSizeKiloByte... If the size is too large, the list will be empty.
330348
//FOptMinimulFileSizeKiloByte := XMLConfig.GetValue('/Opts/MinimulFileSizeKiloByte',FOptMinimulFileSizeKiloByte);
331349
FoptStayOnTop := XMLConfig.GetValue('/Opts/StayOnTop',FoptStayOnTop);
350+
FoptBackgroundBlack := XMLConfig.GetValue('/Opts/BackgroundBlack',FoptBackgroundBlack);
332351
FOptIncludeSubFolders := XMLConfig.GetValue('/Opts/IncludeSubFolders',FOptIncludeSubFolders);
333352
FOptFileExts := string(XMLConfig.GetValue('/Opts/FileExts',widestring(FOptFileExts)));
334353
FOptPlaylistExts := string(XMLConfig.GetValue('/Opts/PlaylistExts',widestring(FOptPlaylistExts)));
@@ -341,8 +360,8 @@ procedure TfrmMain.FormCreate(Sender: TObject);
341360
frmAbout := TfrmAbout.Create(self);
342361
frmAbout.Caption:=' '+ReplaceStr(ExtractFileName(ParamStr(0)),ExtractFileExt(ParamStr(0)),'');
343362
frmAbout.StaticTextAppsVer.Caption := 'Image Viewer' + ' - ' + FstrAppVer;
344-
frmAbout.StaticTextWho.Caption := 'by torumyax';
345-
frmAbout.StaticTextWebSite.Caption:='https://github.com/torumyax/Image-viewer';
363+
frmAbout.StaticTextWho.Caption := 'by torum';
364+
frmAbout.StaticTextWebSite.Caption:='https://torum.github.io/Image-viewer/';
346365
frmAbout.ShowModal;
347366
Halt;
348367
end;
@@ -684,6 +703,17 @@ procedure TfrmMain.FormCreate(Sender: TObject);
684703
exit;
685704
end;
686705

706+
if FoptBackgroundBlack then
707+
begin
708+
self.Color:=clBlack;
709+
MenuItemBackgroundBlack.Checked:=true;
710+
MenuItemBackgroundWhite.Checked:=false;
711+
end else
712+
begin
713+
self.color:=clWhite;
714+
MenuItemBackgroundBlack.Checked:=false;
715+
MenuItemBackgroundWhite.Checked:=true;
716+
end;
687717

688718
{$ifdef windows}
689719
// System TrayIcon
@@ -800,6 +830,7 @@ procedure TfrmMain.FormActivate(Sender: TObject);
800830
begin
801831

802832
frmFullscreen := TfrmFullscreen.create(self);
833+
frmFullscreen.Color := self.color;
803834
frmFullscreen.ShowModal;
804835

805836
// When returned (frmFullscreen is closed), self close.
@@ -842,6 +873,7 @@ procedure TfrmMain.FormCloseQuery(Sender: TObject; var CanClose: boolean);
842873
XMLConfig.SetValue('/Opts/Moniter',FOptIntMoniter);
843874
XMLConfig.SetValue('/Opts/MinimulFileSizeKiloByte',FOptMinimulFileSizeKiloByte);
844875
XMLConfig.SetValue('/Opts/StayOnTop',FoptStayOnTop);
876+
XMLConfig.SetValue('/Opts/BackgroundBlack',FoptBackgroundBlack);
845877
XMLConfig.SetValue('/Opts/IncludeSubFolders',FOptIncludeSubFolders);
846878
XMLConfig.SetValue('/Opts/FileExts',widestring(FOptFileExts));
847879
XMLConfig.SetValue('/Opts/PlaylistExts',widestring(FOptPlaylistExts));
@@ -885,6 +917,7 @@ procedure TfrmMain.TimerEffectStartTimer(Sender: TObject);
885917

886918
frmFullscreen := TfrmFullscreen.create(self);
887919
frmFullScreen.StartWith:=FiCurrentFileIndex;
920+
frmFullscreen.Color := self.color;
888921
// Show full screen.
889922
frmFullscreen.ShowModal;
890923

@@ -1016,6 +1049,31 @@ procedure TfrmMain.Image1Resize(Sender: TObject);
10161049
end;
10171050
end;
10181051

1052+
procedure TfrmMain.MenuItemAboutClick(Sender: TObject);
1053+
begin
1054+
MenuItemSysAboutClick(Sender);
1055+
end;
1056+
1057+
procedure TfrmMain.MenuItemBackgroundBlackClick(Sender: TObject);
1058+
begin
1059+
1060+
FoptBackgroundBlack:=true;
1061+
self.Color:=clBlack;
1062+
MenuItemBackgroundBlack.Checked:=true;
1063+
MenuItemBackgroundWhite.Checked:=false;
1064+
1065+
end;
1066+
1067+
procedure TfrmMain.MenuItemBackgroundWhiteClick(Sender: TObject);
1068+
begin
1069+
1070+
FoptBackgroundBlack:=false;
1071+
self.Color:=clWhite;
1072+
MenuItemBackgroundBlack.Checked:=false;
1073+
MenuItemBackgroundWhite.Checked:=true;
1074+
1075+
end;
1076+
10191077
procedure TfrmMain.Image1DblClick(Sender: TObject);
10201078
begin
10211079
if FisInFrame then
@@ -1065,6 +1123,7 @@ procedure TfrmMain.MenuItemSlideshowClick(Sender: TObject);
10651123

10661124
frmFullscreen := TfrmFullscreen.create(self);
10671125
frmFullScreen.StartWith:=FiCurrentFileIndex;
1126+
frmFullscreen.Color := self.color;
10681127
frmFullscreen.ShowModal;
10691128

10701129
// DoneFullscreen will be called here.
@@ -1209,6 +1268,7 @@ procedure TfrmMain.MenuItemSlideshowInFrameClick(Sender: TObject);
12091268
Image1.Visible:=false;
12101269
frmFullscreen := TfrmFullscreen.create(self);
12111270
frmFullScreen.StartWith:=FiCurrentFileIndex;
1271+
frmFullscreen.Color := self.color;
12121272
frmFullscreen.Parent := self;
12131273
// Set main form popup.
12141274
self.PopupMenu:= frmFullscreen.PopupMenu;
@@ -1487,8 +1547,8 @@ procedure TfrmMain.MenuItemSysAboutClick(Sender: TObject);
14871547
frmAbout.Caption:=' '+ReplaceStr(ExtractFileName(ParamStr(0)),ExtractFileExt(ParamStr(0)),'');
14881548

14891549
frmAbout.StaticTextAppsVer.Caption := 'Image Viewer' + ' - ' + FstrAppVer;
1490-
frmAbout.StaticTextWho.Caption := 'by torumyax';
1491-
frmAbout.StaticTextWebSite.Caption:='https://github.com/torumyax/Image-viewer';
1550+
frmAbout.StaticTextWho.Caption := 'by torum';
1551+
frmAbout.StaticTextWebSite.Caption:='https://torum.github.io/Image-viewer/';
14921552

14931553
frmAbout.ShowModal;
14941554
// No need to free. closeAction caFree.

0 commit comments

Comments
 (0)