Commit Graph

32418 Commits

Author SHA1 Message Date
Ingo Weinhold
59ea286fac * EnumerationValue -> EnumeratorValue
* Since some types don't have names (e.g. pointer types or anonymous structs or
  unions), each type does now also have a unique ID. The global type cache
  registers types by ID and by name (if they have one). This fixes clashes of
  types with empty names.
* Completely refactored the code dealing with variable values. Formerly we had
  Variable and TypeComponentPath to navigate to a component, mapped to a
  BVariant representing the value. Now we have:
  * Interface Value with various subclasses (BoolValue, IntegerValue, etc.) to
    represent a value, with the flexibility for more esoteric values.
  * A tree of ValueNode+ValueNodeChild objects to represent the components of a
    variable. On top of each ValueNodeChild sits a ValueNode representing the
    value of the component, potentially having ValueNodeChild children. This
    should allow casting a component value, simply by replacing its ValueNode.
  * Interface ValueHandler and various implementations for the different value
    types. It is basically a factory for classes allowing to format/display a
    value.
  * ValueHandlerRoster -- a registry for ValueHandlers, finding the best one
    for a given value.
  * Interface TypeHandler and various implementions for the different type
    kinds (primitive, compound, address, etc.). It is basically a factory for
    ValueNodes for that type.
  * TypeHandlerRoster -- a registry for TypeHandlers, finding the best one
    for a given type.

  That's still a bit work in progress. It introduces at least one regression:
  The VariablesView doesn't save/restore its state anymore. Will take a while
  until that is added back.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33907 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 18:15:21 +00:00
Ingo Weinhold
173227dd53 Added SetIndexAt(), replacing an existing index.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33906 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:50:37 +00:00
Ingo Weinhold
7d4508b161 Utility class to format integer values.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33905 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:39:09 +00:00
Ingo Weinhold
c9d768d913 Interface and implementation for simplifying editing of Settings via a menu.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33904 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:35:08 +00:00
Ingo Weinhold
4924e2e9ae Classes to describe settings in a generic way.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33903 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:32:16 +00:00
Ingo Weinhold
76d24e95aa Ugh, forgot to check this in quite a while ago:
If the view doesn't have a tool tip, pass the B_MOUSE_IDLE to the next handler,
so the parent view can show a tool tip. This makes tool tips in a column list
view possible (or at least reasonably easy).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33902 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:29:32 +00:00
Ingo Weinhold
be350af3d9 Added methods AddToMessage() and SetFromMessage() to add the value of the
variant as a field to a message, respectively initialize the variant from
one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33901 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:24:58 +00:00
Ingo Weinhold
6309d64e37 Added support for mouse down/up events in [Tree]TableListener.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33900 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:22:14 +00:00
Ingo Weinhold
f56fa21bdb Fixed typo.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33899 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:20:33 +00:00
Ingo Weinhold
8d24cfc6c2 * Added Iterator::NextValuePointer().
* Made reference returned by _GetKey() const. That's sufficient.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33898 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:18:12 +00:00
Ingo Weinhold
239222b236 * Moved everything into the SymbolPatcher namespace.
* Several fixes to get things building with gcc 4.
* Changed lookup of the _GLOBAL_OFFSET_TABLE_ symbol. It is hidden and static
  and get_image_symbol() doesn't find it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33897 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 17:16:17 +00:00
Axel Dörfler
cf5f64c103 * cdda did not send any node monitoring updates, confusing Tracker when renaming
files.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33896 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 13:56:02 +00:00
Axel Dörfler
f40c5e3211 * common_rename() now checks the name for validity before passing it on to the
file systems, so those checks don't have to be duplicated there, anymore.
* Minor cleanup, mostly automatic whitespace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33895 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 13:03:06 +00:00
Axel Dörfler
a63c61839e * The InfoWindow's name text view is now using DisallowFilenameKeys() as well.
* DisallowFilenameKeys() no longer forbids the ':', as there is no reason to do
  so.
* Automatic whitespace cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33894 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 12:37:43 +00:00
Axel Dörfler
f4ee0103a2 * Replaced ENABLE_DEBUGGER_COMMANDS with ENABLE_STATS.
* Added new ENABLE_DEBUGGER_COMMANDS that enables the new "net_buffer" KDL
  command to dump a net buffer.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33893 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 11:40:33 +00:00
Axel Dörfler
a10ac91f6d * NewBlock(), and Allocate() will now try to reuse existing memory in low
resource situations.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33892 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 11:14:12 +00:00
Axel Dörfler
a5758caa7e * Changed the default color of the block cache memory usage source.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33891 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 11:13:04 +00:00
Alexandre Deckner
3904801c31 * Fix many style issues. Quaternion and Vector3 still show some of their foreign
origin. Yes.. shame on me, i had even imported their non unix line endings :)
  Will make them BCitizens soon.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33890 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 09:37:45 +00:00
Alexandre Deckner
ae762f316d * Add multi file/directory support
* Refined some rules to not include the new-line
* Added 'windows line ending' rule
* Enhanced the html output, not an expert there though



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33889 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 03:23:50 +00:00
Jonas Sundström
eb32e334f8 Opening Backgrounds on/in a folder was broken, now fixed. Layout-rewrite of parts of the GUI. Rewrote the monitor drawing to fit the layout, for better or worse. Clean-up will follow.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33888 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-05 00:47:27 +00:00
Fredrik Holmqvist
66db0536d2 * Mostly format cleanups and comment clarifications.
* Corrected AcpiOsReadable and AcpiOsWritable to always return true in kernel and to better check bit flags otherwise.
* Removed comment about implementing acpi object cache with slab (object_cache). ACPI's own is simple, light and nice enough.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33887 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 22:18:13 +00:00
Oliver Tappe
bd34734f11 fixed regression of r33882 reported by Michael Weirauch:
* wrapping must always be possible at a newline!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33886 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 19:25:28 +00:00
Oliver Tappe
a85a827cd0 * introduced two new private methods, _PreviousWordStart() and _NextWordStart(),
which are now being used to implement the word-wise keyboard navigation,
  fixing #4785


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33885 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 18:49:15 +00:00
Alexandre Deckner
3b02662f2d * Use BReferenceable instead of Referenceable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33884 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 16:50:01 +00:00
Axel Dörfler
73a19dfe5d * Nested transactions didn't really work in combination with the separate
transaction mechanism. Now we keep track of the parent transactions, and
  restore fOwner on Journal::Unlock().
* This closes bug #4155 again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33883 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 16:44:06 +00:00
Oliver Tappe
32c29a08ba Reworked character class handling in BTextView:
* Word selection via double-click now works like in R5, except that '_' is now
  being considered part of a textual word, too. This fixes #4754.
* Adjusted CanEndLine() to make much more sense (at least for western 
  languages).
While I have tested the wrapping quite a bit, it is not unlikely that these
changes introduce regressions. If you spot one, please tell!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33882 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 16:38:34 +00:00
Axel Dörfler
c07fb64478 * Since we know the address of the lock in question, there is no need to waste
memory by naming it individually.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33881 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 15:55:11 +00:00
Axel Dörfler
56e4496947 * Use BReferenceable instead of Referenceable. Didn't notice there was a
BReferenceable in the first place, thanks Ingo!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33880 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 15:17:05 +00:00
Ingo Weinhold
4736b6b9e5 * Made BReferenceable the class implementation and BPrivate::Referenceable the
typedef, so it's clearer which one is the preferred one.
* Added BReference, a clone of BPrivate::Reference.

BPrivate::{Referenceable,Reference} are being phased out. Only the B* versions
should be used.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33879 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 15:08:53 +00:00
Axel Dörfler
4b0459b2ee * Refactored ServerBitmap a bit: it now inherits from Referenceable instead of
roling its own solution.
* Also removed BitmapManager::DeleteBitmap() - you only call
  ServerBitmap::RemoveReference(), and that one will notify the manager if
  needed.
* Some more cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33878 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 14:08:16 +00:00
Oliver Tappe
baa3366093 * the textrect.right should always be rounded up to the next integer -
fixes #4894
* PointAt() now rounds x- and y-positions to the next integer instead of always
  rounding them up - this yields improved caret-positions (e.g. before an 'f'
  character)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33877 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 13:55:13 +00:00
