Russian Qt Forum
Июнь 16, 2024, 08:05 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: Line number panel ?  (Прочитано 14337 раз)
Red Devil
Гость
« : Май 07, 2008, 01:52 »

Есть хорошего качества виджет для реализации line nubmer для текстовых редакторов ?
Те что видел в опен-соурс, мягко говоря далеко от идеала.
Записан
Mikhail
Программист
*****
Offline Offline

Сообщений: 587


Просмотр профиля
« Ответ #1 : Май 07, 2008, 07:38 »

Есть хорошего качества виджет для реализации line nubmer для текстовых редакторов ?
Те что видел в опен-соурс, мягко говоря далеко от идеала.

Что ты понимаешь под качеством.
Какие редакторы смотрел.
Что не понравилось?
Записан
Red Devil
Гость
« Ответ #2 : Май 07, 2008, 20:11 »

edyuk какой-то, qtdevelop, kdevelop.

Под качеством я понимаю хорошо написанный код, без всяких там int a, float b, без лишних зависимостей и с документацией как и чего мне сделать что его интегрировать (соединить с виджетом редактором в котором текст редактируется).
Записан
Mikhail
Программист
*****
Offline Offline

Сообщений: 587


Просмотр профиля
« Ответ #3 : Май 12, 2008, 13:08 »

edyuk какой-то, qtdevelop, kdevelop.

Под качеством я понимаю хорошо написанный код, без всяких там int a, float b, без лишних зависимостей и с документацией как и чего мне сделать что его интегрировать (соединить с виджетом редактором в котором текст редактируется).

Отдельный вряд ли найдешь.
Посмотри готовый редактор с панелью нумерации строк и панелью фолдинга.

http://www.anyqsoft.com/qPEditor?Lang=Rus
Записан
Вячеслав
Гость
« Ответ #4 : Май 12, 2008, 22:52 »

еще сюды глянуть можно QScintillahttp://www.riverbankcomputing.co.uk/software/qscintilla/intro
Цитировать
As well as features found in standard text editing components, QScintilla includes features especially useful when editing and debugging source code. These include support for syntax styling, error indicators, code completion and call tips. The selection margin can contain markers like those used in debuggers to indicate breakpoints and the current line. Styling choices are more open than with many editors, allowing the use of proportional fonts, bold and italics, multiple foreground and background colours and multiple fonts.
Записан
Red Devil
Гость
« Ответ #5 : Май 18, 2008, 14:46 »

Спасибо.
В QpEditor вроде ничего, все достаточно просто в коде, попытаюсь его встроить к себе.
А вот в scintilla сходу не нашел в исходниках компонента, который реализует line number.
Записан
Mikhail
Программист
*****
Offline Offline

Сообщений: 587


Просмотр профиля
« Ответ #6 : Май 18, 2008, 17:28 »

Спасибо.
В QpEditor вроде ничего, все достаточно просто в коде, попытаюсь его встроить к себе.
А вот в scintilla сходу не нашел в исходниках компонента, который реализует line number.

Зачем встраивать, бери готовый редактор qPEditor целиком и пользуйся.
Тем более если готовить .ui  с помощью QtDesigner, то можно использовать плагин qPEditor и просто положить его на форму.
Успехов.
Записан
Tonal
Гость
« Ответ #7 : Май 20, 2008, 11:50 »

Если тебе именно нужен отдельный нумерователь строк, то чем тебя QHeaderView не устраивает?
Записан
Red Devil
Гость
« Ответ #8 : Май 22, 2008, 20:52 »

Ну если бы знать как его использовать ... есть у меня кое какие сомнения, в других приложениях я не видел чтобы его в качестве панели такой использовали.
Mikhail
Цитировать
Зачем встраивать, бери готовый редактор qPEditor целиком и пользуйся.
Нет, спасибо - готовый мне не к чему, у меня свой.
Записан
Tonal
Гость
« Ответ #9 : Май 23, 2008, 08:17 »

В QTableView/QTableWidget же используют - чем плохо?. :-)
А работать с ним так же как и с любым наследником QAbstractView:
Установил модель, которая отдаёт в data по индексу номер строки, установил количество строк. Всё. :-)
Записан
Red Devil
Гость
« Ответ #10 : Май 24, 2008, 22:56 »

Новичек я пока что в Qt, про модель кое-какие теоритические сведенья имею, но не практические.
Попытаюсь сам сделать, если не получится создам темку.
Записан
Red Devil
Гость
« Ответ #11 : Май 26, 2008, 00:35 »

Книжечку читаю - вроде более понятно все стало.
И что я собственно хочу сказать. Ведь для модели данных нужны данные - т.е. в моем случае ему будут нужны номера всех строк в файле.
Если предположить, что одновременно может быть открыты десятки файлов - расход памяти будет достаточно большой на эти данные.
Что скажешь по этому поводу, Tonal ?
Записан
lit-uriy
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3880


Просмотр профиля WWW
« Ответ #12 : Май 26, 2008, 01:38 »

я думаю основной расход памяти будет от содержимого файлов.
Записан

Юра.
Tonal
Гость
« Ответ #13 : Май 26, 2008, 10:23 »

Какой такой расход памяти? На что?
Рисуешь наследника QAbstractListModel. Переопределяешь метод data:
Код:
QVariant RowNumberModel::data(const QModelIndex& index, int role = Qt::DisplayRole) const {
  if (role == Qt::DisplayRole && index.isValid())
    return QVariant(QString::number(index.row() + 1));
  return QVariant();
}
Ну и остальное по мелочи. Память только на экземпляр самой модели и тратится.
Записан
Red Devil
Гость
« Ответ #14 : Май 31, 2008, 02:36 »

ни черта не понимаю.
Все примеры в книгах показывают как пределать модель к таблицам - как к QTextEdit ее прекприть я не понимаю ... даже не представляю какие функции нужно вызывать ... тем более что у QTextEdit нету setModel.
________

забираю свои слова назад - уже кое чего получилось. Буду разбиратся теперь с размерами.
« Последнее редактирование: Май 31, 2008, 14:24 от Red Devil » Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.05 секунд. Запросов: 22.