diff options
author | Daniel Wilhelm <daniel@wili.li> | 2014-04-18 17:08:06 +0200 |
---|---|---|
committer | Daniel Wilhelm <daniel@wili.li> | 2014-04-18 17:08:06 +0200 |
commit | fbe76102e941b9f1edaf236788e42678f05fdf9a (patch) | |
tree | f5f538316019fa89be8dc478103490c3a826f3ac /shared/customComboBox.cpp | |
parent | 3.8 (diff) | |
download | FreeFileSync-fbe76102e941b9f1edaf236788e42678f05fdf9a.tar.gz FreeFileSync-fbe76102e941b9f1edaf236788e42678f05fdf9a.tar.bz2 FreeFileSync-fbe76102e941b9f1edaf236788e42678f05fdf9a.zip |
3.9
Diffstat (limited to 'shared/customComboBox.cpp')
-rw-r--r-- | shared/customComboBox.cpp | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/shared/customComboBox.cpp b/shared/customComboBox.cpp deleted file mode 100644 index c27ce505..00000000 --- a/shared/customComboBox.cpp +++ /dev/null @@ -1,82 +0,0 @@ -// ************************************************************************** -// * This file is part of the FreeFileSync project. It is distributed under * -// * GNU General Public License: http://www.gnu.org/licenses/gpl.html * -// * Copyright (C) 2008-2010 ZenJu (zhnmju123 AT gmx.de) * -// ************************************************************************** -// -#include "customComboBox.h" - - -CustomComboBox::CustomComboBox(wxWindow* parent, - wxWindowID id, - const wxString& value, - const wxPoint& pos, - const wxSize& size, - int n, - const wxString choices[], - long style, - const wxValidator& validator, - const wxString& name) : - wxComboBox(parent, id, value, pos, size, n, choices, style, validator, name) -{ - //register key event to enable item deletion - this->Connect(wxEVT_KEY_DOWN, wxKeyEventHandler(CustomComboBox::OnKeyEvent), NULL, this ); -} - - -void CustomComboBox::OnKeyEvent(wxKeyEvent& event) -{ - const int keyCode = event.GetKeyCode(); - if (keyCode == WXK_DELETE || keyCode == WXK_NUMPAD_DELETE) - { - //try to delete the currently selected config history item - const int selectedItem = this->GetCurrentSelection(); - if (0 <= selectedItem && selectedItem < static_cast<int>(this->GetCount()) && - (GetValue() != GetString(selectedItem) || //avoid problems when a character shall be deleted instead of list item - GetValue() == wxEmptyString)) //exception: always allow removing empty entry - { - //save old (selected) value: deletion seems to have influence on this - const wxString currentVal = this->GetValue(); - this->SetSelection(wxNOT_FOUND); - - //delete selected row - this->Delete(selectedItem); - - //(re-)set value - this->SetValue(currentVal); - - //eat up key event - return; - } - } - event.Skip(); -} - - -void CustomComboBox::addPairToFolderHistory(const wxString& newFolder, unsigned int maxHistSize) -{ - //don't add empty directories - if (newFolder.empty()) - return; - - const wxString oldVal = this->GetValue(); - - //insert new folder or put it to the front if already existing -#ifdef FFS_WIN //don't respect case in windows build - const int pos = FindString(newFolder, false); -#elif defined FFS_LINUX - const int pos = FindString(newFolder, true); -#endif - if (pos != wxNOT_FOUND) - this->Delete(pos); - - this->Insert(newFolder, 0); - - //keep maximal size of history list - if (this->GetCount() > maxHistSize) - this->Delete(maxHistSize); - - this->SetSelection(wxNOT_FOUND); //don't select anything - this->SetValue(oldVal); //but preserve main text! -} - |