Axel Dörfler
85a7877f80 * ServerApp's bitmap and picture handling was completely broken, as it ignored
concurrency as well as reference counting, causing occasional crashes and
  memory corruption.
* ServerPicture now subclasses Referenceable, and will notify its owner when
  it's going to be deleted. This might bring some regressions, although I
  couldn't spot anything wrong yet.
* ServerBitmap will now also notify its owner when it's going to be deleted as
  well.
* Switched from the former picture/bitmap lists to a std::map. This also solves
  the issue of not checking whether or not the bitmap/picture actually belongs
  to the ServerApp (before, all apps could access and delete all
  pictures/bitmaps)
* Introduced a new fMapLocker that guards the new maps.
* ServerWindow now uses GetBitmap()/GetPicture(), and gives up its reference
  after use.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33876 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 13:28:32 +00:00
Axel Dörfler
1ff7e27441 * Added the PictureTest to the app_server test environment.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33875 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 13:05:18 +00:00
Axel Dörfler
29e37d8842 * Made BTokenSpace not throw any exceptions on memory shortage.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33874 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 12:19:59 +00:00
Joachim Seemer
8286bcb32e Correcting small typo found by Starseed. Thanks. Though, the userguide is now maintained at http://userguide.haikuzone.net and everything under installation/ isn't currently part of that.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33873 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 10:56:40 +00:00
Axel Dörfler
3d2dfb860d * More cleanup, improved error return codes.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33872 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 10:48:57 +00:00
Axel Dörfler
961399db48 * Coding style cleanup.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33871 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 10:34:07 +00:00
Axel Dörfler
8fd171c8d1 * SmartTabView can now also resize a vertical scroll bar, if needed (ie. if one
overlaps with the menu bar). Not a perfect solution, but works well enough.
* When you only have a single tab, the vertical scroll bar now overlaps again
  with the menu bar.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 09:57:10 +00:00
Axel Dörfler
0928ac3904 * Removed BeOS work-around in TermScrollView.cpp.
* Improved comments.
* Coding style cleanup, no functional change.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33869 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-04 08:52:06 +00:00
Rudolf Cornelissen
d08a8df7ca comment update only. Confirmed G200 not capable of HDTV overlay, G450 and G550 are capable.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-03 20:06:57 +00:00
Jérôme Duval
15f18c0947 added missing posix functions
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33867 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-03 20:04:10 +00:00
Axel Dörfler
b11d8c839f * Some keymap labels now have an abbreviated version that is used when the key
gets too small for the full text.
* This closes enhancement ticket #4024.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33866 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-03 11:19:53 +00:00
Rudolf Cornelissen
21a656460f matrox G450/G550 (apparantly) can do HDTV overlay (720p, 1080p). Bumped version to 0.33.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33865 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-02 19:27:15 +00:00
Oliver Tappe
3c9dcb418e * corrected tab/space confusion of my last change
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33864 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-02 19:23:18 +00:00
Oliver Tappe
7e0d60f5b7 adding POSIX-functions llround*(), which Maxime reported missing
* copied implementations for llround(), llroundf() and llroundl() from
  glibc-2.3.2
* added corresponding declarations to math.h


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33863 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-02 19:13:15 +00:00
Axel Dörfler
dd9740dad4 * Removed the version check, and the Deskbar restart code.
* This closes ticket #2314.
* Minor cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33862 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-02 08:44:47 +00:00
Colin Günther
fd0795f24c This TODO was resolved in r33860.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33861 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-01 20:41:56 +00:00
Colin Günther
8ac8b52a03 Removed part about where RadixBitmap is currently used, because the FreeBSD compat layer uses it, too. I think it is prone to inconsistency managing a usage list in the header file.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33860 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-01 20:37:03 +00:00
Alexandre Deckner
ef2927b12c * Use <span> for the highlights
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33859 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-01 18:13:29 +00:00
François Revol
b7ae7914b8 - cleanup, remove fake device descriptions,
- add generic device descriptions for the various incarnations of the PC UART,
- just use pc_serial as devfs basename regardless.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@33858 a95241bf-73f2-0310-859d-f6bbb57e9c96
2009-11-01 02:09:50 +00:00