LINUX.ORG.RU

QTextEdit - как сделать возможность добавления вложенных списков?


0

0

Здравствуйте!

Задал вопрос свой здесь http://prog.org.ru/forum/index.php/topic,7250.0.html, никто видимо не знает. Пробую здесь задать.

А вопрос такой возник. Делаю простой, встроенный в приложение, текстовый редактор с возможностью всякой разметки текста. Сейчас столкнулся вот с чем. Не могу понять, как сделать возмножным добавлять или переформатировать выделенный текст в виде _вложенного_ списка.

Просто преобразовать абзацы в пронумерованый список или список с точечками я могу. Это у меня делается так - есть область edittextarea класса QTextEdit, и две кнопки - в список 123 editnumericlist и в список с точечками editdotlist.


void DialogImpl::format_to_list(QTextListFormat::Style setformat)
{
// Создание форматирования
QTextListFormat format;
format.setStyle(setformat);

// Если строки выбраны
if(edittextarea->textCursor().hasSelection())
{
// Форматирование
edittextarea->textCursor().createList(format);
}
else
{
// Вставляется первый пустой пункт
edittextarea->textCursor().insertList(format);
}

// Выравнивание прокрутки чтоб курсор был виден если он уехал вниз
edittextarea->ensureCursorVisible();
}


// Форматирование в нумерованный список
void DialogImpl::on_editnumericlist_clicked(void)
{
format_to_list(QTextListFormat::ListDecimal);
}


// Форматирование в список с точечками
void DialogImpl::on_editdotlist_clicked(void)
{
format_to_list(QTextListFormat::ListDisc);
}


Если сделать в тексте два списка, один выделить и вставить в пункт другого, то пункты вставятся на том же уровне вложенности. А нужно, чтобы образовался подуровень вложенности. Как это сделать?


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