LibreOffice Module vcl (master) 1
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Private Member Functions | Friends | List of all members
AquaSalInstance Class Reference

#include <salinst.h>

Inheritance diagram for AquaSalInstance:
[legend]
Collaboration diagram for AquaSalInstance:
[legend]

Public Member Functions

virtual void TriggerUserEventProcessing () override
 
 AquaSalInstance ()
 
virtual ~AquaSalInstance () override
 
virtual void AfterAppInit () override
 
virtual bool SVMainHook (int *) override
 
virtual SalFrameCreateChildFrame (SystemParentData *pParent, SalFrameStyleFlags nStyle) override
 
virtual SalFrameCreateFrame (SalFrame *pParent, SalFrameStyleFlags nStyle) override
 
virtual void DestroyFrame (SalFrame *pFrame) override
 
virtual SalObjectCreateObject (SalFrame *pParent, SystemWindowData *pWindowData, bool bShow) override
 
virtual void DestroyObject (SalObject *pObject) override
 
virtual std::unique_ptr< SalVirtualDeviceCreateVirtualDevice (SalGraphics &rGraphics, tools::Long &nDX, tools::Long &nDY, DeviceFormat eFormat, const SystemGraphicsData *pData=nullptr) override
 
virtual SalInfoPrinterCreateInfoPrinter (SalPrinterQueueInfo *pQueueInfo, ImplJobSetup *pSetupData) override
 
virtual void DestroyInfoPrinter (SalInfoPrinter *pPrinter) override
 
virtual std::unique_ptr< SalPrinterCreatePrinter (SalInfoPrinter *pInfoPrinter) override
 
virtual void GetPrinterQueueInfo (ImplPrnQueueList *pList) override
 
virtual void GetPrinterQueueState (SalPrinterQueueInfo *pInfo) override
 
virtual OUString GetDefaultPrinter () override
 
virtual SalTimerCreateSalTimer () override
 
virtual SalSystemCreateSalSystem () override
 
virtual std::shared_ptr< SalBitmapCreateSalBitmap () override
 
virtual bool DoYield (bool bWait, bool bHandleAllCurrentEvents) override
 Wait for the next event (if bWait) and dispatch it, includes posted events, and timers. More...
 
virtual bool AnyInput (VclInputFlags nType) override
 
virtual std::unique_ptr< SalMenuCreateMenu (bool bMenuBar, Menu *pVCLMenu) override
 
virtual std::unique_ptr< SalMenuItemCreateMenuItem (const SalItemParams &rItemData) override
 
virtual OpenGLContextCreateOpenGLContext () override
 
virtual OUString GetConnectionIdentifier () override
 
virtual void AddToRecentDocumentList (const OUString &rFileUrl, const OUString &rMimeType, const OUString &rDocumentService) override
 
virtual OUString getOSVersion () override
 get information about underlying versions More...
 
virtual css::uno::Reference< css::uno::XInterface > CreateClipboard (const css::uno::Sequence< css::uno::Any > &i_rArguments) override
 
virtual css::uno::Reference< css::uno::XInterface > ImplCreateDragSource (const SystemEnvData *) override
 
virtual css::uno::Reference< css::uno::XInterface > ImplCreateDropTarget (const SystemEnvData *) override
 
void delayedSettingsChanged (bool bInvalidate)
 
virtual bool IsMainThread () const override
 
void startedPrintJob ()
 
void endedPrintJob ()
 
- Public Member Functions inherited from SalInstance
 SalInstance (std::unique_ptr< comphelper::SolarMutex > pMutex)
 
virtual ~SalInstance ()
 
bool supportsBitmap32 () const
 
bool supportsOpenGL () const
 
virtual void AfterAppInit ()
 
virtual bool SVMainHook (int *)
 
virtual SalFrameCreateChildFrame (SystemParentData *pParent, SalFrameStyleFlags nStyle)=0
 
virtual SalFrameCreateFrame (SalFrame *pParent, SalFrameStyleFlags nStyle)=0
 
virtual void DestroyFrame (SalFrame *pFrame)=0
 
virtual SalObjectCreateObject (SalFrame *pParent, SystemWindowData *pWindowData, bool bShow)=0
 
virtual void DestroyObject (SalObject *pObject)=0
 
virtual std::unique_ptr< SalVirtualDeviceCreateVirtualDevice (SalGraphics &rGraphics, tools::Long &rDX, tools::Long &rDY, DeviceFormat eFormat, const SystemGraphicsData *pData=nullptr)=0
 
virtual SalInfoPrinterCreateInfoPrinter (SalPrinterQueueInfo *pQueueInfo, ImplJobSetup *pSetupData)=0
 
