LINUX.ORG.RU

Вышел GTK+ 3.0

 ,


0

0

10 февраля состоялся релиз GTK+ 3.0.0.

Работа над GTK+ 3 начиналась как «большая чистка» и длилась в течение нескольких лет, во время которой было несколько поворотов и уроков.

Итак, новшества:

  • Отображением всего теперь занимается Cairo. GDK больше не является обёрткой устаревших X11 drawing API. Это позволило удалить несколько X11-ориентированных концепций (GCs, colormaps, pixmaps). Большую часть работы сделал Benjamin Otte из RedHat.
  • Поддержка современных устройств ввода. Ранее этим пренебрегали (немногие основные разработчики пользуются «экзотическими» устройствами ввода). С приходом 3.0.0 в GTK+ появилась поддержка нескольких указателей, клавиатур и т.д. Отдельной благодарности заслуживает Carlos Garnacho (Lanedo).
  • Новые API для тем со знакомым синтаксисом CSS для настройки и другие усовершенствования, например, анимированное изменение состояний. Это также заслуга Карлоса.
  • Более гибкое управление геометрией.
  • Поддержка нескольких бекэндов GDK. С GTK+ 2.x нужно было пересобирать приложения для их работы с различными бекэндами GDK, так как они были реализованы отдельными библиотеками. В GTK+ 3 их можно встроить в одну библиотеку и выбирать во время выполнения. Это облегчит переход с X11 на Wayland или с Quartz на X11.
  • Лёгкая поддержка приложений. С интеграцией D-Bus в GIO стало возможным добавить класс, который обрабатывает большое количество аспектов интеграции платформы написания приложений, таких как отслеживание открытых окон, обеспечение уникальности, экспорт действий, и т.д. Это всё в стадии разработки и будет расширено в будущем. То, что мы имеем сейчас — это, в основном, заслуга Colin Walters (Red Hat) и Ryan Lortie (Codethink).

Скачать можно с HTTP или FTP.

Документация (GTK+ 3 Reference Manual)

>>> Подробности

★★★★

Проверено: svu ()
Последнее исправление: Dendy (всего исправлений: 3)

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

> gtk-update-icon-cache это теперь отрезанный кусок gtk2

Документацию для кого пишут?

http://library.gnome.org/devel/gtk3/3.0/gtk-building.html

--enable-gtk2-dependency or --disable-gtk2-dependency. Whether to rely on an exiting gtk-update-icon-cache utility instead of building our own. Distributions which are shipping both GTK+ 2.x and GTK+ 3 may want to use this option to avoid file conflicts between these packages. The default is to build gtk-update-icon-cache.

anonymous
()

Если б они ещё и GDK наконец-то модернизировали! Помню, когда только начал использовать GTK+ для портабельного интерфейса, зверски доставало вот это:

«GTK+ is „thread aware“ but not thread safe — it provides a global lock controlled by gdk_threads_enter()/gdk_threads_leave() which protects all use of GTK+. That is, only one thread can use GTK+ at any given time.

Unfortunately the above holds with the X11 backend only. With the Win32 backend, GDK calls should not be attempted from multiple threads at all.»

В итоге, если в каком-нибудь потоке случилось что-то плохое и пользователю нужно выкинуть диалог, то это нельзя сделать наместе, а нужно писать отдельную функцию, которую потом вызывать через timeout() или idle(). И что-нибудь придумывать для передачи результата в тот поток.

(http://library.gnome.org/devel/gdk/stable/gdk-Threads.html)

gag ★★★★★
()
Ответ на: комментарий от I-Love-Microsoft

минималистичную темку для GTK.

Mist.

Могут ли программы на GTK/GTK# самостоятельно переопределять параметры своего внешнего вида из кода.

Для полного контроля только через gtk_rc_parse и аналоги, то есть в каком-то виде (файл или строка в коде) стили придется явно прописывать. По-быстрому и легкому можно изменять цвет и шрифт.

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

«C:/Windows/system32»

:)

На /usr/lib ведет себя вполне прилично, что наводит меня на мысли о том, что афторы кутешных ФМ используют какую-нибудь proxy model, которая и добавляет тормозищ.

Впрочем, я тут взял и заново пощупал те ГТКшные ФМ, что выше хвалил. Теперь мне грустно и неохота больше спорить.

Даже о сравнительной скорости создания гуёвых элементов.

Шло бы оно всё.

thesis ★★★★★
()

Что так народ напал на GTK, довольно таки неплохой тулкит, есть конечно мелкие «недочёты», но это семечки :)

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

> На самом деле, такое представление является наиболее интуитивным, потому что имитирует действие, совершаемое при кручении колёсика мыши

На самом деле надо разок набить морду умникам за выпадающий пустой список на половину экрана. Ога, чтбы и другим козлевичам неповадно это было делать.

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

Да фигней занимаются, в последнее время, что Qt что GTK существенно ускорились, сделали рефакторинг кода, разбили код на модули, и двигаются в правильном направлении. Это у разрабов Gnome и KDE крыша поехала. А вот тулкиты развиваются, и развиваются хорошо.

Для GTK не хватает что-то вроде QtDesigner-а

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

Для GTK не хватает что-то вроде QtDesigner-а

Это называется Glade :)

Eddy_Em ☆☆☆☆☆
()

По поводу диалога открытия, это уже столько раз обсасывалось, что те кто ещё считает ЭТО удобным, либо поражены тяжелым заболеванием мозга, либо особая разновидность троллей — гтк-тролли (везде выставлять явные недостатки тулкита как преимущество).

Marisa
()
Ответ на: комментарий от thesis

Так можно и до 12309 дойти :) Кстати самое смешное, что стандартный проводник медленнее, тот код выше.

PayableOnDeath
()
Ответ на: комментарий от Marisa

> что те кто ещё считает ЭТО удобным, либо поражены тяжелым заболеванием мозга, либо особая разновидность троллей

Вы не можете что-то открыть ?
Вы хотите во время открытия файла резко заняться чем-то другим ?

elipse ★★★
()

Отлично!

Кто-нибудь может сказать появилось ли в GTK что-то вроде QMainWindow, т.е. класс для создания полноценных окон с открепляемыми панелями, доками и прочими квейками и гентушницами?

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

поздрвавляю, ваши шг такие же как в винде 7

только начертания ш чуть хуже

muzlocker
()
Ответ на: комментарий от elipse

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

Jihad
()

Слушайте все! Пора переходить на GNUstep и Étoilé!

anonymous
()
Ответ на: комментарий от elipse

>Вы хотите во время открытия файла резко заняться чем-то другим ?

Ты так говоришь, как будто добавление возможности переименования и удаления файлов сильно утяжелило бы диалог. Взамен мы бы получили лютую попоболь у кде-шников лишенных очередной темы для троллинга. И к тому же чего плохого, к примеру, в возможности переименования неверно названной новой директории во время сохранения файла?

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

Nokia вполне может выкинуть Qt сообществу, и тогда догадайся сам, что с ним сделают разработчики KDE.

anonymous
()
Ответ на: комментарий от elipse

Допустим, я часто загружаю в формы картинки. У меня большая такая коллекция изображений, штук так 10 000. Можно рассортировать их по папочкам тематически, однако если какое-либо изображение совмещает в себе свойства двух или более тематик, то непонятно, куда именно её кидать, в папку «дети» или в папку «кошки», если на фото дети с котятами. Можно поизвращаться с симлинками, но умные люди придумали теги и каталогизаторы изображений вроде digikam, которые позволяют расставить метки и свалить хранилище в одну кучу (физически), а потом проиндексировать это всё с помощью nepomuk. В kde'шном диалоге я просто наберу в адресной строке nepomuksearch://res/wallpaper и мне вывалятся все изображения с тегом «wallpaper». Можно использовать комбинации. Меня не устраивает по 5 минут ползать по коллекции и искать нужный мне файл, если я могу воспользоваться семантическим поиском прямо из диалога. С другой стороны диалог в gtk и Qt выглядит примерно одинаково. Слева избранное, справа превью, посередине файлы, ВСЁ. Однако gtk-шный диалог не умеет непомук, а Qt умеет. Налицо отсутствие функционала при прочих равных. Ну и где ваш GTK теперь?

Marisa
()
Ответ на: комментарий от fat_angel

о, спасибо

Ты во всем такой неосилятор?

нет, я подозревал, что гтксеки засунули это куда-то в район задницы, просто мне претило там шариться

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

Лучше наоборот, Qt впилят в KDElibs на радость гномовским тулкитофобам.

anonymous
()
Ответ на: комментарий от Marisa

>Однако gtk-шный диалог не умеет непомук, а Qt умеет.

Решается с помощью установки gvfs и написание плагина к непомуку для него.

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

С моим Qt - ничего, он у меня на диске. А, что они сделают со своим, меня не волнует. Вот такой вот open source.

PayableOnDeath
()
Ответ на: комментарий от Jihad

> как мне включить показ скрытых файлов?

ПКМ -> Показать скрытые файлы

anonymous
()
Ответ на: комментарий от Jihad

Потому что в новых сборках Firefox cairo не используют из-за бага фокса с .gif. :)

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

> стандартный путь решения проблем у гномосеков - накатывать патчи для возвращения выпиленной неадекватными разрабами опции?

LOL, ни в одной из версий cairo до 1.10 как раз не было поддержки cleartype... :)) В 1.10 появилась, только нужно lcd-filter в ~/.fonts.conf назначить.

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

Во-первых gvfs к GTK+ имеет довольно посредственное отношение, это отдельная библиотека и это хорошо ибо она не всем нужна! Во-вторых почему разработчики gvfs должны думать о кдешниках с их монструозными непомуками?

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

> А, ну отлично. Дорабатывать тулкит за разработчиков это же так естественно.

Если тебе нужна фича X, то допиши её сам, это же опенсорс. И разработчики тут ни при чём.

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

Я тебе уже говорил, что cleartype в генте шел патчем из Арча. Только в 1.8 был в дереве портежей, а в 1.10 - в оверлеях.

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

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


Однако gtk-шный диалог не умеет непомук, а Qt умеет.


пофиг, идиотам там свисток еще прикрутят и они будут приставать что gtk этого нет.

Ну и где ваш GTK теперь?


На месте.

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

>идиотам там свисток еще прикрутят и они будут приставать что gtk этого нет

слил?

На месте

правильно говорить не «на месте», а «в месте»

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

Лжешь как раз ты, ибо до 1.10 это все были сторонние патчи в связи с патентными проблемами, а недавно срок патентов истек и патчи включены в основной код кайры. Разберись в вопросе хотя бы перед тем как троллить, а то лужи и так чрезмерно газифицированы.

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

Все равно без arch'евского патча шрифты в 1.10 выглядят как говно.

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

В гноме нет аналогов непомук. А теперь скажи НЕПОМУК НЕ НУЖЕН. И всё с тобой ясно будет. Вам ничего не нужно, ни удобных диалогов с превью, ни семантического поиска. ГТК это не тулкит, это особое заболевание головного отростка при котором человек считает урезание эффективности путем к простоте, тогда как путь к простоте в интерфейсах это эргономичность.

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