Plasma Engine  2.0
Loading...
Searching...
No Matches
plQtEditorApp Class Reference
Inheritance diagram for plQtEditorApp:

Classes

struct  StartupFlags
 

Signals

void IdleEvent ()
 

Public Member Functions

plString FindToolApplication (const char *szToolName)
 Searches for an external tool.
 
plStatus ExecuteTool (const char *szTool, const QStringList &arguments, plUInt32 uiSecondsTillTimeout, plLogInterface *pLogOutput=nullptr, plLogMsgType::Enum logLevel=plLogMsgType::WarningMsg, const char *szCWD=nullptr)
 Executes an external tool as found by FindToolApplication().
 
plString BuildFileserveCommandLine () const
 Creates the string with which to run Fileserve for the currently open project.
 
void RunFileserve ()
 Launches Fileserve with the settings for the current project.
 
void RunInspector ()
 Launches plInspector.
 
bool IsInSafeMode () const
 Can be set via the command line option '-safe'. In this mode the editor will not automatically load recent documents.
 
bool IsInHeadlessMode () const
 Returns true if the the app shouldn't display anything. This is the case in an EditorProcessor.
 
bool IsInUnitTestMode () const
 Returns true if the editor is started in run in test mode.
 
bool IsBackgroundMode () const
 Returns true if the editor is started in run in background mode.
 
const plPluginBundleSetGetPluginBundles () const
 
plPluginBundleSetGetPluginBundles ()
 
void AddRestartRequiredReason (const char *szReason)
 
const plSet< plString > & GetRestartRequiredReasons ()
 
void AddReloadProjectRequiredReason (const char *szReason)
 
const plSet< plString > & GetReloadProjectRequiredReason ()
 
void SaveSettings ()
 
void SaveOpenDocumentsList ()
 Writes a file containing all the currently open documents.
 
plRecentFilesList LoadOpenDocumentsList ()
 Reads the list of last open documents in the current project.
 
void InitQt (int iArgc, char **pArgv)
 
void StartupEditor ()
 
void StartupEditor (plBitflags< StartupFlags > startupFlags, const char *szUserDataFolder=nullptr)
 
void ShutdownEditor ()
 
plInt32 RunEditor ()
 
void DeInitQt ()
 
void LoadEditorPlugins ()
 
plRecentFilesListGetRecentProjectsList ()
 
plRecentFilesListGetRecentDocumentsList ()
 
plEditorEngineProcessConnectionGetEngineViewProcess ()
 
void ShowSettingsDocument ()
 
void CloseSettingsDocument ()
 
void CloseProject ()
 
plResult OpenProject (const char *szProject, bool bImmediate=false)
 
void GuiCreateDocument ()
 
void GuiOpenDocument ()
 
void GuiOpenDashboard ()
 
void GuiOpenDocsAndCommunity ()
 
bool GuiCreateProject (bool bImmediate=false)
 
bool GuiOpenProject (bool bImmediate=false)
 
void OpenDocumentQueued (plStringView sDocument, const plDocumentObject *pOpenContext=nullptr)
 
plDocumentOpenDocument (plStringView sDocument, plBitflags< plDocumentFlags > flags, const plDocumentObject *pOpenContext=nullptr)
 
plDocumentCreateDocument (plStringView sDocument, plBitflags< plDocumentFlags > flags, const plDocumentObject *pOpenContext=nullptr)
 
plResult CreateOrOpenProject (bool bCreate, plStringView sFile)
 
plStatus MakeRemoteProjectLocal (plStringBuilder &inout_sFilePath)
 If this project is remote, ie coming from another repository that is not checked-out by default, make sure it exists locally on disk.
 
bool ExistsPluginSelectionStateDDL (const char *szProjectDir=":project")
 
void WritePluginSelectionStateDDL (const char *szProjectDir=":project")
 
void CreatePluginSelectionDDL (const char *szProjectFile, const char *szTemplate)
 
void LoadPluginBundleDlls (const char *szProjectFile)
 
void DetectAvailablePluginBundles (plStringView sSearchDirectory)
 
void LaunchEditor (const char *szProject, bool bCreate)
 Launches a new instance of the editor to open the given project.
 
void AddPluginDataDirDependency (const char *szSdkRootRelativePath, const char *szRootName=nullptr, bool bWriteable=false)
 Adds a data directory as a hard dependency to the project. Should be used by plugins to ensure their required data is available. The path must be relative to the SdkRoot folder.
 
const plApplicationFileSystemConfigGetFileSystemConfig () const
 
const plApplicationPluginConfig GetRuntimePluginConfig (bool bIncludeEditorPlugins) const
 
void SetFileSystemConfig (const plApplicationFileSystemConfig &cfg)
 
bool MakeDataDirectoryRelativePathAbsolute (plStringBuilder &ref_sPath) const
 
bool MakeDataDirectoryRelativePathAbsolute (plString &ref_sPath) const
 
bool MakePathDataDirectoryRelative (plStringBuilder &ref_sPath) const
 
bool MakePathDataDirectoryRelative (plString &ref_sPath) const
 
bool MakePathDataDirectoryParentRelative (plStringBuilder &ref_sPath) const
 
bool MakeParentDataDirectoryRelativePathAbsolute (plStringBuilder &ref_sPath, bool bCheckExists) const
 
plStatus SaveTagRegistry ()
 
void GetKnownInputSlots (plDynamicArray< plString > &slots) const
 Reads the known input slots from disk and adds them to the existing list.
 
void ReloadEngineResources ()
 Instructs the engine to reload its resources.
 
void RestartEngineProcessIfPluginsChanged (bool bForce)
 
void SetStyleSheet ()
 
bool IsProgressBarProcessingEvents () const
 

Static Public Attributes

static plEvent< const plEditorAppEvent & > m_Events
 

Member Function Documentation

◆ ExecuteTool()

plStatus plQtEditorApp::ExecuteTool ( const char * szTool,
const QStringList & arguments,
plUInt32 uiSecondsTillTimeout,
plLogInterface * pLogOutput = nullptr,
plLogMsgType::Enum logLevel = plLogMsgType::WarningMsg,
const char * szCWD = nullptr )

Executes an external tool as found by FindToolApplication().

The applications output is parsed and forwarded to the given log interface. A custom log level is applied first. If the tool cannot be found or it takes longer to execute than the allowed timeout, the function returns failure.

◆ FindToolApplication()

plString plQtEditorApp::FindToolApplication ( const char * szToolName)

Searches for an external tool.

Either uses one from the precompiled tools folder, or from the currently compiled binaries, depending where it finds one. If the editor preference is set to use precompiled tools, that folder is preferred, otherwise the other folder is preferred.

◆ GetKnownInputSlots()

void plQtEditorApp::GetKnownInputSlots ( plDynamicArray< plString > & slots) const

Reads the known input slots from disk and adds them to the existing list.

All input slots to be exposed by the editor are stored in 'Shared/Tools/plEditor/InputSlots' as txt files. Each line names one input slot.

◆ MakeRemoteProjectLocal()

plStatus plQtEditorApp::MakeRemoteProjectLocal ( plStringBuilder & inout_sFilePath)

If this project is remote, ie coming from another repository that is not checked-out by default, make sure it exists locally on disk.

Adjusts inout_sFilePath from pointing to an plRemoteProject file to a plProject file, if necessary. If the project is already local, it always succeeds. If checking out fails or is user canceled, the function returns failure.


The documentation for this class was generated from the following files: