Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2010-03

TCairoCanvas integration

16 messages · 5 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Unknown author

Hi.

Main work on TCairoCanvas = class(TPrinterCanvas) is almost done.

My question is how to integrate it into LCL?
IMHO user should have a choice which TPrinterCanvas implementation use. Now in TCUPSPrinter is hard coded TPostscriptPrinterCanvas:

function TCUPSPrinter.GetCanvasRef: TPrinterCanvasRef;
begin
  Result:=TPostscriptPrinterCanvas;
end;

Petr

Petr Kristan . EPOS PRO s.r.o., Bozeny Nemcove 2625, 530 02 Pardubice tel: +420 466335223 Czech Republic (Eastern Europe) fax: +420 466510709

Reply by email

Unknown author
to Unknown author
Show quoted text 15 lines
Hi. Main work on TCairoCanvas = class(TPrinterCanvas) is almost done. My question is how to integrate it into LCL? IMHO user should have a choice which TPrinterCanvas implementation use. Now in TCUPSPrinter is hard coded TPostscriptPrinterCanvas: function TCUPSPrinter.GetCanvasRef: TPrinterCanvasRef; begin Result:=TPostscriptPrinterCanvas; end; Petr

Nobody here, who can halp me to integrate TCairoCanvas into LCL?

Were in LCL directory structure place cairocanvas.pas (depends only on libcairo) and gdkcairocanvas.pas (depends extra on libgdk).

How should programer select which implementation of TPrinterCanvas will be created in TPrinter.GetCanvas.

Now TCUPSPrinter implementation use hard coded TPostscriptPrinterCanvas and needs access to TPostscriptPrinterCanvas(Canvas).OutputFileName. My TCairoCanvas implementation has the same needs.

I do not want to waste my time if comunity do not have an interest to include CairoCanvas into lcl.

Petr

Petr Kristan . EPOS PRO s.r.o., Bozeny Nemcove 2625, 530 02 Pardubice tel: +420 466335223 Czech Republic (Eastern Europe) fax: +420 466510709

Reply by email

zeljko
to Unknown author
Show quoted text 15 lines
Nobody here, who can halp me to integrate TCairoCanvas into LCL? Were in LCL directory structure place cairocanvas.pas (depends only on libcairo) and gdkcairocanvas.pas (depends extra on libgdk). How should programer select which implementation of TPrinterCanvas will be created in TPrinter.GetCanvas. Now TCUPSPrinter implementation use hard coded TPostscriptPrinterCanvas and needs access to TPostscriptPrinterCanvas(Canvas).OutputFileName. My TCairoCanvas implementation has the same needs. I do not want to waste my time if comunity do not have an interest to include CairoCanvas into lcl.

Well, nobody said that it will not be included, but probably developers don't have enough spare time to review your work at the moment. Probably best way would be to open mantis issue about this and attach your changes as patch.

zeljko

Reply by email

Michael Van Canneyt
to Unknown author: Nobody here, who can halp me to integrate TCairoCanvas into LCL? Were in LCL directory…
Show quoted text 30 lines
On Wed, Mar 10, 2010 at 03:22:31PM +0100, wrote: > Hi. > > Main work on TCairoCanvas = class(TPrinterCanvas) is almost done. > > My question is how to integrate it into LCL? > IMHO user should have a choice which TPrinterCanvas implementation use. > Now in TCUPSPrinter is hard coded TPostscriptPrinterCanvas: > > function TCUPSPrinter.GetCanvasRef: TPrinterCanvasRef; > begin > Result:=TPostscriptPrinterCanvas; > end; > > Petr > Nobody here, who can halp me to integrate TCairoCanvas into LCL? Were in LCL directory structure place cairocanvas.pas (depends only on libcairo) and gdkcairocanvas.pas (depends extra on libgdk). How should programer select which implementation of TPrinterCanvas will be created in TPrinter.GetCanvas. Now TCUPSPrinter implementation use hard coded TPostscriptPrinterCanvas and needs access to TPostscriptPrinterCanvas(Canvas).OutputFileName. My TCairoCanvas implementation has the same needs. I do not want to waste my time if comunity do not have an interest to include CairoCanvas into lcl.

