From c4f79022b38cb55e104327f315dc94794a693744 Mon Sep 17 00:00:00 2001 From: h677 Date: Mon, 2 Jul 2007 15:01:47 +0000 Subject: [PATCH] =?utf8?q?=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB=E3=83=91?= =?utf8?q?=E3=82=B9=E9=96=A2=E9=80=A3=E3=81=AE=E6=95=B4=E7=90=86=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- ExternalThreadItem.pas | 8 ++--- GikoSystem.pas | 14 ++++---- Setting.pas | 85 ++++++++++++------------------------------------ SkinFiles.pas | 86 +++++++++++++++++++++++++++++++++++++++++++++++++ gikoNavi.dpr | 3 +- gikoNavi.res | Bin 4292 -> 4292 bytes 6 files changed, 119 insertions(+), 77 deletions(-) create mode 100644 SkinFiles.pas diff --git a/ExternalThreadItem.pas b/ExternalThreadItem.pas index 46170eb..18d2c10 100644 --- a/ExternalThreadItem.pas +++ b/ExternalThreadItem.pas @@ -316,13 +316,13 @@ begin if inIsNew then Result := CreateResultString( HTMLCreater.SkinedRes( HTMLCreater.LoadFromSkin( - GikoSys.Setting.GetSkinNewResFileName, threadItem, threadItem.Size + GikoSys.GetSkinNewResFileName, threadItem, threadItem.Size ), @res, no ) ) else Result := CreateResultString( HTMLCreater.SkinedRes( HTMLCreater.LoadFromSkin( - GikoSys.Setting.GetSkinResFileName, threadItem, threadItem.Size + GikoSys.GetSkinResFileName, threadItem, threadItem.Size ), @res, no ) ); end else if GikoSys.Setting.UseCSS then begin @@ -395,7 +395,7 @@ begin try if GikoSys.Setting.UseSkin then begin // ƒXƒLƒ“ - skinHeader := HTMLCreater.LoadFromSkin( GikoSys.Setting.GetSkinHeaderFileName, threadItem, threadItem.Size ); + skinHeader := HTMLCreater.LoadFromSkin( GikoSys.GetSkinHeaderFileName, threadItem, threadItem.Size ); if Length( optionalHeader ) > 0 then skinHeader := StringReplace( skinHeader, '', optionalHeader + '', [] ); @@ -451,7 +451,7 @@ begin try if GikoSys.Setting.UseSkin then begin // ƒXƒLƒ“ - skinFooter := HTMLCreater.LoadFromSkin( GikoSys.Setting.GetSkinFooterFileName, threadItem, threadItem.Size ); + skinFooter := HTMLCreater.LoadFromSkin( GikoSys.GetSkinFooterFileName, threadItem, threadItem.Size ); if Length( optionalFooter ) > 0 then skinFooter := StringReplace( skinFooter, '', optionalFooter + '', [] ); diff --git a/GikoSystem.pas b/GikoSystem.pas index 185cc59..ee8407b 100644 --- a/GikoSystem.pas +++ b/GikoSystem.pas @@ -276,7 +276,7 @@ implementation uses Giko, RoundData, Favorite, Registry, HTMLCreate, MojuUtils, Sort, YofUtils, - IniFiles, DateUtils; + IniFiles, DateUtils, SkinFiles; const FOLDER_INDEX_VERSION = '1.01'; @@ -480,37 +480,37 @@ end; //! Skin:ƒwƒbƒ_‚̃tƒ@ƒCƒ‹–¼ function TGikoSys.GetSkinHeaderFileName: string; begin - Result := Setting.GetSkinHeaderFileName; + Result := Setting.SkinFiles.GetSkinHeaderFileName; end; //! Skin:ƒtƒbƒ^‚̃tƒ@ƒCƒ‹–¼ function TGikoSys.GetSkinFooterFileName: string; begin - Result := Setting.GetSkinFooterFileName; + Result := Setting.SkinFiles.GetSkinFooterFileName; end; //! Skin:V’…ƒŒƒX‚̃tƒ@ƒCƒ‹–¼ function TGikoSys.GetSkinNewResFileName: string; begin - Result := Setting.GetSkinNewResFileName; + Result := Setting.SkinFiles.GetSkinNewResFileName; end; //! Skin:”ñV’…ƒŒƒX‚̃tƒ@ƒCƒ‹–¼ function TGikoSys.GetSkinResFileName: string; begin - Result := Setting.GetSkinResFileName; + Result := Setting.SkinFiles.GetSkinResFileName; end; //! Skin:‚µ‚¨‚è(‚±‚±‚Ü‚Å“Ç‚ñ‚¾)‚̃tƒ@ƒCƒ‹–¼ function TGikoSys.GetSkinBookmarkFileName: string; begin - Result := Setting.GetSkinBookmarkFileName; + Result := Setting.SkinFiles.GetSkinBookmarkFileName; end; //! Skin:‚µ‚¨‚è(V’…ƒŒƒX)‚̃tƒ@ƒCƒ‹–¼ function TGikoSys.GetSkinNewmarkFileName: string; begin - Result := Setting.GetSkinNewmarkFileName; + Result := Setting.SkinFiles.GetSkinNewmarkFileName; end; //! UserAgentŽæ“¾ diff --git a/Setting.pas b/Setting.pas index e2d0c63..be1ab3c 100644 --- a/Setting.pas +++ b/Setting.pas @@ -5,7 +5,7 @@ interface uses SysUtils, Classes, Graphics, Forms, {Math, IniFiles, UCryptAuto, UBase64,} - ComCtrls, GestureModel, IniFiles; + ComCtrls, GestureModel, IniFiles, SkinFiles; const MAIN_COOLBAND_COUNT = 4; //ƒƒCƒ“CoolBand‚̐” @@ -232,8 +232,6 @@ type FListViewNo: Boolean; //CSS•\Ž¦ FUseCSS: Boolean; - //CSSƒtƒ@ƒCƒ‹–¼ - FCSSFileName: string; // ƒXƒLƒ“•\Ž¦(ˆêŽž“I‚È‚à‚Ì‚Å ini ‚É•Û‘¶‚Í‚³‚ê‚È‚¢) FUseSkin: Boolean; //‚©‚¿‚ã`‚µ‚á—p‚ÌSkin‚ð—˜—p‚·‚é‚© @@ -450,6 +448,8 @@ type FSentIniFileSize: Integer; //! ƒŠƒ“ƒNURLŽæ“¾‚̑Ώۊg’£Žq FExtList: String; + //! SkinŠÖ˜A + FSkinFiles: TSkinFiles; function GetMainCoolSet(Index: Integer): TCoolSet; function GetBoardCoolSet(Index: Integer): TCoolSet; function GetBrowserCoolSet(Index: Integer): TCoolSet; @@ -475,6 +475,7 @@ type procedure SetUseCSS( value: Boolean ); procedure SetCSSFileName( fileName: string ); + function GetCSSFileName: string; //! ƒvƒƒLƒVÝ’è“ǂݍž‚Ý procedure ReadProxySettings(memIni: TMemIniFile); //! ŠeŽíƒEƒBƒ“ƒhƒEÝ’è“ǂݍž‚Ý @@ -511,12 +512,6 @@ type function GetSentFileName: string; function GetConfigDir: string; function GetSkinDir: string; - function GetSkinHeaderFileName: string; - function GetSkinFooterFileName: string; - function GetSkinResFileName: string; - function GetSkinNewResFileName: string; - function GetSkinBookmarkFileName: string; - function GetSkinNewmarkFileName: string; function GetStyleSheetDir: string; function GetOutBoxFileName: string; function GetNGWordsDir: string; @@ -645,7 +640,7 @@ type property ListViewNo: Boolean read FListViewNo write FListViewNo; property UseCSS: Boolean read FUseCSS write SetUseCSS; - property CSSFileName: string read FCSSFileName write SetCSSFileName; + property CSSFileName: string read GetCSSFileName write SetCSSFileName; property UseKatjushaType : Boolean read FUseKatjushaType write FUseKatjushaType; property UseSkin: Boolean read FUseSkin; @@ -810,6 +805,8 @@ type property SentIniFileSize: Integer read FSentIniFileSize write FSentIniFileSize; //! ƒŠƒ“ƒNURLŽæ“¾‚̑Ώۊg’£Žq property ExtList: String read FExtList write FExtList; + //! Skinƒtƒ@ƒCƒ‹ŠÇ— + property SkinFiles: TSkinFiles read FSkinFiles; end; @@ -830,12 +827,6 @@ const CONFIG_DIR_NAME = 'config'; CSS_DIR_NAME = 'css'; SKIN_DIR_NAME = 'skin'; - SKIN_HEADER_FILE_NAME = 'Header.html'; - SKIN_FOOTER_FILE_NAME = 'Footer.html'; - SKIN_NEWRES_FILE_NAME = 'NewRes.html'; - SKIN_RES_FILE_NAME = 'Res.html'; - SKIN_BOOKMARK_FILE_NAME = 'Bookmark.html'; - SKIN_NEWMARK_FILE_NAME = 'Newmark.html'; NGWORDs_DIR_NAME : String = 'NGwords'; BOARD_PLUGIN_DIR_NAME = 'BoardPlugin'; SAMBATIME_FILE_NAME : String = 'Samba.ini'; @@ -969,6 +960,7 @@ begin FCategoryColumnOrder := TGikoCategoryColumnList.Create; FBoardColumnOrder := TGikoBoardColumnList.Create; FGestures := TGestureModel.Create; + FSkinFiles := TSkinFiles.Create; FNameList.Duplicates := dupIgnore; FMailList.Duplicates := dupIgnore; FBoardURLs.Duplicates := dupIgnore; @@ -1482,7 +1474,7 @@ begin //‚©‚µ‚ã`‚µ‚á‚̃XƒLƒ“‚ðŽg‚¤‚© ini.WriteBool('CSS', 'UseKatjushaType', FUseKatjushaType); //CSSƒtƒ@ƒCƒ‹–¼ - ini.WriteString('CSS', 'FileName', FCSSFileName); + ini.WriteString('CSS', 'FileName', FSkinFiles.FileName); //Mail—“•\Ž¦ ini.WriteBool('Thread', 'ShowMail', FShowMail); // ƒŒƒX•\Ž¦”ÍˆÍ @@ -2051,48 +2043,6 @@ begin Result := IncludeTrailingPathDelimiter(GetConfigDir + SKIN_DIR_NAME); end; (************************************************************************* - *skinƒwƒbƒ_ƒtƒ@ƒCƒ‹–¼Žæ“¾ - *************************************************************************) -function TSetting.GetSkinHeaderFileName: string; -begin - Result := CSSFileName + SKIN_HEADER_FILE_NAME; -end; -(************************************************************************* - *skinƒtƒbƒ^ƒtƒ@ƒCƒ‹–¼Žæ“¾ - *************************************************************************) -function TSetting.GetSkinFooterFileName: string; -begin - Result := CSSFileName + SKIN_FOOTER_FILE_NAME; -end; -(************************************************************************* - *skinVƒŒƒXƒtƒ@ƒCƒ‹–¼Žæ“¾ - *************************************************************************) -function TSetting.GetSkinNewResFileName: string; -begin - Result := CSSFileName + SKIN_NEWRES_FILE_NAME; -end; -(************************************************************************* - *skinƒŒƒXƒtƒ@ƒCƒ‹–¼Žæ“¾ - *************************************************************************) -function TSetting.GetSkinResFileName: string; -begin - Result := CSSFileName + SKIN_RES_FILE_NAME; -end; -(************************************************************************* - *skinƒuƒbƒNƒ}[ƒNƒtƒ@ƒCƒ‹–¼Žæ“¾ - *************************************************************************) -function TSetting.GetSkinBookmarkFileName: string; -begin - Result := CSSFileName + SKIN_BOOKMARK_FILE_NAME; -end; -(************************************************************************* - *skinV’…ƒtƒ@ƒCƒ‹–¼Žæ“¾ - *************************************************************************) -function TSetting.GetSkinNewmarkFileName: string; -begin - Result := CSSFileName + SKIN_NEWMARK_FILE_NAME; -end; -(************************************************************************* *NGƒ[ƒhƒfƒBƒŒƒNƒgƒŠŽæ“¾(\‚ŏI‚í‚é) *************************************************************************) function TSetting.GetNGWordsDir: string; @@ -2115,21 +2065,20 @@ begin // ƒRƒR‚Å‚Ì”»’è‚Å‚à‘啶Žš¬•¶Žš‚̈Ⴂ‚Í–³Ž‹‚·‚éB FUseSkin := UseCSS and - (Pos( AnsiLowerCase(GetSkinDir), AnsiLowerCase(CSSFileName) ) > 0) and - FileExists( GetSkinHeaderFileName ); + (Pos( AnsiLowerCase(GetSkinDir), AnsiLowerCase(FSkinFiles.FileName) ) > 0) and + FileExists( FSkinFiles.GetSkinHeaderFileName ); end; procedure TSetting.SetCSSFileName( fileName: string ); begin - - FCSSFileName := fileName; + FSkinFiles.FileName := fileName; // Windows“I‚Ƀtƒ@ƒCƒ‹ƒpƒX‚̑啶Žš¬•¶Žš‚̈Ⴂ‚Í–³Ž‹‚³‚ê‚é‚̂ŁA // ƒRƒR‚Å‚Ì”»’è‚Å‚à‘啶Žš¬•¶Žš‚̈Ⴂ‚Í–³Ž‹‚·‚éB FUseSkin := UseCSS and - (Pos( AnsiLowerCase(GetSkinDir), AnsiLowerCase(CSSFileName) ) > 0) and - FileExists( GetSkinHeaderFileName ); + (Pos( AnsiLowerCase(GetSkinDir), AnsiLowerCase(FSkinFiles.FileName) ) > 0) and + FileExists( FSkinFiles.GetSkinHeaderFileName ); end; (************************************************************************* @@ -2415,5 +2364,11 @@ begin end; end; end; + +function TSetting.GetCSSFileName: string; +begin + Result := FSkinFiles.FileName; +end; + end. diff --git a/SkinFiles.pas b/SkinFiles.pas new file mode 100644 index 0000000..bf0f786 --- /dev/null +++ b/SkinFiles.pas @@ -0,0 +1,86 @@ +unit SkinFiles; + +interface + +uses + SysUtils, Classes, ComCtrls; + +type + TSkinFiles = class(TObject) + private + FFileName: String; + procedure SetFileName(AFileName: string); + public + //! ƒXƒLƒ“ƒtƒ@ƒCƒ‹ƒpƒX + property FileName:String read FFileName write SetFileName; + //! ƒwƒbƒ_‚̃tƒ@ƒCƒ‹–¼ + function GetSkinHeaderFileName: string; + //! ƒtƒbƒ^‚̃tƒ@ƒCƒ‹–¼ + function GetSkinFooterFileName: string; + //! V’…ƒŒƒX‚̃tƒ@ƒCƒ‹–¼ + function GetSkinNewResFileName: string; + //! ”ñV’…ƒŒƒX‚̃tƒ@ƒCƒ‹–¼ + function GetSkinResFileName: string; + //! ‚µ‚¨‚è(‚±‚±‚Ü‚Å“Ç‚ñ‚¾)‚̃tƒ@ƒCƒ‹–¼ + function GetSkinBookmarkFileName: string; + //! ‚µ‚¨‚è(V’…ƒŒƒX)‚̃tƒ@ƒCƒ‹–¼ + function GetSkinNewmarkFileName: string; + end; + +implementation + +const + SKIN_HEADER_FILE_NAME = 'Header.html'; + SKIN_FOOTER_FILE_NAME = 'Footer.html'; + SKIN_NEWRES_FILE_NAME = 'NewRes.html'; + SKIN_RES_FILE_NAME = 'Res.html'; + SKIN_BOOKMARK_FILE_NAME = 'Bookmark.html'; + SKIN_NEWMARK_FILE_NAME = 'Newmark.html'; + +//! ƒXƒLƒ“ƒtƒ@ƒCƒ‹–¼Ý’è +procedure TSkinFiles.SetFileName(AFileName: string); +begin + // ƒfƒBƒŒƒNƒgƒŠ‚̏ꍇÅŒã‚É\‚ŏI‚í‚ç‚· + if DirectoryExists(AFileName) then begin + // \ ‚ŏI‚í‚é‚悤‚É‚·‚é + FFileName := IncludeTrailingPathDelimiter(AFileName); + end else begin + FFileName := AFileName; + end; +end; +//! Skin:ƒwƒbƒ_‚̃tƒ@ƒCƒ‹–¼ +function TSkinFiles.GetSkinHeaderFileName: string; +begin + Result := FFileName + SKIN_HEADER_FILE_NAME; +end; + +//! Skin:ƒtƒbƒ^‚̃tƒ@ƒCƒ‹–¼ +function TSkinFiles.GetSkinFooterFileName: string; +begin + Result := FFileName + SKIN_FOOTER_FILE_NAME; +end; + +//! Skin:V’…ƒŒƒX‚̃tƒ@ƒCƒ‹–¼ +function TSkinFiles.GetSkinNewResFileName: string; +begin + Result := FFileName + SKIN_NEWRES_FILE_NAME; +end; + +//! Skin:”ñV’…ƒŒƒX‚̃tƒ@ƒCƒ‹–¼ +function TSkinFiles.GetSkinResFileName: string; +begin + Result := FFileName + SKIN_RES_FILE_NAME; +end; + +//! Skin:‚µ‚¨‚è(‚±‚±‚Ü‚Å“Ç‚ñ‚¾)‚̃tƒ@ƒCƒ‹–¼ +function TSkinFiles.GetSkinBookmarkFileName: string; +begin + Result := FFileName + SKIN_BOOKMARK_FILE_NAME; +end; + +//! Skin:‚µ‚¨‚è(V’…ƒŒƒX)‚̃tƒ@ƒCƒ‹–¼ +function TSkinFiles.GetSkinNewmarkFileName: string; +begin + Result := FFileName + SKIN_NEWMARK_FILE_NAME; +end; +end. diff --git a/gikoNavi.dpr b/gikoNavi.dpr index 660bc1f..3f256f1 100644 --- a/gikoNavi.dpr +++ b/gikoNavi.dpr @@ -77,7 +77,8 @@ uses SambaTimer in 'SambaTimer.pas', HistoryList in 'HistoryList.pas', ReplaceDataModule in 'ReplaceDataModule.pas' {ReplaceDM: TDataModule}, - ResPopupBrowser in 'ResPopupBrowser.pas'; + ResPopupBrowser in 'ResPopupBrowser.pas', + SkinFiles in 'SkinFiles.pas'; {$R *.RES} {$R gikoResource.res} diff --git a/gikoNavi.res b/gikoNavi.res index 0986e9932ec31b961cd1edc81c5aeaae80dbcd18..80cf5828ccc741780629f497503abac94f5316e5 100644 GIT binary patch delta 28 kcmX@2ctml-8(z-SObiSb42%q?Cx7Mr%V@g!Gv7r<0GDVAoB#j- delta 28 kcmX@2ctml-8(z*+ObiSb42%q?CV%Dq%V@IsGv7r<0GC1vnE(I) -- 2.11.0