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 32 by tony, Mon Jul 7 13:00:15 2014 UTC vs.
Revision 33 by tony, Sat Jul 18 12:30:52 2015 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 <
41 <  { TIBTransactionEditForm }
42 <
43 <  TIBTransactionEditForm = class(TForm)
44 <    GroupBox1: TGroupBox;
45 <    HelpBtn: TButton;
46 <    Cancelbtn: TButton;
47 <    OKBtn: TButton;
48 <    rbOtherButton: TRadioButton;
49 <    rbSnapShot: TRadioButton;
50 <    rbReadCommitted: TRadioButton;
51 <    rbReadOnlyTableStability: TRadioButton;
52 <    rbReadWriteTableStability: TRadioButton;
53 <    TransactionParams: TMemo;
54 <    Panel1: TPanel;
55 <    Label1: TLabel;
56 <    procedure OKBtnClick(Sender: TObject);
57 <    procedure rbSnapShotClick(Sender: TObject);
58 <    procedure rbReadCommittedClick(Sender: TObject);
59 <    procedure rbReadOnlyTableStabilityClick(Sender: TObject);
60 <    procedure rbReadWriteTableStabilityClick(Sender: TObject);
61 <    procedure FormCreate(Sender: TObject);
62 <    procedure HelpBtnClick(Sender: TObject);
63 <    procedure TransactionParamsClick(Sender: TObject);
64 <    procedure TransactionParamsExit(Sender: TObject);
65 <
66 <  private
67 <    { Private declarations }
68 <    Transaction: TIBTransaction;
69 <    function Edit: Boolean;
70 <    procedure ParseParams;
71 <    procedure ClearParamSelection;
72 <
73 <  public
74 <    { Public declarations }
75 <  end;
76 <
77 < var
78 <  IBTransactionEditForm: TIBTransactionEditForm;
79 <
80 <  function EditIBtransaction(Atransaction: TIBtransaction): Boolean;
81 <
82 < implementation
83 <
84 < {$R *.lfm}
85 <
86 < function EditIBtransaction(ATransaction: TIBtransaction): Boolean;
87 < begin
88 <  with TIBtransactionEditForm.Create(Application) do
89 <  try
90 <    Transaction := ATransaction;
91 <    Result := Edit;
92 <  finally
93 <    Free;
94 <  end;
95 < end;
96 <
97 < function TIBtransactionEditForm.Edit: Boolean;
98 < begin
99 <  TransactionParams.Lines := Transaction.Params;
100 <  ParseParams;
101 <  Result := False;
102 <  if ShowModal = mrOk then
103 <  begin
104 <    Transaction.Params := TransactionParams.Lines;
105 <    Result := True;
106 <  end;
107 < end;
108 <
109 < type
110 <  TTransactionParam = (concurrency, read_committed, rec_version, nowait,
111 <    consistency, read, write);
112 <  TTransactionParams = set of TTransactionParam;
113 <
114 < procedure TIBTransactionEditForm.ParseParams;
115 < var
116 <  I: Integer;
117 <  st: string;
118 <  Value: TTransactionParams;
119 <
120 < begin
121 <  Value := [];
122 <  for I := 0 to TransactionParams.Lines.Count - 1 do
123 <  begin
124 <    st := LowerCase(Trim(TransactionParams.Lines[I]));
125 <    if st = '' then
126 <      continue;
127 <    if st = 'concurrency' then
128 <      Include(Value, concurrency)
129 <    else if st = 'read_committed' then
130 <      Include(Value, read_committed)
131 <    else if st = 'rec_version' then
132 <      Include(Value, rec_version)
133 <    else if st = 'nowait' then
134 <      Include(Value, nowait)
135 <    else if st = 'read' then
136 <      Include(Value, read)
137 <    else if st = 'write' then
138 <      Include(Value, write)
139 <    else if st = 'consistency' then
140 <      Include(Value, consistency)
141 <    else begin
142 <      Value := [];
143 <      break;
144 <    end;
145 <  end;
146 <  ClearParamSelection;
147 <  if Value = [concurrency, nowait] then
148 <    rbSnapShot.Checked := True
149 <  else if Value = [read_committed, rec_version, nowait] then
150 <    rbReadCommitted.Checked := True
151 <  else if Value = [read, consistency] then
152 <    rbReadOnlyTableStability.Checked := True
153 <  else if Value = [write, consistency] then
154 <    rbReadWriteTableStability.Checked := True
155 <  else
156 <    rbOtherButton.Checked := true
157 < end;
158 <
159 < procedure TIBTransactionEditForm.ClearParamSelection;
160 < begin
161 <  rbSnapShot.Checked := False;
162 <  rbReadCommitted.Checked := False;
163 <  rbReadOnlyTableStability.Checked := False;
164 <  rbReadWriteTableStability.Checked := False;
165 < end;
166 <
167 < procedure TIBTransactionEditForm.OKBtnClick(Sender: TObject);
168 < begin
169 <  ModalResult := mrNone;
170 <  if Transaction.Active then
171 <  begin
172 <    if MessageDlg(SCommitTransaction, mtConfirmation,
173 <      mbOkCancel, 0) <> mrOk then Exit;
174 <    Transaction.Rollback;
175 <  end;
176 <  ModalResult := mrOk;
177 < end;
178 <
179 < procedure TIBTransactionEditForm.FormCreate(Sender: TObject);
180 < begin
181 < //  HelpContext := hcDIBTransactionEdit;
182 < end;
183 <
184 < procedure TIBTransactionEditForm.HelpBtnClick(Sender: TObject);
185 < begin
186 <  Application.HelpContext(HelpContext);
187 < end;
188 <
189 < procedure TIBTransactionEditForm.rbSnapShotClick(Sender: TObject);
190 < begin
191 <  TransactionParams.clear;
192 <  TransactionParams.Lines.Add('concurrency'); { do not localize }
193 <  TransactionParams.Lines.Add('nowait'); { do not localize }
194 < end;
195 <
196 < procedure TIBTransactionEditForm.rbReadCommittedClick(Sender: TObject);
197 < begin
198 <  TransactionParams.clear;
199 <  TransactionParams.Lines.Add('read_committed'); { do not localize }
200 <  TransactionParams.Lines.Add('rec_version'); { do not localize }
201 <  TransactionParams.Lines.Add('nowait'); { do not localize }
202 < end;
203 <
204 < procedure TIBTransactionEditForm.rbReadOnlyTableStabilityClick(Sender: TObject);
205 < begin
206 <  TransactionParams.clear;
207 <  TransactionParams.Lines.Add('read'); { do not localize }
208 <  TransactionParams.Lines.Add('consistency'); { do not localize }
209 < end;
210 <
211 < procedure TIBTransactionEditForm.rbReadWriteTableStabilityClick(Sender: TObject);
212 < begin
213 <  TransactionParams.clear;
214 <  TransactionParams.Lines.Add('write'); { do not localize }
215 <  TransactionParams.Lines.Add('consistency'); { do not localize }
216 < end;
217 <
218 < procedure TIBTransactionEditForm.TransactionParamsClick(Sender: TObject);
219 < begin
220 <  ClearParamSelection;
221 < end;
222 <
223 < procedure TIBTransactionEditForm.TransactionParamsExit(Sender: TObject);
224 < begin
225 <  ParseParams;
226 < end;
227 <
228 <
229 < 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 >
41 >  { TIBTransactionEditForm }
42 >
43 >  TIBTransactionEditForm = class(TForm)
44 >    GroupBox1: TGroupBox;
45 >    HelpBtn: TButton;
46 >    Cancelbtn: TButton;
47 >    OKBtn: TButton;
48 >    rbOtherButton: TRadioButton;
49 >    rbSnapShot: TRadioButton;
50 >    rbReadCommitted: TRadioButton;
51 >    rbReadOnlyTableStability: TRadioButton;
52 >    rbReadWriteTableStability: TRadioButton;
53 >    TransactionParams: TMemo;
54 >    Panel1: TPanel;
55 >    Label1: TLabel;
56 >    procedure OKBtnClick(Sender: TObject);
57 >    procedure rbSnapShotClick(Sender: TObject);
58 >    procedure rbReadCommittedClick(Sender: TObject);
59 >    procedure rbReadOnlyTableStabilityClick(Sender: TObject);
60 >    procedure rbReadWriteTableStabilityClick(Sender: TObject);
61 >    procedure FormCreate(Sender: TObject);
62 >    procedure HelpBtnClick(Sender: TObject);
63 >    procedure TransactionParamsClick(Sender: TObject);
64 >    procedure TransactionParamsExit(Sender: TObject);
65 >
66 >  private
67 >    { Private declarations }
68 >    Transaction: TIBTransaction;
69 >    function Edit: Boolean;
70 >    procedure ParseParams;
71 >    procedure ClearParamSelection;
72 >
73 >  public
74 >    { Public declarations }
75 >  end;
76 >
77 > var
78 >  IBTransactionEditForm: TIBTransactionEditForm;
79 >
80 >  function EditIBtransaction(Atransaction: TIBtransaction): Boolean;
81 >
82 > implementation
83 >
84 > {$R *.lfm}
85 >
86 > function EditIBtransaction(ATransaction: TIBtransaction): Boolean;
87 > begin
88 >  with TIBtransactionEditForm.Create(Application) do
89 >  try
90 >    Transaction := ATransaction;
91 >    Result := Edit;
92 >  finally
93 >    Free;
94 >  end;
95 > end;
96 >
97 > function TIBtransactionEditForm.Edit: Boolean;
98 > begin
99 >  TransactionParams.Lines := Transaction.Params;
100 >  ParseParams;
101 >  Result := False;
102 >  if ShowModal = mrOk then
103 >  begin
104 >    Transaction.Params := TransactionParams.Lines;
105 >    Result := True;
106 >  end;
107 > end;
108 >
109 > type
110 >  TTransactionParam = (concurrency, read_committed, rec_version, nowait,
111 >    consistency, read, write);
112 >  TTransactionParams = set of TTransactionParam;
113 >
114 > procedure TIBTransactionEditForm.ParseParams;
115 > var
116 >  I: Integer;
117 >  st: string;
118 >  Value: TTransactionParams;
119 >
120 > begin
121 >  Value := [];
122 >  for I := 0 to TransactionParams.Lines.Count - 1 do
123 >  begin
124 >    st := LowerCase(Trim(TransactionParams.Lines[I]));
125 >    if st = '' then
126 >      continue;
127 >    if st = 'concurrency' then
128 >      Include(Value, concurrency)
129 >    else if st = 'read_committed' then
130 >      Include(Value, read_committed)
131 >    else if st = 'rec_version' then
132 >      Include(Value, rec_version)
133 >    else if st = 'nowait' then
134 >      Include(Value, nowait)
135 >    else if st = 'read' then
136 >      Include(Value, read)
137 >    else if st = 'write' then
138 >      Include(Value, write)
139 >    else if st = 'consistency' then
140 >      Include(Value, consistency)
141 >    else begin
142 >      Value := [];
143 >      break;
144 >    end;
145 >  end;
146 >  ClearParamSelection;
147 >  if Value = [concurrency, nowait] then
148 >    rbSnapShot.Checked := True
149 >  else if Value = [read_committed, rec_version, nowait] then
150 >    rbReadCommitted.Checked := True
151 >  else if Value = [read, consistency] then
152 >    rbReadOnlyTableStability.Checked := True
153 >  else if Value = [write, consistency] then
154 >    rbReadWriteTableStability.Checked := True
155 >  else
156 >    rbOtherButton.Checked := true
157 > end;
158 >
159 > procedure TIBTransactionEditForm.ClearParamSelection;
160 > begin
161 >  rbSnapShot.Checked := False;
162 >  rbReadCommitted.Checked := False;
163 >  rbReadOnlyTableStability.Checked := False;
164 >  rbReadWriteTableStability.Checked := False;
165 > end;
166 >
167 > procedure TIBTransactionEditForm.OKBtnClick(Sender: TObject);
168 > begin
169 >  ModalResult := mrNone;
170 >  if Transaction.Active then
171 >  begin
172 >    if MessageDlg(SCommitTransaction, mtConfirmation,
173 >      mbOkCancel, 0) <> mrOk then Exit;
174 >    Transaction.Rollback;
175 >  end;
176 >  ModalResult := mrOk;
177 > end;
178 >
179 > procedure TIBTransactionEditForm.FormCreate(Sender: TObject);
180 > begin
181 > //  HelpContext := hcDIBTransactionEdit;
182 > end;
183 >
184 > procedure TIBTransactionEditForm.HelpBtnClick(Sender: TObject);
185 > begin
186 >  Application.HelpContext(HelpContext);
187 > end;
188 >
189 > procedure TIBTransactionEditForm.rbSnapShotClick(Sender: TObject);
190 > begin
191 >  TransactionParams.clear;
192 >  TransactionParams.Lines.Add('concurrency'); { do not localize }
193 >  TransactionParams.Lines.Add('nowait'); { do not localize }
194 > end;
195 >
196 > procedure TIBTransactionEditForm.rbReadCommittedClick(Sender: TObject);
197 > begin
198 >  TransactionParams.clear;
199 >  TransactionParams.Lines.Add('read_committed'); { do not localize }
200 >  TransactionParams.Lines.Add('rec_version'); { do not localize }
201 >  TransactionParams.Lines.Add('nowait'); { do not localize }
202 > end;
203 >
204 > procedure TIBTransactionEditForm.rbReadOnlyTableStabilityClick(Sender: TObject);
205 > begin
206 >  TransactionParams.clear;
207 >  TransactionParams.Lines.Add('read'); { do not localize }
208 >  TransactionParams.Lines.Add('consistency'); { do not localize }
209 > end;
210 >
211 > procedure TIBTransactionEditForm.rbReadWriteTableStabilityClick(Sender: TObject);
212 > begin
213 >  TransactionParams.clear;
214 >  TransactionParams.Lines.Add('write'); { do not localize }
215 >  TransactionParams.Lines.Add('consistency'); { do not localize }
216 > end;
217 >
218 > procedure TIBTransactionEditForm.TransactionParamsClick(Sender: TObject);
219 > begin
220 >  ClearParamSelection;
221 > end;
222 >
223 > procedure TIBTransactionEditForm.TransactionParamsExit(Sender: TObject);
224 > begin
225 >  ParseParams;
226 > end;
227 >
228 >
229 > end.

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines