antigluk 08.08.2010 12:53
Есть вопрос! — GTK+ и C++
Как сейчас пишут современные программы для GTK+? Все еще на Си? Или используя gtkmm враппер?Но там же всё очень запутано, чтобы написать обычное маленькое окошко нужно прописывать кучу текста. Неужели нет какой-то адекватной абстракции?
Или, используя Glade, может есть какой-то туториал?
Вот такие вопросы образовались)
В основном пишут на Си. На плюсах GTK'шных программ довольно мало.
Есть такая штуковина, называется Vala. Это ЯП, заточенный под GTK и вообще Gnome. Программы на этом языке переводятся в код на Си, а потом собираются обычным компилятором, поэтому скорость выполнения достаточно высокая.
Если не фанатик, то можешь попробовать Mono+GTK#, но про этот вариант я знаю мало.
Есть такая штуковина, называется Vala. Это ЯП, заточенный под GTK и вообще Gnome. Программы на этом языке переводятся в код на Си, а потом собираются обычным компилятором, поэтому скорость выполнения достаточно высокая.
Если не фанатик, то можешь попробовать Mono+GTK#, но про этот вариант я знаю мало.
Да, точно, причём жёстко, ибо попутал вот с этим, а оно имеет привязку к js, но не только к нему.
Да, пробовал использовать, вещь интересная. Но не совсем то)
Мне интересно именно про чистый GTK+.
Мне интересно именно про чистый GTK+.
Реквестирую пост на тему (=
А то я бы сам попробовал, но у меня нет проектов чтобы заценить. А Helloworld писать - ничего толком не поймёшь.
А вообще идея мне очень нравится, и язык ничего так, в меру гуманистичный.
А то я бы сам попробовал, но у меня нет проектов чтобы заценить. А Helloworld писать - ничего толком не поймёшь.
А вообще идея мне очень нравится, и язык ничего так, в меру гуманистичный.
На хабре недавно была хорошая вводная статья http://habrahabr.ru/blogs/linux/99885/
И вот эти три части тоже стоит обязательно прочесть:
http://www.ibm.com/developerworks/ru/library/l-vala_1/index.html#ibm-pcon
http://www.ibm.com/developerworks/ru/library/l-vala_2/index.html#ibm-pcon
http://www.ibm.com/developerworks/ru/library/l-vala_3/index.html#ibm-pcon
Сам по себе язык очень приятный. И ещё.. Советую использовать как IDE плагин для gedit - valencia. Его нужно будет собирать самостоятельно (скорее всего)
Вот ещё ссылочка на сниппеты - http://code.valaide.org/
И как бонус видеовыступление от создателя http://www.geeksoc.org/gcds/J%C3%BCrg%20Billeter%2C%20Vala.ogv :)
И вот эти три части тоже стоит обязательно прочесть:
http://www.ibm.com/developerworks/ru/library/l-vala_1/index.html#ibm-pcon
http://www.ibm.com/developerworks/ru/library/l-vala_2/index.html#ibm-pcon
http://www.ibm.com/developerworks/ru/library/l-vala_3/index.html#ibm-pcon
Сам по себе язык очень приятный. И ещё.. Советую использовать как IDE плагин для gedit - valencia. Его нужно будет собирать самостоятельно (скорее всего)
Вот ещё ссылочка на сниппеты - http://code.valaide.org/
И как бонус видеовыступление от создателя http://www.geeksoc.org/gcds/J%C3%BCrg%20Billeter%2C%20Vala.ogv :)
Эх... Если бы на ГТК можно было под оффтопик писать нормально, давно бы уже мир захватили.
http://lmgtfy.com/?q=gtk+on+windows ;-)
http://live.gnome.org/Vala/ValaOnWindows
http://live.gnome.org/Vala/ValaOnWindows
Да это понятно. Но выглядит оно пока что заметно хуже нативных виджетов. И процедура установки это какой-то нереальный ппц - "простой юзер" шоке.
Борюсь с Glade'ом. Пока проигрываю.
Непонятно как-то как делать окна. Вот почему не сделать что-то типа дизайнера окон как в Delphi? Что-что, а он там самый удобный.
Да, я понял что тут надо контейнеры делать. А где задавать размеры элементов? Как сделать в "ящике" сделать один слот N пикселей, а другой M?
Что-то он не очевидный сильно.
Непонятно как-то как делать окна. Вот почему не сделать что-то типа дизайнера окон как в Delphi? Что-что, а он там самый удобный.
Да, я понял что тут надо контейнеры делать. А где задавать размеры элементов? Как сделать в "ящике" сделать один слот N пикселей, а другой M?
Что-то он не очевидный сильно.
Вот почему не сделать что-то типа дизайнера окон как в Delphi?
Человека всмысле? (;
Нет)) Дизайнера всмысле программы)
p.s. твоя аватарка доставляет)
p.s. твоя аватарка доставляет)
контейнеры делались как раз для того чтобы не указывать самому размеров. если же все таки нужно, то есть контейнер gtk_fixed.
а меня вдохновляют такие посты. люди, что-то изучают, спрашивают у других. а мне всё лень
Неужели нет какой-то адекватной абстракции?
Так C и есть адекватная абстракция.
Бывает же...
Хотел написать, что есть мануал. Пишу на Perl, юзая его...
Хотел написать, что есть мануал. Пишу на Perl, юзая его...
Современные программы пишут на C++ для Qt.
По-моему, GTK уже давно не используют нормальные люди :)
И да, это не троллинг, это сугубо мое имхо, исходя из того, например, что такие продукты, как Maya (навороченная среда для 3D-анимации, используется, например, пиксаром и диснеем), переходят на использование Qt.
Я уже не говорю об огромном количестве удобнейших инструментов для разработки (Qt Creator), библиотек (сама библиотека Qt содержит неимоверное количество всяких вкусностей), появившегося недавно декларативного UI (т.е. средство, позволяющее избежать программирования интерфейса как такового) и еще огромное количество всего.
Из всего этого я делаю вывод, что использовать GTK - глупо.
И да, это не троллинг, это сугубо мое имхо, исходя из того, например, что такие продукты, как Maya (навороченная среда для 3D-анимации, используется, например, пиксаром и диснеем), переходят на использование Qt.
Я уже не говорю об огромном количестве удобнейших инструментов для разработки (Qt Creator), библиотек (сама библиотека Qt содержит неимоверное количество всяких вкусностей), появившегося недавно декларативного UI (т.е. средство, позволяющее избежать программирования интерфейса как такового) и еще огромное количество всего.
Из всего этого я делаю вывод, что использовать GTK - глупо.
Есть мнение, что GTK - это философия...
Есть люди (Гномеры), которые не хотят юзать Qt...
Есть Ubuntu, которая по дефолту юзает Gnome...
Есть мнение, что Ubuntu самый популярный (попсовый) дистрибутив...
Есть мнение, что попса диктует моду...
Есть люди (Гномеры), которые не хотят юзать Qt...
Есть Ubuntu, которая по дефолту юзает Gnome...
Есть мнение, что Ubuntu самый популярный (попсовый) дистрибутив...
Есть мнение, что попса диктует моду...
Ну убунта на гноме не потому что он такой замечательный, а потому как "истинно свободный GTK" и это уже не лечится, если только следующим поколением. Возможно это вообще большая ошибка проекта. Тут сложно предсказать что либо. Но look and feel у Qt в разы лучше. Есть одно "но", очень много проектов, базируются на gtk и например теже java интерфейсы под линем только для него, ну и всякие FF. Когда эта ситуация будет исправляться тогда и можно будет говорить. А на данный момент можно в kde гемороя на ровном месте поймать по цепочке java->SWT->GTk+->Qt. Так что против ветра весьма плохо... что либо делать. А в гноме он как родной и вроде не убог.
Есть одно "но", очень много проектов, базируются на gtk и например теже java интерфейсы под линем только для него
ЛОЛШТО??? Java под линуксами основана на Motif. (Я не про SWT, я про нативный свинг). Да, там таки есть тема GTK+, но основана она не на GTK.
motif выглядит ущербно вообще везде. Хотя нетбинс его продолжает по умолчанию ставить. Не ужели им это уродсто нравится. И я говорил именно про swt, но суть не в этом будь оно хоть с 0 написано если косит под gtk+.
Ну, стилей сейчас в Свинге хватает... И нетбинс можно с легкостью заставить выглядеть как надо. Однако ж смысл не меняется - java не на GTK.
SWT таки да, основано на GTK+.
SWT таки да, основано на GTK+.
Есть мнение, что есть Kubuntu... И многие из убунтоидов используют ее.
Из всего этого я делаю вывод, что использовать GTK - глупо.
LДа думаю все это субъективно и вопрос личных предпочтений и умения "анализировать будущее", если собираешься на этом зарабатывать.
Из всего этого я делаю вывод, что использовать GTK - глупо.
Использовать - не глупо. куча софта - и какая разница на чем он написан.
Но программировать под gtk, по-моему гораздо сложнее и менее удобно, чем под Qt. Когда мне приходится писать софт под линь, я выбираю Qt. Инструменты для разработки под Qt более чем удобны.
А еще как вариант свою библиотеку сделать(с классом) которая будет формировать окно как тебе захочется