From: h677 Date: Mon, 7 Aug 2006 15:30:11 +0000 (+0000) Subject: あまりにも読み込み処理が長くなったので多少分割 X-Git-Tag: v1_64_1_820~361 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=983baa5c56fe0f7438d976a5fd4cd4b8554c5f40;p=gikonavigoeson%2Fgikonavi.git あまりにも読み込み処理が長くなったので多少分割 --- diff --git a/Setting.pas b/Setting.pas index f50e858..4e1d1f0 100644 --- a/Setting.pas +++ b/Setting.pas @@ -5,7 +5,7 @@ interface uses SysUtils, Classes, Graphics, Forms, {Math, IniFiles, UCryptAuto, UBase64,} - ComCtrls, GestureModel; + ComCtrls, GestureModel, IniFiles; const MAIN_COOLBAND_COUNT = 4; //ƒƒCƒ“CoolBand‚̐” @@ -461,6 +461,16 @@ type procedure SetUseCSS( value: Boolean ); procedure SetCSSFileName( fileName: string ); + //! ƒvƒƒLƒVÝ’è“ǂݍž‚Ý + procedure ReadProxySettings(memIni: TMemIniFile); + //! ŠeŽíƒEƒBƒ“ƒhƒEÝ’è“ǂݍž‚Ý + procedure ReadWindowSettings(memIni: TMemIniFile); + //! “ü—Í—š—ð“ǂݍž‚݁iŒŸõ{ƒ[ƒ‹—“{–¼‘Oj + procedure ReadInputHisotrys(memIni: TMemIniFile); + //! ƒŠƒXƒgƒJƒ‰ƒ€•“ǂݍž‚Ý + procedure ReadListColumnWidth(memIni: TMemIniFile); + //! ƒJƒeƒSƒŠƒŠƒXƒgƒJƒ‰ƒ€‡˜“ǂݍž‚Ý + procedure ReadOrdColumn(memIni: TMemIniFile); protected public @@ -811,7 +821,7 @@ const implementation uses - Math, IniFiles, UCryptAuto, UBase64; + Math, UCryptAuto, UBase64; type TSoundName = record @@ -964,20 +974,11 @@ end; //Ý’èƒtƒ@ƒCƒ‹“Ǎž procedure TSetting.ReadSettingFile(); -const - DEFAULT_BBS_WIDTH: array[0..0] of Integer = (140); - DEFAULT_CATEGORY_WIDTH: array[0..2] of Integer = (150, 80, 130); - DEFAULT_BOARD_WIDTH: array[0..10] of Integer = (350, 60, 60, 60, 60, 60, 80, 130, 130, 130, 60); - MAX_WIDTH: Integer = 2000; var ini: TMemIniFile; i: Integer; - id, code : Integer; - wkList: TStringList; - wkStr: string; Exists: Boolean; s: string; -// id: Integer; CoolSet: TCoolSet; begin Exists := FileExists(GetFileName); @@ -990,60 +991,11 @@ begin //ƒvƒƒLƒVÚ‘±HTTP1.1Žg—p FProxyProtocol := ini.ReadBool('HTTP', 'ProxyProtocol', False); - FReadProxy := ini.ReadBool('ReadProxy', 'Proxy', false); - FReadProxyAddress := ini.ReadString('ReadProxy', 'Address', ''); - FReadProxyPort := ini.ReadInteger('ReadProxy', 'Port', 0); - FReadProxyUserID := ini.ReadString('ReadProxy', 'UserID', ''); - FReadProxyPassword := ini.ReadString('ReadProxy', 'Password', ''); - - FWriteProxy := ini.ReadBool('WriteProxy', 'Proxy', false); - FWriteProxyAddress := ini.ReadString('WriteProxy', 'Address', ''); - FWriteProxyPort := ini.ReadInteger('WriteProxy', 'Port', 0); - FWriteProxyUserID := ini.ReadString('WriteProxy', 'UserID', ''); - FWriteProxyPassword := ini.ReadString('WriteProxy', 'Password', ''); - - FBrowserFontName := ini.ReadString('Window', 'BrowserFontName', ''); - FBrowserFontSize := ini.ReadInteger('Window', 'BrowserFontSize', 0); - FBrowserFontBold := ini.ReadInteger('Window', 'BrowserFontBold', 0); - FBrowserFontItalic := ini.ReadInteger('Window', 'BrowserFontItalic', 0); - FBrowserFontColor := ini.ReadInteger('Window', 'BrowserFontColor', -1); - FBrowserBackColor := ini.ReadInteger('Window', 'BrowserBackColor', -1); - - FCabinetFontName := ini.ReadString('Window', 'CabinetFontName', DEFAULT_FONT_NAME); - FCabinetFontSize := ini.ReadInteger('Window', 'CabinetFontSize', DEFAULT_FONT_SIZE); - FCabinetFontBold := ini.ReadBool('Window', 'CabinetFontBold', False); - FCabinetFontItalic := ini.ReadBool('Window', 'CabinetFontItalic', False); - FCabinetFontColor := StringToColor(ini.ReadString('Window', 'CabinetFontColor', DEFAULT_FONT_COLOR)); - FCabinetBackColor := StringToColor(ini.ReadString('Window', 'CabinetBackColor', DEFAULT_WINDOW_COLOR)); - - FListFontName := ini.ReadString('Window', 'ListFontName', DEFAULT_FONT_NAME); - FListFontSize := ini.ReadInteger('Window', 'ListFontSize', DEFAULT_FONT_SIZE); - FListFontBold := ini.ReadBool('Window', 'ListFontBold', False); - 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)); - FUnFocusedBold := ini.ReadBool('Window','UnFocusedBold', False); - - FEditorFontName := ini.ReadString('Window', 'EditorFontName', DEFAULT_FONT_NAME); - FEditorFontSize := ini.ReadInteger('Window', 'EditorFontSize', DEFAULT_FONT_SIZE); - FEditorFontBold := ini.ReadBool('Window', 'EditorFontBold', False); - FEditorFontItalic := ini.ReadBool('Window', 'EditorFontItalic', False); - FEditorFontColor := StringToColor(ini.ReadString('Window', 'EditorFontColor', DEFAULT_FONT_COLOR)); - FEditorBackColor := StringToColor(ini.ReadString('Window', 'EditorBackColor', DEFAULT_WINDOW_COLOR)); - - FBrowserTabFontName := ini.ReadString('Window', 'BrowserTabFontName', DEFAULT_TAB_FONT_NAME); - FBrowserTabFontSize := ini.ReadInteger('Window', 'BrowserTabFontSize', DEFAULT_TAB_FONT_SIZE); - FBrowserTabFontBold := ini.ReadBool('Window', 'BrowserTabFontBold', False); - FBrowserTabFontItalic := ini.ReadBool('Window', 'BrowserTabFontItalic', False); - - FHintFontName := ini.ReadString('Window', 'HintFontName', Screen.HintFont.Name); - FHintFontSize := ini.ReadInteger('Window', 'HintFontSize', Screen.HintFont.Size); - //FHintFontBold := ini.ReadBool('Window', 'HintFontBold', False); - //FHintFontItalic := ini.ReadBool('Window', 'HintFontItalic', False); - FHintFontColor := StringToColor(ini.ReadString('Window', 'HintFontColor', DEFAULT_FONT_COLOR)); - FHintBackColor := StringToColor(ini.ReadString('Window', 'HintBackColor', 'clInfoBk')); + // ƒvƒƒLƒVÝ’è“ǂݍž‚Ý + ReadProxySettings( ini ); + + // ŠeŽíƒEƒBƒ“ƒhƒE‚̐ݒè“ǂݍž‚Ý + ReadWindowSettings( ini ); FWindowTop := ini.ReadInteger('WindowSize', 'Top', -1); FWindowLeft := ini.ReadInteger('WindowSize', 'Left', -1); @@ -1100,112 +1052,14 @@ begin // FListHeightMax := ini.ReadBool('List', 'HeightMax', False); // FListWidthMax := ini.ReadBool('List', 'WidthMax', False); - wkList := TStringList.Create; - try - ini.ReadSection('Name', wkList); - for i := 0 to wkList.Count - 1 do begin - wkStr := ini.ReadString('Name', wkList[i], ''); - if (wkStr <> '') and (FNameList.IndexOf(wkStr) = -1) then - FNameList.Add(wkStr); - end; - ini.ReadSection('Mail', wkList); - for i := 0 to wkList.Count - 1 do begin - wkStr := ini.ReadString('Mail', wkList[i], ''); - if (wkStr <> '') and (FMailList.IndexOf(wkStr) = -1) then - FMailList.Add(wkStr); - end; - ini.ReadSection('SelectText', wkList); - for i := 0 to wkList.Count - 1 do begin - wkStr := ini.ReadString('SelectText', wkList[i], ''); - if (wkStr <> '') and (FSelectTextList.IndexOf(wkStr) = -1) then - FSelectTextList.Add(wkStr); - end; - finally - wkList.Free; - end; + // “ü—͍€–Ú‚Ì—š—ð‚ð“ǂݍž‚Þ + ReadInputHisotrys( ini ); // ƒŠƒXƒgƒJƒ‰ƒ€• - wkList := TStringList.Create; - try - ini.ReadSection('BBSColumnWidth', wkList); - if Length(FBBSColumnWidth) <> wkList.Count then begin - ini.EraseSection('BBSColumnWidth'); - end; - for i := 0 to Length(FBBSColumnWidth) - 1 do begin - BBSColumnWidth[i] := ini.ReadInteger('BBSColumnWidth', 'ID' + IntToStr(i), DEFAULT_BBS_WIDTH[i]); - if BBSColumnWidth[i] > MAX_WIDTH then - BBSColumnWidth[i] := DEFAULT_BBS_WIDTH[i]; - end; - ini.ReadSection('CategoryColumnWidth', wkList); - if Length(FCategoryColumnWidth) <> wkList.Count then begin - ini.EraseSection('CategoryColumnWidth'); - end; - for i := 0 to Length(FCategoryColumnWidth) - 1 do begin - CategoryColumnWidth[i] := ini.ReadInteger('CategoryColumnWidth', 'ID' + IntToStr(i), DEFAULT_CATEGORY_WIDTH[i]); - if CategoryColumnWidth[i] > MAX_WIDTH then - CategoryColumnWidth[i] := DEFAULT_CATEGORY_WIDTH[i]; - end; - ini.ReadSection('BoardColumnWidth', wkList); - if Length(FBoardColumnWidth) <> wkList.Count then begin - ini.EraseSection('BoardColumnWidth'); - end; - for i := 0 to Length(FBoardColumnWidth) - 1 do begin - BoardColumnWidth[i] := ini.ReadInteger('BoardColumnWidth', 'ID' + IntToStr(i), DEFAULT_BOARD_WIDTH[i]); - if BoardColumnWidth[i] > MAX_WIDTH then - BoardColumnWidth[i] := DEFAULT_BOARD_WIDTH[i]; - end; - finally - wkList.Free; - end; + ReadListColumnWidth( ini ); // ƒJƒeƒSƒŠƒŠƒXƒgƒJƒ‰ƒ€‡˜ - wkList := TStringList.Create; - try - ini.ReadSection( 'BBSColumnOrder', wkList ); - for i := 0 to wkList.Count - 1 do begin - wkStr := ini.ReadString( 'BBSColumnOrder', 'ID' + IntToStr( i ), '' ); - Val( wkStr, id, code ); - if code = 0 then - FBBSColumnOrder.Add( TGikoBBSColumnID( id ) ); - end; - if FBBSColumnOrder.Count = 0 then begin - // Ý’肪–³‚¢‚̂ō쐬 - for i := 0 to Integer( High( TGikoBBSColumnID ) ) do - FBBSColumnOrder.Add( TGikoBBSColumnID( i ) ); - end; - - ini.ReadSection( 'CategoryColumnOrder', wkList ); - for i := 0 to wkList.Count - 1 do begin - wkStr := ini.ReadString( 'CategoryColumnOrder', 'ID' + IntToStr( i ), '' ); - Val( wkStr, id, code ); - if code = 0 then - FCategoryColumnOrder.Add( TGikoCategoryColumnID( id ) ); - end; - if FCategoryColumnOrder.Count = 0 then begin - // Ý’肪–³‚¢‚̂ō쐬 - for i := 0 to Integer( High( TGikoCategoryColumnID ) ) do - FCategoryColumnOrder.Add( TGikoCategoryColumnID( i ) ); - end; - - ini.ReadSection( 'BoardColumnOrder', wkList ); - for i := 0 to wkList.Count - 1 do begin - wkStr := ini.ReadString( 'BoardColumnOrder', 'ID' + IntToStr( i ), '' ); - Val( wkStr, id, code ); - if code = 0 then - FBoardColumnOrder.Add( TGikoBoardColumnID( id ) ); - end; - if FBoardColumnOrder.Count = 0 then begin - // Ý’肪–³‚¢‚̂ō쐬 - for i := 0 to Integer( High( TGikoBoardColumnID ) ) do begin - // ¨‚¢‚̃Jƒ‰ƒ€‚̓fƒtƒHƒ‹ƒg‚Å”ñ•\Ž¦‚É‚·‚é - if ( i <> Ord(gbcVigor) ) then begin - FBoardColumnOrder.Add( TGikoBoardColumnID( i ) ); - end; - end; - end; - finally - wkList.Free; - end; + ReadOrdColumn( ini ); //ƒŠƒXƒg”ԍ† FListViewNo := ini.ReadBool('Function', 'ListViewNo', True); @@ -2252,6 +2106,232 @@ begin FMoveHistorySize := AVal; end; end; -end. +{ +\brief ƒvƒƒLƒVÝ’è“ǂݍž‚Ý +\param memIni iniƒtƒ@ƒCƒ‹ +} +procedure TSetting.ReadProxySettings(memIni: TMemIniFile); +const + READ_SECTION = 'ReadProxy'; + WRITE_SECTION= 'WriteProxy'; + PROXY_KEY = 'Proxy'; + ADDRE_KEY = 'Address'; + PORT_KEY = 'Port'; + UID_KEY = 'UserID'; + PASS_KEY = 'Password'; +begin + if (memIni <> nil) then begin + FReadProxy := memIni.ReadBool(READ_SECTION, PROXY_KEY, false); + FReadProxyAddress := memIni.ReadString(READ_SECTION, ADDRE_KEY, ''); + FReadProxyPort := memIni.ReadInteger(READ_SECTION, PORT_KEY, 0); + FReadProxyUserID := memIni.ReadString(READ_SECTION, UID_KEY, ''); + FReadProxyPassword := memIni.ReadString(READ_SECTION, PASS_KEY, ''); + + FWriteProxy := memIni.ReadBool(WRITE_SECTION, PROXY_KEY, false); + FWriteProxyAddress := memIni.ReadString(WRITE_SECTION, ADDRE_KEY, ''); + FWriteProxyPort := memIni.ReadInteger(WRITE_SECTION, PORT_KEY, 0); + FWriteProxyUserID := memIni.ReadString(WRITE_SECTION, UID_KEY, ''); + FWriteProxyPassword := memIni.ReadString(WRITE_SECTION, PASS_KEY, ''); + end; +end; +{ +\brief ŠeŽíƒEƒBƒ“ƒhƒEÝ’è“ǂݍž‚Ý +\param menIni iniƒtƒ@ƒCƒ‹ +} +procedure TSetting.ReadWindowSettings(memIni: TMemIniFile); +const + WINDOW_SECTION = 'Window'; +begin + if (memIni <> nil) then begin + FBrowserFontName := memIni.ReadString(WINDOW_SECTION, 'BrowserFontName', ''); + FBrowserFontSize := memIni.ReadInteger(WINDOW_SECTION, 'BrowserFontSize', 0); + FBrowserFontBold := memIni.ReadInteger(WINDOW_SECTION, 'BrowserFontBold', 0); + FBrowserFontItalic := memIni.ReadInteger(WINDOW_SECTION, 'BrowserFontItalic', 0); + FBrowserFontColor := memIni.ReadInteger(WINDOW_SECTION, 'BrowserFontColor', -1); + FBrowserBackColor := memIni.ReadInteger(WINDOW_SECTION, 'BrowserBackColor', -1); + + FCabinetFontName := memIni.ReadString(WINDOW_SECTION, 'CabinetFontName', DEFAULT_FONT_NAME); + FCabinetFontSize := memIni.ReadInteger(WINDOW_SECTION, 'CabinetFontSize', DEFAULT_FONT_SIZE); + FCabinetFontBold := memIni.ReadBool(WINDOW_SECTION, 'CabinetFontBold', False); + FCabinetFontItalic := memIni.ReadBool(WINDOW_SECTION, 'CabinetFontItalic', False); + FCabinetFontColor := StringToColor(memIni.ReadString(WINDOW_SECTION, 'CabinetFontColor', DEFAULT_FONT_COLOR)); + FCabinetBackColor := StringToColor(memIni.ReadString(WINDOW_SECTION, 'CabinetBackColor', DEFAULT_WINDOW_COLOR)); + + FListFontName := memIni.ReadString(WINDOW_SECTION, 'ListFontName', DEFAULT_FONT_NAME); + FListFontSize := memIni.ReadInteger(WINDOW_SECTION, 'ListFontSize', DEFAULT_FONT_SIZE); + FListFontBold := memIni.ReadBool(WINDOW_SECTION, 'ListFontBold', False); + FListFontItalic := memIni.ReadBool(WINDOW_SECTION, 'ListFontItalic', False); + FListFontColor := StringToColor(memIni.ReadString(WINDOW_SECTION, 'ListFontColor', DEFAULT_FONT_COLOR)); + FListBackColor := StringToColor(memIni.ReadString(WINDOW_SECTION, 'ListBackColor', DEFAULT_WINDOW_COLOR)); + FUseOddColorOddResNum := memIni.ReadBool(WINDOW_SECTION,'UseOddColor', False); + FOddColor := StringToColor(memIni.ReadString(WINDOW_SECTION, 'OddColor', DEFAULT_WINDOW_COLOR)); + FUnFocusedBold := memIni.ReadBool(WINDOW_SECTION,'UnFocusedBold', False); + + FEditorFontName := memIni.ReadString(WINDOW_SECTION, 'EditorFontName', DEFAULT_FONT_NAME); + FEditorFontSize := memIni.ReadInteger(WINDOW_SECTION, 'EditorFontSize', DEFAULT_FONT_SIZE); + FEditorFontBold := memIni.ReadBool(WINDOW_SECTION, 'EditorFontBold', False); + FEditorFontItalic := memIni.ReadBool(WINDOW_SECTION, 'EditorFontItalic', False); + FEditorFontColor := StringToColor(memIni.ReadString(WINDOW_SECTION, 'EditorFontColor', DEFAULT_FONT_COLOR)); + FEditorBackColor := StringToColor(memIni.ReadString(WINDOW_SECTION, 'EditorBackColor', DEFAULT_WINDOW_COLOR)); + + FBrowserTabFontName := memIni.ReadString(WINDOW_SECTION, 'BrowserTabFontName', DEFAULT_TAB_FONT_NAME); + FBrowserTabFontSize := memIni.ReadInteger(WINDOW_SECTION, 'BrowserTabFontSize', DEFAULT_TAB_FONT_SIZE); + FBrowserTabFontBold := memIni.ReadBool(WINDOW_SECTION, 'BrowserTabFontBold', False); + FBrowserTabFontItalic := memIni.ReadBool(WINDOW_SECTION, 'BrowserTabFontItalic', False); + + FHintFontName := memIni.ReadString(WINDOW_SECTION, 'HintFontName', Screen.HintFont.Name); + FHintFontSize := memIni.ReadInteger(WINDOW_SECTION, 'HintFontSize', Screen.HintFont.Size); + //FHintFontBold := memIni.ReadBool(WINDOW_SECTION, 'HintFontBold', False); + //FHintFontItalic := memIni.ReadBool(WINDOW_SECTION, 'HintFontItalic', False); + FHintFontColor := StringToColor(memIni.ReadString(WINDOW_SECTION, 'HintFontColor', DEFAULT_FONT_COLOR)); + FHintBackColor := StringToColor(memIni.ReadString(WINDOW_SECTION, 'HintBackColor', 'clInfoBk')); + end; +end; +{ +\brief “ü—Í—š—ð“ǂݍž‚݁iŒŸõ{ƒ[ƒ‹—“{–¼‘Oj +\param memIni iniƒtƒ@ƒCƒ‹ +} +procedure TSetting.ReadInputHisotrys(memIni: TMemIniFile); +const + SECTIONS : array[0..2] of string = ('Name', 'Mail', 'SelectText'); +var + wkList : TStringList; + wkStr : string; + i, j : Integer; + listArray : array[0..2] of TStringList; +begin + if (memIni <> nil) then begin + listArray[0] := FNameList; + listArray[1] := FMailList; + listArray[2] := FSelectTextList; + wkList := TStringList.Create; + try + for i := 0 to High(listArray) do begin + memIni.ReadSection(SECTIONS[i], wkList); + for j := 0 to wkList.Count -1 do begin + wkStr := memIni.ReadString(SECTIONS[i], wkList[j], ''); + if (wkStr <> '') and + (listArray[i].IndexOf(wkStr) = -1) then begin + listArray[i].Add(wkStr); + end; + end; + end; + finally + wkList.Free; + end; + end; +end; +{ +\breif ƒŠƒXƒgƒJƒ‰ƒ€•“ǂݍž‚Ý +\param memIni iniƒtƒ@ƒCƒ‹ +} +procedure TSetting.ReadListColumnWidth(memIni: TMemIniFile); +const + SECTIONS : array[0..2] of string = + ('BBSColumnWidth', 'CategoryColumnWidth', 'BoardColumnWidth'); + DEFAULT_BBS_WIDTH: array[0..0] of Integer = (140); + DEFAULT_CATEGORY_WIDTH: array[0..2] of Integer = (150, 80, 130); + DEFAULT_BOARD_WIDTH: array[0..10] of Integer = (350, 60, 60, 60, 60, 60, 80, 130, 130, 130, 60); + MAX_WIDTH: Integer = 2000; +var + wkList : TStringList; + i : Integer; +begin + if (memIni <> nil) then begin + // ƒŠƒXƒgƒJƒ‰ƒ€• + wkList := TStringList.Create; + try + memIni.ReadSection(SECTIONS[0], wkList); + if Length(FBBSColumnWidth) <> wkList.Count then begin + memIni.EraseSection(SECTIONS[0]); + end; + for i := 0 to High(FBBSColumnWidth) do begin + BBSColumnWidth[i] := memIni.ReadInteger(SECTIONS[0], + 'ID' + IntToStr(i), DEFAULT_BBS_WIDTH[i]); + if BBSColumnWidth[i] > MAX_WIDTH then + BBSColumnWidth[i] := DEFAULT_BBS_WIDTH[i]; + end; + memIni.ReadSection(SECTIONS[1], wkList); + if Length(FCategoryColumnWidth) <> wkList.Count then begin + memIni.EraseSection(SECTIONS[1]); + end; + for i := 0 to High(FCategoryColumnWidth) do begin + CategoryColumnWidth[i] := memIni.ReadInteger(SECTIONS[1], + 'ID' + IntToStr(i), DEFAULT_CATEGORY_WIDTH[i]); + if CategoryColumnWidth[i] > MAX_WIDTH then + CategoryColumnWidth[i] := DEFAULT_CATEGORY_WIDTH[i]; + end; + memIni.ReadSection(SECTIONS[2], wkList); + if Length(FBoardColumnWidth) <> wkList.Count then begin + memIni.EraseSection(SECTIONS[2]); + end; + for i := 0 to High(FBoardColumnWidth) do begin + BoardColumnWidth[i] := memIni.ReadInteger(SECTIONS[2], + 'ID' + IntToStr(i), DEFAULT_BOARD_WIDTH[i]); + if BoardColumnWidth[i] > MAX_WIDTH then + BoardColumnWidth[i] := DEFAULT_BOARD_WIDTH[i]; + end; + finally + wkList.Free; + end; + end; +end; +//! ƒJƒeƒSƒŠƒŠƒXƒgƒJƒ‰ƒ€‡˜“ǂݍž‚Ý +procedure TSetting.ReadOrdColumn(memIni: TMemIniFile); +var + wkList : TStringList; + wkStr : string; + i, id, code : Integer; +begin + if (memIni <> nil) then begin + wkList := TStringList.Create; + try + memIni.ReadSection( 'BBSColumnOrder', wkList ); + for i := 0 to wkList.Count - 1 do begin + wkStr := memIni.ReadString( 'BBSColumnOrder', 'ID' + IntToStr( i ), '' ); + Val( wkStr, id, code ); + if code = 0 then + FBBSColumnOrder.Add( TGikoBBSColumnID( id ) ); + end; + if FBBSColumnOrder.Count = 0 then begin + // Ý’肪–³‚¢‚̂ō쐬 + for i := 0 to Integer( High( TGikoBBSColumnID ) ) do + FBBSColumnOrder.Add( TGikoBBSColumnID( i ) ); + end; + + memIni.ReadSection( 'CategoryColumnOrder', wkList ); + for i := 0 to wkList.Count - 1 do begin + wkStr := memIni.ReadString( 'CategoryColumnOrder', 'ID' + IntToStr( i ), '' ); + Val( wkStr, id, code ); + if code = 0 then + FCategoryColumnOrder.Add( TGikoCategoryColumnID( id ) ); + end; + if FCategoryColumnOrder.Count = 0 then begin + // Ý’肪–³‚¢‚̂ō쐬 + for i := 0 to Integer( High( TGikoCategoryColumnID ) ) do + FCategoryColumnOrder.Add( TGikoCategoryColumnID( i ) ); + end; + memIni.ReadSection( 'BoardColumnOrder', wkList ); + for i := 0 to wkList.Count - 1 do begin + wkStr := memIni.ReadString( 'BoardColumnOrder', 'ID' + IntToStr( i ), '' ); + Val( wkStr, id, code ); + if code = 0 then + FBoardColumnOrder.Add( TGikoBoardColumnID( id ) ); + end; + if FBoardColumnOrder.Count = 0 then begin + // Ý’肪–³‚¢‚̂ō쐬 + for i := 0 to Integer( High( TGikoBoardColumnID ) ) do begin + // ¨‚¢‚̃Jƒ‰ƒ€‚̓fƒtƒHƒ‹ƒg‚Å”ñ•\Ž¦‚É‚·‚é + if ( i <> Ord(gbcVigor) ) then begin + FBoardColumnOrder.Add( TGikoBoardColumnID( i ) ); + end; + end; + end; + finally + wkList.Free; + end; + end; +end; +end.