I think you should create an abstract TFilePrinterCanvas descendent of TPrinterCanvas (with the needed FileName property) and define a variable

Type
   TFilePrinterCanvas = Class of TFilePrinterCanvas;
Var
   CupsCanvasClass : TFilePrinterCanvas = TPostscriptPrinterCanvas;

which the programmer can set, if so desired. then the TCUPSPrinter.GetCanvasRef
implementation checks the CupsCanvasClass variable. If it is set, it uses the class defined there, and if not, it uses TPostscriptPrinterCanvas.

Michael.

Reply by email

Unknown author
to zeljko: Well, nobody said that it will not be included, but probably developers don't have enough…
zeljko wrote 22 lines
On Thursday 11 March 2010 14:08, wrote: > > Nobody here, who can halp me to integrate TCairoCanvas into LCL? > > Were in LCL directory structure place cairocanvas.pas (depends only on > libcairo) and gdkcairocanvas.pas (depends extra on libgdk). > > How should programer select which implementation of TPrinterCanvas will > be created in TPrinter.GetCanvas. > > Now TCUPSPrinter implementation use hard coded TPostscriptPrinterCanvas > and needs access to TPostscriptPrinterCanvas(Canvas).OutputFileName. > My TCairoCanvas implementation has the same needs. > > I do not want to waste my time if comunity do not have an interest to > include CairoCanvas into lcl. Well, nobody said that it will not be included, but probably developers don't have enough spare time to review your work at the moment. Probably best way would be to open mantis issue about this and attach your changes as patch.

Now I do not ask to review my work, I only need a little help with a few questions. In order to prepare complete include patch.

Petr

Petr Kristan . EPOS PRO s.r.o., Bozeny Nemcove 2625, 530 02 Pardubice tel: +420 466335223 Czech Republic (Eastern Europe) fax: +420 466510709

Reply by email

Unknown author
to Michael Van Canneyt: I think you should create an abstract TFilePrinterCanvas descendent of TPrinterCanvas…
Michael Van Canneyt wrote 49 lines
On Thu, 11 Mar 2010, wrote: > On Wed, Mar 10, 2010 at 03:22:31PM +0100, wrote: >> Hi. >> >> Main work on TCairoCanvas = class(TPrinterCanvas) is almost done. >> >> My question is how to integrate it into LCL? >> IMHO user should have a choice which TPrinterCanvas implementation use. >> Now in TCUPSPrinter is hard coded TPostscriptPrinterCanvas: >> >> function TCUPSPrinter.GetCanvasRef: TPrinterCanvasRef; >> begin >> Result:=TPostscriptPrinterCanvas; >> end; >> >> Petr >> > Nobody here, who can halp me to integrate TCairoCanvas into LCL? > > Were in LCL directory structure place cairocanvas.pas (depends only on > libcairo) and gdkcairocanvas.pas (depends extra on libgdk). > > How should programer select which implementation of TPrinterCanvas will > be created in TPrinter.GetCanvas. > > Now TCUPSPrinter implementation use hard coded TPostscriptPrinterCanvas > and needs access to TPostscriptPrinterCanvas(Canvas).OutputFileName. > My TCairoCanvas implementation has the same needs. > > I do not want to waste my time if comunity do not have an interest to > include CairoCanvas into lcl. I think you should create an abstract TFilePrinterCanvas descendent of TPrinterCanvas (with the needed FileName property) and define a variable Type TFilePrinterCanvas = Class of TFilePrinterCanvas; Var CupsCanvasClass : TFilePrinterCanvas = TPostscriptPrinterCanvas; which the programmer can set, if so desired. then the TCUPSPrinter.GetCanvasRef implementation checks the CupsCanvasClass variable. If it is set, it uses the class defined there, and if not, it uses TPostscriptPrinterCanvas.

