Можете ли вы установить FileFilters для Gtk Dialog в Glade? - PullRequest
4 голосов
/ 10 ноября 2009

В моем коде у меня есть такие строки:

Builder builder = new Builder();
builder.AddFromFile(gladefile);
FileChooserDialog dialog =
    (FileChooserDialog) builder.GetObject("dialog");

FileFilter[] filters = new FileFilter[2];
filters[0] = new FileFilter();
filters[0].Name = "Some filter";
filters[0].AddPattern("*.someextension");
filters[1] = new FileFilter();
filters[1].Name = "All files";
filters[1].AddPattern("*");

foreach (FileFilter filter in filters)
    dialog.AddFilter(filter);
dialog.Filter = filters[0];
dialog.SetFilename(defaultFile);

Есть ли способ настроить эти фильтры в Glade, а не делать это вручную?

Ответы [ 2 ]

3 голосов
/ 13 февраля 2015

Теперь это возможно. Фрагмент кода должен выглядеть примерно так:

    builder = Gtk.Builder()
    builder.add_objects_from_file("***name of glade file****.glade",
        ("filechooserdialog1", "filefilter1"))
    dialog = self.builder.get_object("filechooserdialog1")
    filefilter = self.builder.get_object("filefilter1")
    dialog.add_filter(filefilter)

enter image description here

enter image description here

2 голосов
/ 10 ноября 2009

Нет. Вы можете создать объект фильтра файлов в Glade (версии 3.6 и выше) и добавить его в диалоговое окно, но поскольку вы не можете установить имя или шаблон фильтра файлов, это довольно бесполезно.

...