OSDN Git Service

あぼ〜ん(NGワード)の変更分を追記
[gikonavigoeson/gikonavi.git] / Setting.pas
index 6264258..068df74 100644 (file)
@@ -1,9 +1,10 @@
 unit Setting;
 
+
 interface
 
 uses
-       SysUtils, Classes, Graphics, Forms, Math, IniFiles, UCryptAuto, UBase64,
+       SysUtils, Classes, Graphics, Forms, {Math, IniFiles, UCryptAuto, UBase64,}
        ComCtrls, GestureModel;
 
 const
@@ -11,31 +12,7 @@ const
        LIST_COOLBAND_COUNT = 2;                //\94ÂCoolBand\82Ì\90\94
        BROWSER_COOLBAND_COUNT = 3;     //\83u\83\89\83E\83UCoolBand\82Ì\90\94
 
-       BOARD_FILE_NAME                                                         = 'board.2ch';
-       CUSTOMBOARD_FILE_NAME                                   = 'custom.2ch';
-       BOARD_DIR_NAME                                                          = 'Board';
-       KEY_SETTING_FILE_NAME                                   = 'key.ini';
-       EKEY_SETTING_FILE_NAME                          = 'Ekey.ini';
-       TEMP_FOLDER                                                                             = 'Temp';
-       OUTBOX_FILE_NAME                                                        = 'outbox.ini';
-       SENT_FILE_NAME                                                          = 'sent.ini';
-       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';
-       IGNORE_FILE_NAME : String               = 'Ignore.txt';
-//     DOLIB_LOGIN_URL     = '/~tora3n2c/futen.cgi';
-       MAX_POPUP_RES : Integer = 10;
-       GESTURE_FILE_NAME                                                       = 'Gestures.ini';
-       SPAMFILTER_FILE_NAME                                    = 'SpamFilter.ini';
+
 type
        TGikoTabPosition = (gtpTop, gtpBottom);                                                         // \83^\83u\88Ê\92u
        TGikoTabAppend = (gtaFirst, gtpLast);                                                                   // \83^\83u\92Ç\89Á\88Ê\92u
@@ -61,6 +38,7 @@ type
        TGikoSpamFilterAlgorithm = (
                gsfaNone, gsfaPaulGraham, gsfaGaryRobinson, gsfaGaryRobinsonFisher);
 
+
        /// \83J\83e\83S\83\8a\83\8a\83X\83g\82Ì\83J\83\89\83\80 ID
        type    TGikoBBSColumnID = (gbbscTitle);
        /// \83J\83e\83S\83\8a\83\8a\83X\83g\82Ì\83J\83\89\83\80\96¼
@@ -247,8 +225,8 @@ type
                FEditWindowHeight: Integer;
                FEditWindowWidth: Integer;
                FEditWindowMax: Boolean;
-        FEditWindowStay: Boolean;
-        FEditWindowTranslucent: Boolean;
+                FEditWindowStay: Boolean;
+                FEditWindowTranslucent: Boolean;
 
                //\83\8a\83X\83g\94Ô\8d\86\95\\8e¦
                FListViewNo: Boolean;
@@ -258,6 +236,8 @@ type
                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©
+               FUseKatjushaType : Boolean;
                //mail\97\93\95\\8e¦
                FShowMail: Boolean;
                /// \83\8c\83X\95\\8e¦\94Í\88Í
@@ -273,6 +253,7 @@ type
 
                //\83\8d\83O\83t\83H\83\8b\83_
                FLogFolder: string;
+        FLogFolderP: string; //\83p\83X\96¼\82ª\83p\83X\8bæ\90Ø\82è\8bL\8d\86\82Å\8fI\82í\82Á\82Ä\82¢\82é\81B
                FNewLogFolder: string;
 
                //\83\8a\83X\83g\83J\83\89\83\80\83w\83b\83_\81[\83T\83C\83Y
@@ -311,7 +292,7 @@ type
                FUserID: string;
                FPassword: string;
                FAutoLogin: Boolean;
-        FForcedLogin: Boolean;
+                FForcedLogin: Boolean;
                FDolibURL: string;
 
                //URL\83N\83\8a\83b\83N\8e\9e\8bN\93®\83A\83v\83\8a
