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

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

Страниц: 1 ... 4 5 [6] 7 8 ... 10   Вниз
  Печать  
Автор Тема: Допиливаем Qt Creator  (Прочитано 106468 раз)
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #75 : Июль 06, 2012, 14:40 »

2navrocky,

ох, здорово!

А уменьшенный предпросмотр файла в этих изменениях есть (или как там оно называется) ?
Записан

ArchLinux x86_64 / Win10 64 bit
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #76 : Июль 06, 2012, 15:00 »

А уменьшенный предпросмотр файла в этих изменениях есть (или как там оно называется) ?
Этого пока нет. Появится автор - спросим )
Записан

Гугль в помощь
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #77 : Июль 06, 2012, 18:51 »

Тестирование выявило проблемы со свежей веткой master.  Грустный (какие-то глюки в дополнении и рефакторинге, не происходит запуск приложения на исполнение и отладку)

Думаю создать стабильную ветку и откатиться в ней до 2.5.0, и к ней применять наши правки.

Теперь у меня возник вопрос как это грамотно сделать в джите?



Записан

Гугль в помощь
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #78 : Июль 06, 2012, 20:44 »

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

Записан

ArchLinux x86_64 / Win10 64 bit
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #79 : Июль 07, 2012, 11:58 »

Имхо сначала все эти правки нужно разбить на отдельные плагины. Т.к. там много чего свалено в одну кучу. Сделать отдельно табы. отдельно миниатюры отдельно полные пути и т.п.
Это как-то связано с моим предыдущим вопросом?

Табы и миниатюры надо в плагин, согласен. А вот полные пути - патч и не более.
Записан

Гугль в помощь
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #80 : Июль 07, 2012, 21:41 »

Цитировать
Табы и миниатюры надо в плагин, согласен.
В два плагина

Цитировать
А вот полные пути - патч и не более.
Да, скорее всего.

Тогда создай пока что-ли там два пустых проекта для двух плагинов табов и миниатюр.

Оффтоп: Также можно из Sublime некоторые фишки взять  Улыбающийся
Записан

ArchLinux x86_64 / Win10 64 bit
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #81 : Июль 07, 2012, 22:25 »

Блин, как эта фича с миниатюрами называется по английски?

Отставить, отвечу сам себе: Minimap
« Последнее редактирование: Июль 07, 2012, 22:28 от kuzulis » Записан

ArchLinux x86_64 / Win10 64 bit
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #82 : Июль 09, 2012, 09:57 »

Я немного покодил и накодил отдельный шаблон для плагина Minimap.
Но мне необходим код для отображения этой самой миниатюры.

Дайте код вот от этого минимапа! Улыбающийся


« Последнее редактирование: Июль 09, 2012, 09:59 от kuzulis » Записан

ArchLinux x86_64 / Win10 64 bit
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #83 : Июль 09, 2012, 17:12 »

Цитировать
Дайте код вот от этого минимапа!

Отвечу сам себе, похоже что этот код взят отсюда

Но меня не устраивает эта реализация, т.к. минимап получается одноцветный.

У меня есть идея сделать его по аналогии с Sublime - с подсветкой синтаксиса.

В API креатора есть интерфейс IEditor, у которого есть метод duplicate(), который позволяет продублировать текущий открытый редактор и разместить его в любом виджете.

Так вот, я это могу сделать, но нужно как-то уменьшить размер этой копии редактора чтобы разместить все содержимое в Mimimap,
а также нужно как-то подсветить в Minimap текущую видимую область (окно) главного редактора, а остальное затемнить.

И вот это самое сложное.

Мож у кого есть иные идеи как можно Minimap сварганить?

Вот то что есть сейчас http://saveimg.ru/show-image.php?id=b267996da11b4c34bcfb804d9758d5eb
« Последнее редактирование: Июль 09, 2012, 17:31 от kuzulis » Записан

ArchLinux x86_64 / Win10 64 bit
Sancho_s_rancho
Гость
« Ответ #84 : Июль 10, 2012, 09:16 »

Я бы пошел другим путем. Получал бы текстовый редактор и рисовал его содержимое в QPixmap. И сглаживать можно как угодно и выделять участки.
Записан
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #85 : Июль 12, 2012, 23:41 »

Скопировал наши коммиты в стабильную ветку 2.5. Теперь можно пользоваться. Мастер все-таки не стабилен, то одно не работает, то другое...
« Последнее редактирование: Июль 12, 2012, 23:45 от navrocky » Записан

Гугль в помощь
quiet_readonly
Гость
« Ответ #86 : Июль 15, 2012, 18:19 »


Отвечу сам себе, похоже что этот код взят отсюда

Но меня не устраивает эта реализация, т.к. минимап получается одноцветный.

У меня есть идея сделать его по аналогии с Sublime - с подсветкой синтаксиса.

В API креатора есть интерфейс IEditor, у которого есть метод duplicate(), который позволяет продублировать текущий открытый редактор и разместить его в любом виджете.

Так вот, я это могу сделать, но нужно как-то уменьшить размер этой копии редактора чтобы разместить все содержимое в Mimimap,
а также нужно как-то подсветить в Minimap текущую видимую область (окно) главного редактора, а остальное затемнить.

И вот это самое сложное.

Мож у кого есть иные идеи как можно Minimap сварганить?

Вот то что есть сейчас http://saveimg.ru/show-image.php?id=b267996da11b4c34bcfb804d9758d5eb

Да, код оттуда. Подсветку можно было бы отрисовать - знать бы, как хранятся данные о цвете кусков текста; видел, что здесь они устанавливаются; класс Use непосредственно за это отвечает. Далее в цикле
Код
C++ (Qt)
for (uint j = 0; currBlock.firstLineNumber() <= endLine; ++j) {
   // ...
}
 
нужно лишь рисовать текст по кускам, вызывая mmPainter.setFont() перед каждым.

Однако, есть куда более страшная проблема - производительность. Сейчас рисование подвешено прямо на событие перерисовки; стоит потянуть колёсико мышки - и десяток перерисовок в секунду гарантирован. Даже без подсветки я замечал подлагивания на четырёхядерной машинке, с подсветкой будет неюзабельно. Собственно, действительно нужно рисовать в QPixmal, и то в другом потоке да не более чем раз в секунду.

Займусь этим если не сегодня, так завтра Подмигивающий Заодно и скролл-бар обычный надо будет скрыть.
Записан
kuzulis
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2812


Просмотр профиля
« Ответ #87 : Июль 15, 2012, 19:46 »

А нафига так делать? Можно же получить дубликат виджета редактора (который уже имеет подсветку и т.п.), нужно просто его разместить где нужно, уменьшить (зум), сделать только для чтения и всё. Также при смене темы, в минимапе она также будет меняться.

Просто фишка в том, что хардкодить нет смысла, если используются плагины, то нам доступно только публичное АПИ креатора, ИМХО.

Если интересно, я могу сюда приаттачить код плагина (который я делал для минимапа), в котором в принципе, я размещаю дубликат виджета редактора или слева или справа.. Но вот допилить его у меня нет времени и желания (имею ввиду уменьшить масштаб и т.п.).
Записан

ArchLinux x86_64 / Win10 64 bit
quiet_readonly
Гость
« Ответ #88 : Июль 15, 2012, 23:09 »

Скопировал наши коммиты в стабильную ветку 2.5. Теперь можно пользоваться. Мастер все-таки не стабилен, то одно не работает, то другое...
Ах да, не могли бы вы поделиться опытом, как были смержены изменения из транка основного репозитория qt-project? Для меня git тоже не слишком понятен.
Записан
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #89 : Июль 15, 2012, 23:14 »

Скопировал наши коммиты в стабильную ветку 2.5. Теперь можно пользоваться. Мастер все-таки не стабилен, то одно не работает, то другое...
Ах да, не могли бы вы поделиться опытом, как были смержены изменения из транка основного репозитория qt-project? Для меня git тоже не слишком понятен.

Ну добавил origin на официальный реп, затем git pull creator-official, коммиты подлились, затем git push. Сам с горем пополам тоже разбираюсь )

Заходи в жабир, быстрее будем вопросы решать )

Сейчас единственная проблема, которую я не знаю как решить - когда я твои коммиты перетаскиваю в ветку 2.5, то, если возникает конфликт и его разрулить, теряется авторство.
Записан

Гугль в помощь
Страниц: 1 ... 4 5 [6] 7 8 ... 10   Вверх
  Печать  
 
Перейти в:  


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