LINUX.ORG.RU

Потыкал тут малость Motif


0

1

... и знаете что? Оно мне доставило :) В связи с этим появился вопрос, чего такого, принципиального в этих тулкитах Motif/OpenMotif/Lesstif, что мешает использовать их и сейчас? Ну, внешний вид в расчёт не берём, он на любителя(но его можно же немножко прилизать, чтоб выглядело поприличнее http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=bks&a... ). Сглаживание шрифтов, локализация, оно тяжёлое? Ведь для серьезного софта, коим пользуются толстые бородатые дядьки, не важно, какой там тулкит, лишь бы всё работало, и работало хорошо, не так ли? )

★★★★★

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

Это вы ещё не видели сорцы от Сименс и HP того времени :-)

Do want! Есть примеры?

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

dll

Изыди!

C++ с Кутей

Изыди в квадрате!!!

Java-api

УГ

Python-api

Спасибо, проблевался

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от menangen

Надо быть идиотом, чтобы культи с говнотыками использовать! Или вообще в вяленых мирах трепыхаться.

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

Т.е. ничего не поддерживает из современных средств разработки?

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

Ты о чем? Современные средства разработки — это баш для скриптов, С для ПО и железяк, жабоскрипт для веба и тех/латех для документации. Больше ничего не нужно. А, не, забыл: openGL для графики.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от monk

Ну вот. И теперь из-за того, что кто-то не смог нормально использовать X протокол, приходится для интерфейса использовать HTML/JS, который тормозной, дырявый и очень плохо расширяется.

не понял связи..при чём тут самостоятельная отрисовка тулкитами (Tk && Gtk && Qt) и паранойя с html+js? Хотя в том, что html и его наследие это худший способ представления интерфейсов согласен полностью.

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

Ну, по сути это всё вопросы красивостей. Это как с машиной, она может быть лохматого года, внешне неказистая, у неё может быть простенький салон, но тем не менее она выполняет возложенные на неё функции и делает это хорошо. Простая, надёжная, в обслуживании вроде как не сложная. Разве от того что она старая, она перестаёт быть машиной и выполнять свои функции? точно так же и тут, имхо motif это точно такая же «машина» и она выполняет свои функции, может у неё чего-то не хватает, типа «ГУР», «ABS» и тому подобных штучек, но ведь «ездит». Кстати, вопрос задавался ещё и для того, чтобы выяснить, каких «штучек» не хватает :)

xterro ★★★★★ ()

Спор дизайнеров в теме Development.

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

мы видим всякое дерьмище вроде GTK, Qt и т.п. вырвиглазия

юношеский максимализм, вот куда звездочки делись...

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

Эдди, я понимаю, что тебе это может быть и не нужно, но это не значит, что не нужно всем. Прогресс двигают не только такие как ты, но и отличные от тебя люди.

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

Верно, но с течением времени появляются конкурирующие решения, которые:
1. Выглядят лучше, следовательно пользоваться ими проще.
2. Являются кросс-платформенными и широко представлены на рынке: win, mac, linux, android, ios, win-phone.
3. Имеют качественную и широкую поддержку c++, c, objective-c, c#, java, python, ruby, javascript.
Именно этими основными чертами конкурирующие продукты выходят вперёд, а «мотив» становится бесперспективным.

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

Ваше сообщение можно переиначить на тему колес:

Ездить на круглых колеах с резиновыми шинами в 2014 году.

А что, надо ездить на квадратных колесах? Просто потому что это новее?

Бесспорно, мотифу стоило бы допилить сменяемые стили элементов для любителей. Но это не снимает поставленного вопроса: какой 'современный' интерфейс даёт все, что умел мотиф?

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

Выглядят лучше, следовательно пользоваться ими проще.

логика? Стильно, модно, молодежно. И с байдингами для питон.

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

1. Выглядят лучше, следовательно пользоваться ими проще.

Полная чушь! Свистоперделки только ухудшают восприятие и "интуитивность" интерфейса.

2. Являются кросс-платформенными

Фирменное "ненужно", особенно

win, mac, android, ios, win-phone.

3. Имеют качественную и широкую поддержку c++, c, objective-c, c#, java, python, ruby, javascript.

Из этих ЯП нужен только С. А еще: на кой черт ты про жабоскрипт пишешь, если эта штука только для веба? Жабка вообще нафиг не нужна. Пхытон — ну, лично мне не нравится. Руби? Ничего не скажу, т.к. не знаю, что это. А всякие "диезы" — это вообще только про мастдайку.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от menangen

Прогресс двигают не только такие как ты, но и отличные от тебя люди

