LeechCraft  0.6.70-16373-g319c272718
Modular cross-platform feature rich live environment.
massfontchangedialog.cpp
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 #include "massfontchangedialog.h"
10 #include <util/sll/qtutil.h>
11 
12 namespace LC::Util
13 {
15  const QList<IWkFontsSettable::FontFamily>& families, QWidget *parent)
16  : QDialog { parent }
17  {
18  Ui_.setupUi (this);
19 
20  Family2Box_ [IWkFontsSettable::FontFamily::StandardFont] = Ui_.StandardBox_;
21  Family2Box_ [IWkFontsSettable::FontFamily::FixedFont] = Ui_.FixedBox_;
22  Family2Box_ [IWkFontsSettable::FontFamily::SerifFont] = Ui_.SerifBox_;
23  Family2Box_ [IWkFontsSettable::FontFamily::SansSerifFont] = Ui_.SansSerifBox_;
24  Family2Box_ [IWkFontsSettable::FontFamily::CursiveFont] = Ui_.CursiveBox_;
25  Family2Box_ [IWkFontsSettable::FontFamily::FantasyFont] = Ui_.FantasyBox_;
26 
27  for (const auto family : families)
28  Family2Box_ [family]->setCheckState (Qt::Checked);
29 
30  Ui_.FontChooser_->SetFont (font);
31  }
32 
34  {
35  return Ui_.FontChooser_->GetFont ();
36  }
37 
39  {
41  for (const auto& pair : Util::Stlize (Family2Box_))
42  if (pair.second->checkState () == Qt::Checked)
43  result << pair.first;
44  return result;
45  }
46 }
MassFontChangeDialog(const QFont &, const QList< IWkFontsSettable::FontFamily > &, QWidget *=nullptr)
auto Stlize(Assoc &&assoc) noexcept
Converts an Qt&#39;s associative sequence assoc to an STL-like iteratable range.
Definition: qtutil.h:48
QList< IWkFontsSettable::FontFamily > GetFamilies() const