LINUX.ORG.RU
ФорумTalks

Тулкит будущего.

 , , ,


1

1

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

А теперь собственно о штукенци. Я задумался о том, что было бы здорово каждый элемент интерфейса, созданного на этом тулките, делать динамичным. Ну т.е. возможность на лету изменять интерфейс программы. Впрочем, это и так уже есть, соль и не в этом, а в том, чтобы элементы управления одной программы можно было перемещать в интерфейс другой программы, и управлять одной из другой, создавая, при необходимости турбофичастые универсальные интерфейсы.

Не понятно? Пример. Есть у вас плеер. И на нём панелька с кнопками «следующий-предыдущий-стоп-пауза». И вот вы кодите, скжем, в своей любимой Geany, или листаете страницы в Atril и т.д. и т.п. и вот вам прям хочется переключать песенки, не тргая рабочее окно. А сверху, в панели этого самого окна, есть свободное пространство. И мы берём, и драг-н-дропаемм эту самую «следующий-предыдущий-стоп-пауза» в это свободное пространство, и управляем плеером из него.

А теперь представьте, сколько всего можно наколбасить? Всякие сдвоенные окна с переключалками, статусбары и управлялки и проче-прочее-прочее.

Понимаю, что не нужно, но всё же - прикольно?

★★★★★

Последнее исправление: cetjs2 (всего исправлений: 1)

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

COM/OLE?

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

Андроидовские Activity и Fragment.

А вообще идея хорошая, в стиле юникс-вея. Жаль, что никто не запилит ничего удобного и стандартного.

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

А на практике оно хоть где-то есть?

Внутри Cubase, например, всё состоит из этих самых модулей с жуткими guid-ами вместо человеческих имён и собственной внутренней системой обмена сообщениями. Конечно, оно там не для интерфейса, а модули общего назначения.

Так или иначе, это старая неприятная технология от MS, не стоит её копировать. Если и смотреть на их реализацию, то с мыслью «так делать не надо».

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

Если чисто переотображать части интерфейса, то было уже реализовано в metisse в виде facade. Они даже там в игрулину какую-то встроили gtkшные виджеты таким образом, просто приклеив))) И неплохо кстати работало, задолго до этих ваших гномошелов и прочих компосайтов.

А ежели речь про интеграцию интерфейсов, то это разговор пойдёт про интеграцию программ вообще. И тут засада, народ не может осилить даже набор стандартных интерфейсов для поверх dbus для однотипных приложений, только только что-то там появилось в рамках freedesktop. До единого интерфейса к любому браузеру или процессору документов никогда не доживём. А тут прямо речь про более тесную интеграцию, на уровне частей программ. Это значит, что программы должны быть раздроблены на взаимодейсвующие части, имеющие протоколы взаимодействия. Так сейчас почти никто не пишет и современные средства разработки для этого не приспособлены. А те что приспособлены(XPCOM, COM, CORBA) - выпиливаются ибо новички не понимают зачем когда-то это впиливалось)))

ixrws ★★★
()

поздравляю, ты придумал activex.

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

Это не технология MS, они её скопировали, как и нетскейп) Ничего неприятного, вполне себе рабочий механизм. Просто из-за переусложнённости и прежде всего из-за отсутсвия толком поддержке на уровне языков программирования - не очень удобно делать. Вот если бы обычные c++ объекты прозрачно превращались в COM, и также прозрачно можно было бы их получить, как dlopen, вот тогда другой вопрос. А тут наворотили корбовцы idl и понеслось, да так что даже нынешний w3c успокоиться не может со своим webidl))

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

И да, кстати, может это не тот форум где такое стоит говорить, но всё же, ведь в венде то это работает неплохо, очень даже быстро, даже не заметно, не то что dbus:)

Да и firefox вполне себе воспринимается как цельное приложение на С++ и конкурирует с хромом.

ixrws ★★★
()

У меня есть другая идея - портальная (viewpoint?) технология. Выделяете часть окна, которая вам нужна для работы и, например, открываете портал на другом рабочем столе. Если менеджер окон динамический тайловый, то все открытые порталы отлично разместятся на одном рабочем столе. Добавить ещё возможность перемещать выделение, например, с помощью средней кнопки мыши и всё получится достаточно удобно. Можно объединить обе идеи.

Nebuchadnezzar ★★★★
()

Про СОМ уже сказали, на практике получился ужас.

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

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

Почти точь-в-точь facade из metise. В качестве wm там fvwm. Правда там свои иксы и не знаю собирается ли сейчас это. Но работало очень даже шустро) И выделения можно было менять.

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

Правда там свои иксы и не знаю собирается ли сейчас это.

Любопытная штука. На их сайте написано, что она была доступна в Мандриве как один из вариантов десктопа - можно будет попробовать в виртуалке.

Nebuchadnezzar ★★★★
()

почему-то подумалось про корованы ))

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

было дело, у меня на 2008 мандриве эта штука шла на выбор. прикольно, но не очень полезно.

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