Refactoring the project, new folders for view and model classes. Added
[emufront] / src / widgets / executablecombobox.cpp
index 37b7cb8..5177a63 100644 (file)
@@ -18,7 +18,7 @@
 // along with EmuFront.  If not, see <http://www.gnu.org/licenses/>.
 
 #include "executablecombobox.h"
-#include "../db/dbexecutable.h"
+#include "dbexecutable.h"
 
 ExecutableComboBox::ExecutableComboBox(DatabaseManager *dbMan, QWidget *parent)
     : EFComboBox(dbMan, parent)
@@ -26,11 +26,20 @@ ExecutableComboBox::ExecutableComboBox(DatabaseManager *dbMan, QWidget *parent)
     dataModelIndex_name = DbExecutable::Executable_Name;
     dataModelIndex_id = DbExecutable::Executable_Id;
     setModelColumn(dataModelIndex_name);
+    currentPlatformId = -1;
+    currentMediaTypeId = -1;
 }
 
 void ExecutableComboBox::updateToSetup(int platformId, int mediaTypeId)
 {
+    currentPlatformId = platformId;
+    currentMediaTypeId = mediaTypeId;
+    reset();
+}
+
+void ExecutableComboBox::reset()
+{
     DbExecutable *dbExe = dynamic_cast<DbExecutable *>(dbManager);
-    dbExe->filterByPlatformMediaType(platformId, mediaTypeId);
+    dbExe->filterByPlatformMediaType(currentPlatformId, currentMediaTypeId);
     EFComboBox::updateDataModel(false);
 }