scanner: Create a custom AddFolderButton widget

Signed-off-by: Anna Schumaker <Anna@NoWheyCreamery.com>
This commit is contained in:
Anna Schumaker 2021-08-27 16:26:26 -04:00
parent 0157b1d4c0
commit e09d892a46
2 changed files with 22 additions and 0 deletions

View File

@ -94,6 +94,19 @@ class DirectoryChooserPopover(unittest.TestCase):
q.tasks_finished()
class TestScannerAddFolderButton(unittest.TestCase):
def test_add_folder_button(self):
q = queue.TaskQueue()
afb = widgets.AddFolderButton(q)
self.assertIsInstance(afb, Gtk.MenuButton)
self.assertIsInstance(afb.popover, widgets.DirectoryChooserPopover)
self.assertEqual(afb.get_popover(), afb.popover)
self.assertEqual(afb.get_icon_name(), "folder-new")
self.assertEqual(afb.get_direction(), Gtk.ArrowType.UP)
class TestScannerUpdateButton(unittest.TestCase):
def test_update_button(self):
lib = db.library.Table.find("/a/b/c")

View File

@ -79,6 +79,15 @@ class DirectoryChooserPopover(Gtk.Popover):
self.popdown()
class AddFolderButton(Gtk.MenuButton):
def __init__(self, queue):
Gtk.MenuButton.__init__(self)
self.popover = DirectoryChooserPopover(queue)
self.set_popover(self.popover)
self.set_icon_name("folder-new")
self.set_direction(Gtk.ArrowType.UP)
class ScannerButton(Gtk.Button):
def __init__(self, queue, icon_name):
Gtk.Button.__init__(self)