Albert
Loading...
Searching...
No Matches
item.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2024 Manuel Schneider
2// SPDX-License-Identifier: MIT
3
4#pragma once
5#include <QStringList>
6#include <albert/action.h>
7#include <albert/export.h>
8#include <vector>
9
10namespace albert
11{
12
16class ALBERT_EXPORT Item
17{
18public:
19
20 virtual ~Item();
21
29 virtual QString id() const = 0;
30
39 virtual QString text() const = 0;
40
43 virtual QString subtext() const = 0;
44
47 virtual QStringList iconUrls() const = 0;
48
51 virtual QString inputActionText() const;
52
55 virtual std::vector<Action> actions() const;
56
59 {
60 public:
62 virtual void notify(const albert::Item *item) = 0;
63 protected:
64 virtual ~Observer();
65 };
66
68 virtual void addObserver(Observer *observer);
69
71 virtual void removeObserver(Observer *observer);
72
73};
74
75}
Interface class for item observers.
Definition item.h:59
virtual void notify(const albert::Item *item)=0
Notifies the Observer about any changes in item.
Result items displayed in the query results list.
Definition item.h:17
virtual ~Item()
virtual void removeObserver(Observer *observer)
Stop notifying observer about any changes.
virtual QString subtext() const =0
Getter for the item subtext.
virtual QString id() const =0
Getter for the item identifier.
virtual QString inputActionText() const
Getter for the input action text.
virtual QString text() const =0
Getter for the item text.
virtual std::vector< Action > actions() const
Getter for item actions.
virtual void addObserver(Observer *observer)
Start notifying observer about any changes.
virtual QStringList iconUrls() const =0
Getter for the items iconUrls.
Definition action.h:10