Thanks.

This corresponds with my idea.

Where is recommeded place for cairocanvas.pas and gdkcairocanvas.pas in lcl? CairoCanvas can work on Windows, Linux and Mac OS X.

Petr

Petr Kristan . EPOS PRO s.r.o., Bozeny Nemcove 2625, 530 02 Pardubice tel: +420 466335223 Czech Republic (Eastern Europe) fax: +420 466510709

Reply by email

Mattias Gaertner
to Michael Van Canneyt: I think you should create an abstract TFilePrinterCanvas descendent of TPrinterCanvas…
Show quoted text 49 lines
On Thu, 11 Mar 2010, wrote: > On Wed, Mar 10, 2010 at 03:22:31PM +0100, wrote: >> Hi. >> >> Main work on TCairoCanvas = class(TPrinterCanvas) is almost done. >> >> My question is how to integrate it into LCL? >> IMHO user should have a choice which TPrinterCanvas implementation use. >> Now in TCUPSPrinter is hard coded TPostscriptPrinterCanvas: >> >> function TCUPSPrinter.GetCanvasRef: TPrinterCanvasRef; >> begin >> Result:=TPostscriptPrinterCanvas; >> end; >> >> Petr >> > Nobody here, who can halp me to integrate TCairoCanvas into LCL? > > Were in LCL directory structure place cairocanvas.pas (depends only on > libcairo) and gdkcairocanvas.pas (depends extra on libgdk). > > How should programer select which implementation of TPrinterCanvas will > be created in TPrinter.GetCanvas. > > Now TCUPSPrinter implementation use hard coded TPostscriptPrinterCanvas > and needs access to TPostscriptPrinterCanvas(Canvas).OutputFileName. > My TCairoCanvas implementation has the same needs. > > I do not want to waste my time if comunity do not have an interest to > include CairoCanvas into lcl. I think you should create an abstract TFilePrinterCanvas descendent of TPrinterCanvas (with the needed FileName property) and define a variable Type TFilePrinterCanvas = Class of TFilePrinterCanvas; Var CupsCanvasClass : TFilePrinterCanvas = TPostscriptPrinterCanvas; which the programmer can set, if so desired. then the TCUPSPrinter.GetCanvasRef implementation checks the CupsCanvasClass variable. If it is set, it uses the class defined there, and if not, it uses TPostscriptPrinterCanvas.

Good idea.

Mattias

Reply by email

Mattias Gaertner
to Unknown author: Thanks. This corresponds with my idea. Where is recommeded place for cairocanvas.pas and…
Show quoted text 56 lines
On Thu, Mar 11, 2010 at 02:23:15PM +0100, Michael Van Canneyt wrote: > > > On Thu, 11 Mar 2010, wrote: > >> On Wed, Mar 10, 2010 at 03:22:31PM +0100, wrote: >>> Hi. >>> >>> Main work on TCairoCanvas = class(TPrinterCanvas) is almost done. >>> >>> My question is how to integrate it into LCL? >>> IMHO user should have a choice which TPrinterCanvas implementation use. >>> Now in TCUPSPrinter is hard coded TPostscriptPrinterCanvas: >>> >>> function TCUPSPrinter.GetCanvasRef: TPrinterCanvasRef; >>> begin >>> Result:=TPostscriptPrinterCanvas; >>> end; >>> >>> Petr >>> >> Nobody here, who can halp me to integrate TCairoCanvas into LCL? >> >> Were in LCL directory structure place cairocanvas.pas (depends only on >> libcairo) and gdkcairocanvas.pas (depends extra on libgdk). >> >> How should programer select which implementation of TPrinterCanvas will >> be created in TPrinter.GetCanvas. >> >> Now TCUPSPrinter implementation use hard coded TPostscriptPrinterCanvas >> and needs access to TPostscriptPrinterCanvas(Canvas).OutputFileName. >> My TCairoCanvas implementation has the same needs. >> >> I do not want to waste my time if comunity do not have an interest to >> include CairoCanvas into lcl. > > I think you should create an abstract TFilePrinterCanvas descendent of > TPrinterCanvas (with the needed FileName property) and define a variable > > Type > TFilePrinterCanvas = Class of TFilePrinterCanvas; > > Var > CupsCanvasClass : TFilePrinterCanvas = TPostscriptPrinterCanvas; > > which the programmer can set, if so desired. then the > TCUPSPrinter.GetCanvasRef > implementation checks the CupsCanvasClass variable. If it is set, > it uses the class defined there, and if not, it uses > TPostscriptPrinterCanvas. Thanks. This corresponds with my idea. Where is recommeded place for cairocanvas.pas and gdkcairocanvas.pas in lcl? CairoCanvas can work on Windows, Linux and Mac OS X.

lcl/interfaces/gtk2

Mattias

Reply by email

Unknown author
to Mattias Gaertner
Mattias Gaertner wrote 61 lines
On Thu, 11 Mar 2010 14:41:18 +0100 wrote: > On Thu, Mar 11, 2010 at 02:23:15PM +0100, Michael Van Canneyt wrote: > > > > > > On Thu, 11 Mar 2010, wrote: > > > >> On Wed, Mar 10, 2010 at 03:22:31PM +0100, wrote: > >>> Hi. > >>> > >>> Main work on TCairoCanvas = class(TPrinterCanvas) is almost done. > >>> > >>> My question is how to integrate it into LCL? > >>> IMHO user should have a choice which TPrinterCanvas implementation use. > >>> Now in TCUPSPrinter is hard coded TPostscriptPrinterCanvas: > >>> > >>> function TCUPSPrinter.GetCanvasRef: TPrinterCanvasRef; > >>> begin > >>> Result:=TPostscriptPrinterCanvas; > >>> end; > >>> > >>> Petr > >>> > >> Nobody here, who can halp me to integrate TCairoCanvas into LCL? > >> > >> Were in LCL directory structure place cairocanvas.pas (depends only on > >> libcairo) and gdkcairocanvas.pas (depends extra on libgdk). > >> > >> How should programer select which implementation of TPrinterCanvas will > >> be created in TPrinter.GetCanvas. > >> > >> Now TCUPSPrinter implementation use hard coded TPostscriptPrinterCanvas > >> and needs access to TPostscriptPrinterCanvas(Canvas).OutputFileName. > >> My TCairoCanvas implementation has the same needs. > >> > >> I do not want to waste my time if comunity do not have an interest to > >> include CairoCanvas into lcl. > > > > I think you should create an abstract TFilePrinterCanvas descendent of > > TPrinterCanvas (with the needed FileName property) and define a variable > > > > Type > > TFilePrinterCanvas = Class of TFilePrinterCanvas; > > > > Var > > CupsCanvasClass : TFilePrinterCanvas = TPostscriptPrinterCanvas; > > > > which the programmer can set, if so desired. then the > > TCUPSPrinter.GetCanvasRef > > implementation checks the CupsCanvasClass variable. If it is set, > > it uses the class defined there, and if not, it uses > > TPostscriptPrinterCanvas. > Thanks. > > This corresponds with my idea. > > Where is recommeded place for cairocanvas.pas and gdkcairocanvas.pas in > lcl? CairoCanvas can work on Windows, Linux and Mac OS X. lcl/interfaces/gtk2

I think this is good place for gdkcairocanvas.pas. But cairocanvas.pas needs only libcairo. It do not needs gtk.

Petr

Petr Kristan . EPOS PRO s.r.o., Bozeny Nemcove 2625, 530 02 Pardubice tel: +420 466335223 Czech Republic (Eastern Europe) fax: +420 466510709

Reply by email

