The aspect ratio of the preview was wrong for two reasons:
* The height of the preview was always assumed to be 150 while it actually
depends on the layout.
* The size was then only set using SetExplicitMinSize(), which is not
sufficient to actually change the size to the desired value.
Fixes#11644.
Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
Even though C++ should increment the enum for us, since these IDs
are set and used by things outside of this file, we should hard-code
the numbers.
No functional change (or if there is, it means there's a compiler bug
somewhere.)
* Add support for macports lib and headers dirs.
* Link libs change for Mac OS X for tool build.
Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>
VariablesView:
- Factor out setting up a variable edit request into a helper function.
Adjust table node invocation accordingly.
- Add Edit variable context menu item if appropriate.
- Don't return result of SelectOptionFor(). It's possible to attempt
to edit an enum value that hasn't yet been initialized, in which case
its current value might not map to any of the defined enumerations, and
the resulting error would prevent editing from being allowed.
- According to POSIX, these functions should map to whatever's appropriate
for the platform's intmax_t size, which in our case is a 64-bit integer.
Our (2004) implementation, however, was calling the 32-bit variations of
strto*(), leading to truncation for larger values.
FloatValueFormatter:
- Implement parsing/validation hooks.
FloatValueHandler:
- Implement GetTableCellValueEditor() to accordingly return a
(newly implemented) TableCellFloatEditor. This allows variable
value editing for float/double variables.
FloatValue:
- Store value as variant rather than double so as to be able to
later differentiate between float vs double.
PrimitiveValueNode:
- Construct float nodes with variant value.
VariablesView:
- Intercept table node invocations. If the invocation corresponds to
a writable variable, request a corresponding editor and bring up a
an edit window for it.
- Handle requests from the edit window to write the final updated value
of the variable.
This implements the last missing piece for ticket #9708, except for an
editor for floats.
VariablesView::Listener:
- Add hook for requesting value node value updates.
TeamWindow:
- Implement VariablesView listener hook and forward accordingly to
TeamDebugger.
WriteValueNodeJob:
- Implement async job that creates a ValueWriter to update a variable
value on request.
UserInterfaceListener:
- Add hook for requesting that a node be updated with a new value.
Implement in TeamDebugger by scheduling a WriteValueNodeJob.
VariableEditWindow:
- Implement container window for variable value editors. While
not as ideal as initially intended, this will handle presenting value
editing to the user until more work is done on the table cell editing
aspect of things.
TableCellOptionPopUpEditor:
- Add virtual hook for retrieving the final selected value. Implement
accordingly in Bool and Enumeration editor subclasses.
- Implement calling the edit completion hook upon value changes.
* While it should not be a big problem the
bebook specify to do it after custom operations,
most nodes also follow this way, this commit restore
consistency.
* This directory is for services that are launched per user (in a user
context), but installed globally.
* This is now used for the default "user" configuration; before this was
put into ~/config/non-packaged/data/launch, which didn't really fit,
and has the huge disadvantage that it cannot be updated.
* Fixes part of #12227.
* This is done by watching to registrar notifications
and providing a minimal service to contact the
media roster in private API. The roster use this
service to automatically reconnect to the media_server.
* Improve consistency by adding a BMediaRosterEx destructor
and using it for the specular functionality of ctor instead
to use the father's class destructor.
* Avoid double initialization of MediaInitializer that
becomes MediaRosterUndertaker.
* Remove superfluos call to BMediaRoster::Quit()
in media_addon_server.
* Since the app_server is a BApplication, too, now, Workspaces would
trigger this problem.
* Now it checks whether the shared memory is actually set, and only
uses it in this case. This will also fix using ui_color() in any
BServer without UI connection.