Свойство "Always On Top" для немодальных диалогов?

Хотите предложить идею нового плагина или знаете, что улучшить в существующем? Пишите сюда.
User avatar
HaRT
Moderator
Posts: 9656
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 119 times
Been thanked: 245 times

Свойство "Always On Top" для немодальных диалогов?

Post by HaRT »

Latest post of the previous page:

zg wrote: Wed 18 Mar, 2020 22:14 чем это будет отличаться от вызова диалога через меню плагинов, которое можно сделать уже сейчас?
Тем, что, во-первых, в большинстве случаев (когда нет модальных окон) диалог будут поверх всех; во-вторых, что вытащить наверх (в т.ч. поверх модальных окон) любое уже существующее немодальное окно можно будет одинаково, независимо от того, как оно открывается через плагины; в-третьих, (вероятно, тут я прежде недостаточно ясно выразился) что при ручном вытаскивании поверх модальных немодальное окно не будет получать фокус ввода (т.е. мне это видится как операция, отдельная от активации окна, — например, чтобы только видеть, что в окне выводится).
Фар есть инструмент, а не нянька. © 2009 DrKnS
User avatar
zg
zero-gravity
Posts: 5878
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 158 times
Contact:

Свойство "Always On Top" для немодальных диалогов?

Post by zg »

а если таких окон несколько?
User avatar
HaRT
Moderator
Posts: 9656
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 119 times
Been thanked: 245 times

Свойство "Always On Top" для немодальных диалогов?

Post by HaRT »

zg wrote: Thu 19 Mar, 2020 00:18 а если таких окон несколько?
Немодальных и «поверх прочих»? По умолчанию каждое из них «ближе» (к зрителю) всех прочих («обычных») немодальных, между собой — в порядке создания (позднее — «ближе»). Ручное вытаскивании поверх модального меняет «близость» только вытаскиваемого окна, при этом оно становится «ближе» и модального, и прежде вытащенных «поверх прочих». При закрытии модальных окон относительный порядок немодальных сохраняется. Вроде ничего не пропустил?
Фар есть инструмент, а не нянька. © 2009 DrKnS
IgorZ
Posts: 708
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 13 times
Been thanked: 67 times

Свойство "Always On Top" для немодальных диалогов?

Post by IgorZ »

HaRT wrote: Thu 19 Mar, 2020 00:25 Ручное вытаскивании поверх модального меняет «близость» только вытаскиваемого окна,
Простите, может, я туплю, но как можно вытаскивать что-то из-под модального окна? Если сама идея модальности заключается в том, чтобы заявить "Забудь, абсолютно и напрочь, про всё остальное, пока не закончишь работу с этим окном. Всё прочее недоступно, его нет."
buniak_a_h
Posts: 2307
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 139 times
Been thanked: 248 times
Contact:

Свойство "Always On Top" для немодальных диалогов?

Post by buniak_a_h »

IgorZ, фокус ввода остаётся у модального окна (т.е. все клавиатурные и мышиные события приходят к модальному окну). Но иногда оно закрывает окно, которое содержит важную для диалога информацию. Возможно, HaRT имел в виду не вытаскивание поверх, а вытаскивание из-под. Ну, в бок куда-нить, рядом с модальным - чтоб видно было. Я так понял. Или даже действительно поверх, но при первом же клавиатурном-мышовом вводе модальное должно вылезти, а сами события должны приходить к последнему открытому модальному.
IgorZ
Posts: 708
Joined: Wed 13 Jul, 2011 03:32
Has thanked: 13 times
Been thanked: 67 times

Свойство "Always On Top" для немодальных диалогов?

Post by IgorZ »

buniak_a_h wrote: Fri 20 Mar, 2020 05:18 IgorZ, фокус ввода остаётся у модального окна (т.е. все клавиатурные и мышиные события приходят к модальному окну). Но иногда оно закрывает окно, которое содержит важную для диалога информацию.
Для этого достаточно сдвинуть в сторону модальное окно, не так ли?
buniak_a_h wrote: Fri 20 Mar, 2020 05:18
Если я правильно понял пример, в нём обосновывается нужность AOT, а не вытаскивания какого-то окна из-под модального. То есть, совсем не тот вопрос, что я поднял.
citRiks
Posts: 1103
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 345 times
Been thanked: 57 times

Свойство "Always On Top" для немодальных диалогов?

Post by citRiks »

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

А то что надо добавить - это то чтобы НЕмодальные окна с АОТ отрисовывались поверх других немодальных которые без АОТ.

вот и вся логика, умещается в одном предложении, примитивнее некуда.
не знаю насколько сложна реализация, но сама логика проще некуда уже,
а мы тут с вами как будто ракету с людьми на Луну запускаем :)
Last edited by citRiks on Fri 20 Mar, 2020 09:47, edited 1 time in total.
А кто не поверит в наше миролюбие, / Тот кровью умоется. / И будет такая борьба за мир, / Что камня на камне не останется.
LAT
Posts: 330
Joined: Thu 21 Jan, 2010 20:00
Has thanked: 19 times
Been thanked: 35 times