virtual void DestroyInfoPrinter (SalInfoPrinter *pPrinter)=0
 
virtual std::unique_ptr< SalPrinterCreatePrinter (SalInfoPrinter *pInfoPrinter)=0
 
virtual void GetPrinterQueueInfo (ImplPrnQueueList *pList)=0
 
virtual void GetPrinterQueueState (SalPrinterQueueInfo *pInfo)=0
 
virtual OUString GetDefaultPrinter ()=0
 
virtual SalTimerCreateSalTimer ()=0
 
virtual SalSystemCreateSalSystem ()=0
 
virtual std::shared_ptr< SalBitmapCreateSalBitmap ()=0
 
comphelper::SolarMutexGetYieldMutex ()
 
sal_uInt32 ReleaseYieldMutexAll ()
 
void AcquireYieldMutex (sal_uInt32 nCount=1)
 
virtual bool IsMainThread () const =0
 
virtual bool DoYield (bool bWait, bool bHandleAllCurrentEvents)=0
 Wait for the next event (if bWait) and dispatch it, includes posted events, and timers. More...
 
virtual bool AnyInput (VclInputFlags nType)=0
 
virtual std::unique_ptr< SalMenuCreateMenu (bool bMenuBar, Menu *pMenu)
 
virtual std::unique_ptr< SalMenuItemCreateMenuItem (const SalItemParams &pItemData)
 
virtual std::unique_ptr< SalSessionCreateSalSession ()
 
virtual OpenGLContextCreateOpenGLContext ()
 
virtual std::unique_ptr< weld::BuilderCreateBuilder (weld::Widget *pParent, const OUString &rUIRoot, const OUString &rUIFile)
 
virtual std::unique_ptr< weld::BuilderCreateInterimBuilder (vcl::Window *pParent, const OUString &rUIRoot, const OUString &rUIFile, bool bAllowCycleFocusOut, sal_uInt64 nLOKWindowId=0)
 
virtual weld::MessageDialogCreateMessageDialog (weld::Widget *pParent, VclMessageType eMessageType, VclButtonsType eButtonType, const OUString &rPrimaryMessage)
 
virtual weld::WindowGetFrameWeld (const css::uno::Reference< css::awt::XWindow > &rWindow)
 
void SetEventCallback (rtl::Reference< vcl::DisplayConnectionDispatch > const &pInstance)
 
bool CallEventCallback (void const *pEvent, int nBytes)
 
virtual OUString GetConnectionIdentifier ()=0
 
virtual css::uno::Reference< css::uno::XInterface > CreateClipboard (const css::uno::Sequence< css::uno::Any > &i_rArguments)
 
virtual css::uno::Reference< css::uno::XInterface > ImplCreateDragSource (const SystemEnvData *)
 
virtual css::uno::Reference< css::uno::XInterface > ImplCreateDropTarget (const SystemEnvData *)
 
css::uno::Reference< css::uno::XInterface > CreateDragSource (const SystemEnvData *=nullptr)
 
css::uno::Reference< css::uno::XInterface > CreateDropTarget (const SystemEnvData *=nullptr)
 
virtual void AddToRecentDocumentList (const OUString &rFileUrl, const OUString &rMimeType, const OUString &rDocumentService)=0
 
virtual bool hasNativeFileSelection () const
 
virtual css::uno::Reference< css::ui::dialogs::XFilePicker2 > createFilePicker (const css::uno::Reference< css::uno::XComponentContext > &)
 
virtual css::uno::Reference< css::ui::dialogs::XFolderPicker2 > createFolderPicker (const css::uno::Reference< css::uno::XComponentContext > &)
 
virtual void updatePrinterUpdate ()
 
virtual void jobStartedPrinterUpdate ()
 
virtual void jobEndedPrinterUpdate ()
 
virtual void updateMainThread ()
 Set the app's (somewhat) magic/main-thread to this one. More...
 
virtual void releaseMainThread ()
 Disconnect that - good for detaching from the JavaVM on Android. More...
 
virtual OUString getOSVersion ()
 get information about underlying versions More...
 
virtual const cairo_font_options_tGetCairoFontOptions ()
 
virtual void * CreateGStreamerSink (const SystemChildWindow *)
 
virtual void BeforeAbort (const OUString &, bool)
 
virtual bool DoExecute (int &nExitCode)
 
virtual void DoQuit ()
 
- Public Member Functions inherited from SalUserEventList
 SalUserEventList ()
 
virtual ~SalUserEventList () COVERITY_NOEXCEPT_FALSE
 