Жаль. А то уже бы летали к Юпитеру... А эти "отличные люди" вместо совершенствования алгоритмов и технической стороны, думают лишь над тем, как бы новые свистоперделки придумать.

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от MKuznetsov

Кстати, а tk шрифты и элементы интерфейса с X сервера берёт? Или как Gtk/Qt картинками рисует?

сам рисует.

Прокомментируй этот текст, а то я не понял его однозначно. С одной стороны «all XmString are drawn to the screen using fonts residing in the X system», с другой «a specific font has been loaded correctly within your Motif program»

Fonts are necessary in Motif as all XmString are drawn to the screen using fonts residing in the X system. A font is a complete set of characters (upper-case and lower-case letters, punctuation marks and numerals) of one size and one typeface. In order for a Motif program to gain access to different typefaces, fonts must be loaded onto the X server. All X fonts are bitmapped.

Not all X servers support all fonts. Therefore it is best to check if a specific font has been loaded correctly within your Motif program. There is a standard X application program, xlsfonts, that lists the fonts available on a particular workstation.

Each font or character set name is referred to by a String name. Fonts are loaded into to an Xlib Font structure using the XLoadFont() function with a given Display ID and font name argument. The function returns a Font structure.

Another similar function is XLoadQueryFont() which takes the same arguments as above but returns an XFontStruct which contains the Font structure plus information describing the font.

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

А вообще, серьезному софту в большинстве случаев гуевина не нужна.

особенно CAD'ам

ты, дядечка, меня тошнишь

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

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

Это, возможно, кого-то удивит, но сейчас в университетах есть такое направление как Graphical User Interface. Это целая специальность, по которой пишется множество книг, получаются магистры и докторские степеня.

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

Кстати, а tk шрифты и элементы интерфейса с X сервера берёт? Или как Gtk/Qt картинками рисует?

сам рисует.

Прокомментируй этот текст, а то я не понял его однозначно

перевести ? :-)

нутро Tk ковырял пару лет как, поэтому точно знаю что свои элементы оформления (рамки,тени,кнопки,галочки) он сам отрисовывает. Про шрифты точно не помню - я просто искал способ сделать (патч Tk) декоративные рамки и прочее оформительство без кривого Tile.

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

но сейчас в университетах есть такое направление как Graphical User Interface. Это целая специальность, по которой пишется множество книг, получаются магистры и докторские степеня.

так вот почему современный GUI такое г-но..

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

по которой пишется множество книг

Да ладно?! Срочно /r названия подобных произведений. А то я кроме HIG'ов различных фреймворков/OS ничего толком не знаю.

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

А от тебя мы с анонимусом всё ждем

сорцы от Сименс и HP того времени :-)

Если они, конечно, в свободном доступе под какой-нибудь OpenSource-лицензией. Уж больно поглазеть хочется.

EXL ★★★★★ ()
Последнее исправление: EXL (всего исправлений: 1)
Ответ на: комментарий от EXL

на вскидку из открытых - именно упомянутый Motif, его HP активно пилила..Посмотрите исходники OpenMotif (не samples с helloword, а собственно исходники), там много должно быть остатков с прежних времён;

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

А что умел мотиф? Кнопочки с радиобаттонами, в псевдографическом стиле?

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

Полная чушь! Свистоперделки только ухудшают восприятие и «интуитивность» интерфейса.

Я где-то писал о свистоперделках? Я написал дословно: «выглядит лучше». Я не написал «выглядит лучше за счёт свистоперделок», т.ч. не надо выдавать фантазию за действительность. Действительность какова? Мотиф никому не нужен, Qt идёт на мобилки, десктоп, и на нём пишут сотни или тысячи приложений, это проверянный временем инструмент. Мотиф не выглядит нативно, это большая проблема. Приложение должно выглядеть также как и операционка (или её десктоп окружение), в идеале.

menangen ★★★★★ ()
Последнее исправление: menangen (всего исправлений: 1)
Ответ на: комментарий от menangen

Приложение должно выглядеть также как и операционка

Что за бред? Приложение должно выглядеть как cat /dev/random?

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от EXL

Например, вот эти ребята:
http://en.wikipedia.org/wiki/Don_Norman
http://www.amazon.com/Human-Computer-Interaction-3rd-Edition-Alan/dp/0130461091

С названием специальности наврал, оно зовется HCI (Human-Computer Interaction), но в общем и целом завязано на юзабилити, кнопочках, интерфейсах итп.

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

Из этих ЯП нужен только С. А еще: на кой черт ты про жабоскрипт пишешь, если эта штука только для веба?

