diff --git a/src/Entity/Browser/Menu/File/Open.php b/src/Entity/Browser/Menu/File/Open.php index b6d36707..8a1b0fd0 100644 --- a/src/Entity/Browser/Menu/File/Open.php +++ b/src/Entity/Browser/Menu/File/Open.php @@ -14,6 +14,12 @@ class Open // Defaults private string $_label = 'Open'; private bool $_multiple = true; + private array $_pattern = + [ + // pattern:name + '*' => 'All', + '*.gmi' => null + ]; public function __construct( \Yggverse\Yoda\Entity\Browser\Menu\File $file @@ -53,6 +59,23 @@ class Open $this->_multiple ); + foreach ($this->_pattern as $pattern => $name) + { + $filter = new \GtkFileFilter; + + $filter->set_name( + $name ? $name : $pattern + ); + + $filter->add_pattern( + $pattern + ); + + $dialog->add_filter( + $filter + ); + } + if (\GtkResponseType::OK == $dialog->run()) { foreach ($dialog->get_filenames() as $filename)