const SalFrameSetgetFrames () const
 
SalFrameanyFrame () const
 
void insertFrame (SalFrame *pFrame)
 
void eraseFrame (SalFrame *pFrame)
 
bool isFrameAlive (const SalFrame *pFrame) const
 
void PostEvent (SalFrame *pFrame, void *pData, SalEvent nEvent)
 
void RemoveEvent (SalFrame *pFrame, void *pData, SalEvent nEvent)
 
bool HasUserEvents () const
 
bool DispatchUserEvents (bool bHandleAllCurrentEvents)
 

Static Public Member Functions

static void handleAppDefinedEvent (NSEvent *pEvent)
 
static bool isOnCommandLine (const OUString &)
 
static NSMenu * GetDynamicDockMenu ()
 
- Static Public Member Functions inherited from SalInstance
static bool IsRunningUnitTest ()
 

Public Attributes

NSButtonCell * mpButtonCell
 
NSButtonCell * mpCheckCell
 
NSButtonCell * mpRadioCell
 
NSTextFieldCell * mpTextFieldCell
 
NSComboBoxCell * mpComboBoxCell
 
NSPopUpButtonCell * mpPopUpButtonCell
 
NSStepperCell * mpStepperCell
 
NSButtonCell * mpListNodeCell
 
OUString maDefaultPrinter
 
oslThreadIdentifier maMainThread
 
int mnActivePrintJobs
 
osl::Mutex maUserEventListMutex
 
osl::Condition maWaitingYieldCond
 
bool mbIsLiveResize
 
bool mbNoYieldLock
 
bool mbTimerProcessed
 

Static Public Attributes

static std::list< const ApplicationEvent * > aAppEventList
 
static const short AppExecuteSVMain = 1
 
static const short AppStartTimerEvent = 10
 
static const short YieldWakeupEvent = 20
 
static const short DispatchTimerEvent = 30
 

Private Member Functions

bool RunInMainYield (bool bHandleAllCurrentEvents)
 
virtual void ProcessEvent (SalUserEvent aEvent) override
 

Friends

class AquaSalFrame
 

Additional Inherited Members

- Protected Member Functions inherited from SalUserEventList
virtual void ProcessEvent (SalUserEvent aEvent)=0
 
virtual void TriggerUserEventProcessing ()=0
 
virtual void TriggerAllUserEventsProcessed ()
 
bool HasUserEvents_NoLock () const
 
- Protected Attributes inherited from SalInstance
bool m_bSupportsBitmap32 = false
 
bool m_bSupportsOpenGL = false
 
- Protected Attributes inherited from SalUserEventList
std::mutex m_aUserEventsMutex
 
std::list< SalUserEventm_aUserEvents
 
std::list< SalUserEventm_aProcessingUserEvents
 
bool m_bAllUserEventProcessedSignaled
 
SalFrameSet m_aFrames
 
oslThreadIdentifier m_aProcessingThread
 

Detailed Description

Definition at line 68 of file osx/salinst.h.

Constructor & Destructor Documentation

◆ AquaSalInstance()

AquaSalInstance::AquaSalInstance ( )

◆ ~AquaSalInstance()

virtual AquaSalInstance::~AquaSalInstance ( )
overridevirtual

Member Function Documentation

◆ AddToRecentDocumentList()

virtual void AquaSalInstance::AddToRecentDocumentList ( const OUString &  rFileUrl,
const OUString &  rMimeType,
const OUString &  rDocumentService 
)
overridevirtual

Implements SalInstance.

◆ AfterAppInit()

virtual void AquaSalInstance::AfterAppInit ( )
overridevirtual

Reimplemented from SalInstance.

◆ AnyInput()

virtual bool AquaSalInstance::AnyInput ( VclInputFlags  nType)
overridevirtual

Implements SalInstance.

◆ CreateChildFrame()

virtual SalFrame * AquaSalInstance::CreateChildFrame ( SystemParentData pParent,
SalFrameStyleFlags  nStyle 
)
overridevirtual

Implements SalInstance.

◆ CreateClipboard()

virtual css::uno::Reference< css::uno::XInterface > AquaSalInstance::CreateClipboard ( const css::uno::Sequence< css::uno::Any > &  i_rArguments)
overridevirtual

Reimplemented from SalInstance.

◆ CreateFrame()

virtual SalFrame * AquaSalInstance::CreateFrame ( SalFrame pParent,
SalFrameStyleFlags  nStyle 
)
overridevirtual

Implements SalInstance.

◆ CreateInfoPrinter()

virtual SalInfoPrinter * AquaSalInstance::CreateInfoPrinter ( SalPrinterQueueInfo pQueueInfo,
ImplJobSetup pSetupData 
)
overridevirtual

Implements SalInstance.

◆ CreateMenu()

virtual std::unique_ptr< SalMenu > AquaSalInstance::CreateMenu ( bool  bMenuBar,
Menu pVCLMenu 
)
overridevirtual

Reimplemented from SalInstance.

◆ CreateMenuItem()

virtual std::unique_ptr< SalMenuItem > AquaSalInstance::CreateMenuItem ( const SalItemParams rItemData)
overridevirtual

Reimplemented from SalInstance.

◆ CreateObject()

virtual SalObject * AquaSalInstance::CreateObject ( SalFrame pParent,
SystemWindowData pWindowData,
bool  bShow 
)
overridevirtual

Implements SalInstance.

◆ CreateOpenGLContext()

virtual OpenGLContext * AquaSalInstance::CreateOpenGLContext ( )
overridevirtual

Reimplemented from SalInstance.

◆ CreatePrinter()

virtual std::unique_ptr< SalPrinter > AquaSalInstance::CreatePrinter ( SalInfoPrinter pInfoPrinter)
overridevirtual

Implements SalInstance.

◆ CreateSalBitmap()

virtual std::shared_ptr< SalBitmap > AquaSalInstance::CreateSalBitmap ( )
overridevirtual

Implements SalInstance.

◆ CreateSalSystem()

virtual SalSystem * AquaSalInstance::CreateSalSystem ( )
overridevirtual

Implements SalInstance.

◆ CreateSalTimer()

virtual SalTimer * AquaSalInstance::CreateSalTimer ( )
overridevirtual

Implements SalInstance.

◆ CreateVirtualDevice()

virtual std::unique_ptr< SalVirtualDevice > AquaSalInstance::CreateVirtualDevice ( SalGraphics rGraphics,
tools::Long nDX,
tools::Long nDY,
DeviceFormat  eFormat,
const SystemGraphicsData pData = nullptr 
)
overridevirtual

Implements SalInstance.

◆ delayedSettingsChanged()

void AquaSalInstance::delayedSettingsChanged ( bool  bInvalidate)

◆ DestroyFrame()

virtual void AquaSalInstance::DestroyFrame ( SalFrame pFrame)
overridevirtual

Implements SalInstance.

◆ DestroyInfoPrinter()

virtual void AquaSalInstance::DestroyInfoPrinter ( SalInfoPrinter pPrinter)
overridevirtual

Implements SalInstance.

◆ DestroyObject()

virtual void AquaSalInstance::DestroyObject ( SalObject pObject)
overridevirtual

Implements SalInstance.

◆ DoYield()

virtual bool AquaSalInstance::DoYield ( bool  bWait,
bool  bHandleAllCurrentEvents 
)
overridevirtual

Wait for the next event (if bWait) and dispatch it, includes posted events, and timers.

If bHandleAllCurrentEvents - dispatch multiple posted user events. Returns true if events were processed.

Implements SalInstance.

◆ endedPrintJob()

void AquaSalInstance::endedPrintJob ( )
inline

Definition at line 154 of file osx/salinst.h.

References mnActivePrintJobs.

◆ GetConnectionIdentifier()

virtual OUString AquaSalInstance::GetConnectionIdentifier ( )
overridevirtual

Implements SalInstance.

◆ GetDefaultPrinter()

virtual OUString AquaSalInstance::GetDefaultPrinter ( )
overridevirtual

Implements SalInstance.

◆ GetDynamicDockMenu()

static NSMenu * AquaSalInstance::GetDynamicDockMenu ( )
static

◆ getOSVersion()

virtual OUString AquaSalInstance::getOSVersion ( )
overridevirtual

get information about underlying versions

Reimplemented from SalInstance.

◆ GetPrinterQueueInfo()

virtual void AquaSalInstance::GetPrinterQueueInfo ( ImplPrnQueueList pList)
overridevirtual

Implements SalInstance.

◆ GetPrinterQueueState()

virtual void AquaSalInstance::GetPrinterQueueState ( SalPrinterQueueInfo pInfo)
overridevirtual

Implements SalInstance.

◆ handleAppDefinedEvent()

static void AquaSalInstance::handleAppDefinedEvent ( NSEvent *  pEvent)
static

◆ ImplCreateDragSource()

virtual css::uno::Reference< css::uno::XInterface > AquaSalInstance::ImplCreateDragSource ( const SystemEnvData )
overridevirtual

Reimplemented from SalInstance.

