[Date Prev][Date Next][Thread Prev][Thread Next][Thread Index]
Re: [XaraXtreme-dev] Cairo Port
- From: Jonas Diemer <diemer@xxxxxx>
- Date: Mon, 07 May 2007 23:38:43 +0200
- Subject: Re: [XaraXtreme-dev] Cairo Port
Hi,
again, thanks for replying. Didn't expect such immediate feedback since
the list had been mute for a month or so :-)
Alex Bligh schrieb:
--On 07 May 2007 22:08 +0200 Jonas Diemer <diemer@xxxxxx> wrote:
1. Carl created stubs for function calls to CDraw functions, which
are to
be replaced by Cairo functions. Wouldn't it be easier to derive a new
GDrawContext instead? This has been done originally with GDrawAsm as a
C++ wrapper for the assemblerfunctions in GDRAW.DLL. I think this would
at least save passing around contexts, and would be more object
oriented,
too.
Yes and no. Yes, in that creating a derived context class is desirable,
so one can do both from the same binary, and no in that you will need
to do some (possibly conditional) stubbing out in order to avoid
unresolved
references when linking without CDraw.
True unless I replace GDrawAsm, which I was originally thinking about.
But you are right, it might be nice to switch at run time (for testing
etc.). I might as well continue the way Carl started for now, but then
there's this context passing which I don't fully understand yet.
What is actually passed in the GCONTEXT struct? Esp., what's in the Data
field?
Should Valid actually be set toC90FDAA2 as it says in gconsts.h:238?
You will also, I think, need to look carefully at whether you need to
derive an alternate render region class from GRenderRegion; ideally you
won't (as you'll have to change all sorts of instances where these are
created); perhaps you can use the render region capabilities system
(RRCAPS).
Hmm, haven't thought about those details yet. This is what Carl was
refering to where GDRAW etc. paint to, right?
But using stubs or deriving a GDrawContext should be irelevant for this
matter, right?
I possess complementary skills to Carl, in that I know very little about
Cairo, but a little more about Xara internals than most, though the
Xara guys know more, obviously.
Great, then I have two experts I can refer to with problems :-)
Jonas.