LINUX.ORG.RU

Ответ на: комментарий от PhysShell

QPlainTextView

Возможно для её цели подойдёт больше QTextBrowser

Только не стоит забывать сделать что-то вроде:

QFont font("Monospace");
font.setStyleHint(QFont::TypeWriter);
ui->textBrowser->setFont(font);

Вроде с ним и логику с подсветкой сделать возможно.

Да, легко. Порыскал в своих сорцах, нашёл такой говнокодик 7-летней давности: https://github.com/EXL/zUnlock-ZN5/blob/4618f328af90e0a79ddea7062718a9c9a963d309/Widget.cpp#L69-L93

Что-то подобное я там как раз и делал, чего хочет ТС. Правда не знаю, насколько этот виджет сможет справляться с большими потоками данных, если они будут.

EXL ★★★★★
()
Последнее исправление: EXL (всего исправлений: 1)
Ответ на: комментарий от EXL

Да, легко

Действительно, легко и непринуждённо. По долгу службы работаю с WPF, сразу в голову биндинги и дататемплейты полезли.

С такой задачей не сталкивался, но имхо там будет нужно побольше повозиться.

PhysShell ★★
()
Ответ на: комментарий от EXL

Да нее, QPlainTextEdit всё равно проще и по идее лучше оптимизирован под простой цветной текст:

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QPlainTextEdit pte;
    pte.appendHtml("<p style=\"color:#FF0000\">ERROR</p>");
    pte.appendHtml("<p style=\"color:#00FF00\">INFO</p>");
    pte.show();
}
AKonia ★★
()
Последнее исправление: AKonia (всего исправлений: 3)
Ответ на: комментарий от anonymous

Лорчую. Сомневаюсь, что любой готовый виджет сможет нормально работать, как только лог немного разрастётся, даже QPlainTextEdit.

unC0Rr ★★★★★
()
Ответ на: комментарий от unC0Rr

Вангую, что QTableView на нескольких тысячах строк будет торомозить сильнее и сожрет больше памяти, чем QPlainTextEdit

annulen ★★★★★
()
Ответ на: комментарий от annulen

Да вряд ли. В том и сила вьюшки, что она без проблем уничтожает невидимые делегаты и экономит на этом.

unC0Rr ★★★★★
()
Ответ на: комментарий от unC0Rr

можно слушать изменение-наполнение буфера и при желаемом пороге сбрасывать старьё на диск

AKonia ★★
()

Замутите файл синтаксиса в вим

IvanR ★★★
()
Ответ на: комментарий от EXL

Спасибо. А ты не такой противный, как я думала.

Djanik
() автор топика
Ответ на: комментарий от EXL

Возможно для её цели подойдёт больше QTextBrowser

Какой смысл? Это расширение от QTextEdit в котором сделана работа с гиперссылками. Для консоли и QTextEdit подойдет, будет то же самое, только класс полегче.

Xintrea ★★★★★
()
Ответ на: комментарий от Xintrea

Это расширение от QTextEdit в котором сделана работа с гиперссылками.

Вот как раз кликая на них из лога (например, лога компиляции) переходить куда-либо.

EXL ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.