mirror of
https://github.com/YGGverse/Yoda.git
synced 2026-04-01 00:55:28 +00:00
implement bookmark button
This commit is contained in:
parent
f77375d14c
commit
4f59b529fc
3 changed files with 69 additions and 11 deletions
38
src/Entity/Browser/Container/Page/Navbar/Bookmark.php
Normal file
38
src/Entity/Browser/Container/Page/Navbar/Bookmark.php
Normal file
|
|
@ -0,0 +1,38 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Yggverse\Yoda\Entity\Browser\Container\Page\Navbar;
|
||||
|
||||
use \Yggverse\Yoda\Abstract\Entity\Browser\Container\Page\Navbar\Button;
|
||||
|
||||
class Bookmark extends Button
|
||||
{
|
||||
private const _IMAGE_STARRED_YES = 'starred-symbolic';
|
||||
private const _IMAGE_STARRED_NON = 'non-starred-symbolic';
|
||||
|
||||
public const IMAGE = self::_IMAGE_STARRED_NON;
|
||||
public const LABEL = 'Bookmark';
|
||||
public const TOOLTIP = 'Toggle bookmark';
|
||||
public const SENSITIVE = true;
|
||||
|
||||
protected function _onCLick(
|
||||
\GtkButton $entity
|
||||
): void
|
||||
{
|
||||
$this->setImage(
|
||||
$this->navbar->page->container->browser->database->toggleBookmark(
|
||||
$this->navbar->request->getValue()
|
||||
) ? self::_IMAGE_STARRED_YES : self::_IMAGE_STARRED_NON
|
||||
);
|
||||
}
|
||||
|
||||
public function refresh(): void
|
||||
{
|
||||
$this->setImage(
|
||||
$this->navbar->page->container->browser->database->getBookmark(
|
||||
$this->navbar->request->getValue()
|
||||
) ? self::_IMAGE_STARRED_YES : self::_IMAGE_STARRED_NON
|
||||
);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue