Идея: новый способ управления окнами.
От: Critical Error ICQ: 123736611
Дата: 10.02.08 07:25
Оценка: 2 (1)
Это все было придумано чтобы устранить недостатки, присущие стандартной схеме управления окнами и диалогами.
Недостатки:
1) При ресайзе нужно прицеливаться по краям рамочки, чтобы найти поинтом заветные 2-3 пиксела за которые можно ресайзить окно, это очень неудобно.
2) Чтобы закрыть окно приходиться целиться по крестику в углу окна, причем иногда этот самый крестик либо мелкий либо его вообще нет на экране.

Фича 1: Изменяем размер окна

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

Итак: ставим курсор в произвольную область окна и передвигаем курсор к краю, на пересечении бордюра с курсором начинается ресайз окна, причем курсор "прилипает" к бордюру и можно ресайзить как в большую так и в меньшую сторону. Диалоги, которые нельзя ресайзить просто перемещяются вслед за курсором.

Изменяем положение окна

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

Фича 2: Правая клавиша мышки

По нажатии клавиши в любом месте окна, появляется контекстное меню, причем центр курсора указывает аккурат по центру иконки "Close". Таким образом единственным правым щелчком мышки можно закрыть окно. При отпускании правой кнопки, если курсор не указывает ни на один элемент, меню тут же пропадает.

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



Жду критики, замечаний, багов.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: Идея: новый способ управления окнами.
От: Cyberax Марс  
Дата: 10.02.08 07:39
Оценка: 2 (1)
Здравствуйте, Critical Error, Вы писали:

CE>Итак: ставим курсор в произвольную область окна и передвигаем курсор к краю, на пересечении бордюра с курсором начинается ресайз окна, причем курсор "прилипает" к бордюру и можно ресайзить как в большую так и в меньшую сторону. Диалоги, которые нельзя ресайзить просто перемещяются вслед за курсором.

Жуть. А если я просто хочу передвинуть курсор, чтобы он не мешался?

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

CE>По нажатии клавиши в любом месте окна, появляется контекстное меню, причем центр курсора указывает аккурат по центру иконки "Close". Таким образом единственным правым щелчком мышки можно закрыть окно. При отпускании правой кнопки, если курсор не указывает ни на один элемент, меню тут же пропадает.

Т.е. если я случайно нажму на правую кнопку — окно тут же закроется. Некрасиво.
Sapienti sat!
Re[2]: Идея: новый способ управления окнами.
От: Critical Error ICQ: 123736611
Дата: 10.02.08 07:56
Оценка:
Здравствуйте, Cyberax, Вы писали:

C>Жуть. А если я просто хочу передвинуть курсор, чтобы он не мешался?


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

C>Т.е. если я случайно нажму на правую кнопку — окно тут же закроется. Некрасиво.


Угу, если случайно нажмешь, то закроется, но на самом деле случайное нажатие может произойти и левой и в более страшном контексте. Эту идею я честно стырил у игры UO (была такая древняя MMORPG). Так вот там это ничуть не мешало. Единственно можно понизить риск, показывая меню управления окном только при нажатии правой на заголовке.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: Идея: новый способ управления окнами.
От: swame  
Дата: 10.02.08 08:30
Оценка:
CE>Это интуитивно понятный способ изменения размера области, его можно сравнить с мешком, в который мы засовываем руку, чтобы отодвинуть край, причем если засунуть руку в деревянный ящик, то ящик будет подвинут, так как изменять размер ящика нельзя.

CE>Итак: ставим курсор в произвольную область окна и передвигаем курсор к краю, на пересечении бордюра с курсором начинается ресайз окна, причем курсор "прилипает" к бордюру и можно ресайзить как в большую так и в меньшую сторону. Диалоги, которые нельзя ресайзить просто перемещяются вслед за курсором.


И как это уживется с Dran'n'drop ?
Re[3]: Идея: новый способ управления окнами.
От: Cyberax Марс  
Дата: 10.02.08 08:58
Оценка:
Здравствуйте, Critical Error, Вы писали:

C>>Жуть. А если я просто хочу передвинуть курсор, чтобы он не мешался?

CE>Упс, я тут забыл написать, что нужно нажимать левую перед тем как ресайзить или двигать .
Для передвижения такое уже во многих программах есть. Не скажу, что мне это особо чем-то нравится, но и ничего сильно плохого я тоже не вижу.

C>>Т.е. если я случайно нажму на правую кнопку — окно тут же закроется. Некрасиво.

CE>Угу, если случайно нажмешь, то закроется, но на самом деле случайное нажатие может произойти и левой и в более страшном контексте.
Например? Для всяких delete/format disk c/destroy the world — должы быть дополнительные подтверждения, так что случайные клики не составляют большой проблемы.

CE>Эту идею я честно стырил у игры UO (была такая древняя MMORPG). Так вот там это ничуть не мешало. Единственно можно понизить риск, показывая меню управления окном только при нажатии правой на заголовке.

Да, это уже более нормально. Сейчас меню показывается, но close в самом низу.
Sapienti sat!
Re[2]: Идея: новый способ управления окнами.
От: Critical Error ICQ: 123736611
Дата: 10.02.08 09:18
Оценка:
Здравствуйте, swame, Вы писали:

S>И как это уживется с Dran'n'drop ?


Да очень просто, в случае драг-дропа, когда начинается драг, то это сообщение перхватывается контролом с которого перетаскиваем что-либо и не поступает диалогу. Примерно тоже самое если в окне находится Text-Edit контрол: левой клавишей можно спокойно выделять текст. В этом случае ресайзить окно можно по прежнему пользуясь краем окна, но теперь этот край не 2-3 пикселя, а вся свободная область между контролами и краем (обычно больше 6 пикселей).
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: Идея: новый способ управления окнами.
От: Roman Odaisky Украина  
Дата: 10.02.08 11:03
Оценка: +1
Здравствуйте, Critical Error, Вы писали:

[]

В KDE, удерживая Alt, можно перетаскивать окно за любое место (не только за заголовок), а правой кнопкой — изменять размер (возле какого угла ухватил, тот и будет двигаться). Есть настройка, позволяющая изменять размеры развернутых окон. Закрывать окна удобнее всего нажатием средней клавиши (колеса) на кнопке на панели задач.
До последнего не верил в пирамиду Лебедева.
Re[2]: Идея: новый способ управления окнами.
От: Cyberax Марс  
Дата: 10.02.08 12:02
Оценка:
Здравствуйте, Roman Odaisky, Вы писали:

RO>В KDE, удерживая Alt, можно перетаскивать окно за любое место (не только за заголовок), а правой кнопкой — изменять размер (возле какого угла ухватил, тот и будет двигаться). Есть настройка, позволяющая изменять размеры развернутых окон. Закрывать окна удобнее всего нажатием средней клавиши (колеса) на кнопке на панели задач.

Нифига не удобно, кстати. Я достаточно часто нажимаю неправильную кнопку и случайно закрываю окна или табы в FF (там тот же механизм).
Sapienti sat!
Re[2]: Идея: новый способ управления окнами.
От: Critical Error ICQ: 123736611
Дата: 10.02.08 13:32
Оценка:
Здравствуйте, Roman Odaisky, Вы писали:

RO>В KDE, удерживая Alt, можно перетаскивать окно за любое место (не только за заголовок), а правой кнопкой — изменять размер (возле какого угла ухватил, тот и будет двигаться). Есть настройка, позволяющая изменять размеры развернутых окон. Закрывать окна удобнее всего нажатием средней клавиши (колеса) на кнопке на панели задач.


Ну против колесика я сразу скажу, что не очень он удобен, потому как во-первых сила нажатия на колесико больше, чем сила нажатия на обычную кнопку мышки, к тому же он рутится. Так уж сложилось что колесико применяется в основном для манипуляций с положением чего-либо, например удерживая нажатым колесико в 3D редакторах изменяют расстояние от модели или позицию камеры или вообще модель крутят.

Вот простой пример: у вас открыто 50 документов в браузере или в MSVS, вот подумайте, чем проще закрывать их, средней или правой кнопкой мыши? Сможете ли вы с частотой 2-5 кликов в секунду жать на колесико?

Так что колесико можно использовать например для возможности изменять позицию окна удерживая кнопку в любом месте окна.

По части риска закрыть окно правой: бывают такие UI (например в Опере) где кнопка закрытия вкладки находится на заголовке вкладки, тогда если их открыто много, то кроме сплошного ряда крестиков ничего и не видно. По моему тут риск закрыть окно левой гораздо выше, так как площадь активации вкладки значительно меньше площади кнопки "Закрыть".

К тому же окно закрывается не сразу, и закрытие окна всегда можно отменить если ты вовремя понял что нажал на правую, просто смести курсор из менюшки и отпусти кнопку, также собственно как и при ошибочном нажатии левой.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Идея: новый способ управления окнами.
От: Сергей  
Дата: 10.02.08 17:08
Оценка:
Здравствуйте, Critical Error, Вы писали:

