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
79af094f
Kaydet (Commit)
79af094f
authored
Nis 04, 2013
tarafından
Caolán McNamara
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
convert about dialog to .ui format
Change-Id: I7a4636c212e19702b94f5c42491c9785f1eccc00
üst
e910123e
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
390 additions
and
400 deletions
+390
-400
AllLangResTarget_cui.mk
cui/AllLangResTarget_cui.mk
+0
-1
UI_cui.mk
cui/UI_cui.mk
+1
-0
about.cxx
cui/source/dialogs/about.cxx
+66
-214
about.hrc
cui/source/dialogs/about.hrc
+0
-41
about.src
cui/source/dialogs/about.src
+0
-112
dlgfact.cxx
cui/source/factory/dlgfact.cxx
+1
-1
about.hxx
cui/source/inc/about.hxx
+26
-31
aboutdialog.ui
cui/uiconfig/ui/aboutdialog.ui
+296
-0
No files found.
cui/AllLangResTarget_cui.mk
Dosyayı görüntüle @
79af094f
...
@@ -53,7 +53,6 @@ $(eval $(call gb_SrsTarget_add_files,cui/res,\
...
@@ -53,7 +53,6 @@ $(eval $(call gb_SrsTarget_add_files,cui/res,\
cui/source/customize/cfg.src \
cui/source/customize/cfg.src \
cui/source/customize/eventdlg.src \
cui/source/customize/eventdlg.src \
cui/source/customize/macropg.src \
cui/source/customize/macropg.src \
cui/source/dialogs/about.src \
cui/source/dialogs/colorpicker.src \
cui/source/dialogs/colorpicker.src \
cui/source/dialogs/commonlingui.src \
cui/source/dialogs/commonlingui.src \
cui/source/dialogs/cuiimapdlg.src \
cui/source/dialogs/cuiimapdlg.src \
...
...
cui/UI_cui.mk
Dosyayı görüntüle @
79af094f
...
@@ -10,6 +10,7 @@
...
@@ -10,6 +10,7 @@
$(eval $(call gb_UI_UI,cui))
$(eval $(call gb_UI_UI,cui))
$(eval $(call gb_UI_add_uifiles,cui,\
$(eval $(call gb_UI_add_uifiles,cui,\
cui/uiconfig/ui/aboutdialog \
cui/uiconfig/ui/asiantypography \
cui/uiconfig/ui/asiantypography \
cui/uiconfig/ui/backgroundpage \
cui/uiconfig/ui/backgroundpage \
cui/uiconfig/ui/borderpage \
cui/uiconfig/ui/borderpage \
...
...
cui/source/dialogs/about.cxx
Dosyayı görüntüle @
79af094f
...
@@ -17,6 +17,7 @@
...
@@ -17,6 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
*/
#include <vcl/layout.hxx>
#include <vcl/svapp.hxx>
#include <vcl/svapp.hxx>
#include <vcl/msgbox.hxx>
#include <vcl/msgbox.hxx>
...
@@ -41,7 +42,6 @@
...
@@ -41,7 +42,6 @@
#include <sfx2/sfxuno.hxx>
#include <sfx2/sfxuno.hxx>
#include <sfx2/sfxcommands.h>
#include <sfx2/sfxcommands.h>
#include "about.hxx"
#include "about.hxx"
#include "about.hrc"
#include <sfx2/sfxdefs.hxx>
#include <sfx2/sfxdefs.hxx>
#include <sfx2/app.hxx>
#include <sfx2/app.hxx>
#include <rtl/ustrbuf.hxx>
#include <rtl/ustrbuf.hxx>
...
@@ -58,52 +58,42 @@ enum AboutDialogButton
...
@@ -58,52 +58,42 @@ enum AboutDialogButton
WEBSITE_BUTTON
WEBSITE_BUTTON
};
};
AboutDialog
::
AboutDialog
(
Window
*
pParent
,
const
ResId
&
rId
)
:
AboutDialog
::
AboutDialog
(
Window
*
pParent
)
SfxModalDialog
(
pParent
,
rId
),
:
SfxModalDialog
(
pParent
,
"AboutDialog"
,
"cui/ui/aboutdialog.ui"
)
aVersionText
(
this
,
ResId
(
ABOUT_VERSION_TEXT
,
*
rId
.
GetResMgr
()
)
),
aDescriptionText
(
this
,
ResId
(
ABOUT_DESCRIPTION_TEXT
,
*
rId
.
GetResMgr
()
)
),
aCopyrightText
(
this
,
ResId
(
ABOUT_COPYRIGHT_TEXT
,
*
rId
.
GetResMgr
()
)
),
aLogoImage
(
this
),
aLogoReplacement
(
this
,
ResId
(
ABOUT_LOGO_REPLACEMENT
,
*
rId
.
GetResMgr
()
)
),
aCreditsButton
(
this
,
ResId
(
ABOUT_BTN_CREDITS
,
*
rId
.
GetResMgr
()
)
),
aWebsiteButton
(
this
,
ResId
(
ABOUT_BTN_WEBSITE
,
*
rId
.
GetResMgr
()
)
),
aCancelButton
(
this
,
ResId
(
ABOUT_BTN_CANCEL
,
*
rId
.
GetResMgr
()
)
),
m_aVersionTextStr
(
ResId
(
ABOUT_STR_VERSION
,
*
rId
.
GetResMgr
()).
toString
().
trim
()),
m_aVendorTextStr
(
ResId
(
ABOUT_STR_VENDOR
,
*
rId
.
GetResMgr
())),
m_aCopyrightTextStr
(
ResId
(
ABOUT_STR_COPYRIGHT
,
*
rId
.
GetResMgr
())),
m_aBasedTextStr
(
ResId
(
ABOUT_STR_BASED
,
*
rId
.
GetResMgr
())),
m_aBasedDerivedTextStr
(
ResId
(
ABOUT_STR_BASED_DERIVED
,
*
rId
.
GetResMgr
())),
m_aCreditsLinkStr
(
ResId
(
ABOUT_STR_LINK_CREDITS
,
*
rId
.
GetResMgr
())),
m_sBuildStr
(
ResId
(
ABOUT_STR_BUILD
,
*
rId
.
GetResMgr
())),
m_aDescriptionTextStr
(
ResId
(
ABOUT_STR_DESCRIPTION
,
*
rId
.
GetResMgr
()))
{
{
// Populate text items
get
(
m_pLogoReplacement
,
"logoreplacement"
);
aLogoReplacement
.
SetText
(
utl
::
ConfigManager
::
getProductName
()
);
get
(
m_pLogoImage
,
"logo"
);
get
(
m_pVersion
,
"version"
);
aVersionText
.
SetText
(
GetVersionString
()
);
get
(
m_pDescriptionText
,
"description"
);
get
(
m_pCopyrightText
,
"copyright"
);
aDescriptionText
.
SetText
(
m_aDescriptionTextStr
);
m_aCopyrightTextStr
=
m_pCopyrightText
->
GetText
();
get
(
m_pWebsiteButton
,
"website"
);
rtl
::
OUString
aCopyrightString
=
GetCopyrightString
();
get
(
m_pCreditsButton
,
"credits"
);
aCopyrightText
.
SetText
(
aCopyrightString
);
m_aCreditsLinkStr
=
get
<
FixedText
>
(
"link"
)
->
GetText
();
m_sBuildStr
=
get
<
FixedText
>
(
"buildid"
)
->
GetText
();
m_aVendorTextStr
=
get
<
FixedText
>
(
"vendor"
)
->
GetText
();
m_aVersionTextStr
=
m_pVersion
->
GetText
();
m_aBasedTextStr
=
get
<
FixedText
>
(
"libreoffice"
)
->
GetText
();
m_aBasedDerivedTextStr
=
get
<
FixedText
>
(
"derived"
)
->
GetText
();
m_pVersion
->
SetText
(
GetVersionString
());
OUString
aCopyrightString
=
GetCopyrightString
();
m_pCopyrightText
->
SetText
(
aCopyrightString
);
StyleControls
();
StyleControls
();
LayoutControls
();
SetLogo
();
// Allow the button to be identifiable once they are clicked
// Allow the button to be identifiable once they are clicked
aCreditsButton
.
SetData
(
(
void
*
)
CREDITS_BUTTON
);
m_pCreditsButton
->
SetData
(
(
void
*
)
CREDITS_BUTTON
);
aWebsiteButton
.
SetData
(
(
void
*
)
WEBSITE_BUTTON
);
m_pWebsiteButton
->
SetData
(
(
void
*
)
WEBSITE_BUTTON
);
// Connect all handlers
// Connect all handlers
aCreditsButton
.
SetClickHdl
(
LINK
(
this
,
AboutDialog
,
HandleClick
)
);
m_pCreditsButton
->
SetClickHdl
(
LINK
(
this
,
AboutDialog
,
HandleClick
)
);
aWebsiteButton
.
SetClickHdl
(
LINK
(
this
,
AboutDialog
,
HandleClick
)
);
m_pWebsiteButton
->
SetClickHdl
(
LINK
(
this
,
AboutDialog
,
HandleClick
)
);
aCancelButton
.
SetClickHdl
(
LINK
(
this
,
AboutDialog
,
CancelHdl
)
);
get
<
PushButton
>
(
"close"
)
->
GrabFocus
();
FreeResource
();
// explicit Help-Id
SetHelpId
(
CMD_SID_ABOUT
);
}
}
IMPL_LINK
(
AboutDialog
,
HandleClick
,
PushButton
*
,
pButton
)
IMPL_LINK
(
AboutDialog
,
HandleClick
,
PushButton
*
,
pButton
)
...
@@ -145,212 +135,80 @@ IMPL_LINK( AboutDialog, HandleClick, PushButton*, pButton )
...
@@ -145,212 +135,80 @@ IMPL_LINK( AboutDialog, HandleClick, PushButton*, pButton )
void
AboutDialog
::
StyleControls
()
void
AboutDialog
::
StyleControls
()
{
{
// Make all the controls have a transparent background
// Make all the controls have a transparent background
aLogoImage
.
SetBackground
();
m_pLogoImage
->
SetBackground
();
aLogoReplacement
.
SetPaintTransparent
(
sal_True
);
m_pLogoReplacement
->
SetPaintTransparent
(
true
);
aVersionText
.
SetPaintTransparent
(
sal_True
);
m_pVersion
->
SetPaintTransparent
(
true
);
aDescriptionText
.
SetPaintTransparent
(
sal_True
);
m_pDescriptionText
->
SetPaintTransparent
(
true
);
aCopyrightText
.
SetPaintTransparent
(
sal_True
);
m_pCopyrightText
->
SetPaintTransparent
(
true
);
Font
aLabelFont
=
GetSettings
().
GetStyleSettings
().
GetLabelFont
();
Font
aLabelFont
=
GetSettings
().
GetStyleSettings
().
GetLabelFont
();
Font
aLargeFont
=
aLabelFont
;
Font
aLargeFont
=
aLabelFont
;
aLargeFont
.
SetSize
(
Size
(
0
,
aLabelFont
.
GetSize
().
Height
()
*
3
)
);
aLargeFont
.
SetSize
(
Size
(
0
,
aLabelFont
.
GetSize
().
Height
()
*
3
)
);
// Logo Replacement Text
// Logo Replacement Text
aLogoReplacement
.
SetControlFont
(
aLargeFont
);
m_pLogoReplacement
->
SetControlFont
(
aLargeFont
);
aLogoReplacement
.
SetTextSelectable
(
sal_False
);
// Description Text
// Description Text
aLargeFont
.
SetSize
(
Size
(
0
,
aLabelFont
.
GetSize
().
Height
()
*
1.3
)
);
aLargeFont
.
SetSize
(
Size
(
0
,
aLabelFont
.
GetSize
().
Height
()
*
1.3
)
);
aDescriptionText
.
SetControlFont
(
aLargeFont
);
m_pDescriptionText
->
SetControlFont
(
aLargeFont
);
aDescriptionText
.
SetTextSelectable
(
sal_False
);
// Version Text
// Version Text
aLargeFont
.
SetSize
(
Size
(
0
,
aLabelFont
.
GetSize
().
Height
()
*
1.2
)
);
aLargeFont
.
SetSize
(
Size
(
0
,
aLabelFont
.
GetSize
().
Height
()
*
1.2
)
);
aVersionText
.
SetControlFont
(
aLargeFont
);
m_pVersion
->
SetControlFont
(
aLargeFont
);
aVersionText
.
EnableCursor
(
sal_False
);
// Copyright Text
aCopyrightText
.
SetTextSelectable
(
sal_False
);
// If not in high-contrast mode, hard-code colors
// If not in high-contrast mode, hard-code colors
if
(
!
(
Application
::
GetSettings
().
GetStyleSettings
().
GetHighContrastMode
())
)
if
(
!
(
Application
::
GetSettings
().
GetStyleSettings
().
GetHighContrastMode
())
)
{
{
aLogoReplacement
.
SetControlForeground
(
Color
(
51
,
51
,
51
)
);
m_pLogoReplacement
->
SetControlForeground
(
Color
(
51
,
51
,
51
)
);
aVersionText
.
SetControlForeground
(
Color
(
102
,
102
,
102
)
);
m_pVersion
->
SetControlForeground
(
Color
(
102
,
102
,
102
)
);
aDescriptionText
.
SetControlForeground
(
Color
(
51
,
51
,
51
)
);
m_pDescriptionText
->
SetControlForeground
(
Color
(
51
,
51
,
51
)
);
aCopyrightText
.
SetControlForeground
(
Color
(
102
,
102
,
102
)
);
m_pCopyrightText
->
SetControlForeground
(
Color
(
102
,
102
,
102
)
);
}
}
aCancelButton
.
GrabFocus
();
}
}
void
AboutDialog
::
LayoutControls
()
void
AboutDialog
::
SetLogo
()
{
{
// Get the size of the screen
long
nWidth
=
get_content_area
()
->
get_preferred_size
().
Width
();
Rectangle
aScreenRect
=
Application
::
GetScreenPosSizePixel
(
(
unsigned
int
)
0
);
// Obtain an appropriate text width from the size of the screen
sal_Int32
aIdealTextWidth
=
aScreenRect
.
GetWidth
()
/
2.4
;
sal_Int32
aDialogBorder
=
12
;
Size
aDialogSize
(
aIdealTextWidth
+
aDialogBorder
*
2
,
0
);
// Preliminarily layout buttons, so we see if we need a wider window
Size
aButtonSize
;
Point
aButtonPos
;
sal_Int32
aButtonsWidth
=
0
;
LayoutButtons
(
aDialogSize
.
Width
(),
aDialogBorder
,
aButtonPos
,
aButtonSize
,
aButtonsWidth
);
if
(
aButtonsWidth
>
0
)
aDialogSize
.
Width
()
+=
aButtonsWidth
;
// Render and Position Logo
Size
aLogoSize
(
aIdealTextWidth
,
aIdealTextWidth
/
20
);
Point
aLogoPos
(
0
,
0
);
// load svg logo, specify desired width, scale height isotrophically
// load svg logo, specify desired width, scale height isotrophically
if
(
SfxApplication
::
loadBrandSvg
(
"flat_logo"
,
if
(
SfxApplication
::
loadBrandSvg
(
"flat_logo"
,
aLogoBitmap
,
nWidth
)
&&
aLogoBitmap
,
aDialogSize
.
Width
())
&&
!
aLogoBitmap
.
IsEmpty
()
)
!
aLogoBitmap
.
IsEmpty
()
)
{
{
aLogoSize
=
aLogoBitmap
.
GetSizePixel
();
m_pLogoImage
->
SetImage
(
Image
(
aLogoBitmap
));
m_pLogoReplacement
->
Hide
();
aLogoImage
.
SetImage
(
Image
(
aLogoBitmap
)
);
m_pLogoImage
->
Show
();
aLogoImage
.
SetPosSizePixel
(
aLogoPos
,
aLogoSize
);
aLogoImage
.
Show
();
}
}
else
else
{
{
aLogoPos
.
X
()
=
aDialogBorder
;
m_pLogoImage
->
Hide
();
aLogoPos
.
Y
()
=
aDialogBorder
;
m_pLogoReplacement
->
Show
();
aLogoSize
=
aLogoReplacement
.
CalcMinimumSize
();
aLogoSize
.
Width
()
=
aIdealTextWidth
;
aLogoReplacement
.
SetPosSizePixel
(
aLogoPos
,
aLogoSize
);
}
}
// Position version text
sal_Int32
aLogoVersionSpacing
=
aLogoSize
.
Height
()
*
0.15
;
Point
aVersionPos
(
aDialogBorder
,
aLogoPos
.
Y
()
+
aLogoSize
.
Height
()
+
aLogoVersionSpacing
);
Size
aVersionSize
=
aVersionText
.
GetSizePixel
();
aVersionSize
.
Width
()
=
aIdealTextWidth
;
aVersionText
.
SetPosSizePixel
(
aVersionPos
,
aVersionSize
);
aVersionSize
=
aVersionText
.
CalcMinimumSize
();
aVersionText
.
SetSizePixel
(
aVersionSize
);
// Position description text
sal_Int32
aVersionDescriptionSpacing
=
aLogoSize
.
Height
()
*
0.45
;
Point
aDescriptionPos
(
aDialogBorder
,
aVersionPos
.
Y
()
+
aVersionSize
.
Height
()
+
aVersionDescriptionSpacing
);
Size
aDescriptionSize
=
aDescriptionText
.
GetSizePixel
();
aDescriptionSize
.
Width
()
=
aIdealTextWidth
;
aDescriptionText
.
SetPosSizePixel
(
aDescriptionPos
,
aDescriptionSize
);
aDescriptionSize
=
aDescriptionText
.
CalcMinimumSize
();
aDescriptionText
.
SetSizePixel
(
aDescriptionSize
);
// Layout copyright text
Point
aCopyrightPos
(
aDialogBorder
,
aDescriptionPos
.
Y
()
+
aDescriptionText
.
GetSizePixel
().
Height
()
+
aVersionDescriptionSpacing
);
Size
aCopyrightSize
=
aCopyrightText
.
GetSizePixel
();
aCopyrightSize
.
Width
()
=
aIdealTextWidth
;
aCopyrightText
.
SetPosSizePixel
(
aCopyrightPos
,
aCopyrightSize
);
aCopyrightSize
=
aCopyrightText
.
CalcMinimumSize
();
aCopyrightSize
.
Width
()
=
aIdealTextWidth
;
aCopyrightText
.
SetSizePixel
(
aCopyrightSize
);
// Move buttons into final place
sal_Int32
aButtonPosY
=
aDialogBorder
+
aCopyrightPos
.
Y
()
+
aCopyrightText
.
GetSizePixel
().
Height
()
+
aVersionDescriptionSpacing
;
MoveControl
(
aCreditsButton
,
0
,
aButtonPosY
);
MoveControl
(
aWebsiteButton
,
0
,
aButtonPosY
);
MoveControl
(
aCancelButton
,
0
,
aButtonPosY
);
// The centers everything again, if aDialogSize.Width() has become wider
// before; the -20 "fixes" a weird text centering bug
MoveControl
(
aVersionText
,
(
aDialogSize
.
Width
()
-
aVersionText
.
GetSizePixel
().
Width
()
-
20
)
/
2
,
0
);
MoveControl
(
aDescriptionText
,
(
aDialogSize
.
Width
()
-
aDescriptionText
.
GetSizePixel
().
Width
()
-
20
)
/
2
,
0
);
MoveControl
(
aCopyrightText
,
(
aDialogSize
.
Width
()
-
aCopyrightText
.
GetSizePixel
().
Width
()
-
20
)
/
2
,
0
);
aDialogSize
.
Height
()
=
aButtonPosY
+
aButtonSize
.
Height
()
+
aDialogBorder
;
// Layout background image
if
(
!
(
Application
::
GetSettings
().
GetStyleSettings
().
GetHighContrastMode
())
)
SfxApplication
::
loadBrandSvg
(
"shell/about"
,
aBackgroundBitmap
,
aDialogSize
.
Width
());
SetOutputSizePixel
(
aDialogSize
);
}
}
void
AboutDialog
::
LayoutButtons
(
sal_Int32
aDialogWidth
,
sal_Int32
aDialogBorder
,
void
AboutDialog
::
Resize
()
Point
&
aButtonPos
,
Size
&
aButtonSize
,
sal_Int32
&
aButtonsWidth
)
{
{
// Position credits button
SfxModalDialog
::
Resize
();
sal_Int32
aButtonVPadding
=
5
;
// Load background image
sal_Int32
aButtonHPadding
=
4
;
if
(
isInitialLayout
(
this
)
&&
!
(
Application
::
GetSettings
().
GetStyleSettings
().
GetHighContrastMode
()))
sal_Int32
aAdjacentButtonSpacing
=
15
;
sal_Int32
aCreditsButtonWidth
=
aCreditsButton
.
CalcMinimumSize
().
Width
();
sal_Int32
aWebsiteButtonWidth
=
aWebsiteButton
.
CalcMinimumSize
().
Width
();
sal_Int32
aCancelButtonWidth
=
aCancelButton
.
CalcMinimumSize
().
Width
();
sal_Int32
aLargestButtonWidth
=
70
;
if
(
aLargestButtonWidth
<
aCreditsButtonWidth
)
aLargestButtonWidth
=
aCreditsButtonWidth
;
if
(
aLargestButtonWidth
<
aWebsiteButtonWidth
)
aLargestButtonWidth
=
aWebsiteButtonWidth
;
if
(
aLargestButtonWidth
<
aCancelButtonWidth
)
aLargestButtonWidth
=
aCancelButtonWidth
;
aButtonSize
.
Width
()
=
aLargestButtonWidth
+
(
2
*
aButtonHPadding
);
aButtonSize
.
Height
()
=
aWebsiteButton
.
CalcMinimumSize
().
Height
()
+
(
2
*
aButtonVPadding
);
aCreditsButton
.
SetSizePixel
(
aButtonSize
);
aWebsiteButton
.
SetSizePixel
(
aButtonSize
);
aCancelButton
.
SetSizePixel
(
aButtonSize
);
sal_Int32
aButtonSpacing
=
aDialogWidth
-
(
aDialogBorder
*
2
)
-
(
aButtonSize
.
Width
()
*
3
)
-
aAdjacentButtonSpacing
;
if
(
aButtonSpacing
<
aAdjacentButtonSpacing
)
{
{
aButtonsWidth
=
aAdjacentButtonSpacing
-
aButtonSpacing
;
SfxApplication
::
loadBrandSvg
(
"shell/about"
,
aBackgroundBitmap
,
GetOutputSizePixel
().
Width
());
aButtonSpacing
=
aAdjacentButtonSpacing
;
}
}
aButtonPos
.
X
()
=
aDialogBorder
;
aButtonPos
.
Y
()
=
0
;
aCreditsButton
.
SetPosPixel
(
aButtonPos
);
aButtonPos
.
X
()
+=
aButtonSize
.
Width
()
+
aAdjacentButtonSpacing
;
aWebsiteButton
.
SetPosPixel
(
aButtonPos
);
aButtonPos
.
X
()
+=
aButtonSize
.
Width
()
+
aButtonSpacing
;
aCancelButton
.
SetPosPixel
(
aButtonPos
);
}
void
AboutDialog
::
MoveControl
(
Control
&
rControl
,
sal_Int32
X
,
sal_Int32
Y
)
{
Point
aControlPos
=
rControl
.
GetPosPixel
();
aControlPos
.
X
()
+=
X
;
aControlPos
.
Y
()
+=
Y
;
rControl
.
SetPosPixel
(
aControlPos
);
}
}
void
AboutDialog
::
Paint
(
const
Rectangle
&
rRect
)
void
AboutDialog
::
Paint
(
const
Rectangle
&
rRect
)
{
{
SetClipRegion
(
Region
(
rRect
));
SetClipRegion
(
Region
(
rRect
));
Point
aPos
(
rRect
.
GetWidth
()
-
aBackgroundBitmap
.
GetSizePixel
().
Width
(),
rRect
.
GetHeight
()
-
aBackgroundBitmap
.
GetSizePixel
().
Height
()
);
DrawBitmapEx
(
aPos
,
aBackgroundBitmap
);
Size
aSize
(
GetOutputSizePixel
());
Point
aPos
(
aSize
.
Width
()
-
aBackgroundBitmap
.
GetSizePixel
().
Width
(),
aSize
.
Height
()
-
aBackgroundBitmap
.
GetSizePixel
().
Height
());
DrawBitmapEx
(
aPos
,
aBackgroundBitmap
);
}
}
rtl
::
OUString
AboutDialog
::
GetBuildId
()
OUString
AboutDialog
::
GetBuildId
()
{
{
rtl
::
OUString
sDefault
;
OUString
sDefault
;
rtl
::
OUString
sBuildId
(
utl
::
Bootstrap
::
getBuildVersion
(
sDefault
));
OUString
sBuildId
(
utl
::
Bootstrap
::
getBuildVersion
(
sDefault
));
if
(
!
sBuildId
.
isEmpty
())
if
(
!
sBuildId
.
isEmpty
())
return
sBuildId
;
return
sBuildId
;
...
@@ -366,15 +224,15 @@ rtl::OUString AboutDialog::GetBuildId()
...
@@ -366,15 +224,15 @@ rtl::OUString AboutDialog::GetBuildId()
return
sBuildId
;
return
sBuildId
;
}
}
rtl
::
OUString
AboutDialog
::
GetVersionString
()
OUString
AboutDialog
::
GetVersionString
()
{
{
rtl
::
OUString
sVersion
=
m_aVersionTextStr
;
OUString
sVersion
=
m_aVersionTextStr
;
rtl
::
OUString
sBuildId
=
GetBuildId
();
OUString
sBuildId
=
GetBuildId
();
if
(
!
sBuildId
.
trim
().
isEmpty
())
if
(
!
sBuildId
.
trim
().
isEmpty
())
{
{
sVersion
+=
"
"
;
sVersion
+=
"
\n
"
;
if
(
m_sBuildStr
.
indexOf
(
"$BUILDID"
)
==
-
1
)
if
(
m_sBuildStr
.
indexOf
(
"$BUILDID"
)
==
-
1
)
{
{
SAL_WARN
(
"cui.dialogs"
,
"translated Build Id string in translations doesn't contain $BUILDID placeholder"
);
SAL_WARN
(
"cui.dialogs"
,
"translated Build Id string in translations doesn't contain $BUILDID placeholder"
);
...
@@ -407,12 +265,6 @@ rtl::OUString AboutDialog::GetCopyrightString()
...
@@ -407,12 +265,6 @@ rtl::OUString AboutDialog::GetCopyrightString()
return
aCopyrightString
;
return
aCopyrightString
;
}
}
IMPL_LINK_NOARG
(
AboutDialog
,
CancelHdl
)
{
Close
();
return
0
;
}
sal_Bool
AboutDialog
::
Close
()
sal_Bool
AboutDialog
::
Close
()
{
{
EndDialog
(
RET_OK
);
EndDialog
(
RET_OK
);
...
...
cui/source/dialogs/about.hrc
deleted
100644 → 0
Dosyayı görüntüle @
e910123e
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#include <sfx2/sfx.hrc>
#define ABOUT_STR_BUILD 1
#define ABOUT_STR_VERSION 2
#define ABOUT_STR_VENDOR 3
#define ABOUT_STR_COPYRIGHT 4
#define ABOUT_STR_BASED 5
#define ABOUT_STR_BASED_DERIVED 6
#define ABOUT_STR_LINK_CREDITS 8
#define ABOUT_LOGO_REPLACEMENT 9
#define ABOUT_BTN_CREDITS 10
#define ABOUT_DESCRIPTION_TEXT 11
#define ABOUT_COPYRIGHT_TEXT 12
#define ABOUT_COPYRIGHT_TEXT_SHADOW 13
#define ABOUT_IMAGE_LOGO 14
#define ABOUT_BTN_WEBSITE 15
#define ABOUT_BTN_LICENSE 16
#define ABOUT_VERSION_TEXT 17
#define ABOUT_STR_DESCRIPTION 18
#define ABOUT_BTN_CANCEL 19
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
cui/source/dialogs/about.src
deleted
100644 → 0
Dosyayı görüntüle @
e910123e
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#include "about.hrc"
ModalDialog RID_DEFAULTABOUT
{
OutputSize = TRUE ;
Moveable = TRUE ;
SVLook = TRUE ;
MultiLineEdit ABOUT_LOGO_REPLACEMENT
{
Border = FALSE ;
IgnoreTab = TRUE ;
ReadOnly = TRUE ;
AutoVScroll = TRUE ;
LEFT = FALSE ;
CENTER = TRUE ;
RIGHT = FALSE ;
};
MultiLineEdit ABOUT_DESCRIPTION_TEXT
{
Border = FALSE ;
IgnoreTab = TRUE ;
ReadOnly = TRUE ;
AutoVScroll = TRUE ;
LEFT = FALSE ;
CENTER = TRUE ;
RIGHT = FALSE ;
};
MultiLineEdit ABOUT_COPYRIGHT_TEXT
{
Border = FALSE ;
IgnoreTab = TRUE ;
ReadOnly = TRUE ;
LEFT = FALSE ;
CENTER = TRUE ;
RIGHT = FALSE ;
};
MultiLineEdit ABOUT_VERSION_TEXT
{
Border = FALSE ;
IgnoreTab = TRUE ;
ReadOnly = TRUE ;
LEFT = FALSE ;
CENTER = TRUE ;
RIGHT = FALSE ;
};
String ABOUT_STR_VERSION
{
Text [ en-US ] = "Version %ABOUTBOXPRODUCTVERSION%ABOUTBOXPRODUCTVERSIONSUFFIX";
};
String ABOUT_STR_DESCRIPTION
{
Text [ en-US ] = "%PRODUCTNAME is a modern, easy-to-use, open source productivity suite for word processing, spreadsheets, presentations and more.";
};
String ABOUT_STR_VENDOR
{
Text[ en-US ] = "This release was supplied by %OOOVENDOR";
};
String ABOUT_STR_COPYRIGHT
{
Text[ en-US ] = "Copyright © 2000 - 2013 LibreOffice contributors and/or their affiliates";
};
String ABOUT_STR_BASED
{
Text[ en-US ] = "LibreOffice was based on OpenOffice.org";
};
String ABOUT_STR_BASED_DERIVED
{
Text[ en-US ] = "%PRODUCTNAME is derived from LibreOffice which was based on OpenOffice.org";
};
String ABOUT_STR_BUILD
{
Text[ en-US ] = "(Build ID: $BUILDID)";
};
String ABOUT_STR_LINK_CREDITS
{
Text[ en-US ] = "http://www.libreoffice.org/about-us/credits/";
};
PushButton ABOUT_BTN_CREDITS
{
Text [ en-US ] = "Credits";
};
PushButton ABOUT_BTN_WEBSITE
{
Text [ en-US ] = "Website";
};
CancelButton ABOUT_BTN_CANCEL
{
DefButton = TRUE ;
Text [ en-US ] = "~Close";
};
};
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
cui/source/factory/dlgfact.cxx
Dosyayı görüntüle @
79af094f
...
@@ -1010,7 +1010,7 @@ VclAbstractDialog* AbstractDialogFactory_Impl::CreateVclDialog( Window* pParent,
...
@@ -1010,7 +1010,7 @@ VclAbstractDialog* AbstractDialogFactory_Impl::CreateVclDialog( Window* pParent,
{
{
case
RID_DEFAULTABOUT
:
case
RID_DEFAULTABOUT
:
{
{
pDlg
=
new
AboutDialog
(
pParent
,
CUI_RES
(
(
sal_uInt16
)
nResId
)
);
pDlg
=
new
AboutDialog
(
pParent
);
break
;
break
;
}
}
case
SID_OPTIONS_TREEDIALOG
:
case
SID_OPTIONS_TREEDIALOG
:
...
...
cui/source/inc/about.hxx
Dosyayı görüntüle @
79af094f
...
@@ -19,10 +19,10 @@
...
@@ -19,10 +19,10 @@
#ifndef _ABOUT_HXX
#ifndef _ABOUT_HXX
#define _ABOUT_HXX
#define _ABOUT_HXX
#include <vcl/button.hxx>
#include <vcl/accel.hxx>
#include <vcl/accel.hxx>
#include <svtools/svmedit.hxx>
#include <vcl/button.hxx>
#include <svtools/stdctrl.hxx>
#include <vcl/fixed.hxx>
#include <vcl/vclmedit.hxx>
#include <sfx2/basedlgs.hxx> ///< for SfxModalDialog
#include <sfx2/basedlgs.hxx> ///< for SfxModalDialog
#include <vector>
#include <vector>
...
@@ -34,43 +34,38 @@ private:
...
@@ -34,43 +34,38 @@ private:
BitmapEx
aBackgroundBitmap
;
BitmapEx
aBackgroundBitmap
;
BitmapEx
aLogoBitmap
;
BitmapEx
aLogoBitmap
;
VclMultiLineEdit
*
m_pVersion
;
FixedText
*
m_pDescriptionText
;
FixedText
*
m_pCopyrightText
;
FixedImage
*
m_pLogoImage
;
FixedText
*
m_pLogoReplacement
;
PushButton
*
m_pCreditsButton
;
PushButton
*
m_pWebsiteButton
;
MultiLineEdit
aVersionText
;
OUString
aVersionData
;
MultiLineEdit
aDescriptionText
;
OUString
m_aVersionTextStr
;
MultiLineEdit
aCopyrightText
;
OUString
m_aVendorTextStr
;
FixedImage
aLogoImage
;
OUString
m_aCopyrightTextStr
;
MultiLineEdit
aLogoReplacement
;
OUString
m_aBasedTextStr
;
PushButton
aCreditsButton
;
OUString
m_aBasedDerivedTextStr
;
PushButton
aWebsiteButton
;
OUString
m_aCreditsLinkStr
;
CancelButton
aCancelButton
;
OUString
m_sBuildStr
;
String
aVersionData
;
rtl
::
OUString
m_aVersionTextStr
;
String
m_aVendorTextStr
;
String
m_aCopyrightTextStr
;
String
m_aBasedTextStr
;
String
m_aBasedDerivedTextStr
;
String
m_aCreditsLinkStr
;
rtl
::
OUString
m_sBuildStr
;
String
m_aDescriptionTextStr
;
void
StyleControls
();
void
StyleControls
();
void
LayoutControls
();
void
SetLogo
();
void
LayoutButtons
(
sal_Int32
aContentWidth
,
sal_Int32
aDialogBorder
,
Point
&
aButtonPos
,
Size
&
aButtonSize
,
sal_Int32
&
aButtonsWidth
);
OUString
GetBuildId
();
void
MoveControl
(
Control
&
rControl
,
sal_Int32
X
,
sal_Int32
Y
);
OUString
GetVersionString
();
rtl
::
OUString
GetBuildId
();
OUString
GetCopyrightString
();
rtl
::
OUString
GetVersionString
();
rtl
::
OUString
GetCopyrightString
();
protected
:
protected
:
virtual
sal_Bool
Close
();
virtual
sal_Bool
Close
();
virtual
void
Paint
(
const
Rectangle
&
rRect
);
virtual
void
Paint
(
const
Rectangle
&
rRect
);
virtual
void
Resize
();
public
:
public
:
AboutDialog
(
Window
*
pParent
,
const
ResId
&
rId
);
AboutDialog
(
Window
*
pParent
);
DECL_LINK
(
CancelHdl
,
void
*
);
DECL_LINK
(
HandleClick
,
PushButton
*
);
DECL_LINK
(
HandleClick
,
PushButton
*
);
};
};
...
...
cui/uiconfig/ui/aboutdialog.ui
0 → 100644
Dosyayı görüntüle @
79af094f
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<!-- interface-requires gtk+ 3.0 -->
<object
class=
"GtkDialog"
id=
"AboutDialog"
>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"border_width"
>
6
</property>
<property
name=
"resizable"
>
False
</property>
<property
name=
"type_hint"
>
dialog
</property>
<child
internal-child=
"vbox"
>
<object
class=
"GtkBox"
id=
"dialog-vbox1"
>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"orientation"
>
vertical
</property>
<property
name=
"spacing"
>
12
</property>
<child
internal-child=
"action_area"
>
<object
class=
"GtkButtonBox"
id=
"dialog-action_area1"
>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"layout_style"
>
end
</property>
<child>
<object
class=
"GtkButton"
id=
"credits"
>
<property
name=
"label"
translatable=
"yes"
>
Cre_dits
</property>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
True
</property>
<property
name=
"receives_default"
>
True
</property>
<property
name=
"use_underline"
>
True
</property>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
0
</property>
<property
name=
"secondary"
>
True
</property>
</packing>
</child>
<child>
<object
class=
"GtkButton"
id=
"website"
>
<property
name=
"label"
translatable=
"yes"
>
_Website
</property>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
True
</property>
<property
name=
"receives_default"
>
True
</property>
<property
name=
"use_underline"
>
True
</property>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
1
</property>
<property
name=
"secondary"
>
True
</property>
</packing>
</child>
<child>
<object
class=
"GtkButton"
id=
"close"
>
<property
name=
"label"
>
gtk-close
</property>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
True
</property>
<property
name=
"can_default"
>
True
</property>
<property
name=
"has_default"
>
True
</property>
<property
name=
"receives_default"
>
True
</property>
<property
name=
"use_stock"
>
True
</property>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
2
</property>
</packing>
</child>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"pack_type"
>
end
</property>
<property
name=
"position"
>
0
</property>
</packing>
</child>
<child>
<object
class=
"GtkBox"
id=
"box1"
>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"hexpand"
>
True
</property>
<property
name=
"vexpand"
>
True
</property>
<property
name=
"orientation"
>
vertical
</property>
<property
name=
"spacing"
>
12
</property>
<child>
<object
class=
"GtkImage"
id=
"logo"
>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"stock"
>
gtk-missing-image
</property>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
0
</property>
</packing>
</child>
<child>
<object
class=
"GtkBox"
id=
"box2"
>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"hexpand"
>
True
</property>
<property
name=
"vexpand"
>
True
</property>
<property
name=
"orientation"
>
vertical
</property>
<property
name=
"spacing"
>
24
</property>
<child>
<object
class=
"GtkLabel"
id=
"logoreplacement"
>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"no_show_all"
>
True
</property>
<property
name=
"label"
translatable=
"yes"
>
%PRODUCTNAME
</property>
<property
name=
"justify"
>
center
</property>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
0
</property>
</packing>
</child>
<child>
<object
class=
"GtkGrid"
id=
"grid1"
>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"hexpand"
>
True
</property>
<child>
<object
class=
"GtkLabel"
id=
"buildid"
>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"no_show_all"
>
True
</property>
<property
name=
"hexpand"
>
True
</property>
<property
name=
"label"
translatable=
"yes"
>
Build ID: $BUILDID
</property>
<property
name=
"justify"
>
center
</property>
</object>
<packing>
<property
name=
"left_attach"
>
0
</property>
<property
name=
"top_attach"
>
1
</property>
<property
name=
"width"
>
1
</property>
<property
name=
"height"
>
1
</property>
</packing>
</child>
<child>
<object
class=
"GtkTextView"
id=
"version"
>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
True
</property>
<property
name=
"hexpand"
>
True
</property>
<property
name=
"editable"
>
False
</property>
<property
name=
"wrap_mode"
>
word
</property>
<property
name=
"justification"
>
center
</property>
<property
name=
"cursor_visible"
>
False
</property>
<property
name=
"buffer"
>
textbuffer1
</property>
</object>
<packing>
<property
name=
"left_attach"
>
0
</property>
<property
name=
"top_attach"
>
0
</property>
<property
name=
"width"
>
1
</property>
<property
name=
"height"
>
1
</property>
</packing>
</child>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
1
</property>
</packing>
</child>
<child>
<object
class=
"GtkLabel"
id=
"description"
>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"hexpand"
>
True
</property>
<property
name=
"label"
translatable=
"yes"
>
%PRODUCTNAME is a modern, easy-to-use, open source productivity suite for word processing, spreadsheets, presentations and more.
</property>
<property
name=
"justify"
>
center
</property>
<property
name=
"wrap"
>
True
</property>
<property
name=
"max_width_chars"
>
62
</property>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
2
</property>
</packing>
</child>
<child>
<object
class=
"GtkGrid"
id=
"grid2"
>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"hexpand"
>
True
</property>
<child>
<object
class=
"GtkLabel"
id=
"copyright"
>
<property
name=
"visible"
>
True
</property>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"margin_left"
>
12
</property>
<property
name=
"margin_right"
>
12
</property>
<property
name=
"hexpand"
>
True
</property>
<property
name=
"label"
translatable=
"yes"
>
Copyright © 2000 - 2013 LibreOffice contributors and/or their affiliates.
</property>
<property
name=
"justify"
>
center
</property>
<property
name=
"wrap"
>
True
</property>
</object>
<packing>
<property
name=
"left_attach"
>
0
</property>
<property
name=
"top_attach"
>
1
</property>
<property
name=
"width"
>
1
</property>
<property
name=
"height"
>
1
</property>
</packing>
</child>
<child>
<object
class=
"GtkLabel"
id=
"libreoffice"
>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"no_show_all"
>
True
</property>
<property
name=
"hexpand"
>
True
</property>
<property
name=
"label"
translatable=
"yes"
>
LibreOffice was based on OpenOffice.org.
</property>
<property
name=
"justify"
>
center
</property>
<property
name=
"wrap"
>
True
</property>
</object>
<packing>
<property
name=
"left_attach"
>
0
</property>
<property
name=
"top_attach"
>
2
</property>
<property
name=
"width"
>
1
</property>
<property
name=
"height"
>
1
</property>
</packing>
</child>
<child>
<object
class=
"GtkLabel"
id=
"derived"
>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"no_show_all"
>
True
</property>
<property
name=
"hexpand"
>
True
</property>
<property
name=
"label"
translatable=
"yes"
>
%PRODUCTNAME is derived from LibreOffice which was based on OpenOffice.org.
</property>
<property
name=
"justify"
>
center
</property>
<property
name=
"wrap"
>
True
</property>
</object>
<packing>
<property
name=
"left_attach"
>
0
</property>
<property
name=
"top_attach"
>
3
</property>
<property
name=
"width"
>
1
</property>
<property
name=
"height"
>
1
</property>
</packing>
</child>
<child>
<object
class=
"GtkLabel"
id=
"vendor"
>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"no_show_all"
>
True
</property>
<property
name=
"hexpand"
>
True
</property>
<property
name=
"label"
translatable=
"yes"
>
This release was supplied by %OOOVENDOR.
</property>
<property
name=
"justify"
>
center
</property>
<property
name=
"wrap"
>
True
</property>
</object>
<packing>
<property
name=
"left_attach"
>
0
</property>
<property
name=
"top_attach"
>
0
</property>
<property
name=
"width"
>
1
</property>
<property
name=
"height"
>
1
</property>
</packing>
</child>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
3
</property>
</packing>
</child>
<child>
<object
class=
"GtkLabel"
id=
"link"
>
<property
name=
"can_focus"
>
False
</property>
<property
name=
"no_show_all"
>
True
</property>
<property
name=
"label"
translatable=
"yes"
>
http://www.libreoffice.org/about-us/credits/
</property>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
4
</property>
</packing>
</child>
</object>
<packing>
<property
name=
"expand"
>
False
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
1
</property>
</packing>
</child>
</object>
<packing>
<property
name=
"expand"
>
True
</property>
<property
name=
"fill"
>
True
</property>
<property
name=
"position"
>
1
</property>
</packing>
</child>
</object>
</child>
<action-widgets>
<action-widget
response=
"0"
>
credits
</action-widget>
<action-widget
response=
"0"
>
website
</action-widget>
<action-widget
response=
"0"
>
close
</action-widget>
</action-widgets>
</object>
<object
class=
"GtkTextBuffer"
id=
"textbuffer1"
>
<property
name=
"text"
translatable=
"yes"
>
Version: %ABOUTBOXPRODUCTVERSION%ABOUTBOXPRODUCTVERSIONSUFFIX
</property>
</object>
<object
class=
"GtkSizeGroup"
id=
"sizegroup1"
>
<widgets>
<widget
name=
"copyright"
/>
<widget
name=
"libreoffice"
/>
<widget
name=
"vendor"
/>
</widgets>
</object>
</interface>
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