Кому нужен? Тебе? А мне нужен, swift и python. И? Глупо считать себя выше и умней других. Javascript не только в вебе, уже и в кути можно писать часть кода на javascript, также в Unity3D и других движках, на той неделе вышел на гитхабе в релиз проект по написанию на nodejs нативных приложений для mac/win, скоро будут писать под линукс порт. Как я и говорил, javascript становится основным языком программирования начального уровня, и он уже везде.

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

так вот почему современный GUI такое г-но..

Да не. Говно потому что этих недоайтишников с подобными специальностями никто всерьез не воспринимает и не слушает. Они ставятся на одном уровне с гуманитариями (читай ТП), так как на их куррикулум-витае нет ниодного курса по математике. Вот матано-погромисты и пишут как сами знают, ибо нечего тут всякой шелупени под ноги лезть со своими советами. Шли бы сначала нормальное образование получили :)

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

У тебя операционка для рандома написана? Игровые автоматы? Белый шум? :-D

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

Как может выглядеть операционка? Что за бред ты несешь? Операционка — это набор байтов. После загрузки операционки запускаются демоны, login, иксы. А в иксах уже может WM какой-нибудь запуститься, а может и не запуститься за ненадобностью.

Чему там как-то выглядеть? Идиотским виджетам культей и говнотыков? Так если бы весь гуевый софт был на lesstiff, все выглядело бы значительно более "нативно", чем смесь кучи тулкитов!

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

Эм, ну в винде и маке нет иксов. И они там не нужны... Наверное, все знают как выглядит операционка MacOS. Вот в ней все приложения и должны выглядеть также как и окошки/менюшки/контроллы по дефолту в оси из коробки. Вот так
Я уже лет (28 - 12) работаю и с Windows и с Linux, и в данный момент выбрал мак как самую удобную систему(и красивую, практичную) для (!) удалённого управления серверами (ssh), для написания софта (python+C на Pycharm), java (IDEA), Nodejs (grunt, webstorm), objective-c/c/swift (Xcode6). Эти инструменты - самое лучшее, что у меня было за все эти годы. Я очень доволен, никаких доработок и кастомизаций я не то что не хочу делать в своей операционке, я конкретно противлюсь им. Мне не нравится дизайн новой OSX Beta, ещё больше мне не нравится дизайн win8/win7, и тем более дизайн популярных DE в Linux: Unity, Gnome, KDE. Они даже рядом не стояли по удобству моего нынешнего окружения. У меня два моника, работаю на встроенной в интел видяхе и всё летает, при этом у меня 4 гига рамы, и никаких фризов и тормозов. Я жду ретина дисплеи на десктопах, где окружности будут окружностями, где шрифты будут ещё чётче, и т.п. В маке всё это уже есть и отлично работает, чего не скажешь о UI в Линукс и Windows.

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

Иксы есть везде. Просто в мастдайке они "вцементированы" в ведро, т.к. мастдайка — не операционная система общего назначения, а игровая прошивка. Про гей-ось сам догадаешься.

У меня тоже 2 монитора на работе. Дома, правда, один. И мне совершенно не нравится то, что современные гуевые тулкиты — такое говно. Все эти говнотыки (особенно говнотык-3) и культи (начиная с культей-2) — это верх извращения! Только BDSM мог такое написать!!! А еще они выглядят каждый по-своему.

То ли было со старыми добрыми тулкитами. Красота, простота, минимум потребления ресурсов...

Eddy_Em ☆☆☆☆☆ ()
Ответ на: комментарий от menangen

Чем тебя не устраивает VNC протокол?

Тормозами. Когда окошко с Emacs, для передачи отрисовывается в растр, затем сжимается (причём, если я правильно помню, то ещё и алгоритмом с потерями!) и только затем передаётся.

А должно быть как в Motif: когда передаётся команда «окно с координатами» + дюжина команд «кнопка с координатами» + содержимое окна в виде текста (с указаниме шрифта и цвета). И работать можно с хорошей скоростью даже через gprs.

Собственно web-интерфейс — это ровно то же самое (шрифты на клиенте, графика кэшируется), только в модных скобочках, с кучей дыр в безопасности и отстутствием понятия «сессия» в протоколе.

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

зачем ssh, когда он псевдографику только может передавать?

Не только.

$ ssh -Y user@server
user@server$ emacs

получишь емакс с удалённого компьютера на своём экране. И это справедливо для любого X приложения. Только современные DE такое не очень любят

user@server$ epiphany

** (epiphany-browser:9719): WARNING **: Couldn't register with accessibility bus: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.

(epiphany-browser:9719): dconf-CRITICAL **: unable to create directory '/run/user/1000/dconf': Отказано в доступе.  dconf will not work properly.

(epiphany-browser:9719): dconf-CRITICAL **: unable to create directory '/run/user/1000/dconf': Отказано в доступе.  dconf will not work properly.
monk ★★★★★ ()
Ответ на: комментарий от monk

