child handling for lexical blocks (at least for nesting and variables).
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31646 a95241bf-73f2-0310-859d-f6bbb57e9c96
- Made Job Referenceable.
- Turned JobKey into an abstract base class to add flexibility. The new
SimpleJobKey is a subclass with the former functionality.
* TeamWindow: Removed the TeamWindow* parameter from the listener hooks. The
TeamDebugger knows anyway.
* Added IDs to Variable, Function, and FunctionInstance. The latter two generate
the ID on the fly, Variable stores it.
* SpecificImageDebugInfo::CreateFrame(): Changed FunctionDebugInfo* debug
parameter to FunctionInstance* to provide more info (the function ID).
* DwarfInterfaceFactory/DwarfImageDebugInfo:
- Added class DwarfFunctionParameterID, an ID class implementation for
function parameters and set the IDs on the parameter objects.
- Retrieve the size of a type (i.e. the size of its objects) and store it in
DwarfType.
- If a parameter's ValueLocation doesn't have a size, set that of the
respective type.
- Map the register indicies in the parameters' ValueLocations from DWARF to
our indices.
* Added class TypeComponentPath for identifying subcomponents in types.
* Added class StackFrameValues, a container associating variables and their
subcomponents with values.
* StackFrame does now have a StackFrameValues object for parameters and local
variables and a mechanism to notify listeners when values have been retrieved.
* Added GetStackFrameValueJob to retrieve variable values. Lots of functionality
is missing yet. Most notably it doesn't retrieves values for subcomponents.
* Wired everything to trigger loading of variable values and getting notified
when done.
* VariablesView: Added a value column. This is all very basic and has to be
done differently, but at least values for the parameters can be seen already.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31636 a95241bf-73f2-0310-859d-f6bbb57e9c96
identify the respective objects without actually holding a pointer to them.
They will eventually also become persistable which will allow e.g. to associate
(and store) settings with the objects.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31630 a95241bf-73f2-0310-859d-f6bbb57e9c96
machine.
* DWARF:
- Various additions to the DIE classes.
- DwarfExpressionEvaluationContext:
- Added support for location expressions and thus the missing DW_OP_piece
and DW_OP_bit_piece operations.
- Fixed some deviations from the specs.
- Added debug output.
- DwarfFile:
- Added missing evaluation of CFA expression rules.
- Added service methods to evaluate expressions, location expressions,
and constant and dynamic values.
* Added model classes for representing types and variables. Particularly the
types part is not finished yet.
* StackFrame does now contain parameters and local variables.
* Added DwarfInterfaceFactory, which creates implementation objects for the
types, as well as variables objects. It's even less finished.
* DwarfImageDebugInfo::CreateFrame(): Resolve function parameters and add them
to the stack frame. No local variables yet.
* Added the beginnings of a variables view. Only lists the names of parameters
and local variables (of understood types) ATM.
* Renamed RegisterView to RegistersView.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31614 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Small hack to display at least some frames (one every 15 frames) when the
CPU is utterly incapable of decoding video fast enough.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31610 a95241bf-73f2-0310-859d-f6bbb57e9c96
Escape the mount point, so volumes with spaces in their name can be made
bootable after installing. Thanks a lot! Fixes #4063.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31607 a95241bf-73f2-0310-859d-f6bbb57e9c96
* if we click in the selection without dragging, clear the selection.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31602 a95241bf-73f2-0310-859d-f6bbb57e9c96
DwarfExpressionEvaluationContext.
* Implemented the remaining operations save DW_OP_piece and DW_OP_bit_piece.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31590 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Introduced SourceCode::LineLengthAt(index) and respective implementations in FileSourceCode and DisassembledCode for getting the cached length of the line at the given index.
* Use LineLengthAt in various places in SourceView::TextView to avoid having to calculate string lengths on the fly.
* Clamp the size of the drag and drop rect to the window size. Otherwise in cases of large selections, said rect would get quite large.
* Add support for double click word and triple click line selection.
* Fix problems with tracking state which would erroneously cause the mouse entering the view while dragging on a scroll bar to initiate a drag and drop if there was selected text.
* Add Select All menu/keyboard shortcut and implement corresponding functionality in SourceView::TextView.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31587 a95241bf-73f2-0310-859d-f6bbb57e9c96
are still missing. And everything is still utterly untested.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31578 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Controller: accept streams with unknown duration.
* PlaybackManager: trusts the current frame start and end when frameCount not positive. Also don't stop playing when fStopPlayingFrame is zero.
* MediaTrackAudioSupplier: only fills with silent when the frame count is not zero.
* added some traces.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31569 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Had to change some names so that I didn't use the name tmp or temp :)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31566 a95241bf-73f2-0310-859d-f6bbb57e9c96
* In full screen mode, make sure to relayout the video view if size and/or
aspect change. Also adjust the window size limits (for later).
* Add optional code to _ResizeWindow() to make sure the window is fully on
screen. When it is out on one side, move it back in, when it is too large,
scale and center it so all the border is visible. This code is used when
switching clips if not in full screen mode.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31559 a95241bf-73f2-0310-859d-f6bbb57e9c96
great Menu prefs icon. If the extra little "islands" seem extraneous they can be
removed easily. I figured the Yen symbol was an appropriate choice for the main
island.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31552 a95241bf-73f2-0310-859d-f6bbb57e9c96
issue. Since there may be valid reasons to have part of the media player window
offscreen this code could get annoying. I still think it is pretty though.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31551 a95241bf-73f2-0310-859d-f6bbb57e9c96
* Highlight the source view to indicate focus.
* Add rudimentary menu bar with quit and copy options (copy not yet working)
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31549 a95241bf-73f2-0310-859d-f6bbb57e9c96
subclasses, though they don't do much yet. SourceCode is now associated with a
SourceLanguage.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31544 a95241bf-73f2-0310-859d-f6bbb57e9c96
is now superfluous.
* When switching aspect ratio and the current video size is 100%, always
resize such that one side stays at 100% (which would be the height mostly)
and the other is scaled up (mostly the width).
* In _SetupWindow(), which is triggered by a new stream for example, also
check if the aspect ratio changed and resize accordingly.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31541 a95241bf-73f2-0310-859d-f6bbb57e9c96
DWARF expressions). Several related new classes: CfaRule[Set], CfaContext,
DwarfTargetInterface (for accessing target registers and memory).
* Implemented DwarfImageDebugInfo::CreateFrame(), so the DWARF frame info is
used for unwinding the stack.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31540 a95241bf-73f2-0310-859d-f6bbb57e9c96