X-Git-Url: https://git.phdru.name/?a=blobdiff_plain;f=m_librarian%2Fwx%2FListAuthors.py;h=96f5e8ba56e942bf8977adc2c8beda5b5097a3f4;hb=74e25a3ef07da5268107f1b246e6b466f178b524;hp=cdbf134fc17ecf06e3c47de5b9af75f08811298d;hpb=73d5cd7b4ae212cb3f913bac350d2cb7e9a45889;p=m_librarian.git diff --git a/m_librarian/wx/ListAuthors.py b/m_librarian/wx/ListAuthors.py index cdbf134..96f5e8b 100644 --- a/m_librarian/wx/ListAuthors.py +++ b/m_librarian/wx/ListAuthors.py @@ -4,6 +4,7 @@ import wx, wx.grid # noqa: E401 multiple imports on one line from ..compat import string_type, unicode_type from ..translations import translations from .AWindow import AWindow +from .ListBooks import ListBooksWindow class ListAuthorsWindow(AWindow): @@ -59,3 +60,22 @@ class ListAuthorsPanel(wx.Panel): grid.SetCellValue(row, col, value) grid.AutoSizeColumns() grid.AutoSizeRows() + + grid.Bind(wx.grid.EVT_GRID_CELL_LEFT_DCLICK, self.OnDClick) + grid.Bind(wx.EVT_KEY_DOWN, self.OnKeyDown) + + def listBooks(self, row): + authors = self.search_authors_results['authors'] + author = authors[row] + ListBooksWindow(self, author) + + def OnDClick(self, event): + row = event.GetRow() + self.listBooks(row) + + def OnKeyDown(self, event): + if event.GetKeyCode() in (wx.WXK_RETURN, wx.WXK_NUMPAD_ENTER): + row = self.grid.GetGridCursorRow() + self.listBooks(row) + else: + event.Skip()