From 2088e1b7aa6419dec58800bc1d0cb24f5808affe Mon Sep 17 00:00:00 2001
From: Ferenc Szontágh <szf@fsociety.hu>
Date: Sat, 03 Feb 2024 21:19:43 +0000
Subject: [PATCH] added queue handler against simple start

---
 ui/MainWindowUI.h |   55 ++++++++++++++++++++++++++++++-------------------------
 1 files changed, 30 insertions(+), 25 deletions(-)

diff --git a/ui/MainWindowUI.h b/ui/MainWindowUI.h
index fc66871..38ced0c 100644
--- a/ui/MainWindowUI.h
+++ b/ui/MainWindowUI.h
@@ -33,27 +33,28 @@
 /** Implementing UI */
 class MainWindowUI : public UI
 {
-	protected:
-		// Handlers for UI events.
-		void onSettings( wxCommandEvent& event );
-		void onModelsRefresh( wxCommandEvent& event );
-		void onModelSelect( wxCommandEvent& event );
-		void onVaeSelect( wxCommandEvent& event );
-		void onSamplerSelect( wxCommandEvent& event );
-		void onResolutionSwap( wxCommandEvent& event );
-		void onJobsStart( wxCommandEvent& event );
-		void onJobsPause( wxCommandEvent& event );
-		void onJobsDelete( wxCommandEvent& event );
-		void onJoblistItemActivated( wxDataViewEvent& event );
-		void onJoblistSelectionChanged( wxDataViewEvent& event );
-		void onGenerate( wxCommandEvent& event );
-		void onSavePreset( wxCommandEvent& event );
-		void onLoadPreset( wxCommandEvent& event );
-		void onSelectPreset( wxCommandEvent& event );
-		void onDeletePreset( wxCommandEvent& event );
-	public:
-		/** Constructor */
-		MainWindowUI( wxWindow* parent );
+protected:
+	// Handlers for UI events.
+	void onSettings(wxCommandEvent &event);
+	void onModelsRefresh(wxCommandEvent &event);
+	void onModelSelect(wxCommandEvent &event);
+	void onVaeSelect(wxCommandEvent &event);
+	void onSamplerSelect(wxCommandEvent &event);
+	void onResolutionSwap(wxCommandEvent &event);
+	void onJobsStart(wxCommandEvent &event);
+	void onJobsPause(wxCommandEvent &event);
+	void onJobsDelete(wxCommandEvent &event);
+	void onJoblistItemActivated(wxDataViewEvent &event);
+	void onJoblistSelectionChanged(wxDataViewEvent &event);
+	void onGenerate(wxCommandEvent &event);
+	void onSavePreset(wxCommandEvent &event);
+	void onLoadPreset(wxCommandEvent &event);
+	void onSelectPreset(wxCommandEvent &event);
+	void onDeletePreset(wxCommandEvent &event);
+
+public:
+	/** Constructor */
+	MainWindowUI(wxWindow *parent);
 	//// end generated class members
 	~MainWindowUI();
 	void OnThreadMessage(wxThreadEvent &e);
@@ -71,9 +72,14 @@
 
 	// the queue manager
 	QM::QueueManager *qmanager;
+	bool modelLoaded = false;
+	std::string currentModel;
 	sd_ctx_t *sd_ctx;
 	std::streambuf *buffer;
 	std::vector<std::thread> threads;
+
+	// row,QueueItem
+	std::map<int, QM::QueueItem> *JobTableItems;
 
 	void initConfig();
 	void loadModelList();
@@ -85,14 +91,14 @@
 	static void HandleSDLog(sd_log_level_t level, const char *text, void *data);
 
 	// load the model in a new thread
-	void LoadModel(wxEvtHandler *eventHandler);
+	void LoadModel(wxEvtHandler *eventHandler, QM::QueueItem myItem);
 	// generate in another thread
-	void Generate(wxEvtHandler *eventHandler);
+	void Generate(wxEvtHandler *eventHandler, QM::QueueItem myItem);
 
 	// start a thread for model loading...
 	void StartLoadModel();
 	// start a thread to generate image
-	void StartGeneration();
+	void StartGeneration(QM::QueueItem myJob);
 
 	// handle queue managers events, manipulate data table by events
 	void OnQueueItemManagerItemAdded(QM::QueueItem item);
@@ -100,7 +106,6 @@
 	void OnQueueItemManagerItemStatusChanged(QM::QueueItem item);
 
 	wxNotificationMessage *notification;
-
 };
 
 #endif // __MainWindowUI__

--
Gitblit v1.9.3