This is needed in order to prepare the transition to GPR2.
Project edition should be done by editing the .gpr files now, with
the help of the Ada Language Server.
Documentation and comments have been updated accordingly and tests
checking the Project Properties GUI have been removed.
For eng/ide/gnatstudio#569
And add a mechanism to copy the old .gps directory to .gnatstudio
the first time. Rename keys6.xml to keys.xml when importing the old
.gpr directory.
Change-Id: I1e1ea2c123ae772a547561737e2309d4c081f239
We were having missing dependencies in conf.py
Also fix the invalid links, formatting warnings and errors.
Change-Id: I2df95e28d5e5766ca928f49b00e34a30de4ecd30
To ease doc maintenance burden, move the doc for menus to a
separate chapter, and generate the contents automatically from the
documentation of all actions associated with menus.
For Q523-038
Change-Id: I5be8871304058d648dc0a68a70c770292b74a52f
A new button has been added to the main toolbar for 'Debug/Initialize'
action. This button is a longpress button, allowing the user to select
which main he wants to debug (same as for 'Build Main').
Documentation has been updated accordingly.
Change-Id: I6018d84abf8170ba3ed555ac53d9de9ef89f5e52
Remove the breakpoints column, since we now highlight the line number
to indicate where breakpoints are set. Clicking on the line number
will set/unset breakpoints.
The color of the highlighting is configurable via three new preferences,
that replace the icons we used to have.
We use the Messages API to add information to the editors, and not
directly the editor's line_information API. Added a new flag to
indicate which messages should be displayed on top of the line
numbers.
Current debugger line is now also highlighted via a Message, which
simplifies the code, takes less horizontal space (we could remove
the extra column on the side of editors), can be displayed in the
speedbar, and have a tooltip to explain its meaning
part of P527-030
Change-Id: I09c43824e4b7ddff2c0c6262539868d171b4c321
All the code related to breakpoints was moved to a new package
gvd-breakpoints_list. This package maintains a global list of
persistent breakpoints, which can be modified even when no debugger
is running, and will be synchronized with them when they start.
Each debugger then gets its own list of breakpoints, as we were
already doing, and the last debugger that terminates overrides the
global persistent list.
Persistent breakpoints are now associated with the root project, not
with the executable we debug, since we don't know which it will be
until a debugger is actually started.
Various cleanup of code and remove duplication, while isolating the
breakpoint-related code better (via hooks most notably).
The contextual menu Debug/Set Breakpoint At Line is now always
enabled, even when no debugger is running. Setting a breakpoint
will in fact set it in all running debugger, to keep them
synchronized as much as possible (so that breakpoints displayed on
the side of editors do not change when the current debugger changes).
For now, the column with gray dots is systematically created in editors,
with a dot on every line.
P527-030
Change-Id: Ia38a095d22ef534467ef0689359c0f3d7cba3104
This shows the same information as the data window, but in a tree,
which a lot of users find more convenient
Improve display of <repeat> types, so that there are 2 less nodes
to expand to see the actual values.
Add support for splitting the debugger output (`cmd`) into several
components, rather than consider it as a single block of text.
Gtkada.Tree_View: add support for writing simple filters and showing
parents when children should be visible.
Local configuration: whether to show types or not.
Display in red modified values between two debugger actions.
Preserve expansion of nodes between refresh of the tree. This is done
in Gtkada.Tree_View in a generic manner, and can be reused for other
views.
Add support for editing values of variables from the Variables view.
This required making the gdb "set variable" command run the hooks so
that the view is properly refreshed.
Change default debug perpsective, to replace the Data window with the
Variables view. It is now at the bottom, rather than take valuable
space at the top.
Access types can be expanded in place to see the referenced value. This
is done by new general support in Gtkada.Tree_View for lazy nodes,
which can be used in other contexts.
Remove contextual menu Debug/Print A, which only emits a "print ..."
in the console and is therefore not very useful. Rename
/Debug/Display A to /Debug/Graph Display A, since we now also have
/Debug/Tree Display A. Move the graph commands to gvd-canvas.adb for
better separation of modules.
OC30-003 (1/2)
Change-Id: I567f0b23573cccef53f15e8db0c0b803e21235d2
Use a local toolbar for Remove/View/Advanced, instead of adding large
buttons at the bottom of the view. For the toolbar, new GPS actions
were defined, so key bindings can be associated to them.
The view now only contains the list of breakpoints. Toolbar buttons open
a dialog that shows all properties of the breakpoint (basic properties
like file, line, exception,... as well as advanced properties like
conditions and commands).
The previous workflow of showing the properties of the selected breakpoint
and letting users edit them to create new breakpoints could be misleading
(for instance, selecting a breakpoint, then changing the line number would
create a new breakpoint, and not edit the selected one).
The view is thus smaller now and easier to keep permanently in the desktop.
P315-043 (1/2)
Change-Id: Ie478f915c7f3eb0cb2a7a6beb4805d88c4fcb0ef
This was not up-to-date (missing lots of preferences, and still
documenting onces we have removed a long time ago).
Review the documentation for almost all preferences to make them
shorter, now that they are displayed in the Preferences dialog.
Change the type of the Default Font preference (which was a style,
not a font), since we never used foreground and background.
Reorganize some of the preferences into groups.
Remove a few preferences that were unused
P113-026
Change-Id: I31a7381b0637d199ac0ec503878a96affec437e6