Commit Graph

28 Commits

Author SHA1 Message Date
Adriaan de Groot
9e1b8622f2 [packagechooser] Replace smartClip() with just-do-it
QLabel allows scaling of the Pixmap by itself, and we have a
FixedAspectRatioLabel that scales a pixmap nicely. Use that.
(The new label type needed to be introduced to designer)

The screenshot should expand more agressively, so that it
does not get margins -- that just leave space around the
name and description -- when the window expands. Adjust some
of the stretching and layout in the UI file.
2021-10-29 13:15:07 +02:00
Adriaan de Groot
c90b9786c6 [packagechooser] Also resize the introductory image
- resize the intro image
- when an invalid index is selected, *still* update the
  images, so it shows the intro image (resized) at the
  right time.
2021-10-26 17:05:31 +02:00
Adriaan de Groot
b9a243028b [packagechooser] Make scaled screenshots nicer
- patch suggested by flyingcakes85
- patch tested by killajoe

FIXES #1807
2021-10-26 16:08:20 +02:00
Adriaan de Groot
9341a84820 [libcalamares] Make the RETRANSLATE macros more statement-line
Require a ; after RETRANSLATE macros. They are statement-like;
this makes it easier for some of them to be recognized by
clang-format and resolves some existing weird formatting.
2021-03-16 14:55:26 +01:00
Adriaan de Groot
9a2fca7f5b CMake: prefer normal C++17 [[fallthrough]] annotation 2020-10-25 12:49:49 +01:00
Adriaan de Groot
1cd9b93a22 REUSE: Giant boilerplate cleanup
- point to main Calamares site in the 'part of' headers instead
  of to github (this is the "this file is part of Calamares"
  opening line for most files).
- remove boilerplate from all source files, CMake modules and completions,
  this is the 3-paragraph summary of the GPL-3.0-or-later, which has
  a meaning entirely covered by the SPDX tag.
2020-08-26 02:28:38 +02:00
Adriaan de Groot
30a85668b7 REUSE: (GPL-3.0-or-later) C++ modules 2020-08-26 02:22:49 +02:00
Adriaan de Groot
d21ed0cc7f [packagechooser] Coding style 2020-01-06 17:55:13 +01:00
bill-auger
7510e883b8 pre-select default item in packagechooser 2019-11-30 02:23:05 -05:00
Adriaan de Groot
a57a030ee2 [packagechooser] Massage the list view to be narrower 2019-09-05 06:41:06 -04:00
Adriaan de Groot
4259bc9d5d [packagechooser] Also use screenshot from no-package-selected 2019-09-05 03:23:50 -04:00
Adriaan de Groot
01c4383178 [packagechooser] Simplify parameters
- Just pass the no-package-selected item around.
2019-09-04 19:40:35 +02:00
Adriaan de Groot
996714dd06 [packagechooser] Use all translations for no-package-selected
- If there is an item with id "" (empty), it is used as the
   "no-package-selected" placeholder text.
 - Existing code iterated over the abstract model and used the
   name and description at the time the model was set -- but
   by getting the name and description from the model, only
   a single string was obtained instead of the full range
   of translations.
 - Therefore, when arriving on the page, the "no-package-selected"
   information was displayed from the translation that was active
   when the model was set.

Instead, extend the non-abstract model so we can find the no-package-
selected item and pass that explicitly to the page.

FIXES #1241
2019-09-04 19:33:24 +02:00
Adriaan de Groot
d8a587e16e [packagechooser] Scale screenshot
- if the screenshot is too large, scale it down
 - (doesn't react to window resizes though)
2019-08-26 21:40:16 +02:00
Adriaan de Groot
fee2297e67 [packagechooser] Fix fallthrough situation
- Add a FALLTHRU macro to annotate fallthrough situations in both
   Clang and GCC,
 - Annotate intentional fallthroughs.
 - Add missing break which meant that the selection mode was
   always multiple-selection.
2019-08-06 00:24:53 +02:00
Adriaan de Groot
56db9e9341 [packagechooser] Use translated strings 2019-08-06 00:17:50 +02:00
Adriaan de Groot
d5275d5e10 [packagechooser] Allow the model to set the introductory text 2019-08-04 00:08:41 +02:00
Adriaan de Groot
047a300a51 [packagechooser] Remove unneeded debug 2019-08-03 23:55:29 +02:00
Adriaan de Groot
140c0db7a4 [packagechooser] Set GlobalStorage packagechooser_<id> 2019-08-03 23:51:00 +02:00
Adriaan de Groot
b711c791bd [packagechooser] Fix build, tidy code 2019-08-03 23:28:55 +02:00
Adriaan de Groot
86d8db6bbf [packagechooser] Enforce selection mode on the next-button 2019-08-02 17:13:35 +02:00
Adriaan de Groot
7609546d8b [packagechooser] Add screenshots for example 2019-08-02 17:02:02 +02:00
Adriaan de Groot
2272d2ab43 [packagechooser] Add selection modes
- Introduce different selection modes (most don't work yet)
 - Use model data in the main widget
2019-08-02 16:43:10 +02:00
Adriaan de Groot
a32dcdad86 [packagechooser] Support multiple selection modes 2019-08-02 16:25:26 +02:00
Adriaan de Groot
dc5cdbb38c [packagechooser] Update other parts of the window on selection 2019-08-02 16:07:47 +02:00
Adriaan de Groot
d1a85ba5ca [packagechooser] Add a model for the list to use
- Model contents currently hard-coded
2019-08-02 13:05:46 +02:00
Adriaan de Groot
727290f75e [packagechooser] Handle translation events (stub) 2019-08-02 11:09:12 +02:00
Adriaan de Groot
735d5d2683 [packagechooser] Add stub of module
Package chooser is a **low density** package selector -- unlike
netinstall which offers a high density tree view -- for picking
zero, one, or more items from a small collection of packages.

This can be used, e.g., for "pick exactly one desktop environment",
"pick zero or more text editors" which can then be installed
by another module. The UI is big and shiny (rather than netinstall's
text-based tree view) and isn't suitable for more than a dozen or
so items.
2019-08-02 10:57:12 +02:00