LeechCraft
0.6.70-15082-g543737046d
Modular cross-platform feature rich live environment.
itemsfinder.h
Go to the documentation of this file.
1
/**********************************************************************
2
* LeechCraft - modular cross-platform feature rich internet client.
3
* Copyright (C) 2006-2014 Georg Rudoy
4
*
5
* Distributed under the Boost Software License, Version 1.0.
6
* (See accompanying file LICENSE or copy at https://www.boost.org/LICENSE_1_0.txt)
7
**********************************************************************/
8
9
#pragma once
10
11
#include <memory>
12
#include <QObject>
13
#include <QHash>
14
#include <
interfaces/core/icoreproxy.h
>
15
#include "
xdgconfig.h
"
16
17
namespace
LC::Util::XDG
18
{
19
class
UTIL_XDG_API
Item
;
20
using
Item_ptr
= std::shared_ptr<Item>;
21
22
using
Cat2Items_t
= QHash<QString, QList<Item_ptr>>;
23
24
enum class
Type
;
25
40
class
UTIL_XDG_API
ItemsFinder
:
public
QObject
41
{
42
Q_OBJECT
43
44
ICoreProxy_ptr
Proxy_;
45
Cat2Items_t
Items_
;
46
47
bool
IsReady_ =
false
;
48
bool
IsScanning_ =
false
;
49
50
const
QList<Type>
Types_;
51
public
:
66
ItemsFinder
(
const
ICoreProxy_ptr
&,
const
QList<Type>
& types, QObject *parent =
nullptr
);
67
77
bool
IsReady ()
const
;
78
90
Cat2Items_t
GetItems ()
const
;
91
99
Item_ptr
FindItem (
const
QString& permanentID)
const
;
100
protected
:
101
void
Update ();
102
signals:
105
void
itemsListChanged ();
106
};
107
}
LC::Util::XDG::Item_ptr
std::shared_ptr< Item > Item_ptr
Definition:
item.h:30
QList< Type >
icoreproxy.h
Items_
QMultiMap< QDateTime, QString > Items_
Definition:
networkdiskcachegc.cpp:49
xdgconfig.h
LC::Util::XDG::Type
Type
Describes the various types of XDG .desktop files.
Definition:
itemtypes.h:23
LC::Util::XDG
Definition:
desktopparser.cpp:15
ICoreProxy_ptr
std::shared_ptr< ICoreProxy > ICoreProxy_ptr
Definition:
icoreproxy.h:181
LC::Util::XDG::ItemsFinder
class UTIL_XDG_API ItemsFinder
Definition:
xdgfwd.h:25
LC::Util::XDG::ItemsFinder
Finds and parses XDG .desktop files.
Definition:
itemsfinder.h:46
LC::Util::XDG::Cat2Items_t
QHash< QString, QList< Item_ptr > > Cat2Items_t
Definition:
itemsfinder.h:28
LC::Util::XDG::Item
class UTIL_XDG_API Item
Definition:
itemsfinder.h:25
UTIL_XDG_API
#define UTIL_XDG_API
Definition:
xdgconfig.h:16
src
util
xdg
itemsfinder.h
Generated by
1.8.17