LINUX.ORG.RU

[GTK] Opensource проекты на GTK+, где реализован MDI

 


0

1

где можно посмотреть достаточно простые проекты на GTK+ (на C/C++), в которых реализован многооконные интерфейс, взаимодействие между виджетами, передача каких-то значений между ними. Интересно посмотреть на саму реализацию этого в GTK+, ввиду некоторых особенностей этого фреймворка.


Таки MDI или просто многооконный? Вещи-то разные.

Если MDI - то достаточно простых не знаю. Возможно Dia 0.97.1.

yoghurt ★★★★★
()

Людей использующих MDI в интерфейсе в 2011 году надо расстреливать я считаю. Более уродской технологии организации интерфейса придумать нельзя. И появилась то она только из-за убогости оконного менеджера в винде.

fat_angel ★★★★★
()

Eclipse RCP использует библиотеку SWT.

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

Людей использующих MDI в интерфейсе в 2011 году надо расстреливать я считаю. Более уродской технологии организации интерфейса придумать нельзя.

Почти все современные среды программирования используют MDI.

От SDI (как в Delphi) отказались из-за необходимости расстановки вспомогательных окон так, чтобы они не заслоняли друг друга, а это занимает довольно приличное время.

Докирование и вкладки для дочерних окон в MDI играют решающую роль в организации удобного интерфейса.

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

«MDI» — от слова «многодокументный».

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

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

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

Ну вон в Inkscape в 0.48 вроде сделали что-то минимально приличное, gimp 2.8 тоже грозятся выпустить в обозримом будущем.

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

Ну, формально в gedit тоже mdi. функционально...

svu ★★★★★
()

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

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

Ну, тот же mdi, в правильных фреймворках, умеет прекрасно маскироваться под вкладки. :)
Но в некоторых случаях имеет некоторые выгоды.

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

Ну например, это самостоятельное окно, со всеми вытекающими последствиями, видимость хоткеев, манипуляция как с окном итд.

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

Кто сказал что лучше? :)
Я написал, что «Но в некоторых случаях имеет некоторые выгоды».

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

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

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

Ну, как бы, в 250 МБ что-то должно существенное уместиться, а не просто так.

iZEN ★★★★★
()

MDI - тяжелое наследие. Самым правильным интерфейсом считаю «один документ - одно окно». В этом случае окнами полностью управляет WM, а в приложении нет необходимости городить лишний код. Хотя вкладки считаю полезными для группировки документов, если их много. Если бы еще вкладки поддерживались не 2-3 WM, было бы совсем хорошо, а так все равно приложения вынуждены этим заниматься.

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

Неправильно ты считаешь. :)
Особенно в свете того, что в аппликации кроме документов присутствует куча служебных окон.

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

Я имел в виду, что в окне с документом находятся соответствующие инструменты, как, например, в OpenOffice. В Gimp все по-другому сделано.

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

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

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

> А что если документы могут взаимодействовать или быть взаимосвязаны(пример, редактирование кода хтмл и отображение его)? Или нужна очередь документов (пример, просмотр картинок)?

любой из существующих ipc спокойно это решает

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

fork+pipe ) казалось бы красивейшая парадигма, а вот для современных гуев представлять данные как поток - кривовато

vertexua ★★★★★
()

кстати, по-поводу примера - glade достаточно грамотно спроектирован

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

Да понятно, но кроме потрохов, должно быть и визуальное, понятное объединение. Тех вм, что это позволяет делать, немного, так что тут или tdi или mdi.

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

> Да понятно, но кроме потрохов, должно быть и визуальное, понятное объединение

один рабочий стол на приложение, и соотвественные netwm hints тоже это решают

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

LOL, это да, но так и столов не напасешься. Причем знатное ё... получается когда еще и несколько мониторов.

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

А каждому окну обязательно быть в своем процессе? При повторном запуске процесс просто записывает все, что нужно, в pipe и выходит. А основной уже читает и разбирается. В том же FF вроде бы так и сделано, хотя там вообще используется TDI, а не SDI.

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

Я просто немного не по теме вспомнил что парадигменно такой красивый подход как pipes настолько неудобен в гуях, тоесть в софте, отдаленном от философии unix

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

> LOL, это да, но так и столов не напасешься.

практика показывает, что мало кто работает более чем с пятью приложениями за раз

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

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

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

> практика показывает, что мало кто работает более чем с пятью приложениями за раз

Сижу, работаю, запущено для работы 4 дефакто mdi(tdi) приложения и 2 sdi, причем одно с нотификацией в таск манагере... что-то мне подсказывает, что разнесение всех их по вирт столам и по 2 мониторам, было бы как минимум неудобно. :)

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

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

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