Componentes.Terceros.SDAC/internal/4.10.0.10/1/Demos/Win32/ThirdParty/IntraWeb/IW7/uBase.pas
2007-10-05 14:48:18 +00:00

246 lines
6.5 KiB
ObjectPascal

unit uBase;
{PUBDIST}
interface
uses
IWAppForm, IWApplication, IWTypes, Classes, Controls, IWControl,
IWCompRectangle, IWCompButton, IWGrids, IWDBGrids, IWDBStdCtrls,
IWCompMemo, IWCompEdit, IWCompText, IWCompLabel, IWHTMLControls,
IWContainer, IWRegion,
Forms, Graphics, DB, MemDS, DBAccess, MSAccess, IWVCLBaseContainer,
IWHTMLContainer, IWVCLBaseControl, IWBaseControl, IWBaseHTMLControl;
type
TfmBase = class(TIWAppForm)
IWRectangle: TIWRectangle;
lbDemoCaption: TIWLabel;
lbPageName: TIWLabel;
lnkMain: TIWLink;
lnkQuery: TIWLink;
lnkCachedUpdates: TIWLink;
lnkMasterDetail: TIWLink;
rgConnection: TIWRegion;
IWRectangle4: TIWRectangle;
btConnect: TIWButton;
btDisconnect: TIWButton;
lbStateConnection: TIWLabel;
procedure lnkMainClick(Sender: TObject);
procedure lnkQueryClick(Sender: TObject);
procedure lnkCachedUpdatesClick(Sender: TObject);
procedure IWAppFormRender(Sender: TObject);
procedure lnkMasterDetailClick(Sender: TObject);
procedure btConnectClick(Sender: TObject);
procedure btDisconnectClick(Sender: TObject);
protected
procedure ReadFromControls; virtual;
end;
const
ResultColors: array[boolean] of TColor = (clRed, $006A240A);
implementation
{$R *.dfm}
uses
IWInit, ServerController, SysUtils, IWForm;
procedure TfmBase.IWAppFormRender(Sender: TObject);
procedure SetLinkState(Link: TIWLink; Form: TfmBase);
begin
Link.Enabled := Sender <> Form;
if Link.Enabled then
Link.Font.Style := []
else
Link.Font.Style := [fsBold];
end;
begin
SetLinkState(lnkMain, UserSession.fmMain);
SetLinkState(lnkQuery, UserSession.fmQuery);
SetLinkState(lnkCachedUpdates, UserSession.fmCachedUpdates);
SetLinkState(lnkMasterDetail, UserSession.fmMasterDetail);
lbStateConnection.Font.Color := ResultColors[UserSession.IsGoodConnection];
lbStateConnection.Caption := UserSession.ConnectionResult;
btDisconnect.Enabled := DM.Connection.Connected;
btConnect.Enabled := not DM.Connection.Connected;
end;
procedure TfmBase.lnkMainClick(Sender: TObject);
begin
ReadFromControls;
WebApplication.SetActiveForm(UserSession.fmMain);
end;
procedure TfmBase.lnkQueryClick(Sender: TObject);
begin
ReadFromControls;
WebApplication.SetActiveForm(UserSession.fmQuery);
end;
procedure TfmBase.lnkCachedUpdatesClick(Sender: TObject);
begin
ReadFromControls;
WebApplication.SetActiveForm(UserSession.fmCachedUpdates);
end;
procedure TfmBase.lnkMasterDetailClick(Sender: TObject);
begin
ReadFromControls;
WebApplication.SetActiveForm(UserSession.fmMasterDetail);
end;
procedure TfmBase.btConnectClick(Sender: TObject);
begin
ReadFromControls;
try
DM.Connection.Connect;
UserSession.IsGoodConnection := True;
except
UserSession.IsGoodConnection := False;
UserSession.ConnectionResult := 'Failed';
end;
end;
procedure TfmBase.btDisconnectClick(Sender: TObject);
begin
ReadFromControls;
try
DM.Connection.Disconnect;
UserSession.ConnectionResult := ''
except
UserSession.IsGoodConnection := False;
UserSession.ConnectionResult := 'Failed';
end;
end;
procedure TfmBase.ReadFromControls;
begin
end;
end.
{PUBDIST}
interface
uses
IWAppForm, IWApplication, IWTypes, Classes, Controls, IWControl,
IWCompRectangle, IWCompButton, IWGrids, IWDBGrids, IWDBStdCtrls,
IWCompMemo, IWCompEdit, IWCompText, IWCompLabel, IWHTMLControls,
IWContainer, IWRegion,
Forms, Graphics, DB, MemDS, DBAccess, MSAccess, IWVCLBaseContainer,
IWHTMLContainer, IWVCLBaseControl, IWBaseControl, IWBaseHTMLControl;
type
TfmBase = class(TIWAppForm)
IWRectangle: TIWRectangle;
lbDemoCaption: TIWLabel;
lbPageName: TIWLabel;
lnkMain: TIWLink;
lnkQuery: TIWLink;
lnkCachedUpdates: TIWLink;
lnkMasterDetail: TIWLink;
rgConnection: TIWRegion;
IWRectangle4: TIWRectangle;
btConnect: TIWButton;
btDisconnect: TIWButton;
lbStateConnection: TIWLabel;
procedure lnkMainClick(Sender: TObject);
procedure lnkQueryClick(Sender: TObject);
procedure lnkCachedUpdatesClick(Sender: TObject);
procedure IWAppFormRender(Sender: TObject);
procedure lnkMasterDetailClick(Sender: TObject);
procedure btConnectClick(Sender: TObject);
procedure btDisconnectClick(Sender: TObject);
protected
procedure ReadFromControls; virtual;
end;
const
ResultColors: array[boolean] of TColor = (clRed, $006A240A);
implementation
{$R *.dfm}
uses
IWInit, ServerController, SysUtils, IWForm;
procedure TfmBase.IWAppFormRender(Sender: TObject);
procedure SetLinkState(Link: TIWLink; Form: TfmBase);
begin
Link.Enabled := Sender <> Form;
if Link.Enabled then
Link.Font.Style := []
else
Link.Font.Style := [fsBold];
end;
begin
SetLinkState(lnkMain, UserSession.fmMain);
SetLinkState(lnkQuery, UserSession.fmQuery);
SetLinkState(lnkCachedUpdates, UserSession.fmCachedUpdates);
SetLinkState(lnkMasterDetail, UserSession.fmMasterDetail);
lbStateConnection.Font.Color := ResultColors[UserSession.IsGoodConnection];
lbStateConnection.Caption := UserSession.ConnectionResult;
btDisconnect.Enabled := DM.Connection.Connected;
btConnect.Enabled := not DM.Connection.Connected;
end;
procedure TfmBase.lnkMainClick(Sender: TObject);
begin
ReadFromControls;
WebApplication.SetActiveForm(UserSession.fmMain);
end;
procedure TfmBase.lnkQueryClick(Sender: TObject);
begin
ReadFromControls;
WebApplication.SetActiveForm(UserSession.fmQuery);
end;
procedure TfmBase.lnkCachedUpdatesClick(Sender: TObject);
begin
ReadFromControls;
WebApplication.SetActiveForm(UserSession.fmCachedUpdates);
end;
procedure TfmBase.lnkMasterDetailClick(Sender: TObject);
begin
ReadFromControls;
WebApplication.SetActiveForm(UserSession.fmMasterDetail);
end;
procedure TfmBase.btConnectClick(Sender: TObject);
begin
ReadFromControls;
try
DM.Connection.Connect;
UserSession.IsGoodConnection := True;
except
UserSession.IsGoodConnection := False;
UserSession.ConnectionResult := 'Failed';
end;
end;
procedure TfmBase.btDisconnectClick(Sender: TObject);
begin
ReadFromControls;
try
DM.Connection.Disconnect;
UserSession.ConnectionResult := ''
except
UserSession.IsGoodConnection := False;
UserSession.ConnectionResult := 'Failed';
end;
end;
procedure TfmBase.ReadFromControls;
begin
end;
end.