Alex Wilson
8f0b7c3fb8
Update doxygen docs for Layout, LayoutItem on invalidation.
2011-12-06 23:39:16 -07:00
Alex Wilson
ea0a06e213
Remove redundant checks for fParent before calling _InvalidateParentLayout().
2011-12-06 22:35:46 -07:00
Alex Wilson
182e2ee973
Add a bit more FBC stuff for the Layout API, which I missed before.
2011-12-01 22:47:46 -07:00
Alex Wilson
d56e7bd64d
Make archiving hooks protected in layout classes.
...
Furthermore,
* remove a stray blank line in Layout.cpp
* make BLayoutItem::SetLayout() private, as it should have been
2011-12-01 20:45:50 -07:00
Alex Wilson
f98f5ca48b
Fix bug in BView::RemoveSelf() that lead to a segfault.
...
Once again, the BObjectList removal behaviour leads to a null dereference. It's my fault of course, but there you have it. Comments have been included for future devs.
2011-12-01 19:08:56 -07:00
Alex Wilson
53617d366d
Override a bunch of methods in layout related classes for FBC stability.
...
* Especially made sure to override archiving methods, since these are called rarely, so the cost is very minimal
* Otherwise, the closer a class is to a base class, the more likely I was to give it all the overrides.
2011-11-05 14:25:06 -06:00
Alex Wilson
121a15ea8f
By convention, Perform() methods are public, make this true for BLayout.
2011-11-05 01:58:56 -06:00
Alex Wilson
0c8b758c09
Add a BView::LayoutChanged() method, called after layout of this view and children.
...
Fixes #7683 .
2011-11-05 01:03:07 -06:00
Alex Wilson
fceb7ee27e
Add FBC padding + Perform() methods to GridView and GroupView.
...
We probably won't need these, but these additions are cheap.
2011-11-04 23:08:11 -06:00
Alex Wilson
e044d51aa8
Forbid copying and assignment in layout classes.
...
Specifically in:
* BAbstractLayout
* BAbstractLayoutItem
* BGridLayout
* BGridView
* BGroupLayout
* BGroupView
* BLayout
* BSplitView
* BTwoDimensionalLayout
2011-11-04 22:23:22 -06:00
Alex Wilson
8151838e38
Add FBC padding to all (I think..) of the visible Layout related classes.
2011-11-02 00:29:33 -06:00
Alex Wilson
a851b3ad54
Add Perform() methods to all the layout-related classes that needed them.
2011-10-31 14:57:30 -06:00
Alex Wilson
0843fb4572
Revirtualize BLayout::Relayout(), since it is in fact inherited from BLayoutItem and virtual anyway.
...
Also add a comment to make this obvious.
2011-10-28 14:17:05 -06:00
Alex Wilson
7ab5610ba9
Update layout docs for LayoutInvalidated() changes.
2011-10-28 14:17:02 -06:00
Alex Wilson
9e9698bcd8
Delete scratch files that weren't meant to be commited...
2011-10-28 14:17:00 -06:00
Alex Wilson
954c5e46a1
Fix a bug in LayoutTest1, where we were getting the view of a view-less layout, and then calling methods on it, resulting in a (SURPRISE!) segfault.
2011-10-28 14:16:57 -06:00
Alex Wilson
e7b0dc78f7
Now that child classes aren't overriding the various InvalidateLayout() methods, we can take advantage of some guarantees to simplify/clean/optimize the layout invalidation propagation mechanisms!
2011-10-28 14:16:54 -06:00
Alex Wilson
c74faed432
Add BLayoutItem::LayoutInvalidated() hook. Leave BLayoutItem::InvalidateLayout() (and therefore BLayout::InvalidateLayout()) virtual. This is needed to let BLayout override it for invalidation propagations.
2011-10-28 14:16:52 -06:00
Alex Wilson
61eb1f1d19
Replace remaining InvalidateLayout()'s with LayoutInvalidated(). Also do a bit of cleanup/move methods around.
2011-10-28 14:16:49 -06:00
Alex Wilson
17499672a0
Bring BALMLayout in line with changes to BLayout.
2011-10-28 14:16:46 -06:00
Alex Wilson
eee4243d35
De-virtualize BView::InvalidateLayout() and introduce LayoutInvalidated() hook, like BLayout.
2011-10-28 14:16:43 -06:00
Alex Wilson
b38ea98f52
Devirtualize BLayout::InvalidateLayout(), add a protected hook BLayout::DoLayout(). This will allow for much better control over the propagation of layout invalidations, and therefore cleaner, more optimal code.
2011-10-28 14:16:39 -06:00
Alex Wilson
449f014bcc
Fix typo in BLayoutItem::SetLayout() which led to passing the wrong layout to the DetachedFromLayout() hook.
2011-10-28 14:16:37 -06:00
Alex Wilson
f87e4c7302
Fix bug in Layout.cpp's ViewRemover struct. operator() didn't deal well with NULLs.
2011-10-28 14:16:34 -06:00
Alex Wilson
90e615679c
Fix a bug in BLayout::AddItem() where the right conditions + an error would have
...
caused the wrongful removal of a BView from its parent.
2011-10-28 14:16:31 -06:00
Alex Wilson
b8725ee37e
De-virtualize BLayout::Relayout(). I think this was virtual only by accident.
2011-10-28 14:16:28 -06:00
Alex Wilson
4e0131f51b
Rename BLayout::DerivedLayoutItems() to DoLayout(), which is consistent with BView::DoLayout(). Also adjusted child classes and documentation.
2011-10-28 14:16:25 -06:00
Alex Wilson
676c618ad7
Add a little info to the BLayout docs.
2011-10-28 14:16:22 -06:00
Alex Wilson
cc1ca167a4
Fix a memory leak I introduced with my modification of BLayout::RemoveItem() and add comments so that it doesn't happen again. Also resolve some TODOs on the appropriate timing of calls to hook methods in BLayoutItem/BLayout.
2011-10-28 14:16:19 -06:00
Alex Wilson
fa01d08496
User BView's layout item tracking functionality to simplify and optimize some methods in BLayout and BView.
...
Delete BLayout::RemoveViewRecursive() as it is no longer needed.
Add a few TODO's.
2011-10-28 14:16:16 -06:00
Alex Wilson
30b07d019d
Use the classes from AutoDeleter.h to improve BLayout::AddView() and to simplify the ViewRemover struct created for BLayout::AddItem().
2011-10-28 14:16:13 -06:00
Alex Wilson
ea907ab587
Use BView's ability to track what layout items reference it to simplify BLayout::IndexOfView(). This also changes the semantics slightly, but I think it is a logical change.
2011-10-28 14:16:10 -06:00
Alex Wilson
bd97b9adba
Add a BObjectList<BLayoutItem> to BView::fLayoutData that keeps track of any BLayoutItems that refer to this view that are part of a layout. BLayoutItem does the registering/deregistering of the items, and BView::Private proxies fLayoutData for us. Currently, this is not used anywhere, but there are many places where it will be used soon.
2011-10-28 14:16:07 -06:00
Alex Wilson
edb4c8244c
Add a method to BView::Private that calls BView::_RemoveSelf().
...
Add a struct to kits/interface/Layout.cpp that uses BView::Private to
provide RAII mechanics for the removal of views (calling
BView::Private::RemoveSelf()).
Use the new struct to simplify BLayout::AddItem().
2011-10-28 14:16:03 -06:00
Alex Wilson
0926395334
Fix problem in LayoutTest1 under gcc4. For some reason, toggledView was
...
being assigned to twice, while being passed to Add(). Under gcc4, the
second call to Add(toggledView = new TestView(), ...) was passing in the
original value of toggledView, not the new TestView, which caused a call
to debugger().
2011-10-28 14:16:00 -06:00
Alexander von Gluck IV
397fbc47bb
* better identify BAR location defines
...
* fix bug where we were using an r600 bios pull method
on r700 cards. this should help prevent shadow rom fallback.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42933 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-28 19:08:37 +00:00
Alexander von Gluck IV
f52ca69c79
* attempt to reduce tracing spam a bit
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42932 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-28 16:39:26 +00:00
Alexander von Gluck IV
8fbddad17c
* better use Radeon HD 4xxx (r7xx) VM FB registers
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42931 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-28 04:42:16 +00:00
Alexander von Gluck IV
025d4eed52
* reorganize register definitions
...
There were a large number if incorrect, duplicated, misplaced
registers that were leading to bugs in the code. This is my first
shot at cleaning them up. Luckly as we are using AtomBIOS the number
of registers we need to know about is shrinking.
* remove registers left over from register banging days
* r770 is less then r710, r720 in the drm sources. Fix in code.
* enable newer radeons for testing
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42930 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-28 04:30:54 +00:00
Alexander von Gluck IV
139848f37a
* bailing when we can't idle the MC is the correct
...
behaviour... but while things are incomplete
it may be better to try and push on.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42929 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-27 18:03:02 +00:00
François Revol
fe0bb0ec24
Cleanup: reorder includes.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42928 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-26 23:56:40 +00:00
François Revol
3c6f4dd82e
A description of the Atari TOS PRG file format I used to write the ldscript for the .prg bootloader at src/system/ldscripts/m68k/boot_prg_atari_m68k.ld
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42927 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-26 23:55:00 +00:00
Siarzhuk Zharski
9de720a4ac
* Propose using $(STDCPPLIBS) definition for version-independent linking
...
of standard C++ libraries (stdc++.r4 <-> stdc++ supc++);
* Force C++ language at preprocessing the sources before localization catkeys
collecting. It gives a hint for compiler to handle .pre file as C++ one
preventing breaking on "unfound" C++ headers. Thanks to Vitaly Diger for
pointing it out.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42926 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-26 20:12:09 +00:00
Alexander von Gluck IV
bbcc2a8c03
* lets idle the memory controller before checking if it's idle
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42925 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-26 14:11:24 +00:00
Alexander von Gluck IV
46af81655d
* redesign pretty much everything frame buffer related
...
* don't resize the frame buffer after mapping it.. doesn't make sense
* add memory controller code and program the memory controller for r600
* remove unneeded frame_buffer_int
* don't malloc mc_info, waste of time
* fix scaler setting
* vramStart in mc should be 0... get vertical colored lines however when this
this is set properly (everything in mc_info is the MC view of FB BAR)
When vramStart is the FB physical address... i get proper video on some cards
... thoughts?
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42924 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-26 04:51:51 +00:00
Joseph Prostko
5dfed04886
* Fix a couple of spelling mistakes, one which affects functionality
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-26 02:32:59 +00:00
François Revol
97e22a9b50
Workaround missing mkisofs in Debian sid for ppc boot CD. It needs a rewrite anyway.
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42922 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-26 00:02:02 +00:00
Alexander von Gluck IV
a96db7dc36
* vesa != intel. *cough*
...
* no functional change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42921 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-25 20:29:41 +00:00
Alexander von Gluck IV
6c80b06bb8
* same blanking value, correct define.
...
* set blanking color to full red for debugging
to know when blanking is enabled.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-25 18:54:17 +00:00
Alexander von Gluck IV
62278874a6
* add TV encoder setup
...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-10-25 18:34:47 +00:00