суббота, 29 сентября 2012 г.

Project CodeKeeper - диалоги о диалогах (часть 1)

Доброго времени суток! Проект CodeKeeper продолжается, и сейчас я начинаю создавать диалоговые окна. На самом деле я большой поклонник Mac'ов, и мне очень нравится способ вызова модальных диалоговых окон в среде Mac OS X (они плавно "выезжают" из-под заголовка окна, и "заезжают" обратно после выбранного пользователем действия, будь то Оk, Cancel, или что-либо еще). Итак, определимся с задачами:

1. Поскольку "окна" напрямую взаимодействуют с родительской формой, то я решил эти окна сделать не окнами а UserControl'ами (их проще разместить на родительской форме в соответствии с ее координатами).

2. Должно быть две публичных процедуры: "выезда" и "заезда" контрола, причем они должны быть адаптированы к любому размеру контрола вплоть до 640х480 (минимальный размер окна программы)

3. Должна быть процедура центровки, которая динамически корректировала бы положение "окна" во время изменения размеров родительской формы.

4. Код функции самого диалогового окна будет содержаться внутри самого диалогового окна

Хотел было сделать затемнение типа Apple'овских фото-галерей, но полу-прозрачность в среде winforms невозможна, а переносить проект на WPF-платформу не получится во-первых потому, что компонент для отображения текста с подсветкой синтаксиса у меня есть только для WinForms, а во-вторых слишком незначительная деталь, чтобы задумываться о переносе проекта на другую платформу. Итак, продолжим. На данный момент программа выглядит так:


Начинаем "войну" с диалоговыми окнами :).

Комментариев нет:

Отправить комментарий