LibreOffice Module vcl (master) 1
|
Base class used mainly for the LibreOffice Desktop class. More...
#include <svapp.hxx>
Public Member Functions | |
virtual int | Main () |
Pure virtual entrypoint to the application. More... | |
virtual bool | QueryExit () |
Exit from the application. More... | |
virtual void | Shutdown () |
virtual void | notifyWindow (vcl::LOKWindowId nLOKWindowId, const OUString &rAction, const std::vector< vcl::LOKPayloadItem > &rPayload=std::vector< vcl::LOKPayloadItem >()) const override |
Callbacks. More... | |
virtual void | libreOfficeKitViewCallback (int nType, const OString &pPayload) const override |
virtual void | notifyInvalidation (tools::Rectangle const *) const override |
Emits a LOK_CALLBACK_INVALIDATE_TILES. More... | |
Initialization | |
The following functions perform initialization and deinitialization of the application. | |
Application () | |
Default constructor for Application class. More... | |
virtual | ~Application () |
Virtual destructor for Application class. More... | |
virtual void | Init () |
Initialize the application itself. More... | |
virtual void | InitFinished () |
Finish initialization of the application. More... | |
virtual void | DeInit () |
Deinitialized the application itself. More... | |
Public Member Functions inherited from vcl::ILibreOfficeKitNotifier | |
virtual | ~ILibreOfficeKitNotifier () |
virtual void | notifyWindow (vcl::LOKWindowId nLOKWindowId, const OUString &rAction, const std::vector< LOKPayloadItem > &rPayload=std::vector< LOKPayloadItem >()) const =0 |
Callbacks. More... | |
virtual void | libreOfficeKitViewCallback (int nType, const OString &pPayload) const =0 |
virtual void | notifyInvalidation (tools::Rectangle const *) const =0 |
Emits a LOK_CALLBACK_INVALIDATE_TILES. More... | |
Static Public Member Functions | |
static bool | IsUICaptured () |
static void | SetAppName (const OUString &rUniqueName) |
Set the application's name. More... | |
static void | EnableSafeMode () |
Set safe mode to enabled. More... | |
static bool | IsSafeModeEnabled () |
Determines if safe mode is enabled. More... | |
static const OUString & | GetDesktopEnvironment () |
Get the desktop environment the process is currently running in. More... | |
static void | setDeInitHook (Link< LinkParamNone *, void > const &hook) |
static std::unique_ptr< weld::Builder > | CreateBuilder (weld::Widget *pParent, const OUString &rUIFile, bool bMobile=false, sal_uInt64 nLOKWindowId=0) |
static std::unique_ptr< weld::Builder > | CreateInterimBuilder (vcl::Window *pParent, const OUString &rUIFile, bool bAllowCycleFocusOut, sal_uInt64 nLOKWindowId=0) |
static weld::MessageDialog * | CreateMessageDialog (weld::Widget *pParent, VclMessageType eMessageType, VclButtonsType eButtonType, const OUString &rPrimaryMessage, const ILibreOfficeKitNotifier *pNotifier=nullptr) |
static weld::Window * | GetFrameWeld (const css::uno::Reference< css::awt::XWindow > &rWindow) |
Change Notification Functions | |
Functions that notify when changes occur in the application. | |
static void | NotifyAllWindows (DataChangedEvent &rDCEvt) |
Notify all windows that the application has changed data. More... | |
Command Line Processing | |
Command line processing is done via the following functions. They give the number of parameters, the parameters themselves and a way to get the name of the invoking application. | |
static sal_uInt16 | GetCommandLineParamCount () |
Gets the number of command line parameters passed to the application. More... | |
static OUString | GetCommandLineParam (sal_uInt16 nParam) |
Gets a particular command line parameter. More... | |
static OUString | GetAppFileName () |
Get the name of the file used to start the application. More... | |
Event Loop Functions | |
Functions that handle the LibreOffice main event loop are here, including a global lock called the Solar Mutex. | |
static void | Execute () |
Run the main event processing loop until it is quit by Quit(). More... | |
static void | Quit () |
Quit the program. More... | |
static bool | IsQuit () |
Has Quit() been called? More... | |
static bool | Reschedule (bool bHandleAllCurrentEvents=false) |
Attempt to process current pending event(s) More... | |
static void | Yield () |
Process the next event. More... | |
static void | EndYield () |
static comphelper::SolarMutex & | GetSolarMutex () |
Get the Solar Mutex for this thread. More... | |
static bool | IsMainThread () |
Queries whether we are in main thread. More... | |
static sal_uInt32 | ReleaseSolarMutex () |
Release Solar Mutex(es) for this thread. More... | |
static void | AcquireSolarMutex (sal_uInt32 nCount) |
Acquire Solar Mutex(es) for this thread. More... | |
static bool | IsInMain () |
Queries whether the application is in "main", i.e. More... | |
static bool | IsInExecute () |
Queries whether the application is in the event loop. More... | |
static bool | IsInModalMode () |
Queries whether application has a modal dialog active. More... | |
static sal_uInt16 | GetDispatchLevel () |
Return how many events are being dispatched. More... | |
static bool | AnyInput (VclInputFlags nType=VCL_INPUT_ANY) |
Determine if there are any pending input events. More... | |
static sal_uInt64 | GetLastInputInterval () |
The interval from the last time that input was received. More... | |
Application Window Functions | |
Functions that deal with the application's windows | |
static vcl::Window * | GetFocusWindow () |
Get the currently focused window. More... | |
static OutputDevice * | GetDefaultDevice () |
Get the default "device" (in this case the default window). More... | |
static basegfx::SystemDependentDataManager & | GetSystemDependentDataManager () |
access the DataManager for buffering system-dependent data More... | |
static vcl::Window * | GetFirstTopLevelWindow () |
Get the first top-level window of the application. More... | |
static vcl::Window * | GetNextTopLevelWindow (vcl::Window const *pWindow) |
Get the next top level window. More... | |
static tools::Long | GetTopWindowCount () |
Return the number of top-level windows being used by the application. More... | |
static vcl::Window * | GetTopWindow (tools::Long nIndex) |
Get the nth top window. More... | |
static vcl::Window * | GetActiveTopWindow () |
Get the "active" top window. More... | |
Application Name, Branding | |
static OUString | GetAppName () |
Get the application's name. More... | |
static OUString | GetOSVersion () |
Get the OS version based on the OS specific implementation. More... | |
static OUString | GetHWOSConfInfo (const int bSelection=0, bool bLocalize=true) |
Get useful OS, Hardware and configuration information, cf. More... | |
static bool | LoadBrandBitmap (std::u16string_view pName, BitmapEx &rBitmap) |
Load a localized branding PNG file as a bitmap. More... | |
Display and Screen | |
static void | SetDisplayName (const OUString &rDisplayName) |
Set the default name of the application for message dialogs and printing. More... | |
static OUString | GetDisplayName () |
Get the default name of the application for message dialogs and printing. More... | |
static OUString | GetToolkitName () |
Get the toolkit's name. More... | |
static unsigned int | GetScreenCount () |
Get the number of screens available for the display. More... | |
static tools::Rectangle | GetScreenPosSizePixel (unsigned int nScreen) |
Get a screen's rectangular area. More... | |
static SAL_DLLPRIVATE unsigned int | GetBestScreen (const tools::Rectangle &) |
Get the "best" screen. More... | |
static unsigned int | GetDisplayBuiltInScreen () |
Get the built-in screen. More... | |
static unsigned int | GetDisplayExternalScreen () |
Get the display's external screen. More... | |
Accelerators and Mnemonics | |
Accelerators allow a user to hold down Ctrl+key (or CMD+key on macOS) combination to gain quick access to functionality. Mnemonics are underline letters in things like menus and dialog boxes that allow a user to type in the letter to activate the menu or option. | |
static bool | InsertAccel (Accelerator *pAccel) |
Insert accelerator. More... | |
static void | RemoveAccel (Accelerator const *pAccel) |
Remove accelerator. More... | |
static size_t | GetReservedKeyCodeCount () |
Get the number of reserved key codes used by the application. More... | |
static const vcl::KeyCode * | GetReservedKeyCode (size_t i) |
Get the reserved key code. More... | |
Application Help | |
Deals with the help system, and "auto-help", where a user hovers a mouse above a UI element and a tooltip with an explanation pops up. | |
static void | SetHelp (Help *pHelp=nullptr) |
Sets up help. More... | |
static Help * | GetHelp () |
Gets the application's help. More... | |
Dialogs | |
| |
static weld::Window * | GetDefDialogParent () |
Get the default parent window for dialog boxes. More... | |
static DialogCancelMode | GetDialogCancelMode () |
Gets the dialog cancel mode for headless environments. More... | |
static void | SetDialogCancelMode (DialogCancelMode mode) |
Sets the dialog cancel mode for headless environments. More... | |
static bool | IsDialogCancelEnabled () |
Determines if dialog cancel mode is enabled. More... | |
static void | SetSystemWindowMode (SystemWindowFlags nMode) |
Make a dialog box a system window or not. More... | |
static SystemWindowFlags | GetSystemWindowMode () |
Get the system window mode of dialogs. More... | |
VCL Toolkit and UNO Wrapper | |
The VCL Toolkit implements the UNO XToolkit interface, which specifies a factory interface for the window toolkit. It is similar to the abstract window toolkit (AWT) in Java. | |
static css::uno::Reference< css::awt::XToolkit > | GetVCLToolkit () |
Gets the VCL toolkit. More... | |
static void | SetFilterHdl (const Link< ConvertData &, bool > &rLink) |
Setup a new graphics filter. More... | |
Headless Mode | |
static void | EnableHeadlessMode (bool dialogsAreFatal) |
Enables headless mode. More... | |
static bool | IsHeadlessModeEnabled () |
Determines if headless mode is enabled. More... | |
static void | EnableConsoleOnly () |
Enable Console Only mode. More... | |
static void | EnableBitmapRendering () |
Enable software-only bitmap rendering. More... | |
static bool | IsBitmapRendering () |
Determines if bitmap rendering is enabled. More... | |
static void | AddToRecentDocumentList (const OUString &rFileUrl, const OUString &rMimeType, const OUString &rDocumentService) |
Add a file to the system shells recent document list if there is any. More... | |
static void | ShowNativeErrorBox (const OUString &sTitle, const OUString &sMessage) |
static void | UpdateMainThread () |
Update main thread identifier. More... | |
static bool | hasNativeFileSelection () |
Do we have a native / system file selector available? More... | |
static css::uno::Reference< css::ui::dialogs::XFilePicker2 > | createFilePicker (const css::uno::Reference< css::uno::XComponentContext > &rServiceManager) |
Create a platform specific file picker, if one is available, otherwise return an empty reference. More... | |
static css::uno::Reference< css::ui::dialogs::XFolderPicker2 > | createFolderPicker (const css::uno::Reference< css::uno::XComponentContext > &rServiceManager) |
Create a platform specific folder picker, if one is available, otherwise return an empty reference. More... | |
static bool | IsOnSystemEventLoop () |
Returns true, if the VCL plugin runs on the system event loop. More... | |
Public Attributes | |
void * | m_pCallbackData |
LibreOfficeKitCallback | m_pCallback |
Private Member Functions | |
DECL_DLLPRIVATE_STATIC_LINK (Application, PostEventHandler, void *, void) | |
Error Handling | |
virtual void | Exception (ExceptionCategory nCategory) |
Handles an error. More... | |
static void | Abort (const OUString &rErrorText) |
Ends the program prematurely with an error message. More... | |
Settings | |
The following functions set system settings (e.g. tab color, etc.). There are functions that set settings objects, and functions that set and get the actual system settings for the application. | |
virtual void | OverrideSystemSettings (AllSettings &rSettings) |
Sets user settings in settings object to override system settings. More... | |
static void | MergeSystemSettings (AllSettings &rSettings) |
Set the settings object to the platform/desktop environment system settings. More... | |
static void | SetSettings (const AllSettings &rSettings) |
Sets the application's settings and notifies all windows of the change. More... | |
static const AllSettings & | GetSettings () |
Gets the application's settings. More... | |
static const LocaleDataWrapper & | GetAppLocaleDataWrapper () |
Get the application's locale data wrapper. More... | |
Event Listeners/Handlers | |
A set of event listeners and callers. Note that in this code there is platform specific functions - namely for zoom and scroll events. | |
virtual void | AppEvent (const ApplicationEvent &rAppEvent) |
static void | AddEventListener (const Link< VclSimpleEvent &, void > &rEventListener) |
Add a VCL event listener to the application. More... | |
static void | RemoveEventListener (const Link< VclSimpleEvent &, void > &rEventListener) |
Remove a VCL event listener from the application. More... | |
static void | AddKeyListener (const Link< VclWindowEvent &, bool > &rKeyListener) |
Add a keypress listener to the application. More... | |
static void | RemoveKeyListener (const Link< VclWindowEvent &, bool > &rKeyListener) |
Remove a keypress listener from the application. More... | |
static void | ImplCallEventListenersApplicationDataChanged (void *pData) |
Send event to all VCL application event listeners. More... | |
static void | ImplCallEventListeners (VclSimpleEvent &rEvent) |
Send event to all VCL application event listeners. More... | |
static bool | HandleKey (VclEventId nEvent, vcl::Window *pWin, KeyEvent *pKeyEvent) |
Handle keypress event. More... | |
static ImplSVEvent * | PostKeyEvent (VclEventId nEvent, vcl::Window *pWin, KeyEvent const *pKeyEvent) |
Send keypress event. More... | |
static bool | LOKHandleMouseEvent (VclEventId nEvent, vcl::Window *pWin, const MouseEvent *pEvent) |
static ImplSVEvent * | PostMouseEvent (VclEventId nEvent, vcl::Window *pWin, MouseEvent const *pMouseEvent) |
Send mouse event. More... | |
static ImplSVEvent * | PostGestureEvent (VclEventId nEvent, vcl::Window *pWin, GestureEventPan const *pGestureEvent) |
static void | RemoveMouseAndKeyEvents (vcl::Window *pWin) |
Remove mouse and keypress events from a window... any also zoom and scroll events if the platform supports it. More... | |
static ImplSVEvent * | PostUserEvent (const Link< void *, void > &rLink, void *pCaller=nullptr, bool bReferenceLink=false) |
Post a user event to the default window. More... | |
static void | RemoveUserEvent (ImplSVEvent *nUserEvent) |
Remove user event based on event ID. More... | |
static css::uno::Reference< css::awt::XDisplayConnection > | GetDisplayConnection () |
Base class used mainly for the LibreOffice Desktop class.
The Application class is a base class mainly used by the Desktop class. It is really meant to be subclassed, and the Main() function should be overridden. Many of the ImplSVData members should be moved to this class.
The reason Application exists is because the VCL used to be a standalone framework, long since abandoned by anything other than our application.
Application::Application | ( | ) |
Default constructor for Application class.
Initializes the LibreOffice global instance data structure if needed, and then sets itself to be the Application class. Also initializes any platform specific data structures.
Definition at line 162 of file svapp.cxx.
References ImplGetSVData(), m_pCallback, m_pCallbackData, and ImplSVData::mpApp.
|
virtual |
Virtual destructor for Application class.
Deinitializes the LibreOffice global instance data structure, then deinitializes any platform specific data structures.
Definition at line 173 of file svapp.cxx.
References ImplDeInitSVData(), ImplGetSVData(), and ImplSVData::mpApp.
|
static |
Ends the program prematurely with an error message.
If the
command line argument is given (assuming this process is run by developers who are interested in cores, vs. end users who are not) then it does a coredump.
rErrorText | The error message to report. |
Definition at line 259 of file svapp.cxx.
References GetCommandLineParam(), GetCommandLineParamCount(), i, n, and SalAbort().
Referenced by vcl::Window::dispose(), Exception(), and OutputDevice::ImplInitFontList().
|
static |
Acquire Solar Mutex(es) for this thread.
Acquire the Solar Mutex(es) that prevents other threads from accessing VCL concurrently.
Definition at line 468 of file svapp.cxx.
References SalInstance::AcquireYieldMutex(), ImplGetSVData(), ImplSVData::mpDefInst, and nCount.
Referenced by SolarMutexReleaser::~SolarMutexReleaser().
|
static |
Add a VCL event listener to the application.
If no event listener exists, then initialize the application's event listener with a new one, then add the event listener.
rEventListener | Const reference to the event listener to add. |
Definition at line 698 of file svapp.cxx.
References VclEventListeners::addListener(), ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::maEventListeners.
Referenced by MenuBarUpdateIconManager::MenuBarUpdateIconManager().
|
static |
Add a keypress listener to the application.
If keypress listener exists, then initialize the application's keypress event listener with a new one, then add the keypress listener.
rKeyListener | Const reference to the keypress event listener to add |
Definition at line 710 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::maKeyListeners.
Referenced by SalInstanceWidget::ensure_key_listener().
|
static |
Add a file to the system shells recent document list if there is any.
This function may have no effect under Unix because there is no standard API among the different desktop managers.
rFileUrl | The file url of the document. |
rMimeType | The mime content type of the document specified by aFileUrl. If an empty string will be provided "application/octet-stream" will be used. |
rDocumentService | The app (or "document service") you will be adding the file to e.g. com.sun.star.text.TextDocument |
Definition at line 1594 of file svapp.cxx.
References SalInstance::AddToRecentDocumentList(), ImplGetSVData(), and ImplSVData::mpDefInst.
|
static |
Determine if there are any pending input events.
nType | input identifier, defined in include/vcl/inputtypes.hxx The default is VCL_INPUT_ANY. |
Definition at line 500 of file svapp.cxx.
References SalInstance::AnyInput(), ImplGetSVData(), ImplSVData::mpDefInst, and nType.
Referenced by Scheduler::CallbackTaskScheduling(), TextView::KeyInput(), and TaskStopwatch::nextIter().
|
virtual |
rAppEvent | const reference to ApplicationEvent event |
|
static |
Definition at line 186 of file builder.cxx.
References SalInstance::CreateBuilder(), JSInstanceBuilder::CreateDialogBuilder(), JSInstanceBuilder::CreatePopupBuilder(), JSInstanceBuilder::CreateSidebarBuilder(), AllSettings::GetUIRootDir(), ImplGetSVData(), comphelper::LibreOfficeKit::isActive(), jsdialog::isBuilderEnabled(), jsdialog::isBuilderEnabledForPopup(), jsdialog::isBuilderEnabledForSidebar(), and ImplSVData::mpDefInst.
Referenced by weld::GetMinimumEditHeight(), Printer::PreparePrintJob(), and vcl::PrintDialog::setupOptionalUI().
|
static |
Create a platform specific file picker, if one is available, otherwise return an empty reference.
rServiceManager | Const reference to a UNO component context (service manager). |
Definition at line 1633 of file svapp.cxx.
References SalInstance::createFilePicker(), ImplGetSVData(), and ImplSVData::mpDefInst.
|
static |
Create a platform specific folder picker, if one is available, otherwise return an empty reference.
rServiceManager | Const reference to a UNO component context (service manager). |
Definition at line 1640 of file svapp.cxx.
References SalInstance::createFolderPicker(), ImplGetSVData(), and ImplSVData::mpDefInst.
|
static |
Definition at line 201 of file builder.cxx.
References JSInstanceBuilder::CreateFormulabarBuilder(), SalInstance::CreateInterimBuilder(), JSInstanceBuilder::CreateNotebookbarBuilder(), AllSettings::GetUIRootDir(), ImplGetSVData(), comphelper::LibreOfficeKit::isActive(), jsdialog::isInterimBuilderEnabledForNotebookbar(), ImplSVData::mpDefInst, and u.
Referenced by InterimItemWindow::InterimItemWindow().
|
static |
Definition at line 215 of file builder.cxx.
References SalInstance::CreateMessageDialog(), JSInstanceBuilder::CreateMessageDialog(), ImplGetSVData(), comphelper::LibreOfficeKit::isActive(), and ImplSVData::mpDefInst.
Referenced by IMPL_LINK(), ShowServiceNotAvailableError(), and Edit::ShowTruncationWarning().
|
private |
|
virtual |
Deinitialized the application itself.
Definition at line 208 of file svapp.cxx.
Referenced by DeInitVCL().
|
static |
Enable software-only bitmap rendering.
Definition at line 1544 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mbRenderToBitmaps.
Referenced by CreateSalInstance(), and EnableConsoleOnly().
|
static |
Enable Console Only mode.
Convenience function to enable headless and bitmap rendering.
Definition at line 1554 of file svapp.cxx.
References EnableBitmapRendering(), and EnableHeadlessMode().
|
static |
Enables headless mode.
dialogsAreFatal | Set to true if a dialog ends the session, false if not. |
Definition at line 1530 of file svapp.cxx.
References Fatal, GetDialogCancelMode(), Off, SetDialogCancelMode(), and Silent.
Referenced by EnableConsoleOnly().
|
static |
|
inlinestatic |
Definition at line 1447 of file svapp.hxx.
References PostUserEvent().
|
virtual |
Handles an error.
nCategory | The error category, see include/vcl/exceptiontypes.hxx |
Definition at line 245 of file svapp.cxx.
References Abort(), System, and UserInterface.
Referenced by VCLExceptionSignal_impl().
|
static |
Run the main event processing loop until it is quit by Quit().
Definition at line 315 of file svapp.cxx.
References SalInstance::DoExecute(), GetpApp(), ImplGetSVData(), IsOnSystemEventLoop(), ImplSVData::maAppData, ImplSVAppData::mbAppQuit, ImplSVAppData::mbInAppExecute, ImplSVData::mpDefInst, SAL_WARN, Shutdown(), and Yield().
|
static |
Get the "active" top window.
An "active" top window is one that has a child window that has the application's focus.
Definition at line 1105 of file svapp.cxx.
References ImplGetSVData(), vcl::Window::IsTopWindow(), ImplSVWinData::mpFocusWin, ImplSVData::mpWinData, and vcl::Window::mpWindowImpl.
Referenced by DebugEventInjector::ChooseWindow(), IMPL_LINK_NOARG(), and GDIMetaFile::ImplPlayWithRenderer().
|
static |
Get the name of the file used to start the application.
Definition at line 224 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, ImplSVAppData::mxAppFileName, and SAL_WARN_IF.
|
static |
Get the application's locale data wrapper.
Definition at line 1525 of file svapp.cxx.
References AllSettings::GetLocaleDataWrapper(), and GetSettings().
Referenced by Calendar::ImplInit().
|
static |
Get the application's name.
Definition at line 1123 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mxAppName.
|
static |
Get the "best" screen.
Definition at line 1280 of file svapp.cxx.
References tools::Rectangle::Bottom(), tools::Rectangle::Contains(), tools::Rectangle::GetHeight(), tools::Rectangle::GetIntersection(), GetScreenCount(), GetScreenPosSizePixel(), tools::Rectangle::GetWidth(), i, tools::Rectangle::IsEmpty(), tools::Rectangle::Left(), tools::Rectangle::Right(), and tools::Rectangle::Top().
Referenced by FloatingWindow::ImplCalcPos(), and PopupMenu::PrepareRun().
|
static |
Gets a particular command line parameter.
nParam | The index of the parameter to return. |
Definition at line 217 of file svapp.cxx.
Referenced by Abort().
|
static |
Gets the number of command line parameters passed to the application.
Definition at line 212 of file svapp.cxx.
Referenced by Abort().
|
static |
Get the default "device" (in this case the default window).
Definition at line 1043 of file svapp.cxx.
References vcl::Window::GetOutDev(), and ImplGetDefaultWindow().
Referenced by EmbeddedFontsHelper::activateFont(), IMapObject::AppendCERNCoords(), IMapObject::AppendNCSACoords(), BitmapEx::AutoScaleBitmap(), GraphicObject::calculateCropScaling(), clipMetafileContentAgainstOwnRegions(), convertPrimitive2DSequenceToBitmapEx(), SalInstanceWidget::create_virtual_device(), EmbeddedFontsHelper::fontFileUrl(), SalInstanceComboBox< vcl_type >::get_menu_button_width(), IMapCircleObject::GetCenter(), OutputDevice::GetDefaultFont(), ToolBox::GetDefaultImageSize(), vcl::pdf::getDefaultPdfResolutionDpi(), StyleSettings::GetListBoxPreviewDefaultPixelSize(), IMapPolygonObject::GetPolygon(), IMapCircleObject::GetRadius(), IMapRectangleObject::GetRectangle(), Graphic::GetSizePixel(), GraphicObject::GetTransformedGraphic(), IMapCircleObject::ImpConstruct(), IMapPolygonObject::ImpConstruct(), IMapRectangleObject::ImpConstruct(), ImpGetScaledGraphic(), ToolBox::ImplCalcItem(), GraphicObject::ImplGetCropParams(), MakeAsMeta(), vcl::PrintDialog::PrintPreviewWindow::preparePreviewBitmap(), vcl::PDFWriterImpl::replaceFont(), ImageRequestParameters::scalePercentage(), weld::SetPointFont(), and VirtualDevice::VirtualDevice().
|
static |
Get the default parent window for dialog boxes.
GetDefDialogParent does all sorts of things to try and find a useful parent window for dialogs. It first uses the topmost parent of the active window to avoid using floating windows or other dialog boxes. If there are no active windows, then it will take a random stab and choose the first visible top window. Otherwise, it defaults to the desktop.
Definition at line 1423 of file svapp.cxx.
References Dialog::GetDefDialogParent(), and vcl::Window::GetFrameWeld().
|
static |
Get the desktop environment the process is currently running in.
Definition at line 1583 of file svapp.cxx.
References IsHeadlessModeEnabled(), and SalGetDesktopEnvironment().
Referenced by StyleSettings::GetAutomaticallyChosenIconTheme(), and getButtonPriority().
|
static |
Gets the dialog cancel mode for headless environments.
Definition at line 1429 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::meDialogCancel.
Referenced by EnableHeadlessMode(), and Dialog::ImplStartExecute().
|
static |
Return how many events are being dispatched.
Definition at line 495 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mnDispatchLevel.
|
static |
Get the built-in screen.
Definition at line 1225 of file svapp.cxx.
References SalSystem::GetDisplayBuiltInScreen(), and ImplGetSalSystem().
Referenced by GetDisplayExternalScreen().
|
static |
Definition at line 1507 of file svapp.cxx.
References ImplGetSVData(), and ImplSVData::mxDisplayConnection.
Referenced by vcl::X11DnDHelper().
|
static |
Get the display's external screen.
Practically, this means - Get the screen we should run a presentation on.
Definition at line 1231 of file svapp.cxx.
References GetDisplayBuiltInScreen().
|
static |
Get the default name of the application for message dialogs and printing.
Definition at line 1208 of file svapp.cxx.
References SystemWindow::GetText(), ImplGetSVData(), ImplSVData::maAppData, ImplSVData::maFrameData, ImplSVFrameData::mpAppWin, and ImplSVAppData::mxDisplayName.
Referenced by MessageDialog::MessageDialog(), and Printer::StartJob().
|
static |
Get the first top-level window of the application.
Definition at line 1061 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maFrameData, and ImplSVFrameData::mpFirstFrame.
Referenced by vcl::lok::dumpState(), IMPL_LINK_NOARG(), GDIMetaFile::ImplPlayWithRenderer(), TopLevelWindowLocker::incBusy(), and MiscSettings::SetDarkMode().
|
static |
Get the currently focused window.
Definition at line 1038 of file svapp.cxx.
References ImplGetSVData(), ImplSVWinData::mpFocusWin, and ImplSVData::mpWinData.
Referenced by DebugEventInjector::ChooseWindow(), HelpButton::Click(), Control::EventNotify(), IMPL_LINK(), vcl::Window::ImplDlgCtrl(), vcl::ImplDlgCtrlUpdateDefButton(), vcl::Cursor::ImplDoShow(), ImplSysChildProc(), DebugEventInjector::InjectMenuEvent(), ToolBox::KeyInput(), SvInplaceEdit2::LoseFocus(), ToolBox::MouseMove(), and vcl::Window::SetParent().
|
static |
Definition at line 225 of file builder.cxx.
References SalInstance::GetFrameWeld(), ImplGetSVData(), and ImplSVData::mpDefInst.
|
static |
Gets the application's help.
Definition at line 1352 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mpHelp.
Referenced by vcl::Window::GetHelpText(), HeaderBar::GetHelpText(), StatusBar::GetHelpText(), SalInstanceWindow::help(), IMPL_LINK(), Menu::ImplGetHelpText(), ToolBox::ImplGetHelpText(), MenuWindow::ImplHandleHelpEvent(), and vcl::Window::RequestHelp().
|
static |
Get useful OS, Hardware and configuration information, cf.
Help->About, and User-Agent bSelection = 0 to return all info, 1 for environment only, and 2 for VCL/render related infos
Definition at line 1153 of file svapp.cxx.
References GetOSVersion(), GetToolkitName(), hwEnv, hwUI, SkiaHelper::isVCLSkiaEnabled(), Localize(), SV_APP_VCLBACKEND, and u.
|
static |
The interval from the last time that input was received.
Definition at line 505 of file svapp.cxx.
References tools::Time::GetSystemTicks(), and ImplGetSVData().
|
static |
Get the next top level window.
pWindow | Pointer to Window object you wish to get the next window from. |
Definition at line 1067 of file svapp.cxx.
References vcl::Window::mpWindowImpl.
Referenced by vcl::lok::dumpState(), IMPL_LINK_NOARG(), TopLevelWindowLocker::incBusy(), and MiscSettings::SetDarkMode().
|
static |
Get the OS version based on the OS specific implementation.
Definition at line 1142 of file svapp.cxx.
References SalInstance::getOSVersion(), ImplGetSVData(), and ImplSVData::mpDefInst.
Referenced by GetHWOSConfInfo().
|
static |
Get the reserved key code.
i | The keycode number to retrieve |
Definition at line 285 of file svapp.cxx.
References GetReservedKeyCodeCount(), i, and ReservedKeys.
|
static |
Get the number of reserved key codes used by the application.
Definition at line 280 of file svapp.cxx.
References ReservedKeys, and SAL_N_ELEMENTS.
Referenced by GetReservedKeyCode().
|
static |
Get the number of screens available for the display.
Definition at line 1219 of file svapp.cxx.
References SalSystem::GetDisplayScreenCount(), and ImplGetSalSystem().
Referenced by GetBestScreen(), FloatingWindow::ImplCalcPos(), vcl::WindowOutputDevice::ImplGetCanvas(), SystemWindow::ImplMoveToScreen(), and PopupMenu::PrepareRun().
|
static |
Get a screen's rectangular area.
nScreen | The number of the screen requested. |
Definition at line 1254 of file svapp.cxx.
References SalSystem::GetDisplayScreenPosSizePixel(), tools::Rectangle::GetHeight(), ImplGetSalSystem(), and SAL_WARN.
Referenced by GetBestScreen(), FloatingWindow::ImplCalcPos(), Menu::ImplCalcSize(), SystemWindow::ImplMoveToScreen(), and PopupMenu::PrepareRun().
|
static |
Gets the application's settings.
If the application hasn't initialized it's settings, then it does so (lazy initialization).
Definition at line 638 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mxSettings.
Referenced by ToolBox::ApplyBackgroundSettings(), MenuBarWindow::ApplySettings(), SalInstanceComboBox< vcl_type >::create_render_virtual_device(), MnemonicGenerator::CreateMnemonic(), Edit::CreatePopupMenu(), Splitter::DataChanged(), ImplImageTree::doLoadImage(), ImplWin::DrawEntry(), ImplListBoxWindow::DrawEntry(), MetricField::DumpAsPropertyTree(), vcl::findMatchingEntry(), weld::MetricSpinButton::format_number(), weld::TimeFormatter::FormatNumber(), weld::DateFormatter::FormatNumber(), GetAppLocaleDataWrapper(), OutputDevice::GetDefaultFont(), ToolBox::GetDefaultImageSize(), OutputDevice::GetFontFeatures(), MenuItemList::GetItemCount(), FormatterBase::GetLanguageTag(), TextEngine::GetLocale(), FormatterBase::GetLocale(), MenuBarWindow::HighlightItem(), weld::IMPL_LINK(), weld::IMPL_LINK_NOARG(), OutputDevice::ImplBreakLinesWithIterator(), ToolBox::ImplDrawBackground(), PushButton::ImplDrawPushButton(), ImplFindAccelWindow(), Wallpaper::ImplGetApplicationGradient(), ImplHandleKey(), ImplHandleSalSettings(), TabPage::ImplInit(), ImageButton::ImplInitStyle(), ImplIsPatternChar(), ImplPatternChar(), vcl::Window::ImplUpdateGlobalSettings(), InitAccessBridge(), vcl::PrintDialog::initFromMultiPageSetup(), SvxIconChoiceCtrl_Impl::IsMnemonicChar(), BitmapEx::loadFromIconTheme(), vcl::bitmap::loadFromName(), vcl::ImageRepository::loadImage(), ImplImage::loadStockAtScale(), AllSettings::LocaleSettingsChanged(), vcl::PrintDialog::ShowNupOrderWindow::Paint(), vcl::PrintDialog::PrintPreviewWindow::Paint(), PopupMenu::Run(), ExtTextEngine::Search(), MenuItemList::SearchItem(), TextEngine::SeekCursor(), vcl::IconThemeSelector::SelectIconTheme(), SalInstanceTextView::set_monospace(), SvLBoxButtonData::SetDefaultImages(), SalFlashAttention::SetFlash(), vcl::PrintDialog::setPaperSizes(), vcl::PrintDialog::PrintPreviewWindow::setPreview(), Splitter::StartDrag(), SvImpLBox::UpdateStringSorter(), and VclPaned::VclPaned().
|
static |
Get the Solar Mutex for this thread.
Get the Solar Mutex that prevents other threads from accessing VCL concurrently.
Definition at line 451 of file svapp.cxx.
References SalInstance::GetYieldMutex(), ImplGetSVData(), and ImplSVData::mpDefInst.
|
static |
access the DataManager for buffering system-dependent data
Definition at line 1056 of file svapp.cxx.
References ImplGetSystemDependentDataManager().
|
static |
Get the system window mode of dialogs.
Definition at line 1449 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mnSysWinMode.
Referenced by Dialog::ImplInitDialog(), and VCLExceptionSignal_impl().
|
static |
Get the toolkit's name.
e.g. gtk3
Definition at line 1357 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mxToolkitName.
Referenced by VclBox::getDefaultAccessibleRole(), and GetHWOSConfInfo().
|
static |
Get the nth top window.
nIndex | The index of the top-level window |
Definition at line 1086 of file svapp.cxx.
References VclPtr< reference_type >::get(), ImplGetSVData(), vcl::Window::ImplGetWindow(), vcl::Window::IsTopWindow(), ImplSVData::maFrameData, ImplSVFrameData::mpFirstFrame, vcl::Window::mpWindowImpl, and nIndex.
Referenced by DebugEventInjector::ChooseWindow(), and DeInitVCL().
|
static |
Return the number of top-level windows being used by the application.
Definition at line 1072 of file svapp.cxx.
References VclPtr< reference_type >::get(), ImplGetSVData(), vcl::Window::ImplGetWindow(), vcl::Window::IsTopWindow(), ImplSVData::maFrameData, ImplSVFrameData::mpFirstFrame, and vcl::Window::mpWindowImpl.
Referenced by DebugEventInjector::ChooseWindow(), DeInitVCL(), and vcl::lok::dumpState().
|
static |
Gets the VCL toolkit.
Definition at line 1454 of file svapp.cxx.
References UnoWrapperBase::GetUnoWrapper(), and UnoWrapperBase::GetVCLToolkit().
|
static |
Handle keypress event.
nEvent | Event ID for keypress |
pWin | Pointer to window that receives the event |
pKeyEvent | Received key event |
Definition at line 723 of file svapp.cxx.
References aEvent, ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::maKeyListeners.
Referenced by ImplHandleKey().
|
static |
Do we have a native / system file selector available?
Definition at line 1626 of file svapp.cxx.
References SalInstance::hasNativeFileSelection(), ImplGetSVData(), and ImplSVData::mpDefInst.
|
static |
Send event to all VCL application event listeners.
rEvent | Reference to VclSimpleEvent |
Definition at line 692 of file svapp.cxx.
References VclEventListeners::Call(), ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::maEventListeners.
Referenced by vcl::Window::CallEventListeners(), and Menu::ImplCallEventListeners().
|
static |
Send event to all VCL application event listeners.
pWin | Pointer to window to send event |
pData | Pointer to data to send with event |
Definition at line 684 of file svapp.cxx.
References aEvent, ApplicationDataChanged, VclEventListeners::Call(), ImplGetSVData(), ImplSVData::maAppData, ImplSVAppData::maEventListeners, and pData.
Referenced by OutputDevice::EndFontSubstitution(), ImplHandleSalSettings(), SetSettings(), and Printer::updatePrinters().
|
virtual |
Initialize the application itself.
Definition at line 200 of file svapp.cxx.
Referenced by InitVCL().
|
virtual |
|
static |
Insert accelerator.
pAccel | Pointer to an Accelerator object to insert |
Definition at line 1323 of file svapp.cxx.
References ImplGetSVData(), ImplAccelManager::InsertAccel(), ImplSVData::maAppData, and ImplSVAppData::mpAccelMgr.
Referenced by ImplTBDragMgr::StartDragging(), and SvInplaceEdit2::SvInplaceEdit2().
|
static |
Determines if bitmap rendering is enabled.
Definition at line 1549 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mbRenderToBitmaps.
Referenced by CreateSalInstance().
|
static |
Determines if dialog cancel mode is enabled.
Definition at line 1439 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, ImplSVAppData::meDialogCancel, and Off.
Referenced by IsHeadlessModeEnabled().
|
static |
Determines if headless mode is enabled.
Definition at line 1539 of file svapp.cxx.
References comphelper::LibreOfficeKit::isActive(), and IsDialogCancelEnabled().
Referenced by Sound::Beep(), SalInstance::CreateDragSource(), SalInstance::CreateDropTarget(), vcl::PrinterController::createProgressDialog(), GetDesktopEnvironment(), vcl::PrinterController::isShowDialogs(), setupPersonaHeaderFooter(), and vcl::Window::Show().
|
static |
Queries whether the application is in the event loop.
Definition at line 480 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mbInAppExecute.
|
static |
Queries whether the application is in "main", i.e.
not yet in the event loop
Definition at line 474 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mbInAppMain.
|
static |
Queries whether application has a modal dialog active.
Definition at line 490 of file svapp.cxx.
References ImplGetSVData().
|
static |
Queries whether we are in main thread.
Definition at line 457 of file svapp.cxx.
References ImplGetSVData(), and ImplSVData::mnMainThreadId.
Referenced by vcl::SolarThreadExecutor::execute().
|
static |
Returns true, if the VCL plugin runs on the system event loop.
AKA the VCL plugin can't handle nested event loops, like WASM or mobile.
Definition at line 374 of file svapp.cxx.
References ImplGetSVData(), ImplSVAppData::m_bUseSystemLoop, and ImplSVData::maAppData.
Referenced by SalInstance::DoExecute(), SalInstance::DoQuit(), Execute(), Reschedule(), and Yield().
|
static |
Has Quit() been called?
Definition at line 485 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mbAppQuit.
Referenced by SystemWindow::ensureRepaint(), Dialog::Execute(), and MenuFloatingWindow::Execute().
|
static |
|
static |
Definition at line 510 of file svapp.cxx.
References ImplGetSVData(), ImplSVWinData::mpCaptureWin, ImplSVWinData::mpFirstFloat, ImplSVWinData::mpTrackWin, ImplSVData::mpWinData, and nImplSysDialog.
|
overridevirtual |
Implements vcl::ILibreOfficeKitNotifier.
Definition at line 300 of file svapp.cxx.
References comphelper::LibreOfficeKit::isActive(), m_pCallback, m_pCallbackData, and nType.
|
static |
Load a localized branding PNG file as a bitmap.
pName | Name of the bitmap to load. |
rBitmap | Reference to BitmapEx object to load PNG into |
Definition at line 55 of file brand.cxx.
References LanguageTag::getFallbackStrings(), and pName.
|
static |
Definition at line 807 of file svapp.cxx.
References MouseEvent::GetButtons(), MouseEvent::GetClicks(), MouseEvent::GetModifier(), MouseEvent::GetPosPixel(), tools::Time::GetSystemTicks(), ImplGetMouseButtonMode(), ImplGetMouseMoveMode(), ImplLOKHandleMouseEvent(), KEY_MOD1, KEY_MOD2, KEY_MOD3, KEY_SHIFT, SalMouseEvent::mnButton, SalAbstractMouseEvent::mnCode, SalAbstractMouseEvent::mnTime, SalAbstractMouseEvent::mnX, SalAbstractMouseEvent::mnY, MOUSEBUTTONDOWN, MOUSEBUTTONUP, MOUSEMOVE, SAL_WARN, WindowMouseButtonDown, WindowMouseButtonUp, WindowMouseMove, Point::X(), and Point::Y().
|
virtual |
Pure virtual entrypoint to the application.
Main() is the pure virtual entrypoint to your application. You inherit your class from Application and subclass this function to implement an application.
The Main() function does not pass in command line parameters, you must use the functions GetCommandLineParamCount() and GetCommandLineParam() to get these values as these are platform independent ways of getting the command line (use GetAppFileName() to get the invoked executable filename).
Once in this function, you create windows, etc. then call on Execute() to start the application's main event loop.
An example code snippet follows (it won't compile, this just gives the general flavour of the framework and is adapted from an old HelloWorld example program that Star Division used to provide as part of their library).
Some examples in the source tree can be found here:
vcl/workben/svdem.cxx
This is an example of how to use the Application and WorkWindow. Unfortunately, it no longer compiles.
vcl/fpicker/test/svdem.cxx
Definition at line 179 of file svapp.cxx.
References SAL_WARN.
Referenced by ImplSVMain().
|
static |
Set the settings object to the platform/desktop environment system settings.
rSettings | Reference to the settings object to change. |
Definition at line 525 of file svapp.cxx.
References ImplGetDefaultWindow(), ImplGetSVData(), vcl::Window::ImplUpdateGlobalSettings(), ImplSVData::maAppData, ImplSVData::maFrameData, ImplSVAppData::mbSettingsInit, ImplSVFrameData::mpFirstFrame, and ImplSVAppData::mxSettings.
Referenced by ImplHandleSalSettings().
|
static |
Notify all windows that the application has changed data.
rDCEvt | Reference to a DataChangedEvent object |
Definition at line 665 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maFrameData, ImplSVFrameData::mpFirstFrame, vcl::Window::mpWindowImpl, and vcl::Window::NotifyAllChildren().
Referenced by OutputDevice::EndFontSubstitution(), ImplHandleSalSettings(), and Printer::updatePrinters().
|
overridevirtual |
Emits a LOK_CALLBACK_INVALIDATE_TILES.
Implements vcl::ILibreOfficeKitNotifier.
|
overridevirtual |
Callbacks.
Implements vcl::ILibreOfficeKitNotifier.
Definition at line 293 of file svapp.cxx.
References SAL_WARN.
|
virtual |
Sets user settings in settings object to override system settings.
The system settings that can be overridden are:
rSettings | Reference to the settings object to change. |
Definition at line 521 of file svapp.cxx.
Referenced by ImplHandleSalSettings(), and vcl::Window::ImplUpdateGlobalSettings().
|
static |
Definition at line 770 of file svapp.cxx.
References Point::AdjustX(), Point::AdjustY(), vcl::Window::GetOutOffXPixel(), vcl::Window::GetOutOffYPixel(), ImplGetSVData(), LINK, ImplSVData::maAppData, ImplSVAppData::maPostedEventList, GestureEventPan::meEventType, GestureEventPan::meOrientation, GestureEventPan::mnOffset, GestureEventPan::mnX, GestureEventPan::mnY, PostUserEvent(), VclReferenceBase::release(), Point::X(), and Point::Y().
|
static |
Send keypress event.
nEvent | Event ID for keypress |
pWin | Pointer to window to which the event is sent |
pKeyEvent | Key event to send |
Definition at line 747 of file svapp.cxx.
References ImplGetSVData(), LINK, ImplSVData::maAppData, ImplSVAppData::maPostedEventList, PostUserEvent(), and VclReferenceBase::release().
|
static |
Send mouse event.
nEvent | Event ID for mouse event |
pWin | Pointer to window to which the event is sent |
pMouseEvent | Mouse event to send |
Definition at line 875 of file svapp.cxx.
References Point::AdjustX(), Point::AdjustY(), MouseEvent::GetButtons(), MouseEvent::GetClicks(), MouseEvent::GetMode(), MouseEvent::GetModifier(), vcl::Window::GetOutOffXPixel(), vcl::Window::GetOutOffYPixel(), MouseEvent::GetPosPixel(), ImplGetSVData(), comphelper::LibreOfficeKit::isActive(), LINK, ImplSVData::maAppData, ImplSVAppData::maPostedEventList, PostUserEvent(), and VclReferenceBase::release().
|
static |
Post a user event to the default window.
User events allow for the deferral of work to later in the main-loop - at idle.
Execution of the deferred work is thread-safe which means all the tasks are executed serially, so no thread-safety locks between tasks are necessary.
rLink | Link to event callback function |
pCaller | Pointer to data sent to the event by the caller. Optional. |
bReferenceLink | If true - hold a VclPtr<> reference on the Link's instance. Taking the reference is guarded by a SolarMutexGuard. |
Definition at line 999 of file svapp.cxx.
References Link< typename Arg, typename Ret >::GetInstance(), ImplGetDefaultWindow(), vcl::Window::ImplGetFrame(), and SalFrame::PostEvent().
Referenced by EndYield(), vcl::SolarThreadExecutor::execute(), IMPL_LINK_NOARG(), FloatingWindow::ImplCallPopupModeEnd(), vcl::Window::ImplGenerateMouseMove(), ImplHandleClose(), ImplHandleGetFocus(), ImplHandleLoseFocus(), ImplHandleMouseEvent(), Menu::ImplSelect(), ImplSysChildProc(), SvImpLBox::NotifyTabsChanged(), SvImpLBox::Paint(), IconViewImpl::Paint(), PostGestureEvent(), PostKeyEvent(), PostMouseEvent(), Printer::PrintJob(), Quit(), SvxIconChoiceCtrl_Impl::Resize(), MenuBarUpdateIconManager::SetShowBubble(), and MenuBarUpdateIconManager::SetShowMenuIcon().
|
virtual |
Exit from the application.
Definition at line 185 of file svapp.cxx.
References WorkWindow::Close(), ImplGetSVData(), ImplSVData::maFrameData, and ImplSVFrameData::mpAppWin.
|
static |
Quit the program.
Definition at line 445 of file svapp.cxx.
References ImplGetSVData(), LINK, ImplSVData::maAppData, ImplSVAppData::mbAppQuit, and PostUserEvent().
Referenced by WorkWindow::Close(), WorkWindow::dispose(), ImplWindowFrameProc(), and DebugEventInjector::Invoke().
|
static |
Release Solar Mutex(es) for this thread.
Release the Solar Mutex(es) that prevents other threads from accessing VCL concurrently.
Definition at line 462 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::mpDefInst, and SalInstance::ReleaseYieldMutexAll().
|
static |
Remove accelerator.
pAccel | Pointer to Accelerator object to remove |
Definition at line 1332 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, ImplSVAppData::mpAccelMgr, and ImplAccelManager::RemoveAccel().
Referenced by SvInplaceEdit2::CallCallBackHdl_Impl(), ImplTBDragMgr::EndDragging(), and SvInplaceEdit2::~SvInplaceEdit2().
|
static |
Remove a VCL event listener from the application.
rEventListener | Const reference to the event listener to be removed |
Definition at line 704 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, ImplSVAppData::maEventListeners, and VclEventListeners::removeListener().
Referenced by MenuBarUpdateIconManager::~MenuBarUpdateIconManager().
|
static |
Remove a keypress listener from the application.
rKeyListener | Const reference to the keypress event listener to be removed |
Definition at line 716 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::maKeyListeners.
Referenced by SalInstanceWidget::~SalInstanceWidget().
|
static |
Remove mouse and keypress events from a window... any also zoom and scroll events if the platform supports it.
pWin | Window to remove events from |
Definition at line 976 of file svapp.cxx.
References ImplGetSVData(), and RemoveUserEvent().
Referenced by vcl::Window::dispose().
|
static |
Remove user event based on event ID.
nUserEvent | User event to remove |
Definition at line 1023 of file svapp.cxx.
References VclPtr< reference_type >::clear(), ImplSVEvent::mbCall, ImplSVEvent::mpInstanceRef, ImplSVEvent::mpWindow, and SAL_WARN_IF.
Referenced by SvxIconChoiceCtrl_Impl::CancelUserEvents(), Menu::dispose(), FloatingWindow::dispose(), vcl::Window::dispose(), vcl::SolarThreadExecutor::execute(), PopupMenu::ImplFlushPendingSelect(), RemoveMouseAndKeyEvents(), and SvImpLBox::StopUserEvent().
|
static |
Attempt to process current pending event(s)
It doesn't sleep if no events are available for processing. This doesn't process any events generated after invoking the function. So in contrast to Scheduler::ProcessEventsToIdle, this cannot become busy-locked by an event-generating event in the event queue.
bHandleAllCurrentEvents | If set to true, then try to process all the current events. If set to false, then only process one event. Defaults to false. |
Definition at line 363 of file svapp.cxx.
References ImplYield(), IsOnSystemEventLoop(), and SAL_WARN.
Referenced by vcl::PrinterController::getPageFile(), and OutputDevice::RemoveTransparenciesFromMetaFile().
|
static |
Set the application's name.
rUniqueName | What to set the application name to |
Definition at line 1117 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mxAppName.
|
static |
Definition at line 1646 of file svapp.cxx.
References ImplGetSVData(), Link< typename Arg, typename Ret >::IsSet(), ImplSVData::maAppData, ImplSVData::maDeInitHook, and ImplSVAppData::mbInAppMain.
|
static |
Sets the dialog cancel mode for headless environments.
This should be private, but XFrameImpl needs to access it and current baseline gcc doesn't support forward definition of anonymous classes. You probably should use EnableHeadlessMode instead.
mode | DialogCancel mode value |
Definition at line 1434 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, ImplSVAppData::meDialogCancel, and mode.
Referenced by EnableHeadlessMode().
|
static |
Set the default name of the application for message dialogs and printing.
rDisplayName | const reference to string to set the Display name to. |
Definition at line 1202 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mxDisplayName.
|
static |
Setup a new graphics filter.
rLink | Const reference to a Link object, which the filter calls upon. |
Definition at line 1520 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maGDIData, and ImplSVGDIData::mxGrfConverter.
|
static |
Sets up help.
pHelp | Pointer to a Help object (optional, can by NULL) |
Definition at line 1340 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mpHelp.
|
static |
Sets the application's settings and notifies all windows of the change.
rSettings | const reference to settings object used to change the application's settings. |
Definition at line 544 of file svapp.cxx.
References AllSettings::GetChangeFlags(), OutputDevice::GetDPIX(), OutputDevice::GetDPIY(), LanguageTag::getLanguageType(), OutputDevice::GetMapMode(), vcl::Window::GetOutDev(), AllSettings::GetUILanguageTag(), ImplCallEventListenersApplicationDataChanged(), vcl::Window::ImplGetClientWindow(), ImplGetSVData(), vcl::Window::ImplInitAppFontData(), OutputDevice::IsMapModeEnabled(), ImplSVData::maAppData, ImplSVData::maFrameData, ImplSVData::maGDIData, ImplSVData::mbResLocaleSet, VirtualDevice::mbScreenComp, ImplSVFrameData::mpFirstFrame, ImplSVGDIData::mpFirstVirDev, VirtualDevice::mpNext, vcl::Window::mpWindowImpl, ImplSVAppData::mxSettings, OutputDevice::SetDPIX(), OutputDevice::SetDPIY(), OutputDevice::SetMapMode(), SETTINGS, and vcl::Window::UpdateSettings().
Referenced by ImplHandleSalSettings(), InitAccessBridge(), and AllSettings::LocaleSettingsChanged().
|
static |
Make a dialog box a system window or not.
nMode | Can be either: SystemWindowFlags::NOAUTOMODE (0x0001) or SystemWindowFlags::DIALOG (0x0002) |
Definition at line 1444 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::maAppData, and ImplSVAppData::mnSysWinMode.
Referenced by VCLExceptionSignal_impl().
|
static |
Definition at line 1572 of file svapp.cxx.
References ImplGetSalSystem(), SAL_WARN, SALSYSTEM_SHOWNATIVEMSGBOX_BTN_OK, SalSystem::ShowNativeMessageBox(), and sMessage.
|
virtual |
|
static |
Update main thread identifier.
Definition at line 1345 of file svapp.cxx.
References ImplGetSVData(), ImplSVData::mpDefInst, and SalInstance::updateMainThread().
|
static |
Process the next event.
It sleeps if no event is available for processing and just returns if an event was processed.
Definition at line 428 of file svapp.cxx.
References ImplYield(), IsOnSystemEventLoop(), and SAL_WARN.
Referenced by SystemWindow::ensureRepaint(), Execute(), Dialog::Execute(), MenuFloatingWindow::Execute(), and ImplHandleExtTextInput().
LibreOfficeKitCallback Application::m_pCallback |
Definition at line 1322 of file svapp.hxx.
Referenced by Application(), and libreOfficeKitViewCallback().
void* Application::m_pCallbackData |
Definition at line 1321 of file svapp.hxx.
Referenced by Application(), and libreOfficeKitViewCallback().