You've already forked lazarus-ccr
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6159 8e941d3f-bd1b-0410-a28a-d453659cc2b4
137 lines
3.0 KiB
ObjectPascal
137 lines
3.0 KiB
ObjectPascal
(* ***** BEGIN LICENSE BLOCK *****
|
|
* Version: MPL 1.1
|
|
*
|
|
* The contents of this file are subject to the Mozilla Public License Version
|
|
* 1.1 (the "License"); you may not use this file except in compliance with
|
|
* the License. You may obtain a copy of the License at
|
|
* http://www.mozilla.org/MPL/
|
|
*
|
|
* Software distributed under the License is distributed on an "AS IS" basis,
|
|
* WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
|
|
* for the specific language governing rights and limitations under the
|
|
* License.
|
|
*
|
|
* The Original Code is TurboPower SysTools
|
|
*
|
|
* The Initial Developer of the Original Code is
|
|
* TurboPower Software
|
|
*
|
|
* Portions created by the Initial Developer are Copyright (C) 1996-2002
|
|
* the Initial Developer. All Rights Reserved.
|
|
*
|
|
* Contributor(s):
|
|
*
|
|
* ***** END LICENSE BLOCK ***** *)
|
|
|
|
{*********************************************************}
|
|
{* SysTools: StDbBarC.pas 4.04 *}
|
|
{*********************************************************}
|
|
{* SysTools: data aware bar code components *}
|
|
{*********************************************************}
|
|
|
|
{$IFDEF FPC}
|
|
{$mode DELPHI}
|
|
{$ENDIF}
|
|
|
|
//{$I StDefine.inc}
|
|
|
|
unit StDbBarC;
|
|
|
|
interface
|
|
|
|
uses
|
|
{$IFDEF FPC}
|
|
LCLIntf, LCLType, LMessages,
|
|
{$ELSE}
|
|
Windows, Messages, DbTables,
|
|
{$ENDIF}
|
|
Classes, //ClipBrd,
|
|
Controls, Graphics, SysUtils,
|
|
Db, DbCtrls,
|
|
StConst, StBarC;
|
|
|
|
type
|
|
TStDbBarCode = class(TStBarCode)
|
|
protected {private}
|
|
{.Z+}
|
|
FDataLink : TFieldDataLink;
|
|
|
|
procedure DataChange(Sender : TObject);
|
|
function GetDataField : string;
|
|
function GetDataSource : TDataSource;
|
|
procedure SetDataField(const Value : string);
|
|
procedure SetDataSource(Value : TDataSource);
|
|
|
|
public
|
|
constructor Create(AOwner : TComponent);
|
|
override;
|
|
destructor Destroy;
|
|
override;
|
|
{.Z+}
|
|
published
|
|
property Code
|
|
stored False;
|
|
|
|
property DataField : string
|
|
read GetDataField
|
|
write SetDataField;
|
|
|
|
property DataSource : TDataSource
|
|
read GetDataSource
|
|
write SetDataSource;
|
|
end;
|
|
|
|
|
|
implementation
|
|
|
|
|
|
{*** TStDbBarCode ***}
|
|
|
|
constructor TStDbBarCode.Create(AOwner : TComponent);
|
|
begin
|
|
inherited Create(AOwner);
|
|
|
|
FDataLink := TFieldDataLink.Create;
|
|
FDataLink.OnDataChange := DataChange;
|
|
end;
|
|
|
|
procedure TStDbBarCode.DataChange(Sender : TObject);
|
|
begin
|
|
if FDataLink.Field = nil then
|
|
Code := '12345678922'
|
|
else
|
|
Code := FDataLink.Field.DisplayText;
|
|
end;
|
|
|
|
destructor TStDbBarCode.Destroy;
|
|
begin
|
|
FDataLink.OnDataChange := nil;
|
|
FDataLink.Free;
|
|
FDataLink := nil;
|
|
|
|
inherited Destroy;
|
|
end;
|
|
|
|
function TStDbBarCode.GetDataField : string;
|
|
begin
|
|
Result := FDataLink.FieldName;
|
|
end;
|
|
|
|
function TStDbBarCode.GetDataSource : TDataSource;
|
|
begin
|
|
Result := FDataLink.DataSource
|
|
end;
|
|
|
|
procedure TStDbBarCode.SetDataField(const Value : string);
|
|
begin
|
|
FDataLink.FieldName := Value;
|
|
end;
|
|
|
|
procedure TStDbBarCode.SetDataSource(Value : TDataSource);
|
|
begin
|
|
FDataLink.DataSource := Value;
|
|
end;
|
|
|
|
|
|
end.
|