diff --git a/saoriwindow.cpp b/saoriwindow.cpp index df44ea7..515021b 100644 --- a/saoriwindow.cpp +++ b/saoriwindow.cpp @@ -45,6 +45,38 @@ delete ui; } +QPair SaoriWindow::getTimelineTitle(const QString timeline) +{ + // trick for translation. + QStringList trtl; + QString tlText,icon; + trtl << "home" << "local" << "public" << "notifications"; + switch (trtl.indexOf(timeline)) { + case 0: + tlText = tr("home"); + icon = ":/icons/ionicons/chatbubbles.svg"; + break; + case 1: + tlText = tr("local"); + icon = ":/icons/ionicons/chatbubble.svg"; + break; + case 2: + tlText = tr("public"); + icon = ":/icons/ionicons/earth.svg"; + break; + case 3: + tlText = tr("notifications"); + icon = ":/icons/ionicons/alert.svg"; + break; + default: + tlText = timeline; + break; + } + + return QPair(tlText,icon); + +} + void SaoriWindow::openView(const QStringList viewName) { if (auto view = SaoriView::findView(viewName.at(1),viewName.at(0))) { @@ -80,35 +112,11 @@ item->setIcon(0,QIcon(":/icons/ionicons/person.svg")); accountItem->addChild(item); for (auto tl:SaoriApplication::getAccountList()->at(i)->timelineList()) { - // trick for translation. - QStringList trtl; - QString tlText,icon; - trtl << "home" << "local" << "public" << "notifications"; - switch (trtl.indexOf(tl)) { - case 0: - tlText = tr("home"); - icon = ":/icons/ionicons/chatbubbles.svg"; - break; - case 1: - tlText = tr("local"); - icon = ":/icons/ionicons/chatbubble.svg"; - break; - case 2: - tlText = tr("public"); - icon = ":/icons/ionicons/earth.svg"; - break; - case 3: - tlText = tr("notifications"); - icon = ":/icons/ionicons/alert.svg"; - break; - default: - tlText = tl; - break; - } - auto tlItem = new QTreeWidgetItem(item,QStringList() << tlText + auto title = getTimelineTitle(tl); + auto tlItem = new QTreeWidgetItem(item,QStringList() << title.first << SaoriApplication::getAccountList()->at(i)->name() << tl); - if (!icon.isEmpty()) tlItem->setIcon(0,QIcon(icon)); + if (!title.second.isEmpty()) tlItem->setIcon(0,QIcon(title.second)); item->addChild(tlItem); } } diff --git a/saoriwindow.h b/saoriwindow.h index 58587ea..50a86cb 100644 --- a/saoriwindow.h +++ b/saoriwindow.h @@ -29,6 +29,7 @@ #include #include +#include namespace Ui { class SaoriWindow; @@ -41,6 +42,7 @@ public: explicit SaoriWindow(QWidget *parent = 0); ~SaoriWindow(); + static QPair getTimelineTitle(const QString timeline); protected: void openView(const QStringList viewName);