CE>Ну против колесика я сразу скажу, что не очень он удобен,


А я только так и закрываю — поставил какой-то софт, который позволяет это делать с кнопками на панели задач.
Re: Идея: новый способ управления окнами.
От: Осака Вестингауз  
Дата: 10.02.08 17:21
Оценка:
Здравствуйте, Critical Error, Вы писали:

CE>2: Правая клавиша мышки

Хорошая идея. В 2000й винде так комбобокс открывался (левой кнопкой) — можно было нажать, не отпуская провести до нужного итема, и отпустить. А в XP это сломали.
Данное сообщение является художественным произведением и освещает вымышленные события в вымышленном мире. Все совпадения с реальностью являются случайными. Не является инвестиционной рекомендацией.
Re: Идея: новый способ управления окнами.
От: hell citizen Россия  
Дата: 12.02.08 12:35
Оценка:
Здравствуйте, Critical Error, Вы писали:

CE>Это все было придумано чтобы устранить недостатки, присущие стандартной схеме управления окнами и диалогами.


А может ну их нафик эти окна, которыми так неудобно управлять? Вот мой ответ:
1. Экран делится на рабочую область приложений и панель задач.
2. Рабочая область приложений состоит из N панелей.
3. В каждой панели работает одно и только одно приложение.
4. Пользователь может настраивать количество и взаимное расположение панелей как ему вздумается.
5. В любой момент пользователь может спрятать или сделать единственной (спрятать все кроме) любую панель нажатием одной клавиши.
6. При прятании панелей пустое место распределяется между оставшимися.
7. Меню запуска приложений живёт в каждой пустой панели.
8. Панель задач представляет из себя ленту, состоящую из скриншотов программ и подписей к ним. Фактически, это просто ещё одна панель.
9. При наведени на скриншот он увеличивается вместе с подписью, а при клике — программа переносится в последнюю активную панель.

Вот, в кратце. Мне кажется, что такая система будет востребована, особенно с новыми большими мониторами и в разрешении 1900х1280 и выше.

CE>Жду критики, замечаний, багов.


Я тоже
Re: Идея: новый способ управления окнами.
От: linker Россия  
Дата: 12.02.08 12:44
Оценка:
Здравствуйте, Critical Error, Вы писали:
CE>Жду критики, замечаний, багов.
У меня один только вопрос.Вы пользователей переучивать будете?Они и без того не знабт куда что тянуть и только научились чего и как, и тут и еще такое чудо.
... << RSDN@Home 1.2.0 alpha rev. 789>>
Re[2]: Идея: новый способ управления окнами.
От: Sheridan Россия  
Дата: 12.02.08 14:57
Оценка:
hell citizen однажды (12 февраля 2008 15:35) писал:

> 5. В любой момент пользователь может спрятать или сделать единственной (спрятать все кроме) любую панель нажатием одной клавиши.

Хорошая мысль. Дополню. Сделать 10 панелей. Управлять с цифровой клавиатуры [0-9], "," для мозаики. Управление при нажатом нумлоке.

--
...belive in the matrix...
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Re[3]: Извиняюсь, не нумлок, а скролллок.
От: Sheridan Россия  
Дата: 12.02.08 14:58
Оценка:
А то простаивает оно под виндами...
Posted via RSDN NNTP Server 2.1 beta
Matrix has you...
Re[2]: Идея: новый способ управления окнами.
От: Critical Error ICQ: 123736611
Дата: 12.02.08 15:49
Оценка:
Здравствуйте, linker, Вы писали:

L>У меня один только вопрос.Вы пользователей переучивать будете?Они и без того не знабт куда что тянуть и только научились чего и как, и тут и еще такое чудо.


Нет конечно, я не собираюсь переделывать виндовый интерфейс и тем более когото "переучивать". Это эксперимент по созданию интерфейса для игры. Я просто перебираю варианты. Конкретно эта часть призвана упростить управление диалогами. В играх не очень удобно целиться по мелким крестикам.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Идея: новый способ управления окнами.
От: Critical Error ICQ: 123736611
Дата: 12.02.08 15:56
Оценка:
Здравствуйте, hell citizen, Вы писали:

...

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

Еще минус: постоянный ресайз. Всякие редакторы сойдут с ума от такого. Панели съедут куда попало.

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

Или я както не так понял? Поясните картинкой plz.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[3]: Идея: новый способ управления окнами.
От: игппук Беларусь  
Дата: 18.02.08 19:20
Оценка:
Здравствуйте, Critical Error, Вы писали:

CE>Здравствуйте, Cyberax, Вы писали:


C>>Жуть. А если я просто хочу передвинуть курсор, чтобы он не мешался?


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


а если я хочу сделать драг анд дроп элемента окна за его пределы?
проклятый антисутенерский закон
Re[4]: Идея: новый способ управления окнами.
От: Critical Error ICQ: 123736611
Дата: 19.02.08 05:22
Оценка:
Здравствуйте, игппук, Вы писали:

И>а если я хочу сделать драг анд дроп элемента окна за его пределы?


Вот так: Re[2]: Идея: новый способ управления окнами.
Автор: Critical Error
Дата: 10.02.08
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Идея: новый способ управления окнами.
От: Zigmar Израиль  
Дата: 19.02.08 20:40
Оценка:
Здравствуйте, hell citizen, Вы писали:
HC>А может ну их нафик эти окна, которыми так неудобно управлять? Вот мой ответ:
HC>1. Экран делится на рабочую область приложений и панель задач.
HC>2. Рабочая область приложений состоит из N панелей.
HC>3. В каждой панели работает одно и только одно приложение.
HC>4. Пользователь может настраивать количество и взаимное расположение панелей как ему вздумается.
HC>5. В любой момент пользователь может спрятать или сделать единственной (спрятать все кроме) любую панель нажатием одной клавиши.
HC>6. При прятании панелей пустое место распределяется между оставшимися.
HC>7. Меню запуска приложений живёт в каждой пустой панели.
HC>8. Панель задач представляет из себя ленту, состоящую из скриншотов программ и подписей к ним. Фактически, это просто ещё одна панель.
HC>9. При наведени на скриншот он увеличивается вместе с подписью, а при клике — программа переносится в последнюю активную панель.

HC>Вот, в кратце. Мне кажется, что такая система будет востребована, особенно с новыми большими мониторами и в разрешении 1900х1280 и выше.


Уже достаточно давно существует такой оконный менеджер для *nix систем: Ion.
Я даже пользовался некоторое время, достаточно удобно, в особенно в плане того, что не надо трогать мышку. Единственное, апликации, пытающиеся навязывать свой размер окон, не всегда хорошо с ним уживаются.
"To protect people you must slay people. To let people live you must let people die. This is the true teaching of the sword."
-Seijuro Hiko, "Rurouni Kensin"
Re: Идея: новый способ управления окнами.
От: Аноним  
Дата: 21.02.08 07:21
Оценка:
Здравствуйте, Critical Error, Вы писали:

CE>1) При ресайзе нужно прицеливаться по краям рамочки, чтобы найти поинтом заветные 2-3 пиксела за которые можно ресайзить окно, это очень неудобно.

Это действительно раздражающая проблема и грамотного решения до сих пор пожалуй не предложил никто.

CE>Фича 1: Изменяем размер окна

CE>Итак: ставим курсор в произвольную область окна и передвигаем курсор к краю, на пересечении бордюра с курсором начинается ресайз окна, причем курсор "прилипает" к бордюру и можно ресайзить как в большую так и в меньшую сторону. Диалоги, которые нельзя ресайзить просто перемещяются вслед за курсором.
Не совсем понял алгоритма. Хотелось бы видеть живую дему с тремя моментами. 1) Не ресайзим и не двигаем. 2) Ресайзим. 3) Двигаем.

Вообще говоря вы можете поглядеть на нечто близкое вашим идеям. Это система plan9 от Белл Лабс. Гуглится на ура. Бесплатная, маленькая, простые сорцы, открытые. Интерфейс основан на графике. Сама система похожа на юникс. Но не юникс. Вообще, весьма примечательная вещь. Есть сайты на русском. Впрочем, если напряженные красивости обязательны, лучше вам ее не видеть.

CE>По нажатии клавиши в любом месте окна, появляется контекстное меню, причем центр курсора указывает аккурат по центру иконки "Close".

Неудобно. Часто будет окно закрываться случайно (после 12 часов компа к примеру, или на радостях, или после них) и комп раньше времени поедет к китайцам на переработку.

CE>Жду критики, замечаний, багов.
Re[2]: Идея: новый способ управления окнами.
От: Аноним  
Дата: 21.02.08 08:51
Оценка:
Прошу прощения отвечал не разобравшись.

Идея ресайзинга, считаю, очень хорошая, но использовать ее в таком виде нельзя. Бывает, когда руки устают, начинаешь шевелить мышой с нажатыми кнопками. Если при этом еще и окно двигаться начнет — у меня денег на новые компы не хватит.

Идея с менюшкой — компромисная. Достаточно неудобная. Я ей воспользовался для сохранения/удаления из проекта файлов в fasm editore (basmp.narod.ru). Неверите — попробуйте (<right click> по закладке файла). Вы ведь уже запускали его.

ЗЫ как тут скриншоты добавлять?
Re[3]: Идея: новый способ управления окнами.
От: Critical Error ICQ: 123736611
Дата: 21.02.08 09:48
Оценка:
Здравствуйте, <Аноним>, Вы писали:

А>Идея ресайзинга, считаю, очень хорошая, но использовать ее в таком виде нельзя. Бывает, когда руки устают, начинаешь шевелить мышой с нажатыми кнопками. Если при этом еще и окно двигаться начнет — у меня денег на новые компы не хватит.


С ресайзом это лучшее решение, что пришло мне в голову... Уж очень надоело целиться. Кстати в вышем басме для ресайза окна квардатик 5*5 пикселей!!! Ужос какой.

А>Идея с менюшкой — компромисная. Достаточно неудобная. Я ей воспользовался для сохранения/удаления из проекта файлов в fasm editore (basmp.narod.ru). Неверите — попробуйте (<right click> по закладке файла). Вы ведь уже запускали его.


Нет идея тут в том, что меню подругому работает — оно появляется под курсором, а не сбоку. Так что если отпустить кнопку — тут же выполнится действие по умолчанию. Еще отличие в том, что приотпускании менюшка всегда пропадает, а не остается висеть. Попробуй басм модифицировать, чтобы Close project был верхним пунктом и смести меню так, чтобы оно попало под курсор — основная идея реализуется.

Можно сделать тоже самое для окон. Убрать крестик нафиг и сделать контекстное меню. Тогда окна можно будет закрывть одним левым кликом по заголовку. Куда уж быстрее?

А>ЗЫ как тут скриншоты добавлять?


Надо зарегистрироваться В профиле пользователя есть хранилище файлов.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[4]: Идея: новый способ управления окнами.
От: Critical Error ICQ: 123736611
Дата: 21.02.08 09:50
Оценка:
Здравствуйте, Critical Error, Вы писали:

А>>ЗЫ как тут скриншоты добавлять?


CE>Надо зарегистрироваться В профиле пользователя есть хранилище файлов.


Тэг [img]URL_к_картинке[/img]
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[4]: Идея: новый способ управления окнами.
От: Аноним  
Дата: 22.02.08 00:33
Оценка: +1
Здравствуйте, Critical Error, Вы писали:

CE>С ресайзом это лучшее решение, что пришло мне в голову... Уж очень надоело целиться.

Идея хорошая, но сырая. Осветите как можно подробнее и однозначнее 3 момента. Ограничения: используется только левая кнопка мыши, клава не используется.
1) Шевелим мышой с нажатыми или ненажатыми кнопками и окно не реагирует.
2) Нажимаем на левую кнопку и меняем размеры (увеличиваем и (обязательно!) уменьшаем.
3) Переключаемся между этими режимами.
Как можно подробнее, как для идиота. Если я пойму вас и мне понравится и будет на то ваше желание сляпаю вам демку. С демкой объяснить что-то проще.

CE>Кстати в вышем басме для ресайза окна квардатик 5*5 пикселей!!! Ужос какой.

Ужас.

CE>Нет идея тут в том, что меню подругому работает — оно появляется под курсором, а не сбоку. Так что если отпустить кнопку — тут же выполнится действие по умолчанию. Еще отличие в том, что приотпускании менюшка всегда пропадает, а не остается висеть.

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

CE>Попробуй басм модифицировать, чтобы Close project был верхним пунктом..

Боже вас сохрани делать Close или Delete дефолтом. С вами никто не захочет говорить после этого. Только кирпичами кидать будут.

CE>и смести меню так, чтобы оно попало под курсор — основная идея реализуется.

Сомневаюсь, что это будет хорошо. можно случайно кликнуть не на том, на делете например.

CE>Можно сделать тоже самое для окон. Убрать крестик нафиг и сделать контекстное меню. Тогда окна можно будет закрывть одним левым кликом по заголовку. Куда уж быстрее?

Зачем?

Я думаю, что вам нужно довести идею ресайзинга до ума — до алгоритма на языке С. И народ вам будет благодарен. Когда проникнется. А остальное — пусть пока отдохнет.

Best regards.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.