OSDN Git Service

1つのSsParserインスタンスで複数の処理が出来るように変更。
[winbottle/winbottle.git] / bottleclient / HtmlOutputConfig.pas
1 unit HtmlOutputConfig;
2
3 interface
4
5 uses
6   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
7   Dialogs, StdCtrls, ExtCtrls, Logs, StrUtils;
8
9 type
10   TfrmHTMLOutputConfig = class(TForm)
11     rgpUseColor: TRadioGroup;
12     rgpOutputRange: TRadioGroup;
13     rgpImageType: TRadioGroup;
14     btnOK: TButton;
15     edtFileName: TEdit;
16     btnBrowseFileName: TButton;
17     lblFileName: TLabel;
18     edtImageDir: TEdit;
19     btnBrowseImageDir: TButton;
20     lblImageDir: TLabel;
21     btnCancel: TButton;
22     SaveDialog: TSaveDialog;
23     procedure btnCancelClick(Sender: TObject);
24     procedure btnOKClick(Sender: TObject);
25     procedure btnBrowseFileNameClick(Sender: TObject);
26   private
27     FImageType: THTMLOutputImageType;
28     FRange: THTMLOutputRange;
29     FUseColor: THTMLOutputUseColor;
30     FImageDir: String;
31     FFileName: String;
32     procedure SetImageType(const Value: THTMLOutputImageType);
33     procedure SetRange(const Value: THTMLOutputRange);
34     procedure SetUseColor(const Value: THTMLOutputUseColor);
35     procedure SetFileName(const Value: String);
36     procedure SetImageDir(const Value: String);
37     { Private \90é\8c¾ }
38   public
39     { Public \90é\8c¾ }
40     property UseColor: THTMLOutputUseColor read FUseColor write SetUseColor;
41     property ImageType: THTMLOutputImageType read FImageType write SetImageType;
42     property Range: THTMLOutputRange read FRange write SetRange;
43     property FileName: String read FFileName write SetFileName;
44     property ImageDir: String read FImageDir write SetImageDir;
45     function Execute: boolean;
46   end;
47
48 var
49   frmHTMLOutputConfig: TfrmHTMLOutputConfig;
50
51 implementation
52
53 {$R *.dfm}
54
55 procedure TfrmHTMLOutputConfig.btnCancelClick(Sender: TObject);
56 begin
57   ModalResult := mrCancel;
58 end;
59
60 procedure TfrmHTMLOutputConfig.btnOKClick(Sender: TObject);
61 begin
62   if RightStr(edtImageDir.Text, 1) = PathDelim then
63     edtImageDir.Text := LeftStr(edtImageDir.Text, Length(edtImageDir.Text)-1);
64   if not ForceDirectories(edtImageDir.Text) then
65     if rgpImageType.ItemIndex > 0 then
66     begin
67       ShowMessage('\89æ\91\9c\83f\83B\83\8c\83N\83g\83\8a\82ð\8dì\90¬\82Å\82«\82Ü\82¹\82ñ');
68       Exit;
69     end;
70   ModalResult := mrOk;
71 end;
72
73 procedure TfrmHTMLOutputConfig.btnBrowseFileNameClick(Sender: TObject);
74 begin
75   if SaveDialog.Execute then
76   begin
77     edtFileName.Text := SaveDialog.FileName;
78     if edtImageDir.Text = '' then
79       edtImageDir.Text := ChangeFileExt(SaveDialog.FileName, '.files');
80   end;
81 end;
82
83 function TfrmHTMLOutputConfig.Execute: boolean;
84 begin
85   rgpUseColor.ItemIndex := Ord(UseColor);
86   rgpImageType.ItemIndex := Ord(ImageType);
87   rgpOutputRange.ItemIndex := Ord(Range);
88   edtFileName.Text := FileName;
89   edtImageDir.Text := ImageDir;
90   Result := Self.ShowModal = mrOk;
91   if Result then
92   begin
93     UseColor := THTMLOutputUseColor(rgpUseColor.ItemIndex);
94     ImageType := THTMLOutputImageType(rgpImageType.ItemIndex);
95     Range := THTMLOutputRange(rgpOutputRange.ItemIndex);
96     FileName := edtFileName.Text;
97     ImageDir := edtImageDir.Text;
98   end;
99 end;
100
101 procedure TfrmHTMLOutputConfig.SetImageType(
102   const Value: THTMLOutputImageType);
103 begin
104   FImageType := Value;
105 end;
106
107 procedure TfrmHTMLOutputConfig.SetRange(const Value: THTMLOutputRange);
108 begin
109   FRange := Value;
110 end;
111
112 procedure TfrmHTMLOutputConfig.SetUseColor(
113   const Value: THTMLOutputUseColor);
114 begin
115   FUseColor := Value;
116 end;
117
118 procedure TfrmHTMLOutputConfig.SetFileName(const Value: String);
119 begin
120   FFileName := Value;
121 end;
122
123 procedure TfrmHTMLOutputConfig.SetImageDir(const Value: String);
124 begin
125   FImageDir := Value;
126 end;
127
128 end.