mirror of
https://github.com/YGGverse/Yoda.git
synced 2026-04-01 09:05:27 +00:00
implement viewport update method
This commit is contained in:
parent
2f6ac84f3e
commit
300cc6b8a2
2 changed files with 32 additions and 8 deletions
|
|
@ -57,9 +57,6 @@ class Content
|
||||||
$this->gtk->add(
|
$this->gtk->add(
|
||||||
$this->viewport->gtk
|
$this->viewport->gtk
|
||||||
);
|
);
|
||||||
|
|
||||||
// Render
|
|
||||||
$this->gtk->show();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public function set(
|
public function set(
|
||||||
|
|
@ -115,11 +112,11 @@ class Content
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
$this->viewport->gtk->add(
|
$this->viewport->set(
|
||||||
$document->gtk
|
$document
|
||||||
);
|
);
|
||||||
|
|
||||||
//$this->gtk->show_all();
|
$this->gtk->show();
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getSource(): ?string
|
public function getSource(): ?string
|
||||||
|
|
|
||||||
|
|
@ -4,21 +4,48 @@ declare(strict_types=1);
|
||||||
|
|
||||||
namespace Yggverse\Yoda\Entity\Browser\Container\Page\Content;
|
namespace Yggverse\Yoda\Entity\Browser\Container\Page\Content;
|
||||||
|
|
||||||
|
use \Yggverse\Yoda\Entity\Browser\Container\Page\Content;
|
||||||
|
|
||||||
|
use \Yggverse\Yoda\Entity\Browser\Container\Page\Content\Gemtext;
|
||||||
|
use \Yggverse\Yoda\Entity\Browser\Container\Page\Content\Image;
|
||||||
|
use \Yggverse\Yoda\Entity\Browser\Container\Page\Content\Plain;
|
||||||
|
|
||||||
class Viewport
|
class Viewport
|
||||||
{
|
{
|
||||||
public \GtkViewport $gtk;
|
public \GtkViewport $gtk;
|
||||||
|
|
||||||
// Dependencies
|
// Dependencies
|
||||||
public \Yggverse\Yoda\Entity\Browser\Container\Page\Content $content;
|
public Content $content;
|
||||||
|
|
||||||
|
// Requirements
|
||||||
|
private Gemtext | Plain | Image | null $_data = null;
|
||||||
|
|
||||||
public function __construct(
|
public function __construct(
|
||||||
\Yggverse\Yoda\Entity\Browser\Container\Page\Content $content
|
Content $content
|
||||||
) {
|
) {
|
||||||
// Init dependencies
|
// Init dependencies
|
||||||
$this->content = $content;
|
$this->content = $content;
|
||||||
|
|
||||||
// Init viewport
|
// Init viewport
|
||||||
$this->gtk = new \GtkViewport;
|
$this->gtk = new \GtkViewport;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function set(
|
||||||
|
Gemtext | Plain | Image $data
|
||||||
|
): void
|
||||||
|
{
|
||||||
|
// Remove previous
|
||||||
|
if ($this->_data)
|
||||||
|
{
|
||||||
|
$this->_data->gtk->destroy();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Init current
|
||||||
|
$this->_data = $data;
|
||||||
|
|
||||||
|
$this->gtk->add(
|
||||||
|
$data->gtk
|
||||||
|
);
|
||||||
|
|
||||||
// Render
|
// Render
|
||||||
$this->gtk->show();
|
$this->gtk->show();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue