1 | /* |
2 | This file is part of KDE. |
3 | |
4 | SPDX-FileCopyrightText: 2010 Intel Corporation |
5 | SPDX-FileContributor: Mateu Batle Sastre <mbatle@collabora.co.uk> |
6 | |
7 | SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL |
8 | */ |
9 | |
10 | #ifndef ATTICA_ICON_H |
11 | #define ATTICA_ICON_H |
12 | |
13 | #include <QSharedDataPointer> |
14 | #include <QUrl> |
15 | |
16 | #include "attica_export.h" |
17 | |
18 | namespace Attica |
19 | { |
20 | /** |
21 | @class Icon icon.h <Attica/Icon> |
22 | |
23 | The Icon class contains information about an icon. |
24 | It consists of a Url and icon size information. |
25 | */ |
26 | class ATTICA_EXPORT Icon |
27 | { |
28 | public: |
29 | typedef QList<Icon> List; |
30 | |
31 | /** |
32 | * Creates an empty Icon |
33 | */ |
34 | Icon(); |
35 | |
36 | /** |
37 | * Copy constructor. |
38 | * @param other the Icon to copy from |
39 | */ |
40 | Icon(const Icon &other); |
41 | |
42 | /** |
43 | * Assignment operator. |
44 | * @param other the Icon to assign from |
45 | * @return pointer to this Icon |
46 | */ |
47 | Icon &operator=(const Icon &other); |
48 | |
49 | /** |
50 | * Destructor. |
51 | */ |
52 | ~Icon(); |
53 | |
54 | QUrl url() const; |
55 | void setUrl(const QUrl &url); |
56 | |
57 | uint width() const; |
58 | void setWidth(uint width); |
59 | |
60 | uint height() const; |
61 | void setHeight(uint height); |
62 | |
63 | private: |
64 | class Private; |
65 | QSharedDataPointer<Private> d; |
66 | }; |
67 | |
68 | } |
69 | |
70 | #endif |
71 | |