Depending on the locale and string length the layout could leave only a
small part of the window for the rightmost part, which is the important
thing. Force the weight of each side so we have a more balanced window.
* Fixes relevant part of #5125
* The remaining information (serial number, frequency ranges) is
"advanced" and can be hidden in the tooltip. However, the video driver
used may be important important information, if you want to know if you
are using VESA, or if you have multiple video cards (Optimus for
example).
SourceView:
- Now that we need to track the current text drawing position for syntax
purposes anyways, get rid of the previous inefficient hack to handle
tabstops, and instead adjust for them on the fly. This both avoids
quite a bit of string copying/reformatting, and eliminates the need to
adjust the syntax highlight offsets to compensate for the aforementioned
reformatting.
- Fix syntax color for string literals.
Required for work on completing BFont implementation (::Blocks and
::IsFullAndHalfFixed can be provided using fontconfig data), as well as
a more correct font overlay and/or language > font mapping.
Using item->SetExpanded does not work in a BOutlineListView as the
status of the list is then out of sync. The child items are not actually
added to the visible list, and trying to select them won't work.
Using list->Expand() instead works fine, so do that.
Fixes the remaining part of #6805.
- Rearrange source_language subdir to have only the interface classes
at the top level, and devote a subdir to each language-specific
implementation of them.
SourceView:
- Request syntax highlight information when new source file is set.
- Adjust _FormatLine() to also patch raw syntax highlights to match
up with calculated tabstops.
- Draw strings in pieces corresponding to how they're broken up in
terms of syntax highlights with colors.
- Implement a basic highlighting engine for C/C++. Not yet used/tested,
as SourceView will first need some adjustments in order to acquire
and make use of the highlighter modules in the first place.
- Add recognition of several additional types of tokens that, while
not necessary for single line expressions, will be needed for
parsing/highlighting source files. Also rename tokens for open/close
paren to reflect their content more accurately, and adjust callers
accordingly.
- Add missing public keyword for SyntaxHighlightSource/SyntaxHighlightInfo.
- Add initial set of basic syntax highlight types.
- Remove SyntaxHighlightSource. Instead, add a general purpose LineDataSource
interface to the model classes. Correspondingly adjust SourceCode to inherit
from it and fixup its derivatives accordingly; also adjust SyntaxHighlighter
to take a LineDataSource rather than a SyntaxHighlightSource.
Clicking the thumbnail in the package info area will now open a
window where the full-size screenshot is downloaded and shown. There can
only be one such screenshot window open. Navigating between multiple
screenshots of a package is not yet implemented. Also, no caching, but
this may be OK as it is, since one usually looks at these only once and
doesn't want the harddrive filling up with screenshots.
* I'm not sure why this was changed back in 2006, the file panel is
reused in various cases but I don't see one where selecting a folder
would make sense.
* If I missed something, then different file panels should be used for
the different cases.
Fixes#8805.
* None of these are required to be cross-built, as they all can be built on
the bootstrap image just fine.
* Additionally, update bash_boostrap from 4.27 to 4.30, as 4.27 causes the
build of gcc on the bootstrap image to fail.
* I went with my own graphics as the one in the preflet didn't look that
nice
* The clicked button is shown using a bold font rather than filling it
grey. I was too lazy to find the correct BShapes for all cases (1, 2 and
3 button mouses)
Fixes#6825.
gcc2 was relying on the c99 functions being there, but they are not in
the std namespace.
* Disable the C99 functions and macros in C++ mode
* Redefine them as inline functions in cmath in the std namespace.
Fixes#7396.