@@ -353,9 +334,9 @@ type
                //\83X\83\8c\83b\83h\88ê\97\97\8dX\90V\83A\83C\83R\83\93\95\\8e¦
                FListIconVisible: Boolean;
 
-                               //\83X\83\8c\83b\83h\88ê\97\97\82ÅLog\82Ì\82 \82é\83X\83\8c\83b\83h\82Ì\82Ý\83X\83\8c\8dì\90¬\93ú\82ð\95\\8e¦\82·\82é\82©
-                               FCreationTimeLogs: Boolean;
-        //\83X\83\8c\83b\83h\88ê\97\97\82Ì\83X\83\8c\90\90¬\93ú\82Å\96¢\97\88\82Ì\83X\83\8c\82Ì\90\90¬\93ú\82ð\95\\8e¦\82µ\82È\82¢
+                //\83X\83\8c\83b\83h\88ê\97\97\82ÅLog\82Ì\82 \82é\83X\83\8c\83b\83h\82Ì\82Ý\83X\83\8c\8dì\90¬\93ú\82ð\95\\8e¦\82·\82é\82©
+                FCreationTimeLogs: Boolean;
+                //\83X\83\8c\83b\83h\88ê\97\97\82Ì\83X\83\8c\90\90¬\93ú\82Å\96¢\97\88\82Ì\83X\83\8c\82Ì\90\90¬\93ú\82ð\95\\8e¦\82µ\82È\82¢
                FFutureThread: Boolean;
 
                //\8f\91\82«\8d\9e\82Ý\8e\9e\83}\83V\83\93\8e\9e\8aÔ\8eg\97p\90Ý\92è
@@ -369,7 +350,8 @@ type
                FPopUpAbon               : Boolean; //\83\8c\83X\83|\83b\83v\83A\83b\83v\8e\9e\82Ì\82 \82Ú\81`\82ñ\97L\8cø
                FShowNGLinesNum : Boolean; //\8aY\93\96\82µ\82½\82m\82f\83\8f\81[\83h\83t\83@\83C\83\8b\82Ì\8ds\90\94\82ð\95\\8e¦
                FAddResAnchor : Boolean; //NG\83\8c\83X\82Ö\82Ì\83\8c\83X\83A\83\93\83J\81[\82ð\92Ç\89Á\82·\82é
-        FDeleteSyria : Boolean;        //\83V\83\8a\83A\8cê\83u\83\89\83N\83\89\91Î\8dô
+               FDeleteSyria : Boolean; //\83V\83\8a\83A\8cê\83u\83\89\83N\83\89\91Î\8dô
+               FIgnoreKana     : Boolean;      //\91S\94¼\8ap\82Ð\82ç\83J\83i\82Ì\88á\82¢\82ð\96³\8e\8b\82·\82é\82©
 
                // \83X\83\8c\83b\83h\8di\8d\9e\83t\83B\81[\83\8b\83h\82Ì\95\9d
                FSelectComboBoxWidth : Integer;
@@ -387,9 +369,11 @@ type
                //\8eæ\93¾\83\8c\83X\90\94\82Æ\83X\83\8c\83b\83h\82Ì\83\8c\83X\90\94\82ª\88Ù\82È\82Á\82½\82Æ\82«\82É\92Ê\8fí\94w\8ci\90F\82Æ\88á\82Á\82½\90F\82Ì\94w\8ci\90F\82ð\8eg\97p\82·\82é\82©
                FUseOddColorOddResNum: Boolean;
                FOddColor: TColor;
+               //\83\8c\83X\90\94\91\9d\8c¸\8b­\92²\8e\9e\82É\81A\91I\91ð\83A\83C\83e\83\80\82É\83t\83H\81[\83J\83X\82ª\96³\82¢\82Æ\82«\82É\91¾\8e\9a\82É\82·\82é\82©
+               FUnFocusedBold : Boolean;
 
-        //Samba24\91Î\8dô\8b@\94\\82ð\8eg\82¤\82©
-        FUseSamba: Boolean;
+               //Samba24\91Î\8dô\8b@\94\\82ð\8eg\82¤\82©
+               FUseSamba: Boolean;
 
                //\83\8c\83X\83A\83\93\83J\81[\82ð\83N\83\8a\83b\83N\82µ\82Ä\83W\83\83\83\93\83v\82·\82é\82©
                FResAnchorJamp: Boolean;
@@ -415,9 +399,6 @@ type
                //! \83}\83E\83X\83W\83F\83X\83`\83\83\81[\82ð\8eg\97p\82·\82é\82©\82Ç\82¤\82©
                FGestureEnabled : Boolean;
 
-               //2ch\8c¾\8cê\90Ý\92è
-               F2chLanguage : TStringList;
-
                //\83t\83V\83A\83i\83g\83\89\83b\83v\90Ý\92è
                FLocalTrapAtt : Boolean;
                FRemoteTrapAtt : Boolean;
@@ -429,6 +410,18 @@ type
                FMute: Boolean;
                //\83X\83\8c\8di\8d\9e\82Ý\82Å\96¢\8am\92è\95\8e\9a\82à\97L\8cø\82É\82·\82é\82©
                FUseUndecided: Boolean;
+
+                //Be2ch
+                //\94F\8fØ\97p\83\86\81[\83UID\81E\83p\83X\83\8f\81[\83h
+               FBeUserID: String;
+               FBeCode: String;
+               FBeAutoLogin: Boolean;
+               FBeLogin: Boolean;
+               //\97\9a\97ð\82Ì\8dÅ\91å\95Û\91\8c\8f\90\94
+               FMaxRecordCount : Integer;
+
+               //\83X\83\8c\83b\83h\88ê\97\97\82ð\83_\83E\83\93\83\8d\81[\83h\8cã\82É\83\\81[\83g\82·\82é\82©
+               FAutoSortThreadList : Boolean;
                function GetMainCoolSet(Index: Integer): TCoolSet;
                function GetBoardCoolSet(Index: Integer): TCoolSet;
                function GetBrowserCoolSet(Index: Integer): TCoolSet;
@@ -494,6 +487,10 @@ type
                function GetIgnoreFileName: string;
                function GetGestureFileName : string;
                function GetSpamFilterFileName : string;
+               function GetLanguageFileName: string;
+               function GetMainKeyFileName: String;
+               function GetEditorKeyFileName: String;
+               procedure WriteLogFolder(AVal : String);
 
                //\8eó\90M\83o\83b\83t\83@\83T\83C\83Y
                property RecvBufferSize: Integer read FRecvBufferSize write FRecvBufferSize;
@@ -605,6 +602,7 @@ type
                property ListViewNo: Boolean read FListViewNo write FListViewNo;
                property UseCSS: Boolean read FUseCSS write SetUseCSS;
                property CSSFileName: string read FCSSFileName write SetCSSFileName;
+               property UseKatjushaType : Boolean read FUseKatjushaType write FUseKatjushaType;
                property UseSkin: Boolean read FUseSkin;
 
                property ShowMail: Boolean read FShowMail write FShowMail;
@@ -614,7 +612,8 @@ type
                property UnActivePopup: Boolean read FUnActivePopup write FUnActivePopup;
                property ResPopupHeaderBold: Boolean read FResPopupHeaderBold write FResPopupHeaderBold;
 
-               property LogFolder: string read FLogFolder write FLogFolder;
+               property LogFolder: string read FLogFolder write WriteLogFolder;
+        property LogFolderP: string read FLogFolderP;
                property NewLogFolder: string read FNewLogFolder write FNewLogFolder;
 
                property BBSColumnWidth[index: Integer]: Integer read GetBBSColumnWidth write SetBBSColumnWidth;
@@ -689,6 +688,7 @@ type
                property ShowNGLinesNum : Boolean read FShowNGLinesNum write FShowNGLinesNum;
                property AddResAnchor : Boolean read FAddResAnchor write FAddResAnchor;
                property DeleteSyria : Boolean read FDeleteSyria write FDeleteSyria;
