mirror of
				https://github.com/TES3MP/openmw-tes3mp.git
				synced 2025-10-31 18:26:42 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			45 lines
		
	
	
	
		
			950 B
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
	
		
			950 B
		
	
	
	
		
			C++
		
	
	
	
	
	
| #ifndef CSM_TOOLS_MERGEOPERATION_H
 | |
| #define CSM_TOOLS_MERGEOPERATION_H
 | |
| 
 | |
| #include <memory>
 | |
| 
 | |
| #include <components/to_utf8/to_utf8.hpp>
 | |
| 
 | |
| #include "../doc/operation.hpp"
 | |
| 
 | |
| #include "mergestate.hpp"
 | |
| 
 | |
| namespace CSMDoc
 | |
| {
 | |
|     class Document;
 | |
| }
 | |
| 
 | |
| namespace CSMTools
 | |
| {
 | |
|     class MergeOperation : public CSMDoc::Operation
 | |
|     {
 | |
|             Q_OBJECT
 | |
| 
 | |
|             MergeState mState;
 | |
| 
 | |
|         public:
 | |
| 
 | |
|             MergeOperation (CSMDoc::Document& document, ToUTF8::FromType encoding);
 | |
| 
 | |
|             /// \attention Do not call this function while a merge is running.
 | |
|             void setTarget (std::unique_ptr<CSMDoc::Document> document);
 | |
| 
 | |
|         protected slots:
 | |
| 
 | |
|             virtual void operationDone();
 | |
| 
 | |
|         signals:
 | |
| 
 | |
|             /// \attention When this signal is emitted, *this hands over the ownership of the
 | |
|             /// document. This signal must be handled to avoid a leak.
 | |
|             void mergeDone (CSMDoc::Document *document);
 | |
| 
 | |
|     };
 | |
| }
 | |
| 
 | |
| #endif
 |