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
17ea32a1
Kaydet (Commit)
17ea32a1
authored
Tem 08, 2012
tarafından
Ruslan Kabatsayev
Kaydeden (comit)
Michael Meeks
Tem 10, 2012
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
Make bottom tabbar items follow native theme
Change-Id: Ia1c4b4ece81655a91c6e489ee51291684e06c157
üst
1c222c5a
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
43 additions
and
4 deletions
+43
-4
tabbar.cxx
svtools/source/control/tabbar.cxx
+33
-3
salnativewidgets.hxx
vcl/inc/vcl/salnativewidgets.hxx
+5
-0
salnativewidgets-gtk.cxx
vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx
+5
-1
No files found.
svtools/source/control/tabbar.cxx
Dosyayı görüntüle @
17ea32a1
...
...
@@ -1098,14 +1098,20 @@ public:
void
drawOutputAreaBorder
()
{
Size
aOutputSize
=
mrParent
.
GetOutputSizePixel
();
Rectangle
aOutRect
=
mrParent
.
GetPageArea
();
Rectangle
borderRect
(
Point
(
aOutRect
.
Left
(),
-
10
),
Size
(
aOutputSize
.
Width
(),
12
));
if
(
mrParent
.
IsNativeControlSupported
(
CTRL_FRAME
,
PART_ENTIRE_CONTROL
)
&&
mrParent
.
DrawNativeControl
(
CTRL_FRAME
,
PART_ENTIRE_CONTROL
,
borderRect
,
CTRL_STATE_ENABLED
,
ImplControlValue
(
FRAME_DRAW_IN
),
rtl
::
OUString
())
)
return
;
WinBits
nWinStyle
=
mrParent
.
GetStyle
();
// Bei Border oben und unten einen Strich extra malen
if
(
(
nWinStyle
&
WB_BORDER
)
||
(
nWinStyle
&
WB_TOPBORDER
)
)
{
Size
aOutputSize
=
mrParent
.
GetOutputSizePixel
();
Rectangle
aOutRect
=
mrParent
.
GetPageArea
();
// Bei 3D-Tabs wird auch der Border in 3D gemalt
if
(
nWinStyle
&
WB_3DTAB
)
{
...
...
@@ -1198,6 +1204,27 @@ public:
void
drawTab
()
{
ControlState
nState
(
CTRL_STATE_ENABLED
);
if
(
mbSelected
)
nState
|=
CTRL_STATE_SELECTED
;
TabitemValue
tiValue
;
tiValue
.
mnPosition
|=
TABITEM_IS_AT_BOTTOM
;
Rectangle
tabRect
(
maRect
);
tabRect
.
Left
()
+=
5
;
tabRect
.
Right
()
-=
4
;
tabRect
.
Bottom
()
+=
1
;
if
(
!
mbSelected
)
{
tabRect
.
Bottom
()
-=
2
;
tabRect
.
Top
()
+=
2
;
}
if
(
mrParent
.
IsNativeControlSupported
(
CTRL_TAB_ITEM
,
PART_ENTIRE_CONTROL
)
&&
mrParent
.
DrawNativeControl
(
CTRL_TAB_ITEM
,
PART_ENTIRE_CONTROL
,
tabRect
,
nState
,
tiValue
,
rtl
::
OUString
())
)
{
return
;
}
mrParent
.
SetLineColor
(
mpStyleSettings
->
GetDarkShadowColor
());
// Je nach Status die richtige FillInBrush setzen
...
...
@@ -1421,10 +1448,13 @@ void TabBar::Paint( const Rectangle& )
aDrawer
.
drawText
(
aText
);
if
(
bCurrent
)
{
if
(
!
IsNativeControlSupported
(
CTRL_TAB_ITEM
,
PART_ENTIRE_CONTROL
))
{
SetLineColor
();
SetFillColor
(
aSelectColor
);
aDrawer
.
drawOverTopBorder
(
mnWinStyle
&
WB_3DTAB
);
}
return
;
}
...
...
vcl/inc/vcl/salnativewidgets.hxx
Dosyayı görüntüle @
17ea32a1
...
...
@@ -366,16 +366,20 @@ class VCL_DLLPUBLIC SliderValue : public ImplControlValue
#define TABITEM_RIGHTALIGNED 0x002 // the tabitem is aligned with the right border of the TabControl
#define TABITEM_FIRST_IN_GROUP 0x004 // the tabitem is the first in group of tabitems
#define TABITEM_LAST_IN_GROUP 0x008 // the tabitem is the last in group of tabitems
/* This constant is independent from the ones above */
#define TABITEM_IS_AT_BOTTOM 0x001 // the tabitem at the bottom of the TabControl
class
VCL_DLLPUBLIC
TabitemValue
:
public
ImplControlValue
{
public
:
unsigned
int
mnAlignment
;
unsigned
int
mnPosition
;
inline
TabitemValue
()
:
ImplControlValue
(
CTRL_TAB_ITEM
,
BUTTONVALUE_DONTKNOW
,
0
)
{
mnAlignment
=
0
;
mnPosition
=
0
;
};
virtual
~
TabitemValue
();
virtual
TabitemValue
*
clone
()
const
;
...
...
@@ -386,6 +390,7 @@ class VCL_DLLPUBLIC TabitemValue : public ImplControlValue
sal_Bool
isNotAligned
()
const
{
return
(
mnAlignment
&
(
TABITEM_LEFTALIGNED
|
TABITEM_RIGHTALIGNED
))
==
0
;
}
sal_Bool
isFirst
()
const
{
return
(
mnAlignment
&
TABITEM_FIRST_IN_GROUP
)
!=
0
;
}
sal_Bool
isLast
()
const
{
return
(
mnAlignment
&
TABITEM_LAST_IN_GROUP
)
!=
0
;
}
sal_Bool
isAtBottom
()
const
{
return
(
mnPosition
&
TABITEM_IS_AT_BOTTOM
)
!=
0
;
}
};
/* SpinbuttonValue:
...
...
vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx
Dosyayı görüntüle @
17ea32a1
...
...
@@ -2680,7 +2680,11 @@ sal_Bool GtkSalGraphics::NWPaintGTKTabItem( ControlType nType, ControlPart,
case
CTRL_TAB_ITEM
:
{
const
TabitemValue
*
tiValue
=
static_cast
<
const
TabitemValue
*>
(
&
aValue
);
stateType
=
(
nState
&
CTRL_STATE_SELECTED
)
?
GTK_STATE_NORMAL
:
GTK_STATE_ACTIVE
;
GtkPositionType
gapSide
(
GTK_POS_BOTTOM
);
if
(
tiValue
->
isAtBottom
())
gapSide
=
GTK_POS_TOP
;
// First draw the background
gtk_paint_flat_box
(
gWidgetData
[
m_nXScreen
].
gNotebookWidget
->
style
,
pixmap
,
...
...
@@ -2696,7 +2700,7 @@ sal_Bool GtkSalGraphics::NWPaintGTKTabItem( ControlType nType, ControlPart,
gtk_paint_extension
(
gWidgetData
[
m_nXScreen
].
gNotebookWidget
->
style
,
pixmap
,
stateType
,
GTK_SHADOW_OUT
,
NULL
,
gWidgetData
[
m_nXScreen
].
gNotebookWidget
,
(
char
*
)
"tab"
,
(
tabRect
.
Left
()
-
pixmapRect
.
Left
()),
(
tabRect
.
Top
()
-
pixmapRect
.
Top
()),
tabRect
.
GetWidth
(),
tabRect
.
GetHeight
(),
GTK_POS_BOTTOM
);
tabRect
.
GetWidth
(),
tabRect
.
GetHeight
(),
gapSide
);
g_object_steal_data
(
G_OBJECT
(
pixmap
),
tabPrelitDataName
);
...
...
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