define dependencies ns

This commit is contained in:
yggverse 2024-07-24 19:36:33 +03:00
parent 8c6936f5b1
commit 14ee41e735
22 changed files with 154 additions and 76 deletions

View file

@ -4,11 +4,15 @@ declare(strict_types=1);
namespace Yggverse\Yoda\Entity\Browser\Menu;
use \GtkMenu;
use \GtkMenuItem;
use \Yggverse\Yoda\Entity\Browser\Menu;
class File
{
public \GtkMenuItem $gtk;
// GTK
public GtkMenuItem $gtk;
// Dependencies
public Menu $menu;
@ -23,12 +27,12 @@ class File
$this->menu = $menu;
// Init menu item
$this->gtk = \GtkMenuItem::new_with_label(
$this->gtk = GtkMenuItem::new_with_label(
$this::LABEL
);
// Init submenu container
$file = new \GtkMenu;
$file = new GtkMenu;
// Init tab menu items
$open = new File\Open(

View file

@ -4,11 +4,18 @@ declare(strict_types=1);
namespace Yggverse\Yoda\Entity\Browser\Menu\File;
use \GtkFileChooserAction;
use \GtkFileChooserDialog;
use \GtkFileFilter;
use \GtkMenuItem;
use \GtkResponseType;
use \Yggverse\Yoda\Entity\Browser\Menu\File;
class Open
{
public \GtkMenuItem $gtk;
// GTK
public GtkMenuItem $gtk;
// Dependencies
public File $file;
@ -29,7 +36,7 @@ class Open
$this->file = $file;
// Init menu item
$this->gtk = \GtkMenuItem::new_with_label(
$this->gtk = GtkMenuItem::new_with_label(
$this::LABEL
);
@ -41,15 +48,15 @@ class Open
'activate',
function()
{
$dialog = new \GtkFileChooserDialog(
$dialog = new GtkFileChooserDialog(
'Open file',
$this->file->menu->browser->gtk,
\GtkFileChooserAction::OPEN,
GtkFileChooserAction::OPEN,
[
'Cancel',
\GtkResponseType::CANCEL,
GtkResponseType::CANCEL,
'Open',
\GtkResponseType::OK
GtkResponseType::OK
]
);
@ -66,7 +73,7 @@ class Open
foreach ($this::PATTERN as $pattern => $name)
{
$filter = new \GtkFileFilter;
$filter = new GtkFileFilter;
$filter->set_name(
$name ? $name : $pattern
@ -81,7 +88,7 @@ class Open
);
}
if (\GtkResponseType::OK == $dialog->run())
if (GtkResponseType::OK == $dialog->run())
{
foreach ($dialog->get_filenames() as $filename)
{

View file

@ -4,11 +4,17 @@ declare(strict_types=1);
namespace Yggverse\Yoda\Entity\Browser\Menu\File;
use \GtkMenuItem;
use \GtkFileChooserDialog;
use \GtkFileChooserAction;
use \GtkResponseType;
use \Yggverse\Yoda\Entity\Browser\Menu\File;
class Save
{
public \GtkMenuItem $gtk;
// GTK
public GtkMenuItem $gtk;
// Dependencies
public File $file;
@ -23,7 +29,7 @@ class Save
$this->file = $file;
// Init menu item
$this->gtk = \GtkMenuItem::new_with_label(
$this->gtk = GtkMenuItem::new_with_label(
$this::LABEL
);
@ -35,15 +41,15 @@ class Save
'activate',
function()
{
$dialog = new \GtkFileChooserDialog(
$dialog = new GtkFileChooserDialog(
'Save to file',
$this->file->menu->browser->gtk,
\GtkFileChooserAction::SAVE,
GtkFileChooserAction::SAVE,
[
'Cancel',
\GtkResponseType::CANCEL,
GtkResponseType::CANCEL,
'Save',
\GtkResponseType::APPLY
GtkResponseType::APPLY
]
);
@ -58,7 +64,7 @@ class Save
true
);
if (\GtkResponseType::APPLY == $dialog->run())
if (GtkResponseType::APPLY == $dialog->run())
{
if ($page = $this->file->menu->browser->container->tab->get())
{

View file

@ -4,11 +4,16 @@ declare(strict_types=1);
namespace Yggverse\Yoda\Entity\Browser\Menu;
use \GtkMenuItem;
use \Yggverse\Yoda\Entity\Browser\Menu;
use \Yggverse\Yoda\Entity\Browser\History as Window;
class History
{
public \GtkMenuItem $gtk;
// GTK
public GtkMenuItem $gtk;
// Dependencies
public Menu $menu;
@ -23,7 +28,7 @@ class History
$this->menu = $menu;
// Init menu item
$this->gtk = \GtkMenuItem::new_with_label(
$this->gtk = GtkMenuItem::new_with_label(
$this::LABEL
);
@ -35,7 +40,7 @@ class History
'activate',
function()
{
$history = new \Yggverse\Yoda\Entity\Browser\History(
$history = new Window(
$this->menu->browser
);
}

View file

@ -4,11 +4,15 @@ declare(strict_types=1);
namespace Yggverse\Yoda\Entity\Browser\Menu;
use \Gtk;
use \GtkMenuItem;
use \Yggverse\Yoda\Entity\Browser\Menu;
class Quit
{
public \GtkMenuItem $gtk;
// GTK
public GtkMenuItem $gtk;
// Dependencies
public Menu $menu;
@ -23,7 +27,7 @@ class Quit
$this->menu = $menu;
// Init menu item
$this->gtk = \GtkMenuItem::new_with_label(
$this->gtk = GtkMenuItem::new_with_label(
$this::LABEL
);
@ -35,7 +39,7 @@ class Quit
'activate',
function()
{
\Gtk::main_quit();
Gtk::main_quit();
}
);
}

View file

@ -4,11 +4,15 @@ declare(strict_types=1);
namespace Yggverse\Yoda\Entity\Browser\Menu;
use \GtkMenu;
use \GtkMenuItem;
use \Yggverse\Yoda\Entity\Browser\Menu;
class Tab
{
public \GtkMenuItem $gtk;
// GTK
public GtkMenuItem $gtk;
// Dependencies
public Menu $menu;
@ -27,12 +31,12 @@ class Tab
$this->menu = $menu;
// Init menu item
$this->gtk = \GtkMenuItem::new_with_label(
$this->gtk = GtkMenuItem::new_with_label(
$this::LABEL
);
// Init submenu container
$tab = new \GtkMenu;
$tab = new GtkMenu;
// Init new tab menu item
$this->add = new Tab\Add(

View file

@ -4,11 +4,14 @@ declare(strict_types=1);
namespace Yggverse\Yoda\Entity\Browser\Menu\Tab;
use \GtkMenuItem;
use \Yggverse\Yoda\Entity\Browser\Menu\Tab;
class Add
{
public \GtkMenuItem $gtk;
// GTK
public GtkMenuItem $gtk;
// Dependencies
public Tab $tab;
@ -24,7 +27,7 @@ class Add
$this->tab = $tab;
// Init menu item
$this->gtk = \GtkMenuItem::new_with_label(
$this->gtk = GtkMenuItem::new_with_label(
_($this::LABEL)
);