#
f4c2f7eb |
|
10-Jan-2014 |
Jonathan Schleifer <js@webkeks.org> |
Remove variable length arrays of non-PODs. Variable length arrays of non-PODs are not part of the C++ standard, but a GNU extension that never worked correctly. Instead, BStackOrHeap array is used now, which makes sure that it's not too big for the stack, calls all constructors and is valid C++.
|
#
ac4525b2 |
|
10-Aug-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Changed BRegion to use int32 instead of long. There is no need for fCount and fDataSize to be long, not going to have more than 2^32 rectangles in a region. Thanks Axel for pointing that out.
|
#
a35bbf9f |
|
29-Sep-2011 |
Axel Dörfler <axeld@pinc-software.de> |
* Coding style cleanup. * The Read() method remembers the last error, so you don't have to check each read when you do several in a row. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42789 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ec1bcf62 |
|
01-Dec-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Added private methods get_app_server_port() (that stores the server port, and doesn't have to find it every time), and create_desktop_connection() that is now used from BApplication::_ConnectToServer() as well as the DesktopLink. * Move PortLink::SetTo() into base class ServerLink. * Eliminated duplicated member fReplyPort in DesktopLink. * Cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34397 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
64eb49fd |
|
15-Feb-2009 |
Stephan Aßmus <superstippi@gmx.de> |
* Cleanup in the Gradient department. No fuctional change. Renamed BGradient::color_step to BGradient::ColorStop as it's called everywhere else. Also renamed BGradient::gradient_type to just BGradient::Type. Renamed BGradient::Type() to GetType(). * Simplification of method names in Painter.cpp. Some not yet complete and yet inactive code to accelerate vertical gradients (bypassing AGG for this special case). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29214 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
52de6dce |
|
08-Nov-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Moved the gradient_type and color_step structs into the BGradient class/namespace. Renamed the B_GRADIENT_* types to TYPE_* as the context is already given. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28564 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
431dc47d |
|
15-Oct-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Patch by Artur Wyszynski with some changes by myself: * Resolved TODO: The type of the gradient is no longer encoded twice in the app_server link protocoll. * Moved instantiation of the BGradient into the LinkReceiver::ReadGradient() method. * Check success for (at least) ReadGradient() in ServerWindow. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28150 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
991547ef |
|
14-Oct-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Patch by Artur Wyszynski: * Implemented BGradient, BGradientLinear, BGradientRadial, BGradientDiamond, BGradientConic and BGradientRadialFocus new Interface Kit classes. * Implemented all the (AGG-based) backend necessary in the app_server to render gradients (Painter, DrawingEngine) * app_server/View can convert a BGradient layout to screen coordinates. * Added BGradient methods of the Fill* methods in BView. * Implemented a test app and added it to the image as a demo. * Adopted Icon-O-Matic and libs/icon in order to avoid clashing with the new BGradient class. Re-use some parts where possible. Awesome work, Artur! Thanks a lot. Now a more modern looking GUI has just become much easier to implement! :-) TODO: * Remove the need to have gradient type twice in the app_server protocol. * Refactor some parts of the patch to remove duplicated code (Painter, DrawingEngine). * Adopt the BPicture protocol to know about BGradients. * Review some parts of the BArchivable implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28109 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
fddbc231 |
|
12-Aug-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* fix attaching and reading empty regions git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21909 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
582da173 |
|
19-Jul-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* complete reimplementation of BRegion and it's backend I "ported" the region implementation from XOrg to work on BRegion data. This resulted in pretty much the same code structure as before, with RegionSupport.cpp containing the messy details. Only now it _is_ really messy from a code beauty point of view. I didn't exactly feel like cleaning it up right now... but I guess I will have to. So what does this mean - our BRegion implementation was very slow (no offense!), and on top of that it scaled very badly with more and more rects. The new implementation seems to be on par with the very fast R5 implementation and the data looks exactly the same too. BRegion is very performance critical for the app_server, and I cannot wait to try this on my slow computer... Some changes are noteworthy: The right and bottom coordinates of BRegion internal data are now exclusive! I inherited that from the XOrg implementation and didn't feel like changing the code, seeing it is probably tested quite well. The conversion is handled transparently. Secondly, constructing a BRegion with just one rect is not invoking malloc anymore for the member data, this makes it much more efficient to use temporary BRegions with just one rect, both externally and internally in the BRegion implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21665 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
38220fb0 |
|
02-Apr-2007 |
Jérôme Duval <korli@users.berlios.de> |
fix ServerLink::ReadShape and ServerLink::AttachShape for empty shapes git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20517 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1156138b |
|
01-Nov-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Removed unused files like PortMessage.cpp/h and Session.cpp/h. Renamed LinkMsgReceiver.h and LinkMsgSender.h to LinkReceiver.h and LinkSender.h like the classes they contain. Split up PortLink.cpp/h into ServerLink.cpp/h and PortLink.cpp/h. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14635 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
f4c2f7ebdb11576420c00fc4ecb23b32c3ce3137 |
|
10-Jan-2014 |
Jonathan Schleifer <js@webkeks.org> |
Remove variable length arrays of non-PODs. Variable length arrays of non-PODs are not part of the C++ standard, but a GNU extension that never worked correctly. Instead, BStackOrHeap array is used now, which makes sure that it's not too big for the stack, calls all constructors and is valid C++.
|
#
ac4525b2a5a2f3fa3805efaf0c61f88fe1ff1e30 |
|
10-Aug-2012 |
Alex Smith <alex@alex-smith.me.uk> |
Changed BRegion to use int32 instead of long. There is no need for fCount and fDataSize to be long, not going to have more than 2^32 rectangles in a region. Thanks Axel for pointing that out.
|
#
a35bbf9fb38e83027b8e5679104c48a2942962ea |
|
29-Sep-2011 |
Axel Dörfler <axeld@pinc-software.de> |
* Coding style cleanup. * The Read() method remembers the last error, so you don't have to check each read when you do several in a row. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42789 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
ec1bcf6243a5d41c449c9914e2c26485d8ce943c |
|
01-Dec-2009 |
Axel Dörfler <axeld@pinc-software.de> |
* Added private methods get_app_server_port() (that stores the server port, and doesn't have to find it every time), and create_desktop_connection() that is now used from BApplication::_ConnectToServer() as well as the DesktopLink. * Move PortLink::SetTo() into base class ServerLink. * Eliminated duplicated member fReplyPort in DesktopLink. * Cleanup. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34397 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
64eb49fd247e510f572ead9f2fbec5b39acd3fe9 |
|
15-Feb-2009 |
Stephan Aßmus <superstippi@gmx.de> |
* Cleanup in the Gradient department. No fuctional change. Renamed BGradient::color_step to BGradient::ColorStop as it's called everywhere else. Also renamed BGradient::gradient_type to just BGradient::Type. Renamed BGradient::Type() to GetType(). * Simplification of method names in Painter.cpp. Some not yet complete and yet inactive code to accelerate vertical gradients (bypassing AGG for this special case). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29214 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
52de6dce94e48d957a3bb96d6b256f45a953f4c2 |
|
08-Nov-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Moved the gradient_type and color_step structs into the BGradient class/namespace. Renamed the B_GRADIENT_* types to TYPE_* as the context is already given. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28564 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
431dc47ddeaddc4ad9467b87c09f6777d99fbe1c |
|
15-Oct-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Patch by Artur Wyszynski with some changes by myself: * Resolved TODO: The type of the gradient is no longer encoded twice in the app_server link protocoll. * Moved instantiation of the BGradient into the LinkReceiver::ReadGradient() method. * Check success for (at least) ReadGradient() in ServerWindow. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28150 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
991547ef6c1fca650f0fba855206296ef54bc441 |
|
14-Oct-2008 |
Stephan Aßmus <superstippi@gmx.de> |
Patch by Artur Wyszynski: * Implemented BGradient, BGradientLinear, BGradientRadial, BGradientDiamond, BGradientConic and BGradientRadialFocus new Interface Kit classes. * Implemented all the (AGG-based) backend necessary in the app_server to render gradients (Painter, DrawingEngine) * app_server/View can convert a BGradient layout to screen coordinates. * Added BGradient methods of the Fill* methods in BView. * Implemented a test app and added it to the image as a demo. * Adopted Icon-O-Matic and libs/icon in order to avoid clashing with the new BGradient class. Re-use some parts where possible. Awesome work, Artur! Thanks a lot. Now a more modern looking GUI has just become much easier to implement! :-) TODO: * Remove the need to have gradient type twice in the app_server protocol. * Refactor some parts of the patch to remove duplicated code (Painter, DrawingEngine). * Adopt the BPicture protocol to know about BGradients. * Review some parts of the BArchivable implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@28109 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
fddbc2311fa6ceeb123f8e0ab602bbc3b9f26da4 |
|
12-Aug-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* fix attaching and reading empty regions git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21909 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
582da17386c4a192ca30270d6b0b95f561cf5843 |
|
19-Jul-2007 |
Stephan Aßmus <superstippi@gmx.de> |
* complete reimplementation of BRegion and it's backend I "ported" the region implementation from XOrg to work on BRegion data. This resulted in pretty much the same code structure as before, with RegionSupport.cpp containing the messy details. Only now it _is_ really messy from a code beauty point of view. I didn't exactly feel like cleaning it up right now... but I guess I will have to. So what does this mean - our BRegion implementation was very slow (no offense!), and on top of that it scaled very badly with more and more rects. The new implementation seems to be on par with the very fast R5 implementation and the data looks exactly the same too. BRegion is very performance critical for the app_server, and I cannot wait to try this on my slow computer... Some changes are noteworthy: The right and bottom coordinates of BRegion internal data are now exclusive! I inherited that from the XOrg implementation and didn't feel like changing the code, seeing it is probably tested quite well. The conversion is handled transparently. Secondly, constructing a BRegion with just one rect is not invoking malloc anymore for the member data, this makes it much more efficient to use temporary BRegions with just one rect, both externally and internally in the BRegion implementation. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21665 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
38220fb0e5bcabe06cfeec080f630c4898a515f7 |
|
02-Apr-2007 |
Jérôme Duval <korli@users.berlios.de> |
fix ServerLink::ReadShape and ServerLink::AttachShape for empty shapes git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@20517 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
1156138b2f9c9c85e0fe2538a1186d522d978d31 |
|
01-Nov-2005 |
Axel Dörfler <axeld@pinc-software.de> |
Removed unused files like PortMessage.cpp/h and Session.cpp/h. Renamed LinkMsgReceiver.h and LinkMsgSender.h to LinkReceiver.h and LinkSender.h like the classes they contain. Split up PortLink.cpp/h into ServerLink.cpp/h and PortLink.cpp/h. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14635 a95241bf-73f2-0310-859d-f6bbb57e9c96
|