mirror of
				https://github.com/OpenMW/openmw.git
				synced 2025-10-30 23:26:38 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			62 lines
		
	
	
		
			No EOL
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			No EOL
		
	
	
		
			1.5 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| 
 | |
| #include "editor.hpp"
 | |
| 
 | |
| #include <sstream>
 | |
| 
 | |
| #include <QtGui/QApplication>
 | |
| 
 | |
| #include "model/doc/document.hpp"
 | |
| #include "model/world/data.hpp"
 | |
| 
 | |
| CS::Editor::Editor() : mViewManager (mDocumentManager), mNewDocumentIndex (0)
 | |
| {
 | |
|     connect (&mViewManager, SIGNAL (newDocumentRequest ()), this, SLOT (createDocument ()));
 | |
|     connect (&mViewManager, SIGNAL (loadDocumentRequest ()), this, SLOT (loadDocument ()));
 | |
| 
 | |
|     connect (&mStartup, SIGNAL (createDocument()), this, SLOT (createDocument ()));
 | |
|     connect (&mStartup, SIGNAL (loadDocument()), this, SLOT (loadDocument ()));
 | |
| 
 | |
|     connect (&mOpenDialog, SIGNAL(accepted()), this, SLOT(openFiles()));
 | |
| }
 | |
| 
 | |
| void CS::Editor::createDocument()
 | |
| {
 | |
|     mStartup.hide();
 | |
| 
 | |
|     /// \todo open the ESX picker instead
 | |
| 
 | |
|     std::ostringstream stream;
 | |
| 
 | |
|     stream << "NewDocument" << (++mNewDocumentIndex);
 | |
| 
 | |
|     std::vector<boost::filesystem::path> files;
 | |
|     files.push_back (stream.str());
 | |
| 
 | |
|     CSMDoc::Document *document = mDocumentManager.addDocument (files, true);
 | |
| 
 | |
|     mViewManager.addView (document);
 | |
| }
 | |
| 
 | |
| void CS::Editor::loadDocument()
 | |
| {
 | |
|     mStartup.hide();
 | |
|     mOpenDialog.show();
 | |
|     mOpenDialog.raise();
 | |
|     mOpenDialog.activateWindow();
 | |
| }
 | |
| 
 | |
| void CS::Editor::openFiles()
 | |
| {
 | |
|     std::vector<boost::filesystem::path> paths;
 | |
|     mOpenDialog.getFileList(paths);
 | |
|     CSMDoc::Document *document = mDocumentManager.addDocument(paths, false);
 | |
| 
 | |
|     mViewManager.addView (document);
 | |
| }
 | |
| 
 | |
| int CS::Editor::run()
 | |
| {
 | |
|     mStartup.show();
 | |
| 
 | |
|     return QApplication::exec();
 | |
| } |