◆ ImplCreateDropTarget()

virtual css::uno::Reference< css::uno::XInterface > AquaSalInstance::ImplCreateDropTarget ( const SystemEnvData )
overridevirtual

Reimplemented from SalInstance.

◆ IsMainThread()

virtual bool AquaSalInstance::IsMainThread ( ) const
overridevirtual

Implements SalInstance.

◆ isOnCommandLine()

static bool AquaSalInstance::isOnCommandLine ( const OUString &  )
static

◆ ProcessEvent()

virtual void AquaSalInstance::ProcessEvent ( SalUserEvent  aEvent)
overrideprivatevirtual

Implements SalUserEventList.

◆ RunInMainYield()

bool AquaSalInstance::RunInMainYield ( bool  bHandleAllCurrentEvents)
private

◆ startedPrintJob()

void AquaSalInstance::startedPrintJob ( )
inline

Definition at line 153 of file osx/salinst.h.

References mnActivePrintJobs.

◆ SVMainHook()

virtual bool AquaSalInstance::SVMainHook ( int )
overridevirtual

Reimplemented from SalInstance.

◆ TriggerUserEventProcessing()

virtual void AquaSalInstance::TriggerUserEventProcessing ( )
overridevirtual

Implements SalUserEventList.

Friends And Related Function Documentation

◆ AquaSalFrame

friend class AquaSalFrame
friend

Definition at line 70 of file osx/salinst.h.

Member Data Documentation

◆ aAppEventList

std::list<const ApplicationEvent*> AquaSalInstance::aAppEventList
static

Definition at line 96 of file osx/salinst.h.

◆ AppExecuteSVMain

const short AquaSalInstance::AppExecuteSVMain = 1
static

Definition at line 157 of file osx/salinst.h.

◆ AppStartTimerEvent

const short AquaSalInstance::AppStartTimerEvent = 10
static

Definition at line 158 of file osx/salinst.h.

◆ DispatchTimerEvent

const short AquaSalInstance::DispatchTimerEvent = 30
static

Definition at line 160 of file osx/salinst.h.

◆ maDefaultPrinter

OUString AquaSalInstance::maDefaultPrinter

Definition at line 87 of file osx/salinst.h.

◆ maMainThread

oslThreadIdentifier AquaSalInstance::maMainThread

Definition at line 88 of file osx/salinst.h.

◆ maUserEventListMutex

osl::Mutex AquaSalInstance::maUserEventListMutex

Definition at line 90 of file osx/salinst.h.

◆ maWaitingYieldCond

osl::Condition AquaSalInstance::maWaitingYieldCond

Definition at line 91 of file osx/salinst.h.

◆ mbIsLiveResize

bool AquaSalInstance::mbIsLiveResize

Definition at line 92 of file osx/salinst.h.

◆ mbNoYieldLock

bool AquaSalInstance::mbNoYieldLock

Definition at line 93 of file osx/salinst.h.

◆ mbTimerProcessed

bool AquaSalInstance::mbTimerProcessed

Definition at line 94 of file osx/salinst.h.

◆ mnActivePrintJobs

int AquaSalInstance::mnActivePrintJobs

Definition at line 89 of file osx/salinst.h.

Referenced by endedPrintJob(), and startedPrintJob().

◆ mpButtonCell

NSButtonCell* AquaSalInstance::mpButtonCell

Definition at line 79 of file osx/salinst.h.

◆ mpCheckCell

NSButtonCell* AquaSalInstance::mpCheckCell

Definition at line 80 of file osx/salinst.h.

◆ mpComboBoxCell

NSComboBoxCell* AquaSalInstance::mpComboBoxCell

Definition at line 83 of file osx/salinst.h.

◆ mpListNodeCell

NSButtonCell* AquaSalInstance::mpListNodeCell

Definition at line 86 of file osx/salinst.h.

◆ mpPopUpButtonCell

NSPopUpButtonCell* AquaSalInstance::mpPopUpButtonCell

Definition at line 84 of file osx/salinst.h.

◆ mpRadioCell

NSButtonCell* AquaSalInstance::mpRadioCell

Definition at line 81 of file osx/salinst.h.

◆ mpStepperCell

NSStepperCell* AquaSalInstance::mpStepperCell

Definition at line 85 of file osx/salinst.h.

◆ mpTextFieldCell

NSTextFieldCell* AquaSalInstance::mpTextFieldCell

Definition at line 82 of file osx/salinst.h.

◆ YieldWakeupEvent

const short AquaSalInstance::YieldWakeupEvent = 20
static

Definition at line 159 of file osx/salinst.h.


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