manuskript/manuskript/ui/editor/gridItem.py
TheJackiMonster 7fd205cd7f
Implement grid view with navigation
Signed-off-by: TheJackiMonster <thejackimonster@gmail.com>
2022-11-20 00:13:41 +01:00

39 lines
1 KiB
Python

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import gi
gi.require_version("Gtk", "3.0")
from gi.repository import Gdk, Gtk
from manuskript.data import OutlineItem
from manuskript.ui.util import iconByOutlineItemType
from manuskript.util import validString
class GridItem:
def __init__(self, outlineItem: OutlineItem):
self.outlineItem = outlineItem
builder = Gtk.Builder()
builder.add_from_file("ui/editor/grid-item.glade")
self.widget = builder.get_object("grid_item")
self.iconImage = builder.get_object("icon")
self.titleLabel = builder.get_object("title")
self.summaryLabel = builder.get_object("summary")
self.reloadOutlineItem()
def reloadOutlineItem(self):
icon = iconByOutlineItemType(self.outlineItem)
self.iconImage.set_from_icon_name(icon, Gtk.IconSize.MENU)
self.titleLabel.set_text(validString(self.outlineItem.title))
self.summaryLabel.set_text(validString(self.outlineItem.summaryFull))
def show(self):
self.widget.show_all()