Ну так никто ж не собирается работать по VNC через GPRS. Почти у всех сейчас LTE, у меня в кармане 3G, я пробовал VNC по 3G - вполне можно работать при пинге до 300 мс. Ну и сам, основной вопрос, зачем работать через VNC/RDP - это жутко неудобно не по причине убогости протоколов, а по причине задержек в сетях. Работать с графикой и в графическом DE нужно на локальном компе, а для серверов есть ssh, вполне достаточно для команд, не нужно по ssh делать передачу графики, это просто глупо.

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

А если в твоём окне будет картинка на беграунде окна? Как твой мотив справится? А если видео в части окна, или, к примеру, анимированная кнопка с изменяющимся градиентом цвета? Такую гибкость ты учухаешься поддерживать и передавать по сети в твоём архитектурном стиле координат. То, что ты хочешь - это векторная графика, она не всегда может выглядеть хорошо, когда речь идёт о видео-контенте/тенях и прочем.

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

Что за бред ты несешь?
Eddy_Em

Лол. Таблетки забыл выпить?

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

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

Делаю вывод, что вы никогда не работали с Motif, функций его не знаете, и утверждаете что что-то его превосходит исключительно по принципу «новее => лучше», что не всегда так.

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

К тому же, вы обсуждаете исключительно внешний вид Motif'а, явно обозначенный в теме как несущественная часть его функций.

carthrbc ()
Ответ на: комментарий от quantum-troll

А оно уже годнота? Документация и комьюнити имеется?

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

Я изучил, и спросил у вас: «А что умел мотиф?», на что вы мне ничего не ответили, следовательно, вам ответить нечего.

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

Ну так мотиф - это графический тулкит, интерфейс к программам. Как может быть внешний вид «не значительным», если он как раз и является основой интерфейса? Вы же глазами на него смотрите. Или нет? :-)

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

утверждаете что что-то его превосходит исключительно по принципу «новее => лучше», что не всегда так.

Вы разве не видели мои комментарии в треде выше? О биндингах к другим языкам? О мобильных платформах? О видео в окне или анимации градиента кнопки?

Вот вопрос лично к вам, от меня, как от программиста: можно ли использовать Motif из Java? А из Ruby? А из Javascript/nodejs? Мне, допустим на минуту, не важен внешний вид, просто интересно, могу ли я прямо сейчас поставить Motif на свой мак и написать прогу на Java с использованием Motif? На Python3 ?
Вот ответ вам: с Qt я могу всё это сделать. А с мотивом это возможно вообще? :-)

menangen ★★★★★ ()
Ответ на: комментарий от quantum-troll

Оно же заточено под холодильники. Как им можно пользоваться?

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

Я изучил, и спросил у вас: «А что умел мотиф?», на что вы мне ничего не ответили, следовательно, вам ответить нечего.

Если бы вы изучили, вы бы это написали. Вопрос мне задавать вам смысла не было - я не утверждал, что мне известны все функции мотифа. Тактика «если вас спросили доказательства, попросите сперва опровергнуть». Это не говорит о том, что вы не знаете, что умел мотиф (быть может, вы действительно изучили), но это не дает оснований утверждать, что qt лучше мотифа.

Как может быть внешний вид «не значительным», если он как раз и является основой интерфейса?

Ну хорошо, допустим, что для кого-то он - самое важное (хотя топикстартер дал понять, что конкретно ему - а мне интересно с той же позиции, что ему - это не важно) Это изображения. Их можно поменять, перерисовать. В случае с мотифом, полагаю, перерисовать их сложнее, потому что кастомизация на уровне тем оформления не поддерживается. Вероятно, можно её было бы допилить. Зато поддерживается кастомизация раскраски отдельных элементов, это немаловажно (например, в GTK3 надо OH SHIT!!! редактировать в css чтобы перекрасить окошки)

О биндингах к другим языкам?

Если заинтересовать общественность какими-то преимуществами мотифа, например легковесностью, и будет запрос на приложения под него на других языках, такие биндинги напишут. Что представляет из себя биндинг?

Ещё где-то в теме была речь про юнификацию интерфейсов, я например не видел адекватных тем мотиф-подобного внешнего вида под Qt, все они страдают отсутствием определенных функций мотифа. Надеюсь, никто не судит о мотифе по ему-подобным темам на другие интерфейсы.

О мобильных платформах?

Зависит от языка, на котором мотиф, требуемых им библиотек и портируемости всего этого. Сами по себе участки кода, уникального для мотиф, за счёт легковесности не должны быть труднопортируемыми, но чувствую, что на X Window System он завязан довольно жестко.

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