Commit Graph
42339 Commits
Author SHA1 Message Date
Alex Wilson 4ca2a44779 Make ownership-taking idempotent during unarchiving.
The previous scheme made it hard to deal with reference-counted objects,
which may be owned by many objects.
2012-05-03 08:45:29 +12:00
Alex Wilson 0a408e4992 Make it possible to have a Variable not belonging to any LinearSpec. 2012-05-03 08:45:27 +12:00
Alex Wilson bc7956c7cf Use const overloading on BALMLayout::{X|Y}TabAt(). 2012-05-03 08:45:26 +12:00
czeidler d7568eabd2 Add IndexOf methods. 2012-05-03 08:45:25 +12:00
czeidler 15ef732f0d Check first if we own the constraint before deleting it. 2012-05-03 08:45:23 +12:00
Alex Wilson 4878cc70e2 Don't remove ourselves from a BLayoutContext when it is leaving. 2012-05-03 08:45:22 +12:00
czeidler c4340eab04 Fix row column weight. 2012-05-03 08:45:21 +12:00
czeidler 35babcf06d Allow left and top tab to be NULL. 2012-05-03 08:45:19 +12:00
Alex Wilson 0bd511a331 Avoid use after free in RowColumnManager.cpp
Fixes CID 10862
2012-05-03 08:45:18 +12:00
Alex Wilson 681f48fcbc Replace BALMLayout::Ordered*Tabs() method with *TabAt(int, bool sorted). 2012-05-03 08:45:17 +12:00
Alex Wilson 6169a6e3d1 Minimize the effect invisible items have on a BALMLayout.
There seems to still be some effect on positioning, but invisible items
no longer constrain the layout.
2012-05-03 08:45:16 +12:00
Alex Wilson af6ddb01df Improve FriendLayout test to test invalidations as well. 2012-05-03 08:45:14 +12:00
Alex Wilson fbd2dfcf17 Refactor ActiveSetSolver::Find{Min|Max}s(). 2012-05-03 08:45:13 +12:00
Alex Wilson a9242e3d98 Properly handle unbounded results in SharedSolver::Validate{Min|Max}() 2012-05-03 08:45:12 +12:00
Alex Wilson 1cbe95140a Refactor SharedSolver::Validate*() methods a bit more. 2012-05-03 08:45:10 +12:00
Alex Wilson 3ade12dd15 Make BALMLayout::BasePreferredSize() useful again. 2012-05-03 08:45:09 +12:00
Alex Wilson ac84362568 Update BadLayout test to sync with OnBadLayout changes. 2012-05-03 08:45:08 +12:00
Alex Wilson 09e87fa352 Pass more information to BadLayoutPolicy.
Also, re-add BadLayoutPolicy invocations, which were lost while creating
SharedSolver.
2012-05-03 08:45:06 +12:00
Alex Wilson 93904ad087 Have SharedSolver return the solver result from Validate*() methods. 2012-05-03 08:45:05 +12:00
Alex Wilson 82a0965357 Improve efficiency when validating an ALM layout. 2012-05-03 08:45:04 +12:00
Alex Wilson 419fe0b8ae Introduce SharedSolver class to improve BALMLayout's friend feature. 2012-05-03 08:45:02 +12:00
Alex Wilson 708a298e22 Refactor XTab and YTab to share a common base, TabBase.
TabBase takes care of layout tracking etc..
2012-05-03 08:45:01 +12:00
Alex Wilson a9761aedbf Refactor BALMLayout::AddItem to reduce repitition. 2012-05-03 08:45:00 +12:00
Alex Wilson 93977272f4 When adding tabs to a BALMLayout, ensure they are fully added. 2012-05-03 08:44:58 +12:00
Alex Wilson c640be198b Add a test for ALM's 'friend' behaviour. 2012-05-03 08:44:57 +12:00
Alex Wilson c761a8a6d4 Let BALM::{X|Y}Tabs be in multiple BALMLayouts, if they are friendly. 2012-05-03 08:44:55 +12:00
Alex Wilson f9cabdd009 Use BReferenceable properties of LinearSpec in BALMLayout.
This saves us from a potential use-afte-free bug.
2012-05-03 08:44:54 +12:00
Alex Wilson 7c3800078e Make LinearProgramming::LinearSpec BReferenceable. 2012-05-03 08:44:53 +12:00
Alex Wilson 1c8104a70e Add a test for nested BALMLayouts. 2012-05-03 08:44:51 +12:00
Alex Wilson f6db102e47 Make BALMLayout respect its position when nested. 2012-05-03 08:44:50 +12:00
Alex Wilson 51b5b66b01 Remove lp_solve as a dependency of the linprog lib.
Really, it hasn't depended on lp_solve for a while, but it was still
linked in in some places.
2012-05-03 08:44:48 +12:00
Alex Wilson 03adc8c767 Add test for BALMLayout's bad layout handling. 2012-05-03 08:44:47 +12:00
Alex Wilson 2bbf8b1fbc Add the ability to handle bad layouts to BALMLayout. 2012-05-03 08:44:45 +12:00
Alex Wilson 57d93f836d Disable debug output by default in linprog. 2012-05-03 08:44:44 +12:00
Alex Wilson 3479e516b7 Compose spacing given to BALMLayout constructor. 2012-05-03 08:44:43 +12:00
Alex Wilson 548c302600 Adjust MusicCollection app for changes in BALMLayout. 2012-05-03 08:44:42 +12:00
Alex Wilson de245ca017 Adjust IMAP addon for changes in BALMLayout. 2012-05-03 08:44:40 +12:00
Alex Wilson 20cc993ab5 Remove BALM::Area::fConstraints field, which is not needed.
It's easier to just delete all the constraints in the dtor, the ones that
wouldn't have been in fConstraints are NULL at this point anyway.
2012-05-03 08:44:39 +12:00
Alex Wilson 895414da9d In BALM::Area rename fTopLeftInset to fLeftTopInset.
This is consistent with for instance, the BSize ctor.
2012-05-03 08:44:38 +12:00
Alex Wilson f0307e765e Fix spacing before first header in src/libs/alm.
Also add copyright header in ALMGroup.cpp.
2012-05-03 08:44:36 +12:00
Alex Wilson 324ce2851d Add FBC padding to ALM classes. 2012-05-03 08:44:35 +12:00
Alex Wilson 7e021d45da Make BALM::InsetForTab() methods const. 2012-05-03 08:44:34 +12:00
Alex Wilson 0da6f2e916 Rename BALM::GroupItem to BALM::ALMGroup, and move it to its own files.
Also make ALMGroup totally self-contained, i.e. BALMLayout no longer
does the parsing, and is completely unaware of ALMGroup. A small touch
of refactoring as well.
2012-05-03 08:44:32 +12:00
Alex Wilson a25ffa4f04 Style cleanup in alm: mostly clean includes. 2012-05-03 08:44:31 +12:00
Alex Wilson ddb65125f9 In alm test TableDemo: include Row.h and Column.h directly. 2012-05-03 08:44:30 +12:00
Alex Wilson 7dd17203c8 Make Area insets more consistent with other HAIKU inset APIs. 2012-05-03 08:44:29 +12:00
Alex Wilson b99cf18c18 Remove old implementatoins of ALM tests that used the Add*To* methods. 2012-05-03 08:44:27 +12:00
Alex Wilson d814593064 Remove BALMLayout::Add*To* methods, which are availabe in the builder. 2012-05-03 08:44:26 +12:00
Alex Wilson 2bf5ded1ed Add BALMLayoutBuilder implementations to ALM tests. 2012-05-03 08:44:25 +12:00
Alex Wilson 50cc24b3f9 Add a Builder for BALMLayout. 2012-05-03 08:44:23 +12:00