LeechCraft
0.6.70-16373-g319c272718
Modular cross-platform feature rich live environment.
Loading...
Searching...
No Matches
util.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 <QModelIndex>
12
13
namespace
LC::Util
14
{
15
template
<
typename
F>
16
void
EnumerateChildren
(
const
QModelIndex
&
idx
,
bool
includingRoot
,
F
&& f)
17
{
18
if
(
includingRoot
)
19
f (
idx
);
20
21
auto
model
=
idx
.model ();
22
for
(
int
i
= 0;
i
<
model
->rowCount (
idx
); ++
i
)
23
EnumerateChildren
(
model
->index (
i
, 0,
idx
),
true
, f);
24
}
25
26
}
LC::Util
Definition
icoreproxy.h:34
LC::Util::Filter
Container< T > Filter(const Container< T > &c, F f)
Definition
prelude.h:118
LC::Util::EnumerateChildren
void EnumerateChildren(const QModelIndex &idx, bool includingRoot, F &&f)
Definition
util.h:16
src
util
models
util.h
Generated by
1.10.0