Componentes.Terceros.RemObj.../internal/5.0.23.613/1/RemObjects SDK for Delphi/Source/IDE/fROServerClassForm.pas
david 472097efe5 - Eliminadas las librerías para Delphi 6 (Dcu\D6) en RO y DA.
- Recompilación de todos los paquetes de RO para poner RemObjects_Core_D10 como paquete de runtime/designtime.

git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.RemObjects@5 b6239004-a887-0f4b-9937-50029ccdca16
2007-09-10 11:08:08 +00:00

103 lines
3.1 KiB
ObjectPascal

unit fROServerClassForm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, Buttons;
type
TROServerClassForm = class(TForm)
rgClassType: TRadioGroup;
GroupBox1: TPanel;
lbDescription: TLabel;
Image2: TImage;
Bevel2: TBevel;
Panel1: TPanel;
btn_Ok: TBitBtn;
Button2: TBitBtn;
Bevel3: TBevel;
lbl_Caption: TLabel;
Label2: TLabel;
procedure FormCreate(Sender: TObject);
procedure rgClassTypeClick(Sender: TObject);
private
function GetServerClassName : string;
function GetRequiredUnits: string;
public
property ServerClassName : string read GetServerClassName;
property RequiredUnits : string read GetRequiredUnits;
end;
var
ROServerClassForm: TROServerClassForm;
function SelectROServerClassType(const ServiceName : string; out aServerClassname : string; out someRequiredUnits : string) : boolean;
implementation
uses uRODLGenTools, uROServer, uRORemoteDataModule;
{$R *.dfm}
function SelectROServerClassType(const ServiceName : string; out aServerClassname : string; out someRequiredUnits : string) : boolean;
begin
with TROServerClassForm.Create(NIL) do try
Caption := Format(Caption, [ServiceName]);
lbl_Caption.Caption := Format(lbl_Caption.Caption, [ServiceName]);
result := (ShowModal=mrOK);
aServerClassname := ServerClassName;
someRequiredUnits := RequiredUnits;
finally
Free;
end;
end;
procedure TROServerClassForm.FormCreate(Sender: TObject);
var i : integer;
s : string;
begin
rgClassType.Items.Clear;
rgClassType.Items.Add('&Simple object');
for i := (GetRODataModuleClassCount-1) downto 0 do begin
s := GetRODataModuleClass(i).Alias;
//if (i=0) then s := s+' (Reccommended)';
if GetRODataModuleClass(i).ClassType = TRORemoteDataModule then
s := s+' (recommended)';
rgClassType.Items.Add(s);
end;
rgClassType.ItemIndex := 1; { we've added one additional item }
//Height := (225*(GetRODataModuleClassCount+1)) div 3
ClientHeight := 250 + (GetRODataModuleClassCount()*25);
end;
function TROServerClassForm.GetRequiredUnits: string;
begin
if (rgClassType.ItemIndex=0)
then result := ''
else result := GetRODataModuleClass(GetRODataModuleClassCount-rgClassType.ItemIndex).RequiredUnits
end;
function TROServerClassForm.GetServerClassName : string;
begin
if (rgClassType.ItemIndex=0)
then result := TRORemotable.ClassName
else result := GetRODataModuleClass(GetRODataModuleClassCount-rgClassType.ItemIndex).ClassType.ClassName
end;
procedure TROServerClassForm.rgClassTypeClick(Sender: TObject);
begin
if (rgClassType.ItemIndex=0) then
lbDescription.Caption := 'Non-visual Delphi object. Recommended for services that do not require additional components '+
'and don''t need to provide the design time features of a data module.'
else
lbDescription.Caption := GetRODataModuleClass(GetRODataModuleClassCount-rgClassType.ItemIndex).Description;
end;
end.