+               property IgnoreKana : Boolean read FIgnoreKana write FIgnoreKana;
                // \83X\83\8c\83b\83h\8di\8d\9e\83t\83B\81[\83\8b\83h\82Ì\95\9d
                property SelectComboBoxWidth : Integer read FSelectComboBoxWidth write FSelectComboBoxWidth;
 
@@ -704,6 +704,7 @@ type
                //\8eæ\93¾\83\8c\83X\90\94\82Æ\83X\83\8c\83b\83h\82Ì\83\8c\83X\90\94\82ª\88Ù\82È\82Á\82½\82Æ\82«\82É\92Ê\8fí\94w\8ci\90F\82Æ\88á\82Á\82½\90F\82Ì\94w\8ci\90F\82ð\8eg\97p\82·\82é\82©
                property UseOddColorOddResNum: Boolean read FUseOddColorOddResNum write FUseOddColorOddResNum;
                property OddColor: TColor read FOddColor write FOddColor;
+               property UnFocusedBold : Boolean read FUnFocusedBold write FUnFocusedBold;
                property UseSamba: Boolean read FUseSamba write FUseSamba;
                                property ResAnchorJamp: Boolean read FResAnchorJamp write FResAnchorJamp;
 
@@ -714,7 +715,7 @@ type
                property SelectInterval : Integer       read FSelectInterval    write FSelectInterval;
                //Tab\95Û\91
                property TabAutoLoadSave: Boolean           read FTabAutoLoadSave      write FTabAutoLoadSave;
-                               property Gengo: TStringList read F2chLanguage write F2chLanguage;
+                               //property Gengo: TStringList read F2chLanguage write F2chLanguage;
                                property GengoSupport : Boolean read F2chSupport write F2chSupport;
                property KuroutSettingTabIndex: Integer read FKuroutSettingTabIndex write FKuroutSettingTabIndex;
                //! \83}\83E\83X\83W\83F\83X\83`\83\83\81[
@@ -730,12 +731,56 @@ type
                        read FSpamFilterAlgorithm write FSpamFilterAlgorithm;
                property Mute: Boolean read FMute write FMute;
                property UseUndecided: Boolean read FUseUndecided write FUseUndecided;
+
+               property BeUserID: string read FBeUserID write FBeUserID;
+               property BeCode: string read FBeCode write FBeCode;
+               property BeAutoLogin: Boolean read FBeAutoLogin write FBeAutoLogin;
+               property BeLogin: Boolean read FBeLogin write FBeLogin;
+               property MaxRecordCount : Integer read FMaxRecordCount write FMaxRecordCount;
+               //! \83X\83\8c\83b\83h\88ê\97\97\83_\83E\83\93\83\8d\81[\83h\8cã\82É\83X\83\8c\83b\83h\96¼\82Å\8f¸\8f\87\83\\81[\83g\82·\82é\82©
+               property AutoSortThreadList : Boolean read FAutoSortThreadList write FAutoSortThreadList;
 end;
 
 
+const
+//     MAIN_COOLBAND_COUNT = 4;                //\83\81\83C\83\93CoolBand\82Ì\90\94
+//     LIST_COOLBAND_COUNT = 2;                //\94ÂCoolBand\82Ì\90\94
+//     BROWSER_COOLBAND_COUNT = 3;     //\83u\83\89\83E\83UCoolBand\82Ì\90\94
+
+       BOARD_FILE_NAME                                                         = 'board.2ch';
+       CUSTOMBOARD_FILE_NAME                                   = 'custom.2ch';
+       BOARD_DIR_NAME                                                          = 'Board';
+       KEY_SETTING_FILE_NAME                                   = 'key.ini';
+       EKEY_SETTING_FILE_NAME                          = 'Ekey.ini';
+       TEMP_FOLDER                                                                             = 'Temp';
+       OUTBOX_FILE_NAME                                                        = 'outbox.ini';
+       SENT_FILE_NAME                                                          = 'sent.ini';
+       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';
+       IGNORE_FILE_NAME : String               = 'Ignore.txt';
+//     DOLIB_LOGIN_URL     = '/~tora3n2c/futen.cgi';
+       MAX_POPUP_RES : Integer = 10;
+       GESTURE_FILE_NAME                                                       = 'Gestures.ini';
+       SPAMFILTER_FILE_NAME                                    = 'SpamFilter.ini';
+        LANGUAGE_FILE_NAME    = 'language.ini';
+
+
 
 implementation
 
+uses
+       Math, IniFiles, UCryptAuto, UBase64;
+
 type
        TSoundName = record
                Name: string;
@@ -752,10 +797,7 @@ const
        DEFAULT_WINDOW_COLOR: string    = 'clWindow';
        DEFAULT_TAB_FONT_NAME: string            = '\82l\82\82o\83S\83V\83b\83N';
        DEFAULT_TAB_FONT_SIZE: Integer          = 9;
-       DEFAULT_2CH_BOARD_URL1: string = 'http://www6.ocn.ne.jp/~mirv/2chmenu.html';
-       DEFAULT_2CH_BOARD_URL2: string = 'http://www.ff.iij4u.or.jp/~ch2/bbsmenu.html';
-                                     //http://menu.2ch.net/bbsmenu.html //\82à\82¤\82·\82®\82±\82ê\82ª\90³\8e®\82È\94Â\88ê\97\97\82É\82È\82é\82æ\82¤
-                                                                                                                               //'http://www.2ch.net/newbbsmenu.html';
+       DEFAULT_2CH_BOARD_URL1: string = 'http://menu.2ch.net/bbsmenu.html';
        GIKO_ENCRYPT_TEXT: string                = 'gikoNaviEncryptText';
 
 var
@@ -948,8 +990,9 @@ begin
                FListFontItalic := ini.ReadBool('Window', 'ListFontItalic', False);
                FListFontColor := StringToColor(ini.ReadString('Window', 'ListFontColor', DEFAULT_FONT_COLOR));
                FListBackColor := StringToColor(ini.ReadString('Window', 'ListBackColor', DEFAULT_WINDOW_COLOR));
-                FUseOddColorOddResNum := ini.ReadBool('Window','UseOddColor', False);
-                FOddColor := StringToColor(ini.ReadString('Window', 'OddColor', DEFAULT_WINDOW_COLOR));
+               FUseOddColorOddResNum := ini.ReadBool('Window','UseOddColor', False);
+               FOddColor := StringToColor(ini.ReadString('Window', 'OddColor', DEFAULT_WINDOW_COLOR));
+               FUnFocusedBold := ini.ReadBool('Window','UnFocusedBold', False);
 
                FEditorFontName := ini.ReadString('Window', 'EditorFontName', DEFAULT_FONT_NAME);
                FEditorFontSize := ini.ReadInteger('Window', 'EditorFontSize', DEFAULT_FONT_SIZE);
@@ -1134,6 +1177,8 @@ begin
                UseCSS := ini.ReadBool('CSS', 'UseCSS', True);
                //CSS\83t\83@\83C\83\8b\96¼
                CSSFileName := ini.ReadString('CSS', 'FileName', 'default.css');
+               //\82©\82µ\82ã\81`\82µ\82á\82Ì\83X\83L\83\93\82ð\8eg\82¤\82©
+               FUseKatjushaType := ini.ReadBool('CSS', 'UseKatjushaType', false);
 
                //Mail\97\93\95\\8e¦
                FShowMail := ini.ReadBool('Thread', 'ShowMail', True);
@@ -1160,7 +1205,7 @@ begin
                //ResAnchorjamp
                ResAnchorJamp := ini.ReadBool('Function', 'ResAnchoJamp', True);
                //\83\8d\83O\83t\83H\83\8b\83_
-               FLogFolder := ini.ReadString('Folder', 'LogFolder', ExtractFilePath(Application.ExeName) + 'Log');
+               LogFolder := ini.ReadString('Folder', 'LogFolder', ExtractFilePath(Application.ExeName) + 'Log');
                NewLogFolder := '';
 
                //\94ÂURL
@@ -1211,6 +1256,8 @@ begin
                FCategorySortOrder := ini.ReadBool('ThreadList', 'CategorySortOrder', True);
                FBoardSortIndex := ini.ReadInteger('ThreadList', 'BoardSortIndex', 0);
                FBoardSortOrder := ini.ReadBool('ThreadList', 'BoardSortOrder', True);
