1/*
2 * Copyright 2014, Stephan A��mus <superstippi@gmx.de>.
3 * Copyright 2020-2021, Andrew Lindesay <apl@lindesay.co.nz>.
4 * All rights reserved. Distributed under the terms of the MIT License.
5 */
6#ifndef FEATURED_PACKAGES_VIEW_H
7#define FEATURED_PACKAGES_VIEW_H
8
9
10#include <View.h>
11
12#include "Model.h"
13#include "PackageInfo.h"
14#include "PackageInfoListener.h"
15
16
17class StackedFeaturedPackagesView;
18
19
20class FeaturedPackagesView : public BView {
21public:
22								FeaturedPackagesView(Model& model);
23	virtual						~FeaturedPackagesView();
24
25	virtual	void				DoLayout();
26
27			void				BeginAddRemove();
28			void				EndAddRemove();
29			void				AddPackage(const PackageInfoRef& package);
30			void				RemovePackage(const PackageInfoRef& package);
31			void				Clear();
32
33			void				SelectPackage(const PackageInfoRef& package,
34									bool scrollToEntry = false);
35
36	static	void				CleanupIcons();
37
38private:
39			void				_AdjustViews();
40
41private:
42			Model&				fModel;
43			BScrollView*		fScrollView;
44			StackedFeaturedPackagesView*
45								fPackagesView;
46};
47
48
49#endif // FEATURED_PACKAGES_VIEW_H
50