[haiku-commits] Re: r34761 - haiku/trunk/src/add-ons/decorators/MacDecorator

  • From: PulkoMandy <pulkomandy@xxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Thu, 24 Dec 2009 09:43:04 +0100

Le Thu, 24 Dec 2009 05:34:45 +0100, Ryan Leavengood <leavengood@xxxxxxxxx> a écrit:


On Wed, Dec 23, 2009 at 4:25 PM,  <pulkomandy@xxxxxxxxx> wrote:

You can change the decorator using the setdecor command, but you have to
add MacDecorator in /home/config/add-ons/decorators first.

Pretty cool. I had no idea we actually could support decorator
add-ons, though I had thought it might be nice to have for those
people who want additional buttons or whatever in the decorators. I'm
not sure how much duplicate code there is between decorators, but it
might be worth looking into how to reduce that and make it easier to
make new decorators which just change the graphics.

It's actually more than just graphics : the decorator handle the mouse clicks on the window tab and border and they all behave dirrerent. For example the mac decorator uses the border to resize the window, not to move it.

As for code duplication, there is quite much between ClassicBe and DefaultDecorator, but MacDecorator is quite a bit different. For example there is no support for moving the tab around as it always takes the full window length. It is possible to design a decorator with vertical tab on the side, below the window, or even right in the middle of the client area if you want so.

Also I vote for creating a Mac OS X decorator at some point too, not
that I'm a huge fan, but I'm sure the Macphiles will like it.

I'm planning to bring back the Windows decorator first, then write an Amiga one (to have the same set of features as R5 ;)). While writing the amiga one I'll document the process and the inner workings, this way it will be easier to contribute new decorators for other people.

--
Adrien Destugues / PulkoMandy
http://pulkomandy.ath.cx

Other related posts: