1 /********************************************************************** 2 3 Audacity: A Digital Audio Editor 4 5 MousePrefs.h 6 7 **********************************************************************/ 8 9 #ifndef __AUDACITY_MOUSE_PREFS__ 10 #define __AUDACITY_MOUSE_PREFS__ 11 12 #include <wx/defs.h> 13 14 #include "PrefsPanel.h" 15 16 class wxListCtrl; 17 class ShuttleGui; 18 class TranslatableString; 19 20 #define MOUSE_PREFS_PLUGIN_SYMBOL ComponentInterfaceSymbol{ XO("Mouse") } 21 22 class MousePrefs final : public PrefsPanel 23 { 24 public: 25 MousePrefs(wxWindow * parent, wxWindowID winid); 26 ~MousePrefs(); 27 ComponentInterfaceSymbol GetSymbol() override; 28 TranslatableString GetDescription() override; 29 30 bool Commit() override; 31 ManualPageID HelpPageName() override; 32 void PopulateOrExchange(ShuttleGui & S) override; 33 34 private: 35 void Populate(); 36 void CreateList(); 37 void AddItem(TranslatableString const & buttons, 38 TranslatableString const & tool, 39 TranslatableString const & action, 40 TranslatableString const & comment = {}); 41 42 // See bug #2315 for discussion. This should be reviewed 43 // and (possibly) removed after wx3.1.3. 44 void OnShow(wxShowEvent & event); 45 46 wxListCtrl * mList; 47 }; 48 49 #endif 50