NO HAY CÓDIGO FUENTE git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.TRichView@1 b34d35ef-135b-4489-b9d1-9916e9c25524
73 lines
2.2 KiB
ObjectPascal
73 lines
2.2 KiB
ObjectPascal
unit ChartItem;
|
|
|
|
interface
|
|
|
|
uses Windows, Classes, Graphics, RVFuncs, RVScroll, DLines, RVItem, Chart, RVStyle;
|
|
|
|
const
|
|
rvsChart = -1001;
|
|
|
|
type
|
|
|
|
TRVChartItemInfo = class (TRVControlItemInfo)
|
|
public
|
|
constructor Create(RVData: TPersistent); override;
|
|
constructor CreateEx(RVData: TPersistent; AChart: TChart; AVAlign: TRVVAlign);
|
|
function GetBoolValueEx(Prop: TRVItemBoolPropertyEx; RVStyle: TRVStyle): Boolean; override;
|
|
procedure Print(Canvas: TCanvas; x,y,x2: Integer; Preview, Correction: Boolean;
|
|
const sad: TRVScreenAndDevice; RichView: TRVScroller; dli: TRVDrawLineInfo;
|
|
Part: Integer; ColorMode: TRVColorMode; RVData: TPersistent); override;
|
|
end;
|
|
|
|
implementation
|
|
|
|
{============================ TRVChartItemInfo ================================}
|
|
constructor TRVChartItemInfo.Create(RVData: TPersistent);
|
|
begin
|
|
inherited Create(RVData);
|
|
StyleNo := rvsChart;
|
|
end;
|
|
|
|
constructor TRVChartItemInfo.CreateEx(RVData: TPersistent; AChart: TChart; AVAlign: TRVVAlign);
|
|
begin
|
|
inherited CreateEx(RVData, AChart, AVAlign);
|
|
StyleNo := rvsChart;
|
|
end;
|
|
|
|
function TRVChartItemInfo.GetBoolValueEx(Prop: TRVItemBoolPropertyEx; RVStyle: TRVStyle): Boolean;
|
|
begin
|
|
case Prop of
|
|
rvbpPrintToBMP:
|
|
Result := False;
|
|
else
|
|
Result := inherited GetBoolValueEx(Prop, RVStyle);
|
|
end;
|
|
end;
|
|
|
|
procedure TRVChartItemInfo.Print(Canvas: TCanvas; x, y, x2: Integer;
|
|
Preview, Correction: Boolean; const sad: TRVScreenAndDevice;
|
|
RichView: TRVScroller; dli: TRVDrawLineInfo; Part: Integer;
|
|
ColorMode: TRVColorMode; RVData: TPersistent);
|
|
var sv: Integer;
|
|
bmp: TBitmap;
|
|
begin
|
|
if Preview then begin
|
|
bmp := TBitmap.Create;
|
|
bmp.Width := Control.Width;
|
|
bmp.Height := Control.Height;
|
|
TChart(Control).Draw(bmp.Canvas, Rect(0,0, Control.Width,Control.Height));
|
|
Canvas.StretchDraw(Bounds(x,y,dli.Width,dli.Height),bmp);
|
|
bmp.Free;
|
|
end
|
|
else begin
|
|
sv := SaveDC(Canvas.Handle);
|
|
TChart(Control).PrintPartial(Bounds(x,y,dli.Width,dli.Height));
|
|
RestoreDC(Canvas.Handle, sv);
|
|
end;
|
|
end;
|
|
|
|
initialization
|
|
RegisterRichViewItemClass(rvsChart, TRVChartItemInfo);
|
|
|
|
end.
|