From beba58781063377e3ec2345185a418ca2b9a28cc Mon Sep 17 00:00:00 2001 From: Herwig Birke Date: Wed, 20 Nov 2019 17:35:41 +0100 Subject: [PATCH] initial commit --- .gitignore | 102 +++++++++++++++++++++++++++++++----------------- cfontview.cpp | 25 ++++++++++++ cfontview.h | 25 ++++++++++++ cfontview.ui | 49 +++++++++++++++++++++++ cmainwindow.cpp | 35 +++++++++++++++++ cmainwindow.h | 21 ++++++++++ cmainwindow.ui | 73 ++++++++++++++++++++++++++++++++++ fontManager.pro | 34 ++++++++++++++++ main.cpp | 12 ++++++ 9 files changed, 340 insertions(+), 36 deletions(-) create mode 100644 cfontview.cpp create mode 100644 cfontview.h create mode 100644 cfontview.ui create mode 100644 cmainwindow.cpp create mode 100644 cmainwindow.h create mode 100644 cmainwindow.ui create mode 100644 fontManager.pro create mode 100644 main.cpp diff --git a/.gitignore b/.gitignore index 5291a38..fab7372 100644 --- a/.gitignore +++ b/.gitignore @@ -1,43 +1,73 @@ -# C++ objects and libs -*.slo -*.lo -*.o -*.a -*.la -*.lai -*.so -*.dll -*.dylib +# This file is used to ignore files which are generated +# ---------------------------------------------------------------------------- -# Qt-es -object_script.*.Release -object_script.*.Debug -*_plugin_import.cpp +*~ +*.autosave +*.a +*.core +*.moc +*.o +*.obj +*.orig +*.rej +*.so +*.so.* +*_pch.h.cpp +*_resource.rc +*.qm +.#* +*.*# +core +!core/ +tags +.DS_Store +.directory +*.debug +Makefile* +*.prl +*.app +moc_*.cpp +ui_*.h +qrc_*.cpp +Thumbs.db +*.res +*.rc /.qmake.cache /.qmake.stash -*.pro.user -*.pro.user.* -*.qbs.user -*.qbs.user.* -*.moc -moc_*.cpp -moc_*.h -qrc_*.cpp -ui_*.h -*.qmlc -*.jsc -Makefile* -*build-* -# Qt unit tests -target_wrapper.* +# qtcreator generated files +*.pro.user* -# QtCreator -*.autosave +# xemacs temporary files +*.flc -# QtCreator Qml -*.qmlproject.user -*.qmlproject.user.* +# Vim temporary files +.*.swp + +# Visual Studio generated files +*.ib_pdb_index +*.idb +*.ilk +*.pdb +*.sln +*.suo +*.vcproj +*vcproj.*.*.user +*.ncb +*.sdf +*.opensdf +*.vcxproj +*vcxproj.* + +# MinGW generated files +*.Debug +*.Release + +# Python byte code +*.pyc + +# Binaries +# -------- +*.dll +*.exe -# QtCreator CMake -CMakeLists.txt.user* diff --git a/cfontview.cpp b/cfontview.cpp new file mode 100644 index 0000000..f60a850 --- /dev/null +++ b/cfontview.cpp @@ -0,0 +1,25 @@ +#include "cfontview.h" +#include "ui_cfontview.h" + + +cFontView::cFontView(QWidget *parent) : + QWidget(parent), + ui(new Ui::cFontView) +{ + ui->setupUi(this); +} + +cFontView::~cFontView() +{ + delete ui; +} + +void cFontView::setText(const QString& text) +{ + ui->m_lpSampleText->setText(text); +} + +void cFontView::setFont(const QFont& font) +{ + ui->m_lpSampleText->setFont(font); +} diff --git a/cfontview.h b/cfontview.h new file mode 100644 index 0000000..7530c95 --- /dev/null +++ b/cfontview.h @@ -0,0 +1,25 @@ +#ifndef CFONTVIEW_H +#define CFONTVIEW_H + +#include + +namespace Ui { +class cFontView; +} + +class cFontView : public QWidget +{ + Q_OBJECT + +public: + explicit cFontView(QWidget *parent = nullptr); + ~cFontView(); + + void setText(const QString& text); + void setFont(const QFont& font); + +private: + Ui::cFontView* ui; +}; + +#endif // CFONTVIEW_H diff --git a/cfontview.ui b/cfontview.ui new file mode 100644 index 0000000..4e5b766 --- /dev/null +++ b/cfontview.ui @@ -0,0 +1,49 @@ + + + cFontView + + + + 0 + 0 + 400 + 300 + + + + Form + + + + 0 + + + 0 + + + 0 + + + 0 + + + 0 + + + + + QFrame::Box + + + QFrame::Plain + + + TextLabel + + + + + + + + diff --git a/cmainwindow.cpp b/cmainwindow.cpp new file mode 100644 index 0000000..fbb808c --- /dev/null +++ b/cmainwindow.cpp @@ -0,0 +1,35 @@ +#include "cmainwindow.h" +#include "ui_cmainwindow.h" + +#include "cfontview.h" + +#include +#include + + +cMainWindow::cMainWindow(QWidget *parent) + : QMainWindow(parent) + , ui(new Ui::cMainWindow) +{ + ui->setupUi(this); + + QFontDatabase fontDatabase; + + fontDatabase.addApplicationFont("C:\\Temp\\Fonts\\a song for jennifer.ttf"); + fontDatabase.addApplicationFont("C:\\Temp\\Fonts\\Grunge Handwriting.ttf"); + + QStringList families = fontDatabase.families(); + + for(const QString& family : families) + { + cFontView* lpFontView = new cFontView(this); + lpFontView->setText(family); + lpFontView->setFont(QFont(family, 16)); + ui->m_lpLayout->addWidget(lpFontView); + } +} + +cMainWindow::~cMainWindow() +{ + delete ui; +} diff --git a/cmainwindow.h b/cmainwindow.h new file mode 100644 index 0000000..65f0642 --- /dev/null +++ b/cmainwindow.h @@ -0,0 +1,21 @@ +#ifndef CMAINWINDOW_H +#define CMAINWINDOW_H + +#include + +QT_BEGIN_NAMESPACE +namespace Ui { class cMainWindow; } +QT_END_NAMESPACE + +class cMainWindow : public QMainWindow +{ + Q_OBJECT + +public: + cMainWindow(QWidget *parent = nullptr); + ~cMainWindow(); + +private: + Ui::cMainWindow *ui; +}; +#endif // CMAINWINDOW_H diff --git a/cmainwindow.ui b/cmainwindow.ui new file mode 100644 index 0000000..f893c2e --- /dev/null +++ b/cmainwindow.ui @@ -0,0 +1,73 @@ + + + cMainWindow + + + + 0 + 0 + 800 + 600 + + + + cMainWindow + + + + + + + true + + + + + 0 + 0 + 780 + 539 + + + + + + + 1 + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + + + + + + 0 + 0 + 800 + 21 + + + + + + + + diff --git a/fontManager.pro b/fontManager.pro new file mode 100644 index 0000000..1122c78 --- /dev/null +++ b/fontManager.pro @@ -0,0 +1,34 @@ +QT += core gui + +greaterThan(QT_MAJOR_VERSION, 4): QT += widgets + +CONFIG += c++11 + +# The following define makes your compiler emit warnings if you use +# any Qt feature that has been marked deprecated (the exact warnings +# depend on your compiler). Please consult the documentation of the +# deprecated API in order to know how to port your code away from it. +DEFINES += QT_DEPRECATED_WARNINGS + +# You can also make your code fail to compile if it uses deprecated APIs. +# In order to do so, uncomment the following line. +# You can also select to disable deprecated APIs only up to a certain version of Qt. +#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 + +SOURCES += \ + cfontview.cpp \ + main.cpp \ + cmainwindow.cpp + +HEADERS += \ + cfontview.h \ + cmainwindow.h + +FORMS += \ + cfontview.ui \ + cmainwindow.ui + +# Default rules for deployment. +qnx: target.path = /tmp/$${TARGET}/bin +else: unix:!android: target.path = /opt/$${TARGET}/bin +!isEmpty(target.path): INSTALLS += target diff --git a/main.cpp b/main.cpp new file mode 100644 index 0000000..705e3e9 --- /dev/null +++ b/main.cpp @@ -0,0 +1,12 @@ +#include "cmainwindow.h" + +#include + + +int main(int argc, char *argv[]) +{ + QApplication a(argc, argv); + cMainWindow w; + w.show(); + return a.exec(); +}