uses
SysUtils, Classes, Graphics, Forms, {Math, IniFiles, UCryptAuto, UBase64,}
- ComCtrls, GestureModel;
+ ComCtrls, GestureModel, IniFiles;
const
MAIN_COOLBAND_COUNT = 4; //\83\81\83C\83\93CoolBand\82Ì\90\94
procedure SetUseCSS( value: Boolean );
procedure SetCSSFileName( fileName: 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Ý
+ procedure ReadWindowSettings(memIni: TMemIniFile);
+ //! \93ü\97Í\97\9a\97ð\93Ç\82Ý\8d\9e\82Ý\81i\8c\9f\8dõ\81{\83\81\81[\83\8b\97\93\81{\96¼\91O\81j
+ procedure ReadInputHisotrys(memIni: TMemIniFile);
+ //! \83\8a\83X\83g\83J\83\89\83\80\95\9d\93Ç\82Ý\8d\9e\82Ý
+ procedure ReadListColumnWidth(memIni: TMemIniFile);
+ //! \83J\83e\83S\83\8a\83\8a\83X\83g\83J\83\89\83\80\8f\87\8f\98\93Ç\82Ý\8d\9e\82Ý
+ procedure ReadOrdColumn(memIni: TMemIniFile);
protected
public
implementation
uses
- Math, IniFiles, UCryptAuto, UBase64;
+ Math, UCryptAuto, UBase64;
type
TSoundName = record
//\90Ý\92è\83t\83@\83C\83\8b\93Ç\8d\9e
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);
//\83v\83\8d\83L\83V\90Ú\91±HTTP1.1\8eg\97p
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'));
+ // \83v\83\8d\83L\83V\90Ý\92è\93Ç\82Ý\8d\9e\82Ý
+ ReadProxySettings( ini );
+
+ // \8ae\8eí\83E\83B\83\93\83h\83E\82Ì\90Ý\92è\93Ç\82Ý\8d\9e\82Ý
+ ReadWindowSettings( ini );
FWindowTop := ini.ReadInteger('WindowSize', 'Top', -1);
FWindowLeft := ini.ReadInteger('WindowSize', 'Left', -1);
// 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;
+ // \93ü\97Í\8d\80\96Ú\82Ì\97\9a\97ð\82ð\93Ç\82Ý\8d\9e\82Þ
+ ReadInputHisotrys( ini );
// \83\8a\83X\83g\83J\83\89\83\80\95\9d
- 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 );
// \83J\83e\83S\83\8a\83\8a\83X\83g\83J\83\89\83\80\8f\87\8f\98
- 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
- // \90Ý\92è\82ª\96³\82¢\82Ì\82Å\8dì\90¬
- 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
- // \90Ý\92è\82ª\96³\82¢\82Ì\82Å\8dì\90¬
- 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
- // \90Ý\92è\82ª\96³\82¢\82Ì\82Å\8dì\90¬
- for i := 0 to Integer( High( TGikoBoardColumnID ) ) do begin
- // \90¨\82¢\82Ì\83J\83\89\83\80\82Í\83f\83t\83H\83\8b\83g\82Å\94ñ\95\\8e¦\82É\82·\82é
- if ( i <> Ord(gbcVigor) ) then begin
- FBoardColumnOrder.Add( TGikoBoardColumnID( i ) );
- end;
- end;
- end;
- finally
- wkList.Free;
- end;
+ ReadOrdColumn( ini );
//\83\8a\83X\83g\94Ô\8d\86
FListViewNo := ini.ReadBool('Function', 'ListViewNo', True);
FMoveHistorySize := AVal;
end;
end;
-end.
+{
+\brief \83v\83\8d\83L\83V\90Ý\92è\93Ç\82Ý\8d\9e\82Ý
+\param memIni ini\83t\83@\83C\83\8b
+}
+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 \8ae\8eí\83E\83B\83\93\83h\83E\90Ý\92è\93Ç\82Ý\8d\9e\82Ý
+\param menIni ini\83t\83@\83C\83\8b
+}
+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 \93ü\97Í\97\9a\97ð\93Ç\82Ý\8d\9e\82Ý\81i\8c\9f\8dõ\81{\83\81\81[\83\8b\97\93\81{\96¼\91O\81j
+\param memIni ini\83t\83@\83C\83\8b
+}
+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 \83\8a\83X\83g\83J\83\89\83\80\95\9d\93Ç\82Ý\8d\9e\82Ý
+\param memIni ini\83t\83@\83C\83\8b
+}
+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
+ // \83\8a\83X\83g\83J\83\89\83\80\95\9d
+ 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;
+//! \83J\83e\83S\83\8a\83\8a\83X\83g\83J\83\89\83\80\8f\87\8f\98\93Ç\82Ý\8d\9e\82Ý
+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
+ // \90Ý\92è\82ª\96³\82¢\82Ì\82Å\8dì\90¬
+ 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
+ // \90Ý\92è\82ª\96³\82¢\82Ì\82Å\8dì\90¬
+ 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
+ // \90Ý\92è\82ª\96³\82¢\82Ì\82Å\8dì\90¬
+ for i := 0 to Integer( High( TGikoBoardColumnID ) ) do begin
+ // \90¨\82¢\82Ì\83J\83\89\83\80\82Í\83f\83t\83H\83\8b\83g\82Å\94ñ\95\\8e¦\82É\82·\82é
+ if ( i <> Ord(gbcVigor) ) then begin
+ FBoardColumnOrder.Add( TGikoBoardColumnID( i ) );
+ end;
+ end;
+ end;
+ finally
+ wkList.Free;
+ end;
+ end;
+end;
+end.