1/*
2 * Copyright 2013, Stephan A��mus <superstippi@gmx.de>
3 * Copyright 2011, Ingo Weinhold, <ingo_weinhold@gmx.de>
4 * Copyright 2013, Rene Gollent, <rene@gollent.com>
5 * Copyright 2017, Julian Harnath <julian.harnath@rwth-aachen.de>
6 * Copyright 2021, Andrew Lindesay <apl@lindesay.co.nz>
7 *
8 * All rights reserved. Distributed under the terms of the MIT License.
9 *
10 * Note that this file has been re-factored from `PackageManager.h` and
11 * copyrights have been carried across in 2021.
12 */
13#ifndef OPEN_PACKAGE_PROCESS_H
14#define OPEN_PACKAGE_PROCESS_H
15
16
17#include "AbstractPackageProcess.h"
18#include "DeskbarLink.h"
19#include "PackageProgressListener.h"
20
21
22class OpenPackageProcess
23	: public AbstractPackageProcess,
24		private PackageProgressListener {
25public:
26								OpenPackageProcess(
27									PackageInfoRef package, Model* model,
28									const DeskbarLink& link);
29	virtual						~OpenPackageProcess();
30
31	virtual	const char*			Name() const;
32	virtual	const char*			Description() const;
33
34	static	bool				FindAppToLaunch(const PackageInfoRef& package,
35									std::vector<DeskbarLink>& foundLinks);
36
37protected:
38	virtual	status_t			RunInternal();
39
40private:
41			BString				_DeriveDescription();
42
43private:
44			BString				fDescription;
45			DeskbarLink			fDeskbarLink;
46};
47
48#endif // OPEN_PACKAGE_PROCESS_H
49