Свойство "Always On Top" для немодальных диалогов?

Post by LAT »

citRiks wrote: Fri 20 Mar, 2020 09:47А то что надо добавить - это то чтобы НЕмодальные окна с АОТ отрисовывались поверх других немодальных которые без АОТ.
А зачем могут понадобиться сразу несколько НЕмодальных окон? И что должно происходить, если сразу несколько НЕмодальных окон созданы с AOT?
User avatar
John Doe
Бюрократ
Posts: 13001
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 40 times
Been thanked: 310 times

Свойство "Always On Top" для немодальных диалогов?

Post by John Doe »

zg wrote: Wed 18 Mar, 2020 18:07 единственный пример, который я знаю, это в панелях показывать что-то либо о текущем файле
Был ещё плагин ScreenGadgets, реализующий подобие тулбара.
Имеет смысл как для панелей, так и для вьюеверов/редакторов, и даже для других диалогов.
В том числе, и для модальных.
zg wrote: Wed 18 Mar, 2020 18:07 вот выше есть пример про быстрый поиск, но я вообще не понимаю даже, зачем там немодальность
Не знаю про быстрый поиск, а немодальное у нас автодополнение.

Другие примеры: тултипы, индикаторы прогресса (фонового копирования).
zg wrote: Wed 18 Mar, 2020 19:53 что должно быть выше, меню переключения экранов или диалог аудиоплеера?
Меню переключения может быть особым кейсом.
https://t.me/FarManager — Telegram чат
User avatar
John Doe
Бюрократ
Posts: 13001
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 40 times
Been thanked: 310 times

Свойство "Always On Top" для немодальных диалогов?

Post by John Doe »

HaRT wrote: Wed 18 Mar, 2020 21:50 Но предлагаю, чтобы через меню экранов можно было немодальный диалог вручную вытащить поверх
Зачем. Должно быть сразу удобно.
zg wrote: Wed 18 Mar, 2020 20:49 единственное, что мне пока пришло в голову для диалогов/меню: изначально показывать их сверху, а через таймаут в секунд 10 выводить наверх aot окна. но тоже спорное решение.
Очень спорное.
Немодальный диалог, если он предполагается поверх всего, должен быть маленьким, или уметь сворачиваться в полоску.
zg wrote: Thu 19 Mar, 2020 00:18 а если таких окон несколько?
Они в приоритете, но тоже имеют z-индекс.
LAT wrote: Fri 20 Mar, 2020 11:32 А зачем могут понадобиться сразу несколько НЕмодальных окон?
Зачем сразу "окон".
Скомбинируйте несколько различных применения (из примеров выше), и легко получите сразу 3 на экране.
https://t.me/FarManager — Telegram чат
User avatar
zg
zero-gravity
Posts: 5878
Joined: Tue 15 Mar, 2005 17:36
Location: riga
Been thanked: 158 times
Contact:

Свойство "Always On Top" для немодальных диалогов?

Post by zg »

HaRT wrote: Thu 19 Mar, 2020 00:25
zg wrote: Thu 19 Mar, 2020 00:18 а если таких окон несколько?
Немодальных и «поверх прочих»?
нет, нужно вытащить.
IgorZ wrote: Fri 20 Mar, 2020 05:01Простите, может, я туплю, но как можно вытаскивать что-то из-под модального окна? Если сама идея модальности заключается в том, чтобы заявить "Забудь, абсолютно и напрочь, про всё остальное, пока не закончишь работу с этим окном. Всё прочее недоступно, его нет."
всё таки хотелось удобную фичу, а не идеологически правильную. примеры я приводил на предыдущей странице.
citRiks wrote: Fri 20 Mar, 2020 09:47А то что надо добавить - это то чтобы НЕмодальные окна с АОТ отрисовывались поверх других немодальных которые без АОТ.
это нужно лично вам. в общем случае это неудобно, я уже писал почему.
John Doe wrote: Fri 20 Mar, 2020 12:12Меню переключения может быть особым кейсом.
я задавал по этому поводу вопросы.
citRiks
Posts: 1103
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 345 times
Been thanked: 57 times

Свойство "Always On Top" для немодальных диалогов?

Post by citRiks »

LAT wrote: Fri 20 Mar, 2020 11:32А зачем могут понадобиться сразу несколько НЕмодальных окон?
как до меня совершенно правильно уже ответили, я перефразирую так :)
"а зачем у тебя в Винде открыто сразу столько немодальных окон?
Ну там браусер, Висуал Студия, ФАР, плэйер, мессенджер вон висит немодальный.
Тебе это точно не мешает?"
LAT wrote: Fri 20 Mar, 2020 11:32 И что должно происходить, если сразу несколько НЕмодальных окон созданы с AOT?
в простейшем случае новые (следующие) АОТ окна рисуются поверх прежних существующих c AOT.
Если разрабы сподобятся, то сделают управляемый z-index, если нет - то сойдет и без него.
Last edited by citRiks on Fri 20 Mar, 2020 14:35, edited 1 time in total.
А кто не поверит в наше миролюбие, / Тот кровью умоется. / И будет такая борьба за мир, / Что камня на камне не останется.
citRiks
Posts: 1103
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 345 times
Been thanked: 57 times

Свойство "Always On Top" для немодальных диалогов?

Post by citRiks »

zg wrote: Wed 18 Mar, 2020 18:07 помнится были какие-то идеи про редактор, но я не помню никакой конкретики.
про редактор я писал в контексте дерева, что:
Его можнос деалть на пол экрана, НЕмодальным, и нарисовать в нем дерево
НЕмодальность нужна чтобы переходить с этого дерева на панель и обратно,
потому что с модальным так точно не получится.
Но, что происходит. Как только немодальный Едитор теряет фокус в результате перехода на панель(/и),
он исчезает из виду, оставаясь однако где-то там, но это не сильно помогает.
Т.е. не получается удобного дерева в редакторе, так как оно исчезать будет постоянно.
В этой теме это несколько офтопик, так как редактор это не диалог,
но отвечаю на ваш вопрос во-первых, и во-вторых, пользуясь случаем спрошу,
а нельзя ли сделать АОТ для редактора и заодно для вьювера?
А кто не поверит в наше миролюбие, / Тот кровью умоется. / И будет такая борьба за мир, / Что камня на камне не останется.
buniak_a_h
Posts: 2307
Joined: Sat 20 Apr, 2013 00:17
Location: Питер
Has thanked: 139 times
Been thanked: 248 times
Contact:

Свойство "Always On Top" для немодальных диалогов?

Post by buniak_a_h »

LAT wrote: Fri 20 Mar, 2020 11:32 А зачем могут понадобиться сразу несколько НЕмодальных окон? И что должно происходить, если сразу несколько НЕмодальных окон созданы с AOT?
Первое, что приходит в голову - IDE. Результаты компиляции (ошибки) выводятся в диалоге с DI_LIST-ом; при этом редактор открыт и можно продолжать редактирование.И одновременно в процессе исправления может понадобиться, например, Find all, оформленный тоже в виде диалога (он и так сейчас диалог, но было бы удобно этот диалог сделать немодальным AOT). Ну, например, одна из ошибок связана с некой переменной, и надо изменить все строки, в которых этой переменной что-то присваивается. И не закрывать диалог, показывающий ошибки.
Сейчас я показываю ошибки в не-полноэкранном редакторе, но немодальный AOT-диалог был бы логичнее. А поиск всех, оформленный в виде AOT-диалога - это вообще классика.
При нескольких AOT-диалогах они располагаются по времени создания, но есть возможность "вытаскивания" (переключением по CtrlTab)
Last edited by buniak_a_h on Fri 20 Mar, 2020 14:47, edited 1 time in total.
citRiks
Posts: 1103
Joined: Fri 25 Oct, 2019 18:18
Has thanked: 345 times
Been thanked: 57 times

Свойство "Always On Top" для немодальных диалогов?

Post by citRiks »

zg wrote: Wed 18 Mar, 2020 19:53 HaRT писал(а): ↑
Ср 18 мар, 2020 21:34
Я вспомнил ещё одну практическую потребность: чтобы диалог AudioPlayerа не пропадал из виду, когда переключаешься в панели, редактор и т.п.

вот хороший пример. предположим для простоты что все меню во всю высоту экрана и пересекаются с окном аудиоплеера. повторю свой вопрос:
что должно быть выше, меню переключения экранов или диалог аудиоплеера?
Меню переключения экрана конечно выше.
Ему прямая дорога быть модальным на мой взгляд.
Как я и многие тут писали, модaльное имеет всегда приоритет над немодальным хоть с АОТ хоть без АОТ.
И это прямой аналог Alt-Tab в винде однако,
т.е. всю логику работы прямо оттуда и брать смело.
Если вам нравится как-то иначе, то можно внести разные допольнительные режимы,
или сделайте уж все как вам нравится, польза будет в любом случае.
лучше хоть с каким-то АОТ чем совсем без него
А кто не поверит в наше миролюбие, / Тот кровью умоется. / И будет такая борьба за мир, / Что камня на камне не останется.
User avatar
HaRT
Moderator
Posts: 9656
Joined: Tue 30 Aug, 2005 17:21
Location: Санкт-Петербург
Has thanked: 119 times
Been thanked: 245 times

Свойство "Always On Top" для немодальных диалогов?

Post by HaRT »

zg wrote: Fri 20 Mar, 2020 13:49
HaRT wrote: Thu 19 Mar, 2020 00:25
zg wrote: Thu 19 Mar, 2020 00:18 а если таких окон несколько?
Немодальных и «поверх прочих»?
нет, нужно вытащить.
Для начала можно их вытаскивать по одному. Но более удобно будет, если сперва в меню экранов выделить (галками), а затем одним нажатием вытащить (с сохранением взаимного порядка).
Фар есть инструмент, а не нянька. © 2009 DrKnS
Post Reply

Return to “Предложения и идеи”