+               // DL\8cã\82Ì\8e©\93®\83\\81[\83g
+               FAutoSortThreadList := ini.ReadBool('ThreadList', 'AutoSort', True);
                //Dat\97\8e\82¿\83X\83\8c\83\\81[\83g\8f\87
                FDatOchiSortIndex := ini.ReadInteger('ThreadList', 'DatOchiSortIndex', -1);
                FDatOchiSortOrder := ini.ReadBool('ThreadList', 'DatOchiSortOrder', False);
@@ -1263,7 +1310,8 @@ begin
                FPopUpAbon               := ini.ReadBool('Abon','Popup',false);
                FShowNGLinesNum := ini.ReadBool('Abon','ShowNGLines',false);
                FAddResAnchor := ini.ReadBool('Abon','AddResAnchor',false);
-                               FDeleteSyria :=  ini.ReadBool('Abon','DeleteSyria',false);
+               FDeleteSyria :=  ini.ReadBool('Abon','DeleteSyria',false);
+               FIgnoreKana  :=  ini.ReadBool('Abon','IgnoreKana',false);
 
                // \83G\83f\83B\83^
                FSpaceToNBSP    := ini.ReadBool( 'Editor', 'SpaceToNBSP', False );
@@ -1290,6 +1338,15 @@ begin
                        ini.ReadInteger( 'Abon', 'SpamFilterAlgorithm', Ord( gsfaNone ) ) );
                FMute := ini.ReadBool('Function', 'Mute', false);
                FUseUndecided := ini.ReadBool('ThreadList', 'UseUndecided', False);
+
+        //Be2ch
+               //\94F\8fØ\97p\83\86\81[\83UID\81E\94F\8fØ\83R\81[\83h
+               FBeUserID := ini.ReadString('Be', 'UserID', '');
+               FBeCode := Decrypt(ini.ReadString('Be', 'Code', ''));
+               FBeAutoLogin := ini.ReadBool('Be', 'AutoLogin', False);
+               //\97\9a\97ð\82Ì\8dÅ\91å\95Û\91\8c\8f\90\94
+               FMaxRecordCount := Max(ini.ReadInteger('Recode', 'Max', 100), 1);
+
                ini.UpdateFile;
        finally
                ini.Free;
@@ -1363,8 +1420,9 @@ begin
                ini.WriteString('Window', 'ListBackColor', ColorToString(FListBackColor));
                ini.WriteBool('Window', 'ListFontBold', FListFontBold);
                ini.WriteBool('Window', 'ListFontItalic', FListFontItalic);
-                               ini.WriteBool('Window','UseOddColor',FUseOddColorOddResNum);
-                ini.WriteString('Window', 'OddColor',ColorToString(FOddColor));
+               ini.WriteBool('Window','UseOddColor',FUseOddColorOddResNum);
+               ini.WriteString('Window', 'OddColor',ColorToString(FOddColor));
+               ini.WriteBool('Window','UnFocusedBold', FUnFocusedBold);
 
                ini.WriteString('Window', 'EditorFontName', FEditorFontName);
                ini.WriteInteger('Window', 'EditorFontSize', FEditorFontSize);
@@ -1461,6 +1519,8 @@ begin
                ini.WriteBool('Function', 'ListViewNo', FListViewNo);
                //CSS\8eg\97p
                ini.WriteBool('CSS', 'UseCSS', FUseCSS);
+               //\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);
                //Mail\97\93\95\\8e¦
@@ -1532,6 +1592,8 @@ begin
                ini.WriteBool('ThreadList', 'BoardSortOrder', FBoardSortOrder);
                ini.WriteInteger('ThreadList', 'DatOchiSortIndex', FDatOchiSortIndex);
                ini.WriteBool('ThreadList', 'DatOchiSortOrder', FDatOchiSortOrder);
+               // DL\8cã\82Ì\8e©\93®\83\\81[\83g
+               ini.WriteBool('ThreadList', 'AutoSort', FAutoSortThreadList);
 
                //\8f\91\82«\8d\9e\82Ý\8e\9e\83}\83V\83\93\8e\9e\8d\8f\8eg\97p\90Ý\92è
                ini.WriteBool('PostTime', 'UseMachineTime', FUseMachineTime);
