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 17 by tony, Sat Dec 28 19:22:24 2013 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 <  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.
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