Commit Graph

58 Commits

Author SHA1 Message Date
Axel Dörfler
80a230b10e Rewrote the push/pop state and ViewAttr stuff:
- it now seems to work finally correctly
- renamed ViewAttr to ViewState and put it into the BPrivate namespace
- some refactoring (moved some private BView methods to ViewState)
- renamed AS_LAYER_MOVETO/RESIZETO to *_TO (note the underscore)
- exchanged BView::originX/Y with fParentOffset (BPoint)
- divided AS_LAYER_GET_COLORS into separate ones for high/low/view color
- BView::SetPattern() now actually works as expected (ie. updates
  only if necessary)
- exchanged the ViewAttr::flags with ViewState::valid_flags which inverses
  the previous logic (which wasn't even used consistently)
- fState was initialized twice (incorrectly by the ViewAttr constructor,
  and then again correctly by initCachedState()) - now the ViewState
  constructor does the job alone, but correctly
- BView::PushState() no longer resets the state (it did so only locally
  anyway...)
- cleanup


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-28 18:56:55 +00:00
Stefano Ceccherini
4b7db694ce RetraceSemaphore() doesn't need to be public
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13268 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-25 05:40:59 +00:00
Stephan Aßmus
cf5ff0c0d0 fixed memory corruption in the stuff I added to moreUTF8. This fixes GetEscapement crashes. The rest of the file needs reviewing as well, but I wanted to commit this ASAP
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13155 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-15 17:09:00 +00:00
Adi Oanca
15409bba6e added a todo
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@13047 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-10 15:55:49 +00:00
Stefano Ceccherini
88da217a0b Added a header with menu actions defines
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 13:34:50 +00:00
Stephan Aßmus
442992bf26 fixed some pretty bad bugs that prevented menus from working (they now do): The BMessage* in AddShortcut is taken in responsibility by the BWindow, so we cannot directly use the message from BMenuItem, the be_app was locked in InitData but never unlocked, it fixes BMenus only working once, and who knows what else it fixes. A little cleanup with _BCmdKey usage, also note that it is inefficient to RemoveItem()s from a list in the destructor of any class using a BList as data container! Simply delete the items and be done with it. The BList destructor will take care of the rest and free its storage in one go.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-07 13:19:28 +00:00
DarkWyrm
2e1184a6e4 Undid a change from r12937 to fix building libbe.so
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12958 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-05 01:15:26 +00:00
Stephan Aßmus
59345e264f huge cleanup, support for SetSizeLimits, support for truncating strings, numerous decorator bug fixes, Layer does not draw when view color is B_TRANSPARENT_COLOR, cleaner dispatching of mouse events to the WinBorder in RootLayer, commented the char map selection in the font server, as it seems glyph lookup by unicode index works much better with the default map
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12945 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 19:50:30 +00:00
Stefano Ceccherini
59cbc87ad8 RegionSupport accepts, as parameters, references to BRegions (consts when possible) instead of pointers. Note: this is not a functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12937 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-06-03 08:34:08 +00:00
Stephan Aßmus
7220b138f2 fixed confusion of byteCount and charCount in ServerFont::StringWidth(), just in case anyone really uses it later. Added UTF8CountChars() to moreUTF8.h, but then I didn't need it...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12750 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-20 23:51:33 +00:00
Stephan Aßmus
1db49f8a7a added a function to count the bytes in a string if the number of UTF8 chars is already known
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12661 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-05-13 17:30:59 +00:00
Jérôme Duval
a21ddd6d4e added a dependency on Window.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11223 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 16:45:31 +00:00
Jérôme Duval
1b6e740f1e kMenuWindowLook is actually a kMenuWindowFeel
Added private flags


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 13:54:30 +00:00
Jérôme Duval
31d6118e45 Added a private header for window looks, types, feels
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11212 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-02-02 11:05:21 +00:00
Stefano Ceccherini
a3dff518f0 Updated header
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10583 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-04 13:00:33 +00:00
Stefano Ceccherini
92044c244d Removed the frame parameter from BMenuWindow
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10574 a95241bf-73f2-0310-859d-f6bbb57e9c96
2005-01-03 16:05:46 +00:00
Stefano Ceccherini
446b8c194e Moved BMenuWindow to its own file
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10536 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-12-27 09:05:16 +00:00
Stefano Ceccherini
fd99e7194c Made the (private) 'JAHA' message a constant, and moved it to ViewAux.h. Maybe it doesn't fit much in there, but I didn't want to create a new header just for it. Feel free to move it to a better place.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10521 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-12-23 14:03:28 +00:00
Stefano Ceccherini
a2fab5626d Added a debugger call in case the reallocation fails.
We can't handle an allocation failure there (at least for now). Took the chance to stylize the code.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-11-04 08:53:46 +00:00
Jérôme Duval
5c99440e0f Added ColorTools and ColumnListView from Vision cvs repository
(ColorTools.h : 1.2, ColorTools.cpp : 1.4,
ColumnListView.h : 1.13, ColumnListView.cpp : 1.3)
Original code from OpenTracker


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-09-16 20:42:34 +00:00
Stefano Ceccherini
e13bd0e1a8 Reverted to the original comment, as I had worked on an older version of this file.
Took the chance to add the license header.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8639 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-25 07:36:57 +00:00
Stefano Ceccherini
0cc992995e Changed some parameters to be passed through const reference [A change suggested by Christian Packmann]. This gives a nice speed boost.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-08-24 06:31:36 +00:00
Jérôme Duval
5202ba9d64 added a function signature
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-29 13:33:51 +00:00
Jérôme Duval
f04e3de28c extern "C" not needed, don't know why
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8488 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-27 10:28:44 +00:00
Jérôme Duval
372a42ffb8 Added a header for our global private input functions. (JBurton again)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8487 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-27 10:25:07 +00:00
Stefano Ceccherini
61c93e14bc Researched and removed a TODO item
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8358 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-09 07:13:03 +00:00
Stefano Ceccherini
edc6e254f3 Fixed the outstanding BRegion bug. It turned out that rects_intersect() returned true in some cases when called with an invalid clipping_rect. Added an ASSERT() call to BRegion::_AddRect(), which would've saved my day.
Added some comments


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8246 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-07-01 06:16:00 +00:00
Stefano Ceccherini
a5f7275d76 Adding some more or less complete classes from Marc Flerackers
(BDragger, BShelf and ZombieReplicantView). Not yet added to the build


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-29 12:20:32 +00:00
beveloper
54c0657bab another build fix
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@8080 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-20 17:43:32 +00:00
beveloper
65f8356f78 added missing newline
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7931 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-06-12 19:57:20 +00:00
Stefano Ceccherini
ac41b0f103 Added license
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7188 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-09 11:07:35 +00:00
Stefano Ceccherini
64e8448a05 Removed some fields, simplified the header. Added the license
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7187 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-04-09 07:59:42 +00:00
Stefano Ceccherini
e064995715 Removed an unneeded dependency
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@7016 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-03-18 07:37:38 +00:00
Stefano Ceccherini
f1569dbb9e Moved some headers here so they can be included by Globals.cpp in the interface kit folder
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6092 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-01-15 07:15:37 +00:00
DarkWyrm
89c2c01ab5 Replaced _view_attr with ViewAttr class to remove a crash
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5620 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-12-07 22:10:52 +00:00
DarkWyrm
8ed6b7e48b Tweaked a def to remove a conflict with Accelerant.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5438 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-11-22 00:43:16 +00:00
Stefano Ceccherini
d8a7172a91 simplified rects_intersect(). Now it's very similar to BRect::Intersects()
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5138 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-24 10:50:41 +00:00
Stefano Ceccherini
4be90e7fc1 Fixed a possible buffer overflow in r_or() and r_sub() (thanks to Ingo Weinhold for his advices), stripped BRegion of all his friends, and moved them into a single class (BRegion::Support()). Removed "find_small_bottom()", as we didn't use it at all. Added some debugging output to BRegion::Support (that will help fixing bugs)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5131 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-10-24 07:33:41 +00:00
Ingo Weinhold
b8bd561224 Needs to include the R5_Session.h
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-19 19:42:52 +00:00
Stefano Ceccherini
cafaa5aa29 Added a BDirectWindow implementation which works with BeOS R5 (at least, with the Chart demo app)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4755 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-18 13:39:39 +00:00
Stefano Ceccherini
8d1a0ee7c1 Fixed a bug in BRegion copy constructor. If one constructed a BRegion with
BRegion region(region), the region would have been put into an unitialized state. Took the chance to cleanup a bit the code, using some methods of clipping.h. Changed the way offset_rect works, and changed its name too. Added a note to Region.cpp


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4512 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-05 10:16:34 +00:00
DarkWyrm
6a746063c9 Added app-side font list support
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4438 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-09-01 17:06:11 +00:00
Adi Oanca
6bcec3643b Helper definitions for BWindow class
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4426 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 17:23:10 +00:00
Adi Oanca
d061757a51 Helper definitions for BView class
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4425 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-31 17:22:46 +00:00
Stefano Ceccherini
e6404469ad added offsect_rect, fixed a spelling error
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4362 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-08-22 09:12:56 +00:00
Stefano Ceccherini
a5b449ce66 Added BScreen implementation, which uses BPrivateScreen (not yet implemented).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4114 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-28 14:35:02 +00:00
Stefano Ceccherini
2a0863af09 Some more clipping_rects methods, based on BRects methods. Currently unused, but could be used in the Game Kit and, why not, also in the app server itself.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@4053 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-22 12:49:49 +00:00
Stefano Ceccherini
d4400ac125 A line can be too a valid rect.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3816 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-07-03 06:29:06 +00:00
Stefano Ceccherini
0147056b81 Added a partial implementation of BRegion
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3669 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-26 10:09:01 +00:00
Marc Flerackers
7ea7a8928a BMenuField
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3542 a95241bf-73f2-0310-859d-f6bbb57e9c96
2003-06-16 08:32:55 +00:00