@@ -1609,10 +1671,11 @@ begin
                //\82 \82Ú\81`\82ñ
                ini.WriteBool('Abon','Deleterlo',FAbonDeleterlo);
                ini.WriteBool('Abon','Replaceul',FAbonReplaceul);
-                               ini.WriteBool('Abon','Popup',FPopUpAbon);
+               ini.WriteBool('Abon','Popup',FPopUpAbon);
                ini.WriteBool('Abon','ShowNGLines',FShowNGLinesNum);
                ini.WriteBool('Abon','AddResAnchor',FAddResAnchor);
-                               ini.WriteBool('Abon','DeleteSyria',FDeleteSyria);
+               ini.WriteBool('Abon','DeleteSyria',FDeleteSyria);
+               ini.WriteBool('Abon','IgnoreKana', FIgnoreKana);
 
                // \83G\83f\83B\83^
                ini.WriteBool( 'Editor', 'SpaceToNBSP', FSpaceToNBSP );
@@ -1636,8 +1699,17 @@ begin
 
                // \8eg\97p\82·\82é\83X\83p\83\80\83t\83B\83\8b\83^
                ini.WriteInteger( 'Abon', 'SpamFilterAlgorithm', Ord( FSpamFilterAlgorithm ) );
-        ini.WriteBool('Function', 'Mute', FMute);
-        ini.WriteBool('ThreadList', 'UseUndecided', FUseUndecided);
+                ini.WriteBool('Function', 'Mute', FMute);
+                ini.WriteBool('ThreadList', 'UseUndecided', FUseUndecided);
+
+               //\94F\8fØ\97p\83\86\81[\83UID\81E\83p\83X\83\8f\81[\83h
+               ini.WriteString('Be', 'UserID', FBeUserID);
+               ini.WriteString('Be', 'Code', Encrypt(FBeCode));
+               ini.WriteBool('Be', 'AutoLogin', FBeAutoLogin);
+
+               //\97\9a\97ð\82Ì\8dÅ\91å\95Û\91\8c\8f\90\94
+               ini.WriteInteger('Recode', 'Max', FMaxRecordCount);
+
                ini.UpdateFile;
        finally
                ini.Free;
@@ -1906,10 +1978,13 @@ var
 begin
        ini := TMemIniFile.Create(GetBoardURLFileName());
        try
-               ini.WriteInteger('URL','count',2);
-               ini.WriteInteger('URL','selected',2);
+               //\8dX\90VURL\82Ì\90\94
+               ini.WriteInteger('URL','count',1);
+               //\83f\83t\83H\83\8b\83g\82Å\8eg\97p\82·\82é\82t\82q\82k\82Ì\83C\83\93\83f\83b\83N\83X
+               ini.WriteInteger('URL','selected',1);
+               //\88È\89º\95K\97v\82È\90\94\82¾\82¯\81A\8dX\90V\82t\82q\82k\82ð\92Ç\89Á
                ini.WriteString('URL','1',DEFAULT_2CH_BOARD_URL1);
-               ini.WriteString('URL','2',DEFAULT_2CH_BOARD_URL2);
+               //ini.WriteString('URL','2',DEFAULT_2CH_BOARD_URL2);
                ini.UpdateFile;
        finally
                ini.Free;
@@ -2085,6 +2160,23 @@ begin
        Result := GetConfigDir + SPAMFILTER_FILE_NAME;
 end;
 
+function TSetting.GetLanguageFileName: string;
+begin
+    Result := GetConfigDir + LANGUAGE_FILE_NAME;
+end;
+procedure TSetting.WriteLogFolder(AVal : String);
+begin
+       FLogFolder := AVal;
+       FLogFolderP := IncludeTrailingPathDelimiter(LogFolder);
+end;
+function TSetting.GetMainKeyFileName: String;
+begin
+       Result := GetConfigDir + KEY_SETTING_FILE_NAME;
+end;
+function TSetting.GetEditorKeyFileName: String;
+begin
+    Result := GetConfigDir + EKEY_SETTING_FILE_NAME;
+end;
 end.