Реализация механизма перемещения панелей макета DockLayout
Наконец-то уже что-то начинает прорисовываться в виде главного окна программы. Вот он, настраиваемый макет или менеджер стыкуемых панелей, не уверен, как правильно. Целую неделю я не добавлял на сайт постов. А всё потому что особой-то нужды не было. Последние дни у меня были крайне непродуктивными, практически не продвинулся. Что-то делаю только последние пару дней. Ох уж это лето. Оно отнимает время то на одно, то на другое, то на праздники. Ты на что-то отвлекаешься, а твоя работа простаивает, как вкопанная. И прогресса нет. Вот такие пироги. Но теперь пора наверстывать и разгонять рабочий ритм. Как в прежние времена - с утра и до вечера занимаемся только программой. А все отвлекаловки нужно в шею гнать ногой пинками. Ну да ладно, в поэзию глубоко заходить не будем. Так вот что же я успел реализовать на данный момент.
Вот, наконец, работает функция перемещения панелей как внутри групп, так и между разными группами. Отсортировать и переместить панели макета теперь можно. Но можно пока только в программном виде. А не в интерфейсе. Для перемещения и сортировки в интерфейсе мне завтра предстоит реализовать механизм drag-and-drop. Так что вот так. А ещё реализовал несколько полезных фишек в этом макете. Таких, как фиксация панелей от скрытия и перетаскивания, групповое переключение видимости панелей, переключение видимости всех панелей одним махом, то есть одним кликом. То есть если нужно будет все панели с настройками и инструментами быстро скрыть и освободить клиентскую область окна для нераздельного просмотра содержимого таблиц в контроле документа, который ещё предстоит сделать вот после этого контрола. На полоски с вкладками я добавил красные кружочки, кликнув на которые можно скрывать все панели в данной группе.
Ну а завтра день у меня начнется с реализации фишки, которую я ещё не реализовывал в своей черновой версии программы. Это вынос панелей в отдельные окна. Берешь, перетаскиваешь (или нажимаешь соответствующую кнопку в заголовке панели) эту панель в центральную область окна - и содержимое этой панели открывается в новом окне, а исходная панель временно скрывается. Ну а закрыв это окно, панель возвращается на своё законное место. Так то. В макете черновой версии программы я этого не стал делать, поленился. А вот теперь решил сделать. Всё равно времени на всё про всё уходит целый вагон. Так что почему бы не реализовать лишний функционал, может быть, он будет полезной. А программа при этом и её интерфейс станут ещё дороже и круче. Так что так. Будим ковать дальше, что-то должно в конце-концов выковаться.
Ну и вот это пока что всё, что я хотел сказать. Ну и надеюсь на то, что моя производительность вырастет. Потому что, как говориться, ещё копать не перекопать. Ну и на этом весь пост, и теперь до новых постов и до новых свершений.

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.