52 #ifndef __PCL_ProcessInterface_h
53 #define __PCL_ProcessInterface_h
57 #ifndef __PCL_BUILDING_PIXINSIGHT_APPLICATION
173 namespace InterfaceFeature
178 DragObject = 0x00000001,
179 ApplyToViewButton = 0x00000002,
180 ApplyGlobalButton = 0x00000004,
181 RealTimeButton = 0x00000008,
182 ExecuteButton = 0x00000010,
183 CancelButton = 0x00000020,
184 BrowseDocumentationButton = 0x00000080,
185 TrackViewButton = 0x00000100,
186 PreferencesButton = 0x00000400,
187 ResetButton = 0x00000800,
188 InfoArea = 0x00010000,
189 Default = DragObject | ApplyToViewButton | BrowseDocumentationButton | ResetButton,
190 DefaultGlobal = DragObject | ApplyGlobalButton | BrowseDocumentationButton | ResetButton,
191 DefaultDynamic = DragObject | ExecuteButton | CancelButton | BrowseDocumentationButton | ResetButton
216 namespace RealTimePreviewGenerationFlag
221 DisableMask = 0x00000010,
234 #ifndef __PCL_BUILDING_PIXINSIGHT_APPLICATION
238 class PCL_CLASS MetaProcess;
239 class PCL_CLASS ProcessImplementation;
240 class PCL_CLASS ProcessInstance;
241 class PCL_CLASS VectorGraphics;
242 class PCL_CLASS View;
566 return InterfaceFeature::Default;
883 return m_launchCount;
1166 const Rect& rect,
int zoomLevel )
const
1197 const Rect& rect,
int zoomLevel )
const
1199 return RealTimePreviewGenerationFlag::None;
1267 const Rect& rect,
int zoomLevel,
String& info )
const
1295 DeactivateRealTimePreview();
1402 unsigned buttons,
unsigned modifiers )
1432 int button,
unsigned buttons,
unsigned modifiers )
1462 int button,
unsigned buttons,
unsigned modifiers )
1489 unsigned buttons,
unsigned modifiers )
1581 int wheelDelta,
unsigned buttons,
unsigned modifiers )
2591 return m_autoSaveGeometry;
2603 m_autoSaveGeometry = enable;
2615 EnableAutoSaveGeometry( !disable );
2681 bool m_autoSaveGeometry =
true;
2683 void PerformAPIDefinitions()
const override;
2685 friend class InterfaceDispatcher;
Client-side interface to a PixInsight Control object.
A type-safe collection of enumerated flags.
Implements a generic, two-dimensional, shared or local image.
A generic point in the two-dimensional space.
A generic rectangle in the two-dimensional space.
A collection of interface feature flags.
Eight-bit string (ISO/IEC-8859-1 or UTF-8 string)
Implementation of a PixInsight process instance.
High-level interface to a process instance.
Client-side interface to a PixInsight process interface window.
virtual String Description() const
static void ProcessEvents(bool excludeUserInputEvents=false)
virtual bool WantsImageNotifications() const
virtual ProcessImplementation * NewTestProcess() const
virtual bool DynamicMouseWheel(View &view, const DPoint &cursorPos, int wheelDelta, unsigned buttons, unsigned modifiers)
virtual void CancelRealTimePreview()
bool Launch(unsigned flags=0)
virtual InterfaceFeatures Features() const
virtual String SmallIconImageFile() const
void EnableAutoSaveGeometry(bool enable=true)
virtual bool EnterDynamicMode()
virtual void DynamicMousePress(View &view, const DPoint &cursorPos, int button, unsigned buttons, unsigned modifiers)
virtual bool ImportProcess(const ProcessImplementation &)
virtual bool WantsViewPropertyNotifications() const
virtual bool ValidateProcess(const ProcessImplementation &instance, String &whyNot) const
virtual IsoString Aliases() const
virtual void DynamicMouseDoubleClick(View &view, const DPoint &cursorPos, unsigned buttons, unsigned modifiers)
virtual bool CanImportInstances() const
void SetDefaultPosition()
IsoString SettingsKey() const
virtual void SaveSettings() const
virtual bool BrowseDocumentation() const
virtual bool DynamicKeyRelease(View &view, int key, unsigned modifiers)
virtual MetaProcess * Process() const =0
bool IsAutoSaveGeometryEnabled() const
static void BroadcastImageUpdated(const View &view)
virtual String IconImageSVGFile() const
virtual void EditPreferences()
virtual void DynamicMouseRelease(View &view, const DPoint &cursorPos, int button, unsigned buttons, unsigned modifiers)
virtual bool Launch(const MetaProcess &process, const ProcessImplementation *instance, bool &dynamic, unsigned &flags)
virtual bool DynamicKeyPress(View &view, int key, unsigned modifiers)
virtual pcl::RealTimePreviewGenerationFlags RealTimePreviewGenerationFlags(UInt16Image &image, const View &view, const Rect &rect, int zoomLevel) const
virtual void DynamicPaint(const View &view, VectorGraphics &graphics, const DRect &rect) const
virtual void ResetInstance()
virtual void RealTimePreviewUpdated(bool active)
virtual bool RequiresInstanceValidation() const
virtual void DynamicMouseLeave(View &view)
virtual const char ** IconImageXPM() const
virtual bool RequiresDynamicUpdate(const View &view, const DRect &rect) const
virtual String IconImageFile() const
virtual void DynamicMouseMove(View &view, const DPoint &cursorPos, unsigned buttons, unsigned modifiers)
void DisableAutoSaveGeometry(bool disable=true)
size_type LaunchCount() const
virtual bool WantsRealTimePreviewNotifications() const
virtual bool WantsMaskNotifications() const
virtual void Initialize()
void SaveGeometry() const
static ProcessInterface & Null()
~ProcessInterface() noexcept(false) override
virtual const char ** SmallIconImageXPM() const
virtual void DynamicMouseEnter(View &view)
virtual bool DistinguishesTestInstances() const
virtual uint32 Version() const
virtual bool IsDynamicInterface() const
virtual void TrackViewUpdated(bool active)
virtual bool WantsTransparencyNotifications() const
virtual bool WantsReadoutNotifications() const
virtual bool WantsProcessNotifications() const
virtual void ApplyInstanceGlobal() const
virtual bool RequiresRealTimePreviewUpdate(const UInt16Image &image, const View &view, const Rect &rect, int zoomLevel) const
virtual void ExitDynamicMode()
virtual IsoString IconImageSVG() const
virtual void LoadSettings()
virtual bool IsInstanceGenerator() const
virtual ProcessImplementation * NewProcess() const
virtual IsoString Id() const =0
virtual bool GenerateRealTimePreview(UInt16Image &image, const View &view, const Rect &rect, int zoomLevel, String &info) const
virtual bool WantsGlobalNotifications() const
virtual void ApplyInstance() const
A collection of real-time preview generation flags.
Client-side interface to a PixInsight vector graphics context.
High-level interface to a PixInsight view object.
virtual void GlobalCMDisabled()
virtual void GlobalRGBWSUpdated()
virtual void GlobalCMEnabled()
virtual void GlobalCMUpdated()
virtual void GlobalFiltersUpdated()
virtual void ReadoutOptionsUpdated()
virtual void GlobalPreferencesUpdated()
virtual void ImageDeleted(const View &view)
virtual void ImageSTFEnabled(const View &view)
virtual void ImageLocked(const View &view)
virtual void ImageSTFDisabled(const View &view)
virtual void ImageSaved(const View &view)
virtual void ImageSTFUpdated(const View &view)
virtual void ImageFocused(const View &view)
virtual void ImageUnlocked(const View &view)
virtual void ImageCreated(const View &view)
virtual void ImageUpdated(const View &view)
virtual void ImageRenamed(const View &view)
virtual void ImageRGBWSUpdated(const View &view)
virtual void ImageCMEnabled(const View &view)
virtual void ImageCMUpdated(const View &view)
virtual void ImageCMDisabled(const View &view)
virtual void MaskEnabled(const View &view)
virtual void MaskHidden(const View &view)
virtual void MaskDisabled(const View &view)
virtual void MaskUpdated(const View &view)
virtual void MaskShown(const View &view)
virtual void ProcessUpdated(const ProcessInstance &instance)
virtual void ProcessDeleted(const ProcessInstance &instance)
virtual void ProcessSaved(const ProcessInstance &instance)
virtual void ProcessCreated(const ProcessInstance &instance)
virtual void EndReadout(const View &view)
virtual void UpdateReadout(const View &view, const DPoint &position, double R, double G, double B, double A)
virtual void BeginReadout(const View &view)
virtual void RealTimePreviewGenerationStarted()
virtual void RealTimePreviewGenerationFinished()
virtual void RealTimePreviewOwnerChanged(ProcessInterface &iface)
virtual void RealTimePreviewLUTUpdated(int colorModel)
virtual void TransparencyHidden(const View &view)
virtual void TransparencyModeUpdated(const View &view)
virtual void ViewPropertyUpdated(const View &view, const IsoString &property)
virtual void ViewPropertyDeleted(const View &view, const IsoString &property)
String Id(value_type operation)