[haiku-appserver] Re: clipping

  • From: Adi Oanca <adioanca@xxxxxxxxxxxxx>
  • To: haiku-appserver@xxxxxxxxxxxxx
  • Date: Fri, 25 Mar 2005 20:36:28 +0200

Hi,

DarkWyrm wrote:
>>Hi,
>>
>>while I'm still cleaning up and shuffling arround code, could someone 
>>explain to me how clipping is supposed to work in app_server? The 
>>clipping region is passed in the DrawData object, but what coordinate 
>>space is this supposed to be in, screen space? Why is there a 
> 
> Everything which takes place in the DisplayDriver is in screen 
> coordinates. I _think_ that the region objects kept in Layer are 
> relative to the layer itself, if not, then they are relative to the 
> parent. Adi?

        All regions are in screen space. At least that the intention. :-)

>>DrawBitmap call, that takes an additional clipping region? It seems 
>>to 
>>be the only DrawBitmap call in actual use (by ServerWindow), while 
>>the 
>>other one has neither a DisplayDriver nor ViewDriver implementation 
>>(but DirectDriver and BitmapDriver implement it, but those are not in 
>>regular use, are they?). PicturePlayer uses the second form of 
> 
> The unused one is probably cruft. PicturePlayer is so old and crusty 
> that it actually has mold growing on it. :P

        =))

>>DrawBitmap(), the one which isn't actually implemented. In which 
>>coordinate space is the clipreg member of PicturePlayer?
>>Do all drawing commands allways get the screen coordinate system?

        Yes. If it's not like that, it should be.

>>What 
>>about scaled and scrolled BViews, is that taken into account already?

        Taken into account, yes. Implemented no.

>>If so, where is the origin of the scale supposed to be then?

        LayerData::coordOrigin


bye,
Adi

Other related posts: