OSDN Git Service

ファイルパス関連の整理中
authorh677 <h677>
Mon, 2 Jul 2007 15:01:47 +0000 (15:01 +0000)
committerh677 <h677>
Mon, 2 Jul 2007 15:01:47 +0000 (15:01 +0000)
ExternalThreadItem.pas
GikoSystem.pas
Setting.pas
SkinFiles.pas [new file with mode: 0644]
gikoNavi.dpr
gikoNavi.res

index 46170eb..18d2c10 100644 (file)
@@ -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
                        // \83X\83L\83\93
-                       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, '</head>', optionalHeader + '</head><a name="top"></a>', [] );
@@ -451,7 +451,7 @@ begin
        try
                if GikoSys.Setting.UseSkin then begin
                        // \83X\83L\83\93
-                       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, '</body>', optionalFooter + '</body>', [] );
index 185cc59..ee8407b 100644 (file)
@@ -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:\83w\83b\83_\82Ì\83t\83@\83C\83\8b\96¼
 function TGikoSys.GetSkinHeaderFileName: string;
 begin
-       Result := Setting.GetSkinHeaderFileName;
+       Result := Setting.SkinFiles.GetSkinHeaderFileName;
 end;
 
 //! Skin:\83t\83b\83^\82Ì\83t\83@\83C\83\8b\96¼
 function TGikoSys.GetSkinFooterFileName: string;
 begin
-       Result := Setting.GetSkinFooterFileName;
+       Result := Setting.SkinFiles.GetSkinFooterFileName;
 end;
 
 //! Skin:\90V\92\85\83\8c\83X\82Ì\83t\83@\83C\83\8b\96¼
 function TGikoSys.GetSkinNewResFileName: string;
 begin
-       Result := Setting.GetSkinNewResFileName;
+       Result := Setting.SkinFiles.GetSkinNewResFileName;
 end;
 
 //! Skin:\94ñ\90V\92\85\83\8c\83X\82Ì\83t\83@\83C\83\8b\96¼
 function TGikoSys.GetSkinResFileName: string;
 begin
-       Result := Setting.GetSkinResFileName;
+       Result := Setting.SkinFiles.GetSkinResFileName;
 end;
 
 //! Skin:\82µ\82¨\82è(\82±\82±\82Ü\82Å\93Ç\82ñ\82¾)\82Ì\83t\83@\83C\83\8b\96¼
 function TGikoSys.GetSkinBookmarkFileName: string;
 begin
-       Result := Setting.GetSkinBookmarkFileName;
+       Result := Setting.SkinFiles.GetSkinBookmarkFileName;
 end;
 
 //! Skin:\82µ\82¨\82è(\90V\92\85\83\8c\83X)\82Ì\83t\83@\83C\83\8b\96¼
 function TGikoSys.GetSkinNewmarkFileName: string;
 begin
-       Result := Setting.GetSkinNewmarkFileName;
+       Result := Setting.SkinFiles.GetSkinNewmarkFileName;
 end;
 
 //! UserAgent\8eæ\93¾
index e2d0c63..be1ab3c 100644 (file)
@@ -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;                //\83\81\83C\83\93CoolBand\82Ì\90\94
@@ -232,8 +232,6 @@ type
                FListViewNo: Boolean;
                //CSS\95\\8e¦
                FUseCSS: Boolean;
-               //CSS\83t\83@\83C\83\8b\96¼
-               FCSSFileName: string;
                // \83X\83L\83\93\95\\8e¦(\88ê\8e\9e\93I\82È\82à\82Ì\82Å ini \82É\95Û\91\82Í\82³\82ê\82È\82¢)
                FUseSkin: Boolean;
                //\82©\82¿\82ã\81`\82µ\82á\97p\82ÌSkin\82ð\97\98\97p\82·\82é\82©
@@ -450,6 +448,8 @@ type
         FSentIniFileSize: Integer;
         //! \83\8a\83\93\83NURL\8eæ\93¾\82Ì\91Î\8fÛ\8ag\92£\8eq
         FExtList: String;
