xref: /trunk/main/vcl/inc/win/salvd.h (revision 5d328669834268fa077da8fd0d9b44cc5ce2793b)
12123d757SAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
32123d757SAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
42123d757SAndrew Rist  * or more contributor license agreements.  See the NOTICE file
52123d757SAndrew Rist  * distributed with this work for additional information
62123d757SAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
72123d757SAndrew Rist  * to you under the Apache License, Version 2.0 (the
82123d757SAndrew Rist  * "License"); you may not use this file except in compliance
92123d757SAndrew Rist  * with the License.  You may obtain a copy of the License at
10cdf0e10cSrcweir  *
112123d757SAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12cdf0e10cSrcweir  *
132123d757SAndrew Rist  * Unless required by applicable law or agreed to in writing,
142123d757SAndrew Rist  * software distributed under the License is distributed on an
152123d757SAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
162123d757SAndrew Rist  * KIND, either express or implied.  See the License for the
172123d757SAndrew Rist  * specific language governing permissions and limitations
182123d757SAndrew Rist  * under the License.
19cdf0e10cSrcweir  *
202123d757SAndrew Rist  *************************************************************/
212123d757SAndrew Rist 
222123d757SAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir #ifndef _SV_SALVD_H
25cdf0e10cSrcweir #define _SV_SALVD_H
26cdf0e10cSrcweir 
27cdf0e10cSrcweir #include <salvd.hxx>
28cdf0e10cSrcweir 
29cdf0e10cSrcweir class WinSalGraphics;
30cdf0e10cSrcweir 
31cdf0e10cSrcweir // -----------------
32cdf0e10cSrcweir // - SalVirDevData -
33cdf0e10cSrcweir // -----------------
34cdf0e10cSrcweir 
35cdf0e10cSrcweir class WinSalVirtualDevice : public SalVirtualDevice
36cdf0e10cSrcweir {
37*5f27b83cSArmin Le Grand private:
38*5f27b83cSArmin Le Grand     HDC                     mhLocalDC;              // HDC or 0 for Cache Device
39*5f27b83cSArmin Le Grand 
40cdf0e10cSrcweir public:
getHDC()41*5f27b83cSArmin Le Grand     HDC getHDC() { return mhLocalDC; }
setHDC(HDC aNew)42*5f27b83cSArmin Le Grand     void setHDC(HDC aNew) { mhLocalDC = aNew; }
43*5f27b83cSArmin Le Grand 
44*5f27b83cSArmin Le Grand public:
45cdf0e10cSrcweir     HBITMAP                 mhBmp;                  // Memory Bitmap
46cdf0e10cSrcweir     HBITMAP                 mhDefBmp;               // Default Bitmap
47cdf0e10cSrcweir     WinSalGraphics*         mpGraphics;             // current VirDev graphics
48cdf0e10cSrcweir     WinSalVirtualDevice*    mpNext;                 // next VirDev
49cdf0e10cSrcweir     sal_uInt16                  mnBitCount;             // BitCount (0 or 1)
50cdf0e10cSrcweir     sal_Bool                    mbGraphics;             // is Graphics used
51cdf0e10cSrcweir     sal_Bool                    mbForeignDC;            // uses a foreign DC instead of a bitmap
52cdf0e10cSrcweir 
53cdf0e10cSrcweir     WinSalVirtualDevice();
54cdf0e10cSrcweir     virtual ~WinSalVirtualDevice();
55cdf0e10cSrcweir 
56cdf0e10cSrcweir     virtual SalGraphics*            GetGraphics();
57cdf0e10cSrcweir     virtual void                    ReleaseGraphics( SalGraphics* pGraphics );
58cdf0e10cSrcweir     virtual sal_Bool                    SetSize( long nNewDX, long nNewDY );
59cdf0e10cSrcweir     virtual void                    GetSize( long& rWidth, long& rHeight );
60cdf0e10cSrcweir };
61cdf0e10cSrcweir 
62cdf0e10cSrcweir #endif // _SV_SALVD_H
63