]> git.phdru.name Git - m_librarian.git/commitdiff
Feat(wx): Close window with `Ctrl+W`
authorOleg Broytman <phd@phdru.name>
Fri, 5 Jan 2024 21:44:20 +0000 (00:44 +0300)
committerOleg Broytman <phd@phdru.name>
Fri, 5 Jan 2024 21:47:06 +0000 (00:47 +0300)
[skip ci]

m_librarian/wx/AWindow.py

index 4621fd49a43c506bbedad2a1c9c4245a2f02a1ba..68f673b5077dbc27eae24aecd7a821de6264830b 100644 (file)
@@ -45,8 +45,14 @@ class AWindow(wx.Frame):
         self.SetMenuBar(MenuBar)
 
         file_menu = wx.Menu()
-        exit = file_menu.Append(wx.ID_EXIT, u"&Выход", u"Выйти из программы")
-        self.Bind(wx.EVT_MENU, self.OnQuit, exit)
+
+        if self.Parent:
+            close_win = \
+                file_menu.Append(wx.ID_CLOSE, u"&Закрыть", u"Закрыть окно")
+            self.Bind(wx.EVT_MENU, self.OnCloseCommand, close_win)
+
+        quit = file_menu.Append(wx.ID_EXIT, u"&Выход", u"Выйти из программы")
+        self.Bind(wx.EVT_MENU, self.OnQuit, quit)
         MenuBar.Append(file_menu, u"&Файл")
 
         about_menu = wx.Menu()
@@ -55,9 +61,12 @@ class AWindow(wx.Frame):
         self.Bind(wx.EVT_MENU, self.OnAbout, about)
         MenuBar.Append(about_menu, u"&О программе")
 
-    def OnQuit(self, event):
+    def OnCloseCommand(self, event):
         self.Close(True)
 
+    def OnQuit(self, event):
+        wx.GetApp().ExitMainLoop()
+
     def OnAbout(self, event):
         aboutInfo = wx.adv.AboutDialogInfo()
         aboutInfo.SetName(u'm_Librarian')