+        //! Skin\8aÖ\98A
+        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;
         //! \83v\83\8d\83L\83V\90Ý\92è\93Ç\82Ý\8d\9e\82Ý
         procedure ReadProxySettings(memIni: TMemIniFile);
         //! \8ae\8eí\83E\83B\83\93\83h\83E\90Ý\92è\93Ç\82Ý\8d\9e\82Ý
@@ -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;
         //! \83\8a\83\93\83NURL\8eæ\93¾\82Ì\91Î\8fÛ\8ag\92£\8eq
         property ExtList: String read FExtList write FExtList;
+        //! Skin\83t\83@\83C\83\8b\8aÇ\97\9d
+        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
                //\82©\82µ\82ã\81`\82µ\82á\82Ì\83X\83L\83\93\82ð\8eg\82¤\82©
                ini.WriteBool('CSS', 'UseKatjushaType', FUseKatjushaType);
                //CSS\83t\83@\83C\83\8b\96¼
-               ini.WriteString('CSS', 'FileName', FCSSFileName);
+               ini.WriteString('CSS', 'FileName', FSkinFiles.FileName);
                //Mail\97\93\95\\8e¦
                ini.WriteBool('Thread', 'ShowMail', FShowMail);
                // \83\8c\83X\95\\8e¦\94Í\88Í
@@ -2051,48 +2043,6 @@ begin
        Result := IncludeTrailingPathDelimiter(GetConfigDir + SKIN_DIR_NAME);
 end;
 (*************************************************************************
- *skin\83w\83b\83_\83t\83@\83C\83\8b\96¼\8eæ\93¾
- *************************************************************************)
-function TSetting.GetSkinHeaderFileName: string;
-begin
-       Result := CSSFileName + SKIN_HEADER_FILE_NAME;
-end;
-(*************************************************************************
- *skin\83t\83b\83^\83t\83@\83C\83\8b\96¼\8eæ\93¾
- *************************************************************************)
-function TSetting.GetSkinFooterFileName: string;
-begin
-       Result := CSSFileName + SKIN_FOOTER_FILE_NAME;
-end;
-(*************************************************************************
- *skin\90V\83\8c\83X\83t\83@\83C\83\8b\96¼\8eæ\93¾
- *************************************************************************)
-function TSetting.GetSkinNewResFileName: string;
-begin
-       Result := CSSFileName + SKIN_NEWRES_FILE_NAME;
-end;
-(*************************************************************************
- *skin\83\8c\83X\83t\83@\83C\83\8b\96¼\8eæ\93¾
- *************************************************************************)
-function TSetting.GetSkinResFileName: string;
-begin
-       Result := CSSFileName + SKIN_RES_FILE_NAME;
-end;
-(*************************************************************************
- *skin\83u\83b\83N\83}\81[\83N\83t\83@\83C\83\8b\96¼\8eæ\93¾
- *************************************************************************)
-function TSetting.GetSkinBookmarkFileName: string;
-begin
-       Result := CSSFileName + SKIN_BOOKMARK_FILE_NAME;
-end;
-(*************************************************************************
- *skin\90V\92\85\83t\83@\83C\83\8b\96¼\8eæ\93¾
- *************************************************************************)
-function TSetting.GetSkinNewmarkFileName: string;
-begin
-       Result := CSSFileName + SKIN_NEWMARK_FILE_NAME;
-end;
-(*************************************************************************
  *NG\83\8f\81[\83h\83f\83B\83\8c\83N\83g\83\8a\8eæ\93¾(\\82Å\8fI\82í\82é)
  *************************************************************************)
 function TSetting.GetNGWordsDir: string;
@@ -2115,21 +2065,20 @@ begin
        // \83R\83R\82Å\82Ì\94»\92è\82Å\82à\91å\95\8e\9a\8f¬\95\8e\9a\82Ì\88á\82¢\82Í\96³\8e\8b\82·\82é\81B
        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\93I\82É\83t\83@\83C\83\8b\83p\83X\82Ì\91å\95\8e\9a\8f¬\95\8e\9a\82Ì\88á\82¢\82Í\96³\8e\8b\82³\82ê\82é\82Ì\82Å\81A
        // \83R\83R\82Å\82Ì\94»\92è\82Å\82à\91å\95\8e\9a\8f¬\95\8e\9a\82Ì\88á\82¢\82Í\96³\8e\8b\82·\82é\81B
        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 (file)
index 0000000..bf0f786
--- /dev/null
@@ -0,0 +1,86 @@
+unit SkinFiles;
+
+interface
+
+uses
+       SysUtils, Classes, ComCtrls;
+
+type
+    TSkinFiles = class(TObject)
+    private
+        FFileName: String;
+        procedure SetFileName(AFileName: string);
+    public
+        //! \83X\83L\83\93\83t\83@\83C\83\8b\83p\83X
+        property FileName:String read FFileName write SetFileName;
+        //! \83w\83b\83_\82Ì\83t\83@\83C\83\8b\96¼
+        function GetSkinHeaderFileName: string;
+        //! \83t\83b\83^\82Ì\83t\83@\83C\83\8b\96¼
+        function GetSkinFooterFileName: string;
+        //! \90V\92\85\83\8c\83X\82Ì\83t\83@\83C\83\8b\96¼
+        function GetSkinNewResFileName: string;
+        //! \94ñ\90V\92\85\83\8c\83X\82Ì\83t\83@\83C\83\8b\96¼
+        function GetSkinResFileName: string;
+        //! \82µ\82¨\82è(\82±\82±\82Ü\82Å\93Ç\82ñ\82¾)\82Ì\83t\83@\83C\83\8b\96¼
+        function GetSkinBookmarkFileName: string;
+        //! \82µ\82¨\82è(\90V\92\85\83\8c\83X)\82Ì\83t\83@\83C\83\8b\96¼
+        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';
+
+//! \83X\83L\83\93\83t\83@\83C\83\8b\96¼\90Ý\92è
+procedure TSkinFiles.SetFileName(AFileName: string);
+begin
+    // \83f\83B\83\8c\83N\83g\83\8a\82Ì\8fê\8d\87\8dÅ\8cã\82É\\82Å\8fI\82í\82ç\82·
+    if DirectoryExists(AFileName) then begin
+        // \ \82Å\8fI\82í\82é\82æ\82¤\82É\82·\82é
+        FFileName := IncludeTrailingPathDelimiter(AFileName);
+    end else begin
+        FFileName := AFileName;
+    end;
+end;
+//! Skin:\83w\83b\83_\82Ì\83t\83@\83C\83\8b\96¼
+function TSkinFiles.GetSkinHeaderFileName: string;
+begin
+       Result := FFileName + SKIN_HEADER_FILE_NAME;
+end;
+
+//! Skin:\83t\83b\83^\82Ì\83t\83@\83C\83\8b\96¼
+function TSkinFiles.GetSkinFooterFileName: string;
+begin
+       Result := FFileName + SKIN_FOOTER_FILE_NAME;
+end;
+
+//! Skin:\90V\92\85\83\8c\83X\82Ì\83t\83@\83C\83\8b\96¼
+function TSkinFiles.GetSkinNewResFileName: string;
+begin
+       Result := FFileName + SKIN_NEWRES_FILE_NAME;
+end;
+
+//! Skin:\94ñ\90V\92\85\83\8c\83X\82Ì\83t\83@\83C\83\8b\96¼
+function TSkinFiles.GetSkinResFileName: string;
+begin
+       Result := FFileName + SKIN_RES_FILE_NAME;
+end;
+
+//! Skin:\82µ\82¨\82è(\82±\82±\82Ü\82Å\93Ç\82ñ\82¾)\82Ì\83t\83@\83C\83\8b\96¼
+function TSkinFiles.GetSkinBookmarkFileName: string;
+begin
+       Result := FFileName + SKIN_BOOKMARK_FILE_NAME;
+end;
+
+//! Skin:\82µ\82¨\82è(\90V\92\85\83\8c\83X)\82Ì\83t\83@\83C\83\8b\96¼
+function TSkinFiles.GetSkinNewmarkFileName: string;
+begin
+       Result := FFileName + SKIN_NEWMARK_FILE_NAME;
+end;
+end.
index 660bc1f..3f256f1 100644 (file)
@@ -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}
index 0986e99..80cf582 100644 (file)
Binary files a/gikoNavi.res and b/gikoNavi.res differ