コード例 #1
0
ファイル: MailAddress.cpp プロジェクト: SpOOnman/trojita
QString MailAddress::prettyName(FormattingMode mode) const
{
    bool hasNiceName = !name.isEmpty();

    if (!hasNiceName && mode == FORMAT_JUST_NAME)
        mode = FORMAT_READABLE;

    if (mode == FORMAT_JUST_NAME) {
        return name;
    } else {
        QString address = mailbox + QLatin1Char('@') + host;
        QString niceName;
        if (hasNiceName) {
            niceName = name;
        } else {
            niceName = address;
        }
        if (mode == FORMAT_READABLE) {
            if (hasNiceName) {
                return name + QLatin1String(" <") + address + QLatin1Char('>');
            } else {
                return address;
            }
        } else {
#if QT_VERSION < QT_VERSION_CHECK(5, 0, 0)
            return QString::fromUtf8("<a href=\"%1\">%2</a>").arg(Qt::escape(asUrl().toString()), Qt::escape(niceName));
#else
            return QString::fromUtf8("<a href=\"%1\">%2</a>").arg(asUrl().toString().toHtmlEscaped(), niceName.toHtmlEscaped());
#endif
        }
    }
}
コード例 #2
0
void AddFeedDialog::accept()
{
    enableButtonOk(false);
    feedUrl = widget->urlEdit->text().trimmed();

    delete m_feed;
    m_feed = new Feed( Kernel::self()->storage() );

    // HACK: make weird wordpress links ("feed:http://foobar/rss") work
    if (feedUrl.startsWith(QLatin1String("feed:http")))
        feedUrl = feedUrl.right( feedUrl.length() - 5 );

    if (feedUrl.indexOf(":/") == -1)
        feedUrl.prepend("http://");

    KUrl asUrl( feedUrl );
    if ( asUrl.scheme() == QLatin1String("feed") ) {
        asUrl.setScheme( "http" );
        feedUrl = asUrl.url();
    }
    m_feed->setXmlUrl(feedUrl);

    widget->statusLabel->setText( i18n("Downloading %1", feedUrl) );

    connect( m_feed, SIGNAL(fetched(Akregator::Feed*)),
             this, SLOT(fetchCompleted(Akregator::Feed*)) );
    connect( m_feed, SIGNAL(fetchError(Akregator::Feed*)),
             this, SLOT(fetchError(Akregator::Feed*)) );
    connect( m_feed, SIGNAL(fetchDiscovery(Akregator::Feed*)),
             this, SLOT(fetchDiscovery(Akregator::Feed*)) );

    m_feed->fetch(true);
}