Finish up singleton refactoring into one giant class

This commit is contained in:
Rasmus Karlsson
2018-04-28 15:20:18 +02:00
parent 9426a9d633
commit 2f195891cd
34 changed files with 221 additions and 184 deletions
+5 -8
View File
@@ -62,10 +62,9 @@ bool MessageLayout::layout(int width, float scale, MessageElement::Flags flags)
this->emoteGeneration = app->emotes->getGeneration();
// check if text changed
bool textChanged =
this->fontGeneration != singletons::FontManager::getInstance().getGeneration();
bool textChanged = this->fontGeneration != app->fonts->getGeneration();
layoutRequired |= textChanged;
this->fontGeneration = singletons::FontManager::getInstance().getGeneration();
this->fontGeneration = app->fonts->getGeneration();
// check if work mask changed
bool wordMaskChanged = this->currentWordFlags != flags; // app->settings->getWordTypeMask();
@@ -160,8 +159,7 @@ void MessageLayout::paint(QPainter &painter, int y, int messageIndex, Selection
// draw disabled
if (this->message->flags.HasFlag(Message::Disabled)) {
painter.fillRect(0, y, pixmap->width(), pixmap->height(),
app->themes->messages.disabled);
painter.fillRect(0, y, pixmap->width(), pixmap->height(), app->themes->messages.disabled);
}
// draw selection
@@ -171,9 +169,8 @@ void MessageLayout::paint(QPainter &painter, int y, int messageIndex, Selection
// draw last read message line
if (isLastReadMessage) {
QColor color = isWindowFocused
? app->themes->tabs.selected.backgrounds.regular.color()
: app->themes->tabs.selected.backgrounds.unfocused.color();
QColor color = isWindowFocused ? app->themes->tabs.selected.backgrounds.regular.color()
: app->themes->tabs.selected.backgrounds.unfocused.color();
QBrush brush(color, Qt::VerPattern);
+11 -6
View File
@@ -1,4 +1,5 @@
#include "messages/layouts/messagelayoutelement.hpp"
#include "application.hpp"
#include "messages/messageelement.hpp"
#include "util/debugcount.hpp"
@@ -165,9 +166,11 @@ int TextLayoutElement::getSelectionIndexCount()
void TextLayoutElement::paint(QPainter &painter)
{
auto app = getApp();
painter.setPen(this->color);
painter.setFont(singletons::FontManager::getInstance().getFont(this->style, this->scale));
painter.setFont(app->fonts->getFont(this->style, this->scale));
painter.drawText(QRectF(this->getRect().x(), this->getRect().y(), 10000, 10000), this->text,
QTextOption(Qt::AlignLeft | Qt::AlignTop));
@@ -183,8 +186,9 @@ int TextLayoutElement::getMouseOverIndex(const QPoint &abs)
return 0;
}
QFontMetrics &metrics =
singletons::FontManager::getInstance().getFontMetrics(this->style, this->scale);
auto app = getApp();
QFontMetrics &metrics = app->fonts->getFontMetrics(this->style, this->scale);
int x = this->getRect().left();
@@ -203,8 +207,9 @@ int TextLayoutElement::getMouseOverIndex(const QPoint &abs)
int TextLayoutElement::getXFromIndex(int index)
{
QFontMetrics &metrics =
singletons::FontManager::getInstance().getFontMetrics(this->style, this->scale);
auto app = getApp();
QFontMetrics &metrics = app->fonts->getFontMetrics(this->style, this->scale);
if (index <= 0) {
return this->getRect().left();
@@ -242,7 +247,7 @@ void TextIconLayoutElement::paint(QPainter &painter)
{
auto app = getApp();
QFont font = singletons::FontManager::getInstance().getFont(FontStyle::Tiny, this->scale);
QFont font = app->fonts->getFont(FontStyle::Tiny, this->scale);
painter.setPen(app->themes->messages.textColors.system);
painter.setFont(font);
+1 -2
View File
@@ -139,8 +139,7 @@ void TextElement::addToContainer(MessageLayoutContainer &container, MessageEleme
auto app = getApp();
if (_flags & this->getFlags()) {
QFontMetrics &metrics = singletons::FontManager::getInstance().getFontMetrics(
this->style, container.getScale());
QFontMetrics &metrics = app->fonts->getFontMetrics(this->style, container.getScale());
for (Word &word : this->words) {
auto getTextLayoutElement = [&](QString text, int width, bool trailingSpace) {