PassRefPtr<StringImpl> RenderTextFragment::originalText() const
{
    Node* e = node();
    RefPtr<StringImpl> result = (e ? static_cast<Text*>(e)->dataImpl() : contentString());
    if (result && (start() > 0 || start() < result->length()))
        result = result->substring(start(), end());
    return result.release();
}
UChar RenderTextFragment::previousCharacter() const
{
    if (start()) {
        String original = textNode() ? textNode()->data() : contentString();
        if (!original.isNull() && start() <= original.length())
            return original[start() - 1];
    }

    return RenderText::previousCharacter();
}
UChar RenderTextFragment::previousCharacter()
{
    if (start()) {
        Node* e = node();
        StringImpl*  original = (e ? static_cast<Text*>(e)->dataImpl() : contentString());
        if (original)
            return (*original)[start() - 1];
    }

    return RenderText::previousCharacter();
}
Beispiel #4
0
int main(int argv, char **args)
{
    QString contentString("One\nTwp\nThree");

    QTextDocument *doc = new QTextDocument(contentString);

//! [0]
    for (QTextBlock it = doc->begin(); it != doc->end(); it = it.next())
        cout << it.text().toStdString() << endl;
//! [0]

    return 0;
}
PassRefPtr<StringImpl> LayoutTextFragment::completeText() const
{
    Text* text = associatedTextNode();
    return text ? text->dataImpl() : contentString();
}
String RenderTextFragment::originalText() const
{
    String result = textNode() ? textNode()->data() : contentString();
    return result.substring(start(), end());
}
Beispiel #7
0
UChar RenderTextFragment::previousCharacter() const
{
    if (start()) {
        Node* e = node();
        StringImpl*  original = ((e && e->isTextNode()) ? static_cast<Text*>(e)->dataImpl() : contentString());
        if (original && start() <= original->length())
            return (*original)[start() - 1];
    }

    return RenderText::previousCharacter();
}
Beispiel #8
0
PassRefPtr<StringImpl> RenderTextFragment::originalText() const
{
    Node* e = node();
    RefPtr<StringImpl> result = ((e && e->isTextNode()) ? static_cast<Text*>(e)->dataImpl() : contentString());
    if (!result)
        return 0;
    return result->substring(start(), end());
}