xref: /trunk/main/sfx2/source/sidebar/Layouter.cxx (revision 8f2ce5de)
1 /**************************************************************
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one
4  * or more contributor license agreements.  See the NOTICE file
5  * distributed with this work for additional information
6  * regarding copyright ownership.  The ASF licenses this file
7  * to you under the Apache License, Version 2.0 (the
8  * "License"); you may not use this file except in compliance
9  * with the License.  You may obtain a copy of the License at
10  *
11  *   http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing,
14  * software distributed under the License is distributed on an
15  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16  * KIND, either express or implied.  See the License for the
17  * specific language governing permissions and limitations
18  * under the License.
19  *
20  *************************************************************/
21 
22 #include "precompiled_sfx2.hxx"
23 #include "sfx2/sidebar/Layouter.hxx"
24 
25 #include <vcl/window.hxx>
26 #include <vcl/fixed.hxx>
27 #include <vcl/outdev.hxx>
28 
29 namespace sfx2 { namespace sidebar {
30 
EnlargeControlHorizontally(Window & rControl,const sal_Int32 nDeltaX)31 void Layouter::EnlargeControlHorizontally (
32     Window& rControl,
33     const sal_Int32 nDeltaX)
34 {
35     Size aSize (rControl.GetSizePixel());
36     aSize.Width() += nDeltaX;
37     rControl.SetSizePixel(aSize);
38 
39 }
40 
41 
42 
43 
SetWidth(Window & rControl,const sal_Int32 nWidth)44 void Layouter::SetWidth (
45     Window& rControl,
46     const sal_Int32 nWidth)
47 {
48     rControl.SetPosSizePixel(
49         0,0,
50         nWidth,0,
51         WINDOW_POSSIZE_WIDTH);
52 }
53 
54 
55 
56 
SetRight(Window & rControl,const sal_Int32 nRight)57 void Layouter::SetRight (
58     Window& rControl,
59     const sal_Int32 nRight)
60 {
61     rControl.SetPosSizePixel(
62         0,0,
63         nRight-rControl.GetPosPixel().X(),0,
64         WINDOW_POSSIZE_WIDTH);
65 }
66 
67 
68 
69 
MoveControlHorizontally(Window & rControl,const sal_Int32 nDeltaX)70 void Layouter::MoveControlHorizontally (
71     Window& rControl,
72     const sal_Int32 nDeltaX)
73 {
74     Point aPosition (rControl.GetPosPixel());
75     aPosition.Move(nDeltaX, 0);
76     rControl.SetPosPixel(aPosition);
77 }
78 
79 
80 
81 
SetHorizontalPosition(Window & rControl,const sal_Int32 nX)82 void Layouter::SetHorizontalPosition (
83     Window& rControl,
84     const sal_Int32 nX)
85 {
86     rControl.SetPosPixel(Point(nX, rControl.GetPosPixel().Y()));
87 }
88 
89 
90 
91 
PrepareForLayouting(Window &)92 void Layouter::PrepareForLayouting (
93     Window& /* rControl */)
94 {
95     //    rControl.SetStyle(rControl.GetStyle() | WB_PATHELLIPSIS | WB_INFO);
96 }
97 
98 
99 
100 
MapX(const Window & rControl,const sal_Int32 nValue)101 sal_Int32 Layouter::MapX (
102     const Window& rControl,
103     const sal_Int32 nValue)
104 {
105     return rControl.LogicToPixel(Point(nValue,0), MAP_APPFONT).X();
106 }
107 
108 
109 
110 
MapWidth(const Window & rControl,const sal_Int32 nValue)111 sal_Int32 Layouter::MapWidth (
112     const Window& rControl,
113     const sal_Int32 nValue)
114 {
115     return rControl.LogicToPixel(Point(nValue,0), MAP_APPFONT).X();
116 }
117 
118 } } // end of namespace sfx2::sidebar
119