ViewVC Help
View File | Revision Log | Show Annotations | Download File | View Changeset | Root Listing
root/public/ibx/trunk/design/IBTransactionEdit.pas
(Generate patch)

Comparing ibx/trunk/design/IBTransactionEdit.pas (file contents):
Revision 5 by tony, Fri Feb 18 16:26:16 2011 UTC vs.
Revision 17 by tony, Sat Dec 28 19:22:24 2013 UTC

# Line 1 | Line 1
1 < {************************************************************************}
2 < {                                                                        }
3 < {       Borland Delphi Visual Component Library                          }
4 < {       InterBase Express core components                                }
5 < {                                                                        }
6 < {       Copyright (c) 1998-2000 Inprise Corporation                      }
7 < {                                                                        }
8 < {    InterBase Express is based in part on the product                   }
9 < {    Free IB Components, written by Gregory H. Deatz for                 }
10 < {    Hoagland, Longo, Moran, Dunst & Doukas Company.                     }
11 < {    Free IB Components is used under license.                           }
12 < {                                                                        }
13 < {    The contents of this file are subject to the InterBase              }
14 < {    Public License Version 1.0 (the "License"); you may not             }
15 < {    use this file except in compliance with the License. You            }
16 < {    may obtain a copy of the License at http://www.Inprise.com/IPL.html }
17 < {    Software distributed under the License is distributed on            }
18 < {    an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either              }
19 < {    express or implied. See the License for the specific language       }
20 < {    governing rights and limitations under the License.                 }
21 < {    The Original Code was created by InterBase Software Corporation     }
22 < {       and its successors.                                              }
23 < {    Portions created by Inprise Corporation are Copyright (C) Inprise   }
24 < {       Corporation. All Rights Reserved.                                }
25 < {    Contributor(s): Jeff Overcash                                       }
26 < {                                                                        }
27 < {************************************************************************}
28 <
29 < unit IBTransactionEdit;
30 <
31 < {$MODE Delphi}
32 <
33 < interface
34 <
35 < uses
36 <  {Windows,} Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
37 <  StdCtrls, IBDataBase, IB, ExtCtrls, IBXConst, LResources;
38 <
39 < type
40 <  TIBTransactionEditForm = class(TForm)
41 <    GroupBox1: TGroupBox;
42 <    HelpBtn: TButton;
43 <    Cancelbtn: TButton;
44 <    OKBtn: TButton;
45 <    rbSnapShot: TRadioButton;
46 <    rbReadCommitted: TRadioButton;
47 <    rbReadOnlyTableStability: TRadioButton;
48 <    rbReadWriteTableStability: TRadioButton;
49 <    TransactionParams: TMemo;
50 <    Panel1: TPanel;
51 <    Label1: TLabel;
52 <    procedure OKBtnClick(Sender: TObject);
53 <    procedure rbSnapShotClick(Sender: TObject);
54 <    procedure rbReadCommittedClick(Sender: TObject);
55 <    procedure rbReadOnlyTableStabilityClick(Sender: TObject);
56 <    procedure rbReadWriteTableStabilityClick(Sender: TObject);
57 <    procedure FormCreate(Sender: TObject);
58 <    procedure HelpBtnClick(Sender: TObject);
59 <    procedure TransactionParamsClick(Sender: TObject);
60 <    procedure TransactionParamsExit(Sender: TObject);
61 <
62 <  private
63 <    { Private declarations }
64 <    Transaction: TIBTransaction;
65 <    function Edit: Boolean;
66 <    procedure ParseParams;
67 <    procedure ClearParamSelection;
68 <
69 <  public
70 <    { Public declarations }
71 <  end;
72 <
73 < var
74 <  IBTransactionEditForm: TIBTransactionEditForm;
75 <
76 <  function EditIBtransaction(Atransaction: TIBtransaction): Boolean;
77 <
78 < implementation
79 <
80 <
81 < {uses
82 <  LibHelp;}
83 <
84 < function EditIBtransaction(ATransaction: TIBtransaction): Boolean;
85 < begin
86 <  with TIBtransactionEditForm.Create(Application) do
87 <  try
88 <    Transaction := ATransaction;
89 <    Result := Edit;
90 <  finally
91 <    Free;
92 <  end;
93 < end;
94 <
95 < function TIBtransactionEditForm.Edit: Boolean;
96 < begin
97 <  TransactionParams.Lines := Transaction.Params;
98 <  ParseParams;
99 <  Result := False;
100 <  if ShowModal = mrOk then
101 <  begin
102 <    Transaction.Params := TransactionParams.Lines;
103 <    Result := True;
104 <  end;
105 < end;
106 <
107 < type
108 <  TTransactionParam = (concurrency, read_committed, rec_version, nowait,
109 <    consistency, read, write);
110 <  TTransactionParams = set of TTransactionParam;
111 <
112 < procedure TIBTransactionEditForm.ParseParams;
113 < var
114 <  I: Integer;
115 <  st: string;
116 <  Value: TTransactionParams;
117 <
118 < begin
119 <  Value := [];
120 <  for I := 0 to TransactionParams.Lines.Count - 1 do
121 <  begin
122 <    st := LowerCase(Trim(TransactionParams.Lines[I]));
123 <    if st = '' then
124 <      continue;
125 <    if st = 'concurrency' then
126 <      Include(Value, concurrency)
127 <    else if st = 'read_committed' then
128 <      Include(Value, read_committed)
129 <    else if st = 'rec_version' then
130 <      Include(Value, rec_version)
131 <    else if st = 'nowait' then
132 <      Include(Value, nowait)
133 <    else if st = 'read' then
134 <      Include(Value, read)
135 <    else if st = 'write' then
136 <      Include(Value, write)
137 <    else if st = 'consistency' then
138 <      Include(Value, consistency)
139 <    else begin
140 <      Value := [];
141 <      break;
142 <    end;
143 <  end;
144 <  ClearParamSelection;
145 <  if Value = [concurrency, nowait] then
146 <    rbSnapShot.Checked := True
147 <  else if Value = [read_committed, rec_version, nowait] then
148 <    rbReadCommitted.Checked := True
149 <  else if Value = [read, consistency] then
150 <    rbReadOnlyTableStability.Checked := True
151 <  else if Value = [write, consistency] then
152 <    rbReadWriteTableStability.Checked := True;
153 < end;
154 <
155 < procedure TIBTransactionEditForm.ClearParamSelection;
156 < begin
157 <  rbSnapShot.Checked := False;
158 <  rbReadCommitted.Checked := False;
159 <  rbReadOnlyTableStability.Checked := False;
160 <  rbReadWriteTableStability.Checked := False;
161 < end;
162 <
163 < procedure TIBTransactionEditForm.OKBtnClick(Sender: TObject);
164 < begin
165 <  ModalResult := mrNone;
166 <  if Transaction.Active then
167 <  begin
168 <    if MessageDlg(SCommitTransaction, mtConfirmation,
169 <      mbOkCancel, 0) <> mrOk then Exit;
170 <    Transaction.Rollback;
171 <  end;
172 <  ModalResult := mrOk;
173 < end;
174 <
175 < procedure TIBTransactionEditForm.FormCreate(Sender: TObject);
176 < begin
177 < //  HelpContext := hcDIBTransactionEdit;
178 < end;
179 <
180 < procedure TIBTransactionEditForm.HelpBtnClick(Sender: TObject);
181 < begin
182 <  Application.HelpContext(HelpContext);
183 < end;
184 <
185 < procedure TIBTransactionEditForm.rbSnapShotClick(Sender: TObject);
186 < begin
187 <  TransactionParams.clear;
188 <  TransactionParams.Lines.Add('concurrency'); { do not localize }
189 <  TransactionParams.Lines.Add('nowait'); { do not localize }
190 < end;
191 <
192 < procedure TIBTransactionEditForm.rbReadCommittedClick(Sender: TObject);
193 < begin
194 <  TransactionParams.clear;
195 <  TransactionParams.Lines.Add('read_committed'); { do not localize }
196 <  TransactionParams.Lines.Add('rec_version'); { do not localize }
197 <  TransactionParams.Lines.Add('nowait'); { do not localize }
198 < end;
199 <
200 < procedure TIBTransactionEditForm.rbReadOnlyTableStabilityClick(Sender: TObject);
201 < begin
202 <  TransactionParams.clear;
203 <  TransactionParams.Lines.Add('read'); { do not localize }
204 <  TransactionParams.Lines.Add('consistency'); { do not localize }
205 < end;
206 <
207 < procedure TIBTransactionEditForm.rbReadWriteTableStabilityClick(Sender: TObject);
208 < begin
209 <  TransactionParams.clear;
210 <  TransactionParams.Lines.Add('write'); { do not localize }
211 <  TransactionParams.Lines.Add('consistency'); { do not localize }
212 < end;
213 <
214 < procedure TIBTransactionEditForm.TransactionParamsClick(Sender: TObject);
215 < begin
216 <  ClearParamSelection;
217 < end;
218 <
219 < procedure TIBTransactionEditForm.TransactionParamsExit(Sender: TObject);
220 < begin
221 <  ParseParams;
222 < end;
223 <
224 < initialization
225 <  {$i IBTransactionEdit.lrs}
226 <
227 < end.
1 > {************************************************************************}
2 > {                                                                        }
3 > {       Borland Delphi Visual Component Library                          }
4 > {       InterBase Express core components                                }
5 > {                                                                        }
6 > {       Copyright (c) 1998-2000 Inprise Corporation                      }
7 > {                                                                        }
8 > {    InterBase Express is based in part on the product                   }
9 > {    Free IB Components, written by Gregory H. Deatz for                 }
10 > {    Hoagland, Longo, Moran, Dunst & Doukas Company.                     }
11 > {    Free IB Components is used under license.                           }
12 > {                                                                        }
13 > {    The contents of this file are subject to the InterBase              }
14 > {    Public License Version 1.0 (the "License"); you may not             }
15 > {    use this file except in compliance with the License. You            }
16 > {    may obtain a copy of the License at http://www.Inprise.com/IPL.html }
17 > {    Software distributed under the License is distributed on            }
18 > {    an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either              }
19 > {    express or implied. See the License for the specific language       }
20 > {    governing rights and limitations under the License.                 }
21 > {    The Original Code was created by InterBase Software Corporation     }
22 > {       and its successors.                                              }
23 > {    Portions created by Inprise Corporation are Copyright (C) Inprise   }
24 > {       Corporation. All Rights Reserved.                                }
25 > {    Contributor(s): Jeff Overcash                                       }
26 > {                                                                        }
27 > {************************************************************************}
28 >
29 > unit IBTransactionEdit;
30 >
31 > {$MODE Delphi}
32 >
33 > interface
34 >
35 > uses
36 >  {Windows,} Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
37 >  StdCtrls, IBDataBase, IB, ExtCtrls, IBXConst, LResources;
38 >
39 > type
40 >  TIBTransactionEditForm = class(TForm)
41 >    GroupBox1: TGroupBox;
42 >    HelpBtn: TButton;
43 >    Cancelbtn: TButton;
44 >    OKBtn: TButton;
45 >    rbSnapShot: TRadioButton;
46 >    rbReadCommitted: TRadioButton;
47 >    rbReadOnlyTableStability: TRadioButton;
48 >    rbReadWriteTableStability: TRadioButton;
49 >    TransactionParams: TMemo;
50 >    Panel1: TPanel;
51 >    Label1: TLabel;
52 >    procedure OKBtnClick(Sender: TObject);
53 >    procedure rbSnapShotClick(Sender: TObject);
54 >    procedure rbReadCommittedClick(Sender: TObject);
55 >    procedure rbReadOnlyTableStabilityClick(Sender: TObject);
56 >    procedure rbReadWriteTableStabilityClick(Sender: TObject);
57 >    procedure FormCreate(Sender: TObject);
58 >    procedure HelpBtnClick(Sender: TObject);
59 >    procedure TransactionParamsClick(Sender: TObject);
60 >    procedure TransactionParamsExit(Sender: TObject);
61 >
62 >  private
63 >    { Private declarations }
64 >    Transaction: TIBTransaction;
65 >    function Edit: Boolean;
66 >    procedure ParseParams;
67 >    procedure ClearParamSelection;
68 >
69 >  public
70 >    { Public declarations }
71 >  end;
72 >
73 > var
74 >  IBTransactionEditForm: TIBTransactionEditForm;
75 >
76 >  function EditIBtransaction(Atransaction: TIBtransaction): Boolean;
77 >
78 > implementation
79 >
80 > {$R *.lfm}
81 >
82 > function EditIBtransaction(ATransaction: TIBtransaction): Boolean;
83 > begin
84 >  with TIBtransactionEditForm.Create(Application) do
85 >  try
86 >    Transaction := ATransaction;
87 >    Result := Edit;
88 >  finally
89 >    Free;
90 >  end;
91 > end;
92 >
93 > function TIBtransactionEditForm.Edit: Boolean;
94 > begin
95 >  TransactionParams.Lines := Transaction.Params;
96 >  ParseParams;
97 >  Result := False;
98 >  if ShowModal = mrOk then
99 >  begin
100 >    Transaction.Params := TransactionParams.Lines;
101 >    Result := True;
102 >  end;
103 > end;
104 >
105 > type
106 >  TTransactionParam = (concurrency, read_committed, rec_version, nowait,
107 >    consistency, read, write);
108 >  TTransactionParams = set of TTransactionParam;
109 >
110 > procedure TIBTransactionEditForm.ParseParams;
111 > var
112 >  I: Integer;
113 >  st: string;
114 >  Value: TTransactionParams;
115 >
116 > begin
117 >  Value := [];
118 >  for I := 0 to TransactionParams.Lines.Count - 1 do
119 >  begin
120 >    st := LowerCase(Trim(TransactionParams.Lines[I]));
121 >    if st = '' then
122 >      continue;
123 >    if st = 'concurrency' then
124 >      Include(Value, concurrency)
125 >    else if st = 'read_committed' then
126 >      Include(Value, read_committed)
127 >    else if st = 'rec_version' then
128 >      Include(Value, rec_version)
129 >    else if st = 'nowait' then
130 >      Include(Value, nowait)
131 >    else if st = 'read' then
132 >      Include(Value, read)
133 >    else if st = 'write' then
134 >      Include(Value, write)
135 >    else if st = 'consistency' then
136 >      Include(Value, consistency)
137 >    else begin
138 >      Value := [];
139 >      break;
140 >    end;
141 >  end;
142 >  ClearParamSelection;
143 >  if Value = [concurrency, nowait] then
144 >    rbSnapShot.Checked := True
145 >  else if Value = [read_committed, rec_version, nowait] then
146 >    rbReadCommitted.Checked := True
147 >  else if Value = [read, consistency] then
148 >    rbReadOnlyTableStability.Checked := True
149 >  else if Value = [write, consistency] then
150 >    rbReadWriteTableStability.Checked := True;
151 > end;
152 >
153 > procedure TIBTransactionEditForm.ClearParamSelection;
154 > begin
155 >  rbSnapShot.Checked := False;
156 >  rbReadCommitted.Checked := False;
157 >  rbReadOnlyTableStability.Checked := False;
158 >  rbReadWriteTableStability.Checked := False;
159 > end;
160 >
161 > procedure TIBTransactionEditForm.OKBtnClick(Sender: TObject);
162 > begin
163 >  ModalResult := mrNone;
164 >  if Transaction.Active then
165 >  begin
166 >    if MessageDlg(SCommitTransaction, mtConfirmation,
167 >      mbOkCancel, 0) <> mrOk then Exit;
168 >    Transaction.Rollback;
169 >  end;
170 >  ModalResult := mrOk;
171 > end;
172 >
173 > procedure TIBTransactionEditForm.FormCreate(Sender: TObject);
174 > begin
175 > //  HelpContext := hcDIBTransactionEdit;
176 > end;
177 >
178 > procedure TIBTransactionEditForm.HelpBtnClick(Sender: TObject);
179 > begin
180 >  Application.HelpContext(HelpContext);
181 > end;
182 >
183 > procedure TIBTransactionEditForm.rbSnapShotClick(Sender: TObject);
184 > begin
185 >  TransactionParams.clear;
186 >  TransactionParams.Lines.Add('concurrency'); { do not localize }
187 >  TransactionParams.Lines.Add('nowait'); { do not localize }
188 > end;
189 >
190 > procedure TIBTransactionEditForm.rbReadCommittedClick(Sender: TObject);
191 > begin
192 >  TransactionParams.clear;
193 >  TransactionParams.Lines.Add('read_committed'); { do not localize }
194 >  TransactionParams.Lines.Add('rec_version'); { do not localize }
195 >  TransactionParams.Lines.Add('nowait'); { do not localize }
196 > end;
197 >
198 > procedure TIBTransactionEditForm.rbReadOnlyTableStabilityClick(Sender: TObject);
199 > begin
200 >  TransactionParams.clear;
201 >  TransactionParams.Lines.Add('read'); { do not localize }
202 >  TransactionParams.Lines.Add('consistency'); { do not localize }
203 > end;
204 >
205 > procedure TIBTransactionEditForm.rbReadWriteTableStabilityClick(Sender: TObject);
206 > begin
207 >  TransactionParams.clear;
208 >  TransactionParams.Lines.Add('write'); { do not localize }
209 >  TransactionParams.Lines.Add('consistency'); { do not localize }
210 > end;
211 >
212 > procedure TIBTransactionEditForm.TransactionParamsClick(Sender: TObject);
213 > begin
214 >  ClearParamSelection;
215 > end;
216 >
217 > procedure TIBTransactionEditForm.TransactionParamsExit(Sender: TObject);
218 > begin
219 >  ParseParams;
220 > end;
221 >
222 >
223 > end.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines