calc: on editing invalidation of view with different zoom is wrong
[LibreOffice.git] / vcl / inc / salsys.hxx
blob265380a1de2ebc9bea0609e8bf88d0f5c6e6d9fe
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
20 #ifndef INCLUDED_VCL_INC_SALSYS_HXX
21 #define INCLUDED_VCL_INC_SALSYS_HXX
23 #include <tools/gen.hxx>
24 #include <vcl/dllapi.h>
25 #include <rtl/ustring.hxx>
27 // Button identifier for ShowNativeMessageBox
28 const int SALSYSTEM_SHOWNATIVEMSGBOX_BTN_OK = 1;
30 class VCL_PLUGIN_PUBLIC SalSystem
32 public:
33 virtual ~SalSystem();
35 // get info about the display
37 /* Gets the number of active screens attached to the display
39 @returns the number of active screens
41 virtual unsigned int GetDisplayScreenCount() = 0;
42 /* Queries whether multiple screens are part of one bigger display
44 @returns true if screens form one big display
45 false if screens are distinct and windows cannot
46 be moved between, or span multiple screens
48 virtual bool IsUnifiedDisplay() { return true; }
49 /* Queries the default screen number. The default screen is the
50 screen on which windows will appear if no special positioning
51 is made.
53 @returns the default screen number
55 virtual unsigned int GetDisplayBuiltInScreen() { return 0; }
56 /* Gets relative position and size of the screens attached to the display
58 @param nScreen
59 The screen number to be queried
61 @returns position: (0,0) in case of IsMultiscreen() == true
62 else position relative to whole display
63 size: size of the screen
65 virtual tools::Rectangle GetDisplayScreenPosSizePixel(unsigned int nScreen) = 0;
67 /* Shows a native message box with the specified title, message and button
68 combination.
70 @param rTitle
71 The title to be shown by the dialog box.
73 @param rMessage
74 The message to be shown by the dialog box.
76 @returns the identifier of the button that was pressed by the user.
77 See button identifier above. If the function fails the
78 return value is 0.
80 virtual int ShowNativeMessageBox(const OUString& rTitle, const OUString& rMessage) = 0;
83 VCL_DLLPUBLIC SalSystem* ImplGetSalSystem();
85 #define VIRTUAL_DESKTOP_WIDTH 1024
86 #define VIRTUAL_DESKTOP_HEIGHT 768
88 #endif // INCLUDED_VCL_INC_SALSYS_HXX
90 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */