History log of /haiku/src/apps/installer/PackageViews.cpp
Revision Date Author Comments
# f1e5a6c9 21-Mar-2020 Leorize <leorize+oss@disroot.org>

Installer: supports installing .hpkg-based optional packages

Most of Installer was designed for old-style optional packages (files in
a folder that's copied to the target volume). This commit modifies
Installer so that it can process and install .hpkg packages.

Change-Id: Ib7d69a04ccb7879b956b5c3f0df1241c56e4987d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2400
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 8e1e0012 03-Feb-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Installer: handle hpkg files in _packages_ directory

Fixes #14310.

Change-Id: Iafd75b86d242af816a089dd1bdaea2c697668f5d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2184
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 3d11fed2 03-Feb-2020 Adrien Destugues <pulkomandy@pulkomandy.tk>

Installer: fix drawing of optional packages view

Rework the layout of the installer window, do not try to put everything
in a single grid but instead use a mix of grid and groups as
appropriate, which keeps things simpler.

Make the width of the window more font sensitive.

Have the package view properly resize with the window, and the items in
it still draw properly (checkbox and name on the left, size on the
right)

The menu fields for source and destination don't need to extend to the
whole window width, so allow them to be smaller.

Fixes #5785

Change-Id: If0683f610b9e7f3629d51d25c1d8e8b00c101156
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2185
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>


# 348d9eac 02-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Installer: WorkerThread: Remove InstallerWindow dependency

* Move message constants to InstallerDefs.h.
* Determine the source and target partition ID already in
InstallerWindow and pass those to WorkerThread instead of fiddling
with menu items in _PerformInstall(). And instead of the window object
pass a messenger to the constructor.


# 546208a5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.


# 5421c7d6 20-Jul-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Fix all localized applications, as an include was missing in some of them
* dstcheck : the generated catalog is now 'dstcheck.catkeys' instead of 'en.catkeys', so that it does not conflict with
other localized apps in the bin/ folder.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37617 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4eb0cbb0 07-May-2010 Matt Madia <mattmadia@gmail.com>

Updated TR_CONTEXT to be B_TRANSLATE_CONTEXT, relating to #5408.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36733 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e904ecc9 06-May-2010 Matt Madia <mattmadia@gmail.com>

Updated to use B_TRANSLATE* macros. relates to #5408.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36667 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 48d79657 23-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

* Moved the duplicate "string_for_size()" implementations into libshared.a.
* Adapted libtracker.so, DriveSetup and Installer to use the shared version.
* The new version uses the correct units (KiB instead of KB and so on).
* Use the correct units in a few other prominent places, where
string_for_size() could not be used.

Should resolve a major part of #5378.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35935 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4a2da425 20-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

* Applied localization to the Installer.
* Some coding style fixes along the way.
* Added German translation.

NOTE: The Installer will have to offer a way to change the current locale! So
any translations which are done at this point will have to receive one more
update after I added this feature.

NOTE2: There is something wrong with generating catalogs and the update-all
jam target. If you don't do a clean build, the build won't run through, but it
is enough to build for example an image and then run update-all on your actual
partition profile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35209 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9b4593e3 28-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

* Fixed some problems of the dynamic layout, basically, the upper part of the
window will now stay fixed when you expand the optional packages and collapse
them again.
* Updated the text about having prepared a partition, since we can now indeed
create and delete partitions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31844 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b4afa663 03-May-2009 Stephan Aßmus <superstippi@gmx.de>

First round of cleanup:
* Renamed CopyEngine to WorkerThread, since it's used for other things than
just copying.
* Removed the code borrowed from Tracker.
* Removed the InstallerCopyLoopControl, since the CopyEngine handles
notifications and cancelling by itself now.
* Renamed a few message constants.
* Since we only support BFS partitions as install targets, I removed the
FS type from the target menu item label. However, I am going to solve this
differently. I guess all partitions should be seen in the target list, just
disabled if they are not a valid target, and with a reason given too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30600 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7ff74a7b 23-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

* Converted to use layout-management.
* New logo specific to R1 Alpha/1.
* "Setup Partitions" is now always visible, since it will most likely be
required to prepare a partition for installation anyways.
* The optional packages are still in the GUI, but are collapsed by default as
before. As there are currently no optional packages, a message will be
displayed if no optional packages are found on the source partition.
* The default label for the "Onto" popup is now "Please choose target" instead
of the first partition found, even though it is not actually selected yet.
* The EULA window is still shown, but it's not based on a BAlert anymore.
* Only make main window non-minimizable if the Deskbar is not running
(untested).
* Style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30368 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2384ec28 23-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Preparation for using layout-management, improvements to absolute layout for
the time being.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30354 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bc6c545b 23-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

80 char/line cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30351 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9f3d8cb6 12-May-2007 Jérôme Duval <korli@users.berlios.de>

code style update
now mount the target partition before copying


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21113 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b357f8a 02-Feb-2006 Jérôme Duval <korli@users.berlios.de>

if a already selected item is selected, don't do anything
Installer isn't beos compatible is this directory, will add a test directory for it
fixed link libs and debug message


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16196 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a5fa64b5 01-Feb-2006 Jérôme Duval <korli@users.berlios.de>

some changes : alert if free space isn't enough, set status when mouse is over packages (doesn't work for some reason ...)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16192 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cbdfe279 23-Jan-2006 Jérôme Duval <korli@users.berlios.de>

reworked a bit to install packages


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16048 a95241bf-73f2-0310-859d-f6bbb57e9c96


# baf595a0 27-Oct-2005 Jérôme Duval <korli@users.berlios.de>

we now use off_t for the sizes (sorry Ingo for bugging :) )


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14538 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1eedf230 26-Oct-2005 Jérôme Duval <korli@users.berlios.de>

now populates menus
improved size to string formating for GB and TB


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14531 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 633dee06 30-Sep-2005 Jérôme Duval <korli@users.berlios.de>

fix packages view, added a copy engine class


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14283 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b5feb1f1 28-Sep-2005 Jérôme Duval <korli@users.berlios.de>

total size is now working
copied BPrivate::CopyLoopControl impl from libtracker.so because R5 loader doesn't seem able to find these symbols correctly in libtracker.so


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14271 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 61b3e949 28-Sep-2005 Jérôme Duval <korli@users.berlios.de>

more copy loop control methods
added a size view


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14268 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 18c5b742 26-Sep-2005 Jérôme Duval <korli@users.berlios.de>

added package icon
added a InstallerCopyLoopControl class


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14243 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f66f0616 24-Sep-2005 Jérôme Duval <korli@users.berlios.de>

added sizes for packages


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14235 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8d71ca3e 24-Sep-2005 Jérôme Duval <korli@users.berlios.de>

displays package list


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14234 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5b9ea6c3 23-Sep-2005 Jérôme Duval <korli@users.berlios.de>

added some views for packages


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14230 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 348d9eac3b8a59123dcfa04848a42e304a15929d 02-Jun-2013 Ingo Weinhold <ingo_weinhold@gmx.de>

Installer: WorkerThread: Remove InstallerWindow dependency

* Move message constants to InstallerDefs.h.
* Determine the source and target partition ID already in
InstallerWindow and pass those to WorkerThread instead of fiddling
with menu items in _PerformInstall(). And instead of the window object
pass a messenger to the constructor.


# 546208a53940a26c6379c48a7854ade1a8250fc5 16-Apr-2012 Oliver Tappe <zooey@hirschkaefer.de>

More catalog-related cleanup.

* rename B_TRANSLATE_CONTEXT to B_TRANSLATION_CONTEXT and
B_TRANSLATE_WITH_CONTEXT to B_TRANSLATE_CONTEXT, squashing a TODO
* adjust all uses of both macros in Haiku's source tree
* use correct header guard for collecting/Catalog.h

The renamed macros require adjustments to all external applications
using catalogs.


# 5421c7d682a251f1cbcdfa1bf870ca1170584135 20-Jul-2010 Adrien Destugues <pulkomandy@pulkomandy.ath.cx>

* Fix all localized applications, as an include was missing in some of them
* dstcheck : the generated catalog is now 'dstcheck.catkeys' instead of 'en.catkeys', so that it does not conflict with
other localized apps in the bin/ folder.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37617 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4eb0cbb044cf538f18c0d252934a5bcaa33bfd34 07-May-2010 Matt Madia <mattmadia@gmail.com>

Updated TR_CONTEXT to be B_TRANSLATE_CONTEXT, relating to #5408.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36733 a95241bf-73f2-0310-859d-f6bbb57e9c96


# e904ecc93e45bd85db48cf9c78339ac478cf6e01 06-May-2010 Matt Madia <mattmadia@gmail.com>

Updated to use B_TRANSLATE* macros. relates to #5408.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36667 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 48d796576e9b4b9610f78f4b96131eb28a362f23 23-Mar-2010 Stephan Aßmus <superstippi@gmx.de>

* Moved the duplicate "string_for_size()" implementations into libshared.a.
* Adapted libtracker.so, DriveSetup and Installer to use the shared version.
* The new version uses the correct units (KiB instead of KB and so on).
* Use the correct units in a few other prominent places, where
string_for_size() could not be used.

Should resolve a major part of #5378.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35935 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 4a2da42550e3178afd0d3d8d2860494819e0472d 20-Jan-2010 Stephan Aßmus <superstippi@gmx.de>

* Applied localization to the Installer.
* Some coding style fixes along the way.
* Added German translation.

NOTE: The Installer will have to offer a way to change the current locale! So
any translations which are done at this point will have to receive one more
update after I added this feature.

NOTE2: There is something wrong with generating catalogs and the update-all
jam target. If you don't do a clean build, the build won't run through, but it
is enough to build for example an image and then run update-all on your actual
partition profile.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@35209 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9b4593e3a05a777a0451d956f31954a16f6f1c90 28-Jul-2009 Stephan Aßmus <superstippi@gmx.de>

* Fixed some problems of the dynamic layout, basically, the upper part of the
window will now stay fixed when you expand the optional packages and collapse
them again.
* Updated the text about having prepared a partition, since we can now indeed
create and delete partitions.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@31844 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b4afa66367d65eb54c52b4aeec4724af691ef11b 03-May-2009 Stephan Aßmus <superstippi@gmx.de>

First round of cleanup:
* Renamed CopyEngine to WorkerThread, since it's used for other things than
just copying.
* Removed the code borrowed from Tracker.
* Removed the InstallerCopyLoopControl, since the CopyEngine handles
notifications and cancelling by itself now.
* Renamed a few message constants.
* Since we only support BFS partitions as install targets, I removed the
FS type from the target menu item label. However, I am going to solve this
differently. I guess all partitions should be seen in the target list, just
disabled if they are not a valid target, and with a reason given too.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30600 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 7ff74a7b9b10383fae7023e1871a53f98ded0d45 23-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

* Converted to use layout-management.
* New logo specific to R1 Alpha/1.
* "Setup Partitions" is now always visible, since it will most likely be
required to prepare a partition for installation anyways.
* The optional packages are still in the GUI, but are collapsed by default as
before. As there are currently no optional packages, a message will be
displayed if no optional packages are found on the source partition.
* The default label for the "Onto" popup is now "Please choose target" instead
of the first partition found, even though it is not actually selected yet.
* The EULA window is still shown, but it's not based on a BAlert anymore.
* Only make main window non-minimizable if the Deskbar is not running
(untested).
* Style cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30368 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 2384ec2866a67eae2c5a11ca442f68e527976502 23-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

Preparation for using layout-management, improvements to absolute layout for
the time being.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30354 a95241bf-73f2-0310-859d-f6bbb57e9c96


# bc6c545be07c6ea29a5355f011fcbef729b83866 23-Apr-2009 Stephan Aßmus <superstippi@gmx.de>

80 char/line cleanup.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30351 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 9f3d8cb64fdbfd9b5ceff4e63669fdbb8dac0fc0 12-May-2007 Jérôme Duval <korli@users.berlios.de>

code style update
now mount the target partition before copying


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21113 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8b357f8a216e63e9680c7cd7d018f58c39094870 02-Feb-2006 Jérôme Duval <korli@users.berlios.de>

if a already selected item is selected, don't do anything
Installer isn't beos compatible is this directory, will add a test directory for it
fixed link libs and debug message


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16196 a95241bf-73f2-0310-859d-f6bbb57e9c96


# a5fa64b505d5c014027f2198476c806a337e068f 01-Feb-2006 Jérôme Duval <korli@users.berlios.de>

some changes : alert if free space isn't enough, set status when mouse is over packages (doesn't work for some reason ...)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16192 a95241bf-73f2-0310-859d-f6bbb57e9c96


# cbdfe279477d8a54af8cc2459c95129cc279f660 23-Jan-2006 Jérôme Duval <korli@users.berlios.de>

reworked a bit to install packages


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16048 a95241bf-73f2-0310-859d-f6bbb57e9c96


# baf595a0374020b30531c1ec75f0245ed148a8b0 27-Oct-2005 Jérôme Duval <korli@users.berlios.de>

we now use off_t for the sizes (sorry Ingo for bugging :) )


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14538 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 1eedf230816a2618554a059f2d235dbdd53befb4 26-Oct-2005 Jérôme Duval <korli@users.berlios.de>

now populates menus
improved size to string formating for GB and TB


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14531 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 633dee064e847e9bd9857193f7ae861e10ab21ab 30-Sep-2005 Jérôme Duval <korli@users.berlios.de>

fix packages view, added a copy engine class


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14283 a95241bf-73f2-0310-859d-f6bbb57e9c96


# b5feb1f13f33c2a470adb759b67e574e83caffd5 28-Sep-2005 Jérôme Duval <korli@users.berlios.de>

total size is now working
copied BPrivate::CopyLoopControl impl from libtracker.so because R5 loader doesn't seem able to find these symbols correctly in libtracker.so


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14271 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 61b3e949b47aadb764d87142059678978b00b61c 28-Sep-2005 Jérôme Duval <korli@users.berlios.de>

more copy loop control methods
added a size view


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14268 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 18c5b74250dfe71d9514414725c3c0063949f4ae 26-Sep-2005 Jérôme Duval <korli@users.berlios.de>

added package icon
added a InstallerCopyLoopControl class


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14243 a95241bf-73f2-0310-859d-f6bbb57e9c96


# f66f06160a069462a2f231a0661d4fe40130278a 24-Sep-2005 Jérôme Duval <korli@users.berlios.de>

added sizes for packages


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14235 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 8d71ca3e253f0d5cd4b9bb37171e4ca5553dcc54 24-Sep-2005 Jérôme Duval <korli@users.berlios.de>

displays package list


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14234 a95241bf-73f2-0310-859d-f6bbb57e9c96


# 5b9ea6c31412bed10cd5583336ae3445cdedd520 23-Sep-2005 Jérôme Duval <korli@users.berlios.de>

added some views for packages


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14230 a95241bf-73f2-0310-859d-f6bbb57e9c96