Mattias Gaertner
to Unknown author
Show quoted text 64 lines
On Thu, Mar 11, 2010 at 02:50:04PM +0100, Mattias Gaertner wrote: > On Thu, 11 Mar 2010 14:41:18 +0100 > wrote: > > > On Thu, Mar 11, 2010 at 02:23:15PM +0100, Michael Van Canneyt wrote: > > > > > > > > > On Thu, 11 Mar 2010, wrote: > > > > > >> On Wed, Mar 10, 2010 at 03:22:31PM +0100, wrote: > > >>> Hi. > > >>> > > >>> Main work on TCairoCanvas = class(TPrinterCanvas) is almost done. > > >>> > > >>> My question is how to integrate it into LCL? > > >>> IMHO user should have a choice which TPrinterCanvas implementation use. > > >>> Now in TCUPSPrinter is hard coded TPostscriptPrinterCanvas: > > >>> > > >>> function TCUPSPrinter.GetCanvasRef: TPrinterCanvasRef; > > >>> begin > > >>> Result:=TPostscriptPrinterCanvas; > > >>> end; > > >>> > > >>> Petr > > >>> > > >> Nobody here, who can halp me to integrate TCairoCanvas into LCL? > > >> > > >> Were in LCL directory structure place cairocanvas.pas (depends only on > > >> libcairo) and gdkcairocanvas.pas (depends extra on libgdk). > > >> > > >> How should programer select which implementation of TPrinterCanvas will > > >> be created in TPrinter.GetCanvas. > > >> > > >> Now TCUPSPrinter implementation use hard coded TPostscriptPrinterCanvas > > >> and needs access to TPostscriptPrinterCanvas(Canvas).OutputFileName. > > >> My TCairoCanvas implementation has the same needs. > > >> > > >> I do not want to waste my time if comunity do not have an interest to > > >> include CairoCanvas into lcl. > > > > > > I think you should create an abstract TFilePrinterCanvas descendent of > > > TPrinterCanvas (with the needed FileName property) and define a variable > > > > > > Type > > > TFilePrinterCanvas = Class of TFilePrinterCanvas; > > > > > > Var > > > CupsCanvasClass : TFilePrinterCanvas = TPostscriptPrinterCanvas; > > > > > > which the programmer can set, if so desired. then the > > > TCUPSPrinter.GetCanvasRef > > > implementation checks the CupsCanvasClass variable. If it is set, > > > it uses the class defined there, and if not, it uses > > > TPostscriptPrinterCanvas. > > Thanks. > > > > This corresponds with my idea. > > > > Where is recommeded place for cairocanvas.pas and gdkcairocanvas.pas in > > lcl? CairoCanvas can work on Windows, Linux and Mac OS X. > > lcl/interfaces/gtk2 I think this is good place for gdkcairocanvas.pas. But cairocanvas.pas needs only libcairo. It do not needs gtk.

Well, it should be added to the fpc sources, but till this is in a release we have to add this unit to the lazarus sources too.

Mattias

Reply by email

Unknown author
to Mattias Gaertner
Mattias Gaertner wrote 70 lines
On Thu, 11 Mar 2010 14:54:48 +0100 wrote: > On Thu, Mar 11, 2010 at 02:50:04PM +0100, Mattias Gaertner wrote: > > On Thu, 11 Mar 2010 14:41:18 +0100 > > wrote: > > > > > On Thu, Mar 11, 2010 at 02:23:15PM +0100, Michael Van Canneyt wrote: > > > > > > > > > > > > On Thu, 11 Mar 2010, wrote: > > > > > > > >> On Wed, Mar 10, 2010 at 03:22:31PM +0100, wrote: > > > >>> Hi. > > > >>> > > > >>> Main work on TCairoCanvas = class(TPrinterCanvas) is almost done. > > > >>> > > > >>> My question is how to integrate it into LCL? > > > >>> IMHO user should have a choice which TPrinterCanvas implementation use. > > > >>> Now in TCUPSPrinter is hard coded TPostscriptPrinterCanvas: > > > >>> > > > >>> function TCUPSPrinter.GetCanvasRef: TPrinterCanvasRef; > > > >>> begin > > > >>> Result:=TPostscriptPrinterCanvas; > > > >>> end; > > > >>> > > > >>> Petr > > > >>> > > > >> Nobody here, who can halp me to integrate TCairoCanvas into LCL? > > > >> > > > >> Were in LCL directory structure place cairocanvas.pas (depends only on > > > >> libcairo) and gdkcairocanvas.pas (depends extra on libgdk). > > > >> > > > >> How should programer select which implementation of TPrinterCanvas will > > > >> be created in TPrinter.GetCanvas. > > > >> > > > >> Now TCUPSPrinter implementation use hard coded TPostscriptPrinterCanvas > > > >> and needs access to TPostscriptPrinterCanvas(Canvas).OutputFileName. > > > >> My TCairoCanvas implementation has the same needs. > > > >> > > > >> I do not want to waste my time if comunity do not have an interest to > > > >> include CairoCanvas into lcl. > > > > > > > > I think you should create an abstract TFilePrinterCanvas descendent of > > > > TPrinterCanvas (with the needed FileName property) and define a variable > > > > > > > > Type > > > > TFilePrinterCanvas = Class of TFilePrinterCanvas; > > > > > > > > Var > > > > CupsCanvasClass : TFilePrinterCanvas = TPostscriptPrinterCanvas; > > > > > > > > which the programmer can set, if so desired. then the > > > > TCUPSPrinter.GetCanvasRef > > > > implementation checks the CupsCanvasClass variable. If it is set, > > > > it uses the class defined there, and if not, it uses > > > > TPostscriptPrinterCanvas. > > > Thanks. > > > > > > This corresponds with my idea. > > > > > > Where is recommeded place for cairocanvas.pas and gdkcairocanvas.pas in > > > lcl? CairoCanvas can work on Windows, Linux and Mac OS X. > > > > lcl/interfaces/gtk2 > I think this is good place for gdkcairocanvas.pas. But cairocanvas.pas > needs only libcairo. It do not needs gtk. Well, it should be added to the fpc sources, but till this is in a release we have to add this unit to the lazarus sources too.

Ok.

I place it into lcl/ along poscriptcanvas.pas.

Petr

Petr Kristan . EPOS PRO s.r.o., Bozeny Nemcove 2625, 530 02 Pardubice tel: +420 466335223 Czech Republic (Eastern Europe) fax: +420 466510709

Reply by email

Mattias Gaertner
to Unknown author
On Thu, Mar 11, 2010 at 03:01:18PM +0100, Mattias Gaertner wrote:

[...]

Show quoted text 12 lines
> > > > Where is recommeded place for cairocanvas.pas and gdkcairocanvas.pas in > > > > lcl? CairoCanvas can work on Windows, Linux and Mac OS X. > > > > > > lcl/interfaces/gtk2 > > I think this is good place for gdkcairocanvas.pas. But cairocanvas.pas > > needs only libcairo. It do not needs gtk. > > Well, it should be added to the fpc sources, but till this is in a > release we have to add this unit to the lazarus sources too. Ok. I place it into lcl/ along poscriptcanvas.pas.

lcl/ only contains platform independent sources (they must use a minimum of external libraries). Platform dependent things should be placed in lcl/interfaces/...
I think that non gtk users won't use cairo, so better place it in lcl/interfaces/gtk2.

Mattias

Reply by email

Unknown author
to Mattias Gaertner
Mattias Gaertner wrote 23 lines
On Thu, 11 Mar 2010 15:08:57 +0100 wrote: > On Thu, Mar 11, 2010 at 03:01:18PM +0100, Mattias Gaertner wrote: [...] > > > > > Where is recommeded place for cairocanvas.pas and gdkcairocanvas.pas in > > > > > lcl? CairoCanvas can work on Windows, Linux and Mac OS X. > > > > > > > > lcl/interfaces/gtk2 > > > I think this is good place for gdkcairocanvas.pas. But cairocanvas.pas > > > needs only libcairo. It do not needs gtk. > > > > Well, it should be added to the fpc sources, but till this is in a > > release we have to add this unit to the lazarus sources too. > Ok. > > I place it into lcl/ along poscriptcanvas.pas. lcl/ only contains platform independent sources (they must use a minimum of external libraries). Platform dependent things should be placed in lcl/interfaces/... I think that non gtk users won't use cairo, so better place it in lcl/interfaces/gtk2.

Windows or MacOSX user can use TCairoCanvas for export to pdf, ps, svg or png. He only needs libcairo which do not depends on gtk. Dependency is reversed, libgtk depends on libcairo.

For example Firefox 3 (gecko) uses Cairo on all platforms.

If will be interest we can easily make TWin32CairoCanvas, TX11CairoCanvas or TQuartzCairoCanvas (OSX) and render on screen. This should establish quite correct multiplatform WYSIWYG.

I myself think about to use it on Linux/gtk2 and Win32 for screen and printing in our DTP like project.

But if you still prefer lcl/interfaces/gtk2, I place it there.

Petr

Petr Kristan . EPOS PRO s.r.o., Bozeny Nemcove 2625, 530 02 Pardubice tel: +420 466335223 Czech Republic (Eastern Europe) fax: +420 466510709

Reply by email

Jesus Reyes
to Mattias Gaertner: On Thu, 11 Mar 2010 15:08:57 +0100 [...] lcl/ only contains platform independent sources…
Show quoted text 15 lines
> I place it into lcl/ along poscriptcanvas.pas. lcl/ only contains platform independent sources (they must use a minimum of external libraries). Platform dependent things should be placed in lcl/interfaces/... I think that non gtk users won't use cairo, so better place it in lcl/interfaces/gtk2. Mattias --

I think it would be good to make it an independent package available in Lazarus, not necessarily linked to the LCL or FPC and at the same time available to users from different OS and widgetsets, the quality and the multi backend ability is certainly something that not only gtk users want.

Jesus Reyes A.

Encuentra las mejores recetas en Yahoo! Cocina.
http://mx.mujer.yahoo.com/cocina/

Reply by email

Unknown author
to Jesus Reyes
Jesus Reyes wrote 18 lines
> > I place it into lcl/ along poscriptcanvas.pas. > > lcl/ only contains platform independent sources (they must > use a > minimum of external libraries). Platform dependent things > should be > placed in lcl/interfaces/... > I think that non gtk users won't use cairo, so better place > it in > lcl/interfaces/gtk2. > > > Mattias > > -- I think it would be good to make it an independent package available in Lazarus, not necessarily linked to the LCL or FPC and at the same time available to users from different OS and widgetsets, the quality and the multi backend ability is certainly something that not only gtk users want.

It sounds good.

I make CUPSPrinter switch:

Var
  CupsCanvasClass : TFilePrinterCanvas = TPostscriptPrinterCanvas;

and remaining can be easily independent.

Petr

Petr Kristan . EPOS PRO s.r.o., Bozeny Nemcove 2625, 530 02 Pardubice tel: +420 466335223 Czech Republic (Eastern Europe) fax: +420 466510709

Reply by email

Mattias Gaertner
to Jesus Reyes: I think it would be good to make it an independent package available in Lazarus, not…
Show quoted text 18 lines
> > I place it into lcl/ along poscriptcanvas.pas. > > lcl/ only contains platform independent sources (they must > use a > minimum of external libraries). Platform dependent things > should be > placed in lcl/interfaces/... > I think that non gtk users won't use cairo, so better place > it in > lcl/interfaces/gtk2. > > > Mattias > > -- I think it would be good to make it an independent package available in

Yes. A normal package is the best solution.

Mattias

Reply by email