OpenDialog - диалог выбора файлов и директории

Work with drives, directories, files
  • я сохранил это сообщение здесь http://wiki.kolibrios.org/OpenDialog
  • Спасибо.
    Наверное вот здесь это:
    OpenDialog - отличный системный файловый менеджер
    Не совсем корректно сформулировано. Не менеджер и эпитет "отличный" не совсем понятно к чему относится.
    Я не понял как поправить (нет доступа не редактирование), если кто может просьба заменить на "OpenDialog - диалог выбора файлов и директории" в Wiki.
  • Ревизия 1470. Добавлено использование OpenDialog в KIV.
  • Ревизия 1490. Исправлен хитрый баг приводивший к выносу ядра, уже после завершения программы, когда ее даже в памяти уже нет.
  • Ревизия 1493. Добавлено использование OpenDialog в MidAmp.
  • Отлично, так держать. Надеюсь SysXtree уже в ближайшем времени потеряет все замки и канет в лету.
    Из хаоса в космос
  • Ну, я на всякий случай оставляю код для его вызова, который уже присутствовал.
  • Проконсультировавшись с Diamond'ом я решил код макроса opendial.mac, служащего для вызова и работы с OpenDialog, оформить в библиотеку. Для приложений написанных на ассемблере это не настолько существенно, ибо размер макроса невелик, но зато такой подход позволит вызвать OpenDialog приложениям написанным на ЯВУ. В частности HTMLv - я думаю будет полезно подключение OpenDialog'а. Формат вызова будет подобен вызову функций Box_Lib.
  • SVN r. 1510 - прикрутил использование вызова OpenDialog через библиотеку proc_lib.obj, к программе Heed. Также выбросил код вызова Sysxtree. Подчистил еще пару мест - размер программы уменьшился.

    Да кстати информация для программистов ЯВУ (языков высокого уровня) - через вызовы proc_lib.obj, теперь можно вызывать OpenDialog из программ написанных на другом языке, а не только на ассемблере. Все вызовы оформляются подобно вызовам Box_Lib. Однако сам я прикручивать к ним не имею возможности, так как нет инструментария, опыта компиляции ЯВУ приложений и самое главное времени, но отвечу на все вопросы возникающие с применением.
  • SVN r. 1511 - прикрутил использование вызова OpenDialog через библиотеку proc_lib.obj, к программе KIV.
  • SVN r. 1512 - прикрутил использование вызова OpenDialog через библиотеку proc_lib.obj, к программе Rtfread. Также убрал макрос вызова Sysxtree. Размер программы уменьшился.
  • Хотелось бы, чтобы при запуске окно OpenDialog'a было выровнено по центру, так имхо юзабельней. Тем более, что это очень легко реализовать ;)
    ушёл...
  • Я посмотрел на реакцию диалогов в Виндовс и Линукс. Разные программы открывают по разному.

    Мне кажется, что лучше если OpenDialog будет центрироваться относительно текущего родительского окна. Конечно это потребует наличия двух dword (X+Xsize, Y+Ysize) в структуре блока данных передаваемых для макроса opendial.mac (ну и кода proc_lib.obj соответственно) и одного dword (X,Y центр родительского приложения) в структуре расшаренной памяти.

    Либо 4 dword в структуре и 2 dword в расшаренной памяти и можно будет сохранять позицию и размер OpenDialog, в текущем сеансе для текущего приложения.

    Вот как-то так.
  • SVN r. 1581 - сохранение размеров OpenDialog и центрирование его относительно текущего окна. Также доработана библиотека proc_lib.obj для поддержки этой фичи. Пока поддержано только для приложения Heed. Остальные доработаю чуть погодя - там небольшая доработка, всего пара dword в структуре блока данных OpenDialog добавляется.
    Last edited by Mario on Tue Aug 24, 2010 1:42 pm, edited 2 times in total.
  • Who is online

    Users browsing this forum: No registered users and 3 guests