Спасибо за добавление нужных функций.
Сейчас стал активно пользоваться диалогом и заметил несколько багав.
Есть код который показывает диалог и сохраняет настройки обратно в xml:
Код: Выделить всё
$xml = $textfile->read_file("settings.xml", 60);
$savexml=$app->show_free_dlg($xml);
$textfile->write_file("settings.xml",$savexml,360);
И есть сам xml в ANSI
Код: Выделить всё
<freeDlg x="10" y="10" width="300" height="450" value="app freedlg" x_ok="70" y_ok="380" x_cancel="170" y_cancel="380">
<COMBOBOX x="10" y="10" width="100" height="150" value="Комбобокс4" >
<VALUE>Комбобокс1</VALUE>
<VALUE>Комбобокс2</VALUE>
<VALUE>Комбобокс3</VALUE>
</COMBOBOX>
<LISTBOX x="10" y="50" width="100" height="150" value="Листбокс4" >
<VALUE>Листбокс1</VALUE>
<VALUE>Листбокс2</VALUE>
<VALUE>Листбокс3</VALUE>
</LISTBOX>
<EDIT x="150" y="10" width="100" height="20" value="Поле ввода..." ></EDIT>
<MULTIEDIT x="150" y="100" width="100" height="80" value="Строка1
Строка2
Строка3
Строка4" ></MULTIEDIT>
<CHECKBOX x="150" y="50" width="100" height="20" value="1"></CHECKBOX>
<LABEL x="150" y="80" width="100" height="20" value="Заголовок" ></LABLE>
<TREE x="150" y="200" width="100" height="100" value="Пункт01" >
<VALUE value="Пункт0">
<VALUE value="Пункт01"></VALUE>
<VALUE value="Пункт02"></VALUE>
<VALUE value="Пункт03"></VALUE>
</VALUE>
<VALUE value="Пункт1"></VALUE>
<VALUE value="Пункт2"></VALUE>
</TREE>
<FILESELECT x="10" y="310" width="250" height="22" value="C:\" button="Выбрать файл" command="select_file_1" ext="*.txt"></FILESELECT>
<FOLDERSELECT x="10" y="340" width="250" height="22" value="C:\" button="Выбрать папку" command="select_folder_1" ext="Выбор папки для чего-нибудь"></FOLDERSELECT>
</freeDlg>
Вот что у нас получается после запуска:
Теперь редактирую:
Результат после нажатия "Ok" и перезапуска программы:
Теперь по пунктам:
1) После внесения изменений периодически в файл записывается просто слово "Cancel" вместо всего xml c изменениями. Добавление времени у write_file до 360 не помогло.
Не знаю в чем проблема может быть.
2) У Комбобоксов и Листбоксов по два одинаковых пункта после сохранения (или пустой лишний пункт, если стереть значение по умолчания). Я не знаю, это так задумано или все же это баг?
3) Не сохраняется значение чекбокса после загрузки.
4) Не понимаю, как добавить текст к чекбоксу не использую lable. Или если нельзя, как хотя бы не показывать рядом с ним его значение 0 или 1?
5) Поле TREE не показывает последний выбранный элемент у меня и всегда загружается без отмеченного пункта. Наверно так и должно быть, но хотел бы уточнить.
6) У поля FILESELECT не работает ext="*.txt".
7) У полей FILESELECT и FOLDERSELECT размер кнопок всегда остается одним и тем же, а не зависит от значения button="".
Спасибо