Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
b4a42246
Kaydet (Commit)
b4a42246
authored
Nis 02, 2013
tarafından
Caolán McNamara
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
teach DialControl how to resize
Change-Id: Icb6cf6ce3dfcb37fc06b4222c272a1abf893dc73
üst
df311b82
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
42 additions
and
14 deletions
+42
-14
dialcontrol.hxx
svx/inc/svx/dialcontrol.hxx
+3
-0
dialcontrol.cxx
svx/source/dialog/dialcontrol.cxx
+39
-14
No files found.
svx/inc/svx/dialcontrol.hxx
Dosyayı görüntüle @
b4a42246
...
@@ -66,6 +66,9 @@ public:
...
@@ -66,6 +66,9 @@ public:
virtual
void
KeyInput
(
const
KeyEvent
&
rKEvt
);
virtual
void
KeyInput
(
const
KeyEvent
&
rKEvt
);
virtual
void
LoseFocus
();
virtual
void
LoseFocus
();
virtual
Size
GetOptimalSize
()
const
;
virtual
void
Resize
();
/** Returns true, if the control is not in "don't care" state. */
/** Returns true, if the control is not in "don't care" state. */
bool
HasRotation
()
const
;
bool
HasRotation
()
const
;
/** Sets the control to "don't care" state. */
/** Sets the control to "don't care" state. */
...
...
svx/source/dialog/dialcontrol.cxx
Dosyayı görüntüle @
b4a42246
...
@@ -40,7 +40,8 @@ class DialControlBmp : public VirtualDevice
...
@@ -40,7 +40,8 @@ class DialControlBmp : public VirtualDevice
public
:
public
:
explicit
DialControlBmp
(
Window
&
rParent
);
explicit
DialControlBmp
(
Window
&
rParent
);
void
InitBitmap
(
const
Size
&
rSize
,
const
Font
&
rFont
);
void
InitBitmap
(
const
Font
&
rFont
);
void
SetSize
(
const
Size
&
rSize
);
void
CopyBackground
(
const
DialControlBmp
&
rSrc
);
void
CopyBackground
(
const
DialControlBmp
&
rSrc
);
void
DrawBackground
(
const
Size
&
rSize
,
bool
bEnabled
);
void
DrawBackground
(
const
Size
&
rSize
,
bool
bEnabled
);
void
DrawElements
(
const
String
&
rText
,
sal_Int32
nAngle
);
void
DrawElements
(
const
String
&
rText
,
sal_Int32
nAngle
);
...
@@ -52,7 +53,7 @@ private:
...
@@ -52,7 +53,7 @@ private:
const
Color
&
GetButtonLineColor
()
const
;
const
Color
&
GetButtonLineColor
()
const
;
const
Color
&
GetButtonFillColor
(
bool
bMain
)
const
;
const
Color
&
GetButtonFillColor
(
bool
bMain
)
const
;
void
Init
(
const
Size
&
rSize
);
void
Init
();
void
DrawBackground
();
void
DrawBackground
();
Window
&
mrParent
;
Window
&
mrParent
;
...
@@ -74,15 +75,16 @@ DialControlBmp::DialControlBmp( Window& rParent ) :
...
@@ -74,15 +75,16 @@ DialControlBmp::DialControlBmp( Window& rParent ) :
EnableRTL
(
sal_False
);
EnableRTL
(
sal_False
);
}
}
void
DialControlBmp
::
InitBitmap
(
const
Size
&
rSize
,
const
Font
&
rFont
)
void
DialControlBmp
::
InitBitmap
(
const
Font
&
rFont
)
{
{
Init
(
rSize
);
Init
();
SetFont
(
rFont
);
SetFont
(
rFont
);
}
}
void
DialControlBmp
::
CopyBackground
(
const
DialControlBmp
&
rSrc
)
void
DialControlBmp
::
CopyBackground
(
const
DialControlBmp
&
rSrc
)
{
{
Init
(
rSrc
.
maRect
.
GetSize
()
);
Init
();
SetSize
(
rSrc
.
maRect
.
GetSize
());
mbEnabled
=
rSrc
.
mbEnabled
;
mbEnabled
=
rSrc
.
mbEnabled
;
Point
aPos
;
Point
aPos
;
DrawBitmapEx
(
aPos
,
rSrc
.
GetBitmapEx
(
aPos
,
maRect
.
GetSize
()
)
);
DrawBitmapEx
(
aPos
,
rSrc
.
GetBitmapEx
(
aPos
,
maRect
.
GetSize
()
)
);
...
@@ -90,7 +92,8 @@ void DialControlBmp::CopyBackground( const DialControlBmp& rSrc )
...
@@ -90,7 +92,8 @@ void DialControlBmp::CopyBackground( const DialControlBmp& rSrc )
void
DialControlBmp
::
DrawBackground
(
const
Size
&
rSize
,
bool
bEnabled
)
void
DialControlBmp
::
DrawBackground
(
const
Size
&
rSize
,
bool
bEnabled
)
{
{
Init
(
rSize
);
Init
();
SetSize
(
rSize
);
mbEnabled
=
bEnabled
;
mbEnabled
=
bEnabled
;
DrawBackground
();
DrawBackground
();
}
}
...
@@ -157,15 +160,19 @@ const Color& DialControlBmp::GetButtonFillColor( bool bMain ) const
...
@@ -157,15 +160,19 @@ const Color& DialControlBmp::GetButtonFillColor( bool bMain ) const
return
mbEnabled
?
(
bMain
?
rSett
.
GetMenuColor
()
:
rSett
.
GetHighlightColor
())
:
rSett
.
GetDisableColor
();
return
mbEnabled
?
(
bMain
?
rSett
.
GetMenuColor
()
:
rSett
.
GetHighlightColor
())
:
rSett
.
GetDisableColor
();
}
}
void
DialControlBmp
::
Init
(
const
Size
&
rSize
)
void
DialControlBmp
::
Init
()
{
SetSettings
(
mrParent
.
GetSettings
());
SetBackground
();
}
void
DialControlBmp
::
SetSize
(
const
Size
&
rSize
)
{
{
SetSettings
(
mrParent
.
GetSettings
()
);
maRect
.
SetPos
(
Point
(
0
,
0
)
);
maRect
.
SetPos
(
Point
(
0
,
0
)
);
maRect
.
SetSize
(
rSize
);
maRect
.
SetSize
(
rSize
);
mnCenterX
=
rSize
.
Width
()
/
2
;
mnCenterX
=
rSize
.
Width
()
/
2
;
mnCenterY
=
rSize
.
Height
()
/
2
;
mnCenterY
=
rSize
.
Height
()
/
2
;
SetOutputSize
(
rSize
);
SetOutputSize
(
rSize
);
SetBackground
();
}
}
void
DialControlBmp
::
DrawBackground
()
void
DialControlBmp
::
DrawBackground
()
...
@@ -249,6 +256,7 @@ struct DialControl_Impl
...
@@ -249,6 +256,7 @@ struct DialControl_Impl
explicit
DialControl_Impl
(
Window
&
rParent
);
explicit
DialControl_Impl
(
Window
&
rParent
);
void
Init
(
const
Size
&
rWinSize
,
const
Font
&
rWinFont
);
void
Init
(
const
Size
&
rWinSize
,
const
Font
&
rWinFont
);
void
SetSize
(
const
Size
&
rWinSize
);
};
};
// ----------------------------------------------------------------------------
// ----------------------------------------------------------------------------
...
@@ -267,18 +275,24 @@ DialControl_Impl::DialControl_Impl( Window& rParent ) :
...
@@ -267,18 +275,24 @@ DialControl_Impl::DialControl_Impl( Window& rParent ) :
}
}
void
DialControl_Impl
::
Init
(
const
Size
&
rWinSize
,
const
Font
&
rWinFont
)
void
DialControl_Impl
::
Init
(
const
Size
&
rWinSize
,
const
Font
&
rWinFont
)
{
maWinFont
=
rWinFont
;
maWinFont
.
SetTransparent
(
true
);
maBmpBuffered
.
InitBitmap
(
maWinFont
);
SetSize
(
rWinSize
);
}
void
DialControl_Impl
::
SetSize
(
const
Size
&
rWinSize
)
{
{
// "(x - 1) | 1" creates odd value <= x, to have a well-defined center pixel position
// "(x - 1) | 1" creates odd value <= x, to have a well-defined center pixel position
maWinSize
=
Size
(
(
rWinSize
.
Width
()
-
1
)
|
1
,
(
rWinSize
.
Height
()
-
1
)
|
1
);
maWinSize
=
Size
(
(
rWinSize
.
Width
()
-
1
)
|
1
,
(
rWinSize
.
Height
()
-
1
)
|
1
);
maWinFont
=
rWinFont
;
mnCenterX
=
maWinSize
.
Width
()
/
2
;
mnCenterX
=
maWinSize
.
Width
()
/
2
;
mnCenterY
=
maWinSize
.
Height
()
/
2
;
mnCenterY
=
maWinSize
.
Height
()
/
2
;
maWinFont
.
SetTransparent
(
sal_True
);
maBmpEnabled
.
DrawBackground
(
maWinSize
,
true
);
maBmpEnabled
.
DrawBackground
(
maWinSize
,
true
);
maBmpDisabled
.
DrawBackground
(
maWinSize
,
false
);
maBmpDisabled
.
DrawBackground
(
maWinSize
,
false
);
maBmpBuffered
.
InitBitmap
(
maWinSize
,
maWinFont
);
maBmpBuffered
.
SetSize
(
maWinSize
);
}
}
// ============================================================================
// ============================================================================
...
@@ -303,7 +317,13 @@ DialControl::~DialControl()
...
@@ -303,7 +317,13 @@ DialControl::~DialControl()
extern
"C"
SAL_DLLPUBLIC_EXPORT
Window
*
SAL_CALL
makeDialControl
(
Window
*
pParent
,
VclBuilder
::
stringmap
&
)
extern
"C"
SAL_DLLPUBLIC_EXPORT
Window
*
SAL_CALL
makeDialControl
(
Window
*
pParent
,
VclBuilder
::
stringmap
&
)
{
{
return
new
DialControl
(
pParent
,
WB_BORDER
|
WB_TABSTOP
);
return
new
DialControl
(
pParent
,
WB_TABSTOP
);
}
void
DialControl
::
Resize
()
{
mpImpl
->
SetSize
(
GetOutputSizePixel
());
InvalidateControl
();
}
}
void
DialControl
::
Paint
(
const
Rectangle
&
)
void
DialControl
::
Paint
(
const
Rectangle
&
)
...
@@ -408,6 +428,11 @@ sal_Int32 DialControl::GetRotation() const
...
@@ -408,6 +428,11 @@ sal_Int32 DialControl::GetRotation() const
return
mpImpl
->
mnAngle
;
return
mpImpl
->
mnAngle
;
}
}
Size
DialControl
::
GetOptimalSize
()
const
{
return
LogicToPixel
(
Size
(
42
,
43
),
MAP_APPFONT
);
}
void
DialControl
::
SetRotation
(
sal_Int32
nAngle
)
void
DialControl
::
SetRotation
(
sal_Int32
nAngle
)
{
{
ImplSetRotation
(
nAngle
,
false
);
ImplSetRotation
(
nAngle
,
false
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment