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
fb20f522
Kaydet (Commit)
fb20f522
authored
Ock 09, 2014
tarafından
Matúš Kukan
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
fwk: Use constructor feature for LangSelectionStatusbarController.
Change-Id: If7ce3d27f1cec8e55b65fc2d8c749f2e8bb33768
üst
87051bb3
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
89 additions
and
111 deletions
+89
-111
langselectionstatusbarcontroller.hxx
framework/inc/uielement/langselectionstatusbarcontroller.hxx
+0
-83
registerservices.cxx
framework/source/register/registerservices.cxx
+0
-2
langselectionstatusbarcontroller.cxx
...ork/source/uielement/langselectionstatusbarcontroller.cxx
+87
-25
fwk.component
framework/util/fwk.component
+2
-1
No files found.
framework/inc/uielement/langselectionstatusbarcontroller.hxx
deleted
100644 → 0
Dosyayı görüntüle @
87051bb3
/* -*- 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 .
*/
#ifndef INCLUDED_FRAMEWORK_INC_UIELEMENT_LANGSELECTIONSTATUSBARCONTROLLER_HXX
#define INCLUDED_FRAMEWORK_INC_UIELEMENT_LANGSELECTIONSTATUSBARCONTROLLER_HXX
#include <macros/generic.hxx>
#include <macros/xinterface.hxx>
#include <macros/xtypeprovider.hxx>
#include <macros/xserviceinfo.hxx>
#include <stdtypes.h>
#include <com/sun/star/linguistic2/XLanguageGuessing.hpp>
#include <svtools/statusbarcontroller.hxx>
#include <rtl/ustring.hxx>
#include "helper/mischelper.hxx"
#include <set>
class
SvtLanguageTable
;
// component helper namespace
namespace
framework
{
class
LangSelectionStatusbarController
:
public
svt
::
StatusbarController
{
public
:
explicit
LangSelectionStatusbarController
(
const
::
com
::
sun
::
star
::
uno
::
Reference
<
::
com
::
sun
::
star
::
uno
::
XComponentContext
>&
xContext
);
// XServiceInfo
DECLARE_XSERVICEINFO
// XInitialization
virtual
void
SAL_CALL
initialize
(
const
::
com
::
sun
::
star
::
uno
::
Sequence
<
::
com
::
sun
::
star
::
uno
::
Any
>&
aArguments
)
throw
(
::
com
::
sun
::
star
::
uno
::
Exception
,
::
com
::
sun
::
star
::
uno
::
RuntimeException
);
// XStatusListener
virtual
void
SAL_CALL
statusChanged
(
const
::
com
::
sun
::
star
::
frame
::
FeatureStateEvent
&
Event
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
);
// XStatusbarController
virtual
void
SAL_CALL
command
(
const
::
com
::
sun
::
star
::
awt
::
Point
&
aPos
,
::
sal_Int32
nCommand
,
::
sal_Bool
bMouseEvent
,
const
::
com
::
sun
::
star
::
uno
::
Any
&
aData
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
click
(
const
::
com
::
sun
::
star
::
awt
::
Point
&
aPos
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
);
private
:
virtual
~
LangSelectionStatusbarController
()
{}
LangSelectionStatusbarController
(
LangSelectionStatusbarController
&
);
// not defined
void
operator
=
(
LangSelectionStatusbarController
&
);
// not defined
sal_Bool
m_bShowMenu
;
// if the menu is to be displayed or not (depending on the selected object/text)
sal_Int16
m_nScriptType
;
// the flags for the different script types available in the selection, LATIN = 0x0001, ASIAN = 0x0002, COMPLEX = 0x0004
OUString
m_aCurLang
;
// the language of the current selection, "*" if there are more than one languages
OUString
m_aKeyboardLang
;
// the keyboard language
OUString
m_aGuessedTextLang
;
// the 'guessed' language for the selection, "" if none could be guessed
LanguageGuessingHelper
m_aLangGuessHelper
;
void
LangMenu
(
const
::
com
::
sun
::
star
::
awt
::
Point
&
aPos
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
);
};
}
// framework namespace
#endif // INCLUDED_FRAMEWORK_INC_UIELEMENT_LANGSELECTIONSTATUSBARCONTROLLER_HXX
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
framework/source/register/registerservices.cxx
Dosyayı görüntüle @
fb20f522
...
...
@@ -62,7 +62,6 @@
#include <services/sessionlistener.hxx>
#include <services/taskcreatorsrv.hxx>
#include <uielement/langselectionstatusbarcontroller.hxx>
#include <uiconfiguration/imagemanager.hxx>
#include <uifactory/windowcontentfactorymanager.hxx>
#include <services/substitutepathvars.hxx>
...
...
@@ -102,7 +101,6 @@ COMPONENTGETFACTORY ( fwk,
IFFACTORY
(
::
framework
::
SessionListener
)
else
IFFACTORY
(
::
framework
::
TaskCreatorService
)
else
IFFACTORY
(
::
framework
::
ImageManager
)
else
IFFACTORY
(
::
framework
::
LangSelectionStatusbarController
)
else
IFFACTORY
(
::
framework
::
WindowContentFactoryManager
)
else
IFFACTORY
(
::
framework
::
SubstitutePathVariables
)
else
IFFACTORY
(
::
framework
::
PathSettings
)
else
...
...
framework/source/uielement/langselectionstatusbarcontroller.cxx
Dosyayı görüntüle @
fb20f522
...
...
@@ -18,7 +18,6 @@
*/
#include <uielement/langselectionstatusbarcontroller.hxx>
#include <classes/fwkresid.hxx>
#include <services.h>
#include <classes/resource.hrc>
...
...
@@ -28,11 +27,12 @@
#include <vcl/status.hxx>
#include <toolkit/helper/convert.hxx>
#include <c
om/sun/star/frame/XPopupMenuController.hpp
>
#include <c
ppuhelper/supportsservice.hxx
>
#include <toolkit/helper/vclunohelper.hxx>
#include <com/sun/star/awt/PopupMenu.hpp>
#include <com/sun/star/awt/PopupMenuDirection.hpp>
#include <svtools/langtab.hxx>
#include <svtools/statusbarcontroller.hxx>
#include "sal/types.h"
#include <com/sun/star/awt/MenuItemStyle.hpp>
#include <com/sun/star/document/XDocumentLanguages.hpp>
...
...
@@ -49,36 +49,88 @@
#include <tools/gen.hxx>
#include <com/sun/star/awt/Command.hpp>
#include <svl/languageoptions.hxx>
#include <com/sun/star/linguistic2/XLanguageGuessing.hpp>
#include "helper/mischelper.hxx"
#include <rtl/ustrbuf.hxx>
#include <rtl/ref.hxx>
#include <macros/generic.hxx>
#include <macros/xinterface.hxx>
#include <macros/xtypeprovider.hxx>
#include <macros/xserviceinfo.hxx>
#include <stdtypes.h>
#include <map>
#include <set>
using
namespace
::
cppu
;
using
namespace
::
com
::
sun
::
star
;
using
namespace
::
com
::
sun
::
star
::
uno
;
using
namespace
::
com
::
sun
::
star
::
lang
;
using
namespace
::
com
::
sun
::
star
::
frame
;
using
namespace
::
com
::
sun
::
star
::
i18n
;
using
namespace
::
com
::
sun
::
star
::
document
;
using
namespace
css
::
uno
;
using
namespace
css
::
lang
;
using
namespace
css
::
frame
;
using
namespace
css
::
i18n
;
using
namespace
css
::
document
;
using
namespace
framework
;
using
::
rtl
::
OUStringBuffer
;
class
SvtLanguageTable
;
namespace
{
namespace
framework
class
LangSelectionStatusbarController
:
public
svt
::
StatusbarController
{
public
:
explicit
LangSelectionStatusbarController
(
const
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>&
xContext
);
// XServiceInfo
virtual
OUString
SAL_CALL
getImplementationName
()
throw
(
css
::
uno
::
RuntimeException
)
{
return
OUString
(
"com.sun.star.comp.framework.LangSelectionStatusbarController"
);
}
virtual
sal_Bool
SAL_CALL
supportsService
(
OUString
const
&
ServiceName
)
throw
(
css
::
uno
::
RuntimeException
)
{
return
ServiceName
==
"com.sun.star.frame.StatusbarController"
;
}
virtual
css
::
uno
::
Sequence
<
OUString
>
SAL_CALL
getSupportedServiceNames
()
throw
(
css
::
uno
::
RuntimeException
)
{
css
::
uno
::
Sequence
<
OUString
>
aSeq
(
1
);
aSeq
[
0
]
=
OUString
(
"com.sun.star.frame.StatusbarController"
);
return
aSeq
;
}
// XInitialization
virtual
void
SAL_CALL
initialize
(
const
css
::
uno
::
Sequence
<
css
::
uno
::
Any
>&
aArguments
)
throw
(
css
::
uno
::
Exception
,
css
::
uno
::
RuntimeException
);
// XStatusListener
virtual
void
SAL_CALL
statusChanged
(
const
css
::
frame
::
FeatureStateEvent
&
Event
)
throw
(
css
::
uno
::
RuntimeException
);
// XStatusbarController
virtual
void
SAL_CALL
command
(
const
css
::
awt
::
Point
&
aPos
,
::
sal_Int32
nCommand
,
::
sal_Bool
bMouseEvent
,
const
css
::
uno
::
Any
&
aData
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
click
(
const
css
::
awt
::
Point
&
aPos
)
throw
(
css
::
uno
::
RuntimeException
);
private
:
virtual
~
LangSelectionStatusbarController
()
{}
LangSelectionStatusbarController
(
LangSelectionStatusbarController
&
);
// not defined
void
operator
=
(
LangSelectionStatusbarController
&
);
// not defined
DEFINE_XSERVICEINFO_MULTISERVICE_2
(
LangSelectionStatusbarController
,
OWeakObject
,
SERVICENAME_STATUSBARCONTROLLER
,
IMPLEMENTATIONNAME_LANGSELECTIONSTATUSBARCONTROLLER
)
DEFINE_INIT_SERVICE
(
LangSelectionStatusbarController
,
{}
)
sal_Bool
m_bShowMenu
;
// if the menu is to be displayed or not (depending on the selected object/text)
sal_Int16
m_nScriptType
;
// the flags for the different script types available in the selection, LATIN = 0x0001, ASIAN = 0x0002, COMPLEX = 0x0004
OUString
m_aCurLang
;
// the language of the current selection, "*" if there are more than one languages
OUString
m_aKeyboardLang
;
// the keyboard language
OUString
m_aGuessedTextLang
;
// the 'guessed' language for the selection, "" if none could be guessed
LanguageGuessingHelper
m_aLangGuessHelper
;
void
LangMenu
(
const
css
::
awt
::
Point
&
aPos
)
throw
(
css
::
uno
::
RuntimeException
);
};
LangSelectionStatusbarController
::
LangSelectionStatusbarController
(
const
uno
::
Reference
<
uno
::
XComponentContext
>&
xContext
)
:
svt
::
StatusbarController
(
xContext
,
uno
::
Reference
<
frame
::
XFrame
>
(),
OUString
(),
0
),
...
...
@@ -88,8 +140,8 @@ LangSelectionStatusbarController::LangSelectionStatusbarController( const uno::R
{
}
void
SAL_CALL
LangSelectionStatusbarController
::
initialize
(
const
::
com
::
sun
::
star
::
uno
::
Sequence
<
::
com
::
sun
::
star
::
uno
::
Any
>&
aArguments
)
throw
(
::
com
::
sun
::
star
::
uno
::
Exception
,
::
com
::
sun
::
star
::
uno
::
RuntimeException
)
void
SAL_CALL
LangSelectionStatusbarController
::
initialize
(
const
css
::
uno
::
Sequence
<
css
::
uno
::
Any
>&
aArguments
)
throw
(
css
::
uno
::
Exception
,
css
::
uno
::
RuntimeException
)
{
SolarMutexGuard
aSolarMutexGuard
;
...
...
@@ -102,8 +154,8 @@ throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException
}
void
LangSelectionStatusbarController
::
LangMenu
(
const
::
com
::
sun
::
star
::
awt
::
Point
&
aPos
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
)
const
css
::
awt
::
Point
&
aPos
)
throw
(
css
::
uno
::
RuntimeException
)
{
if
(
!
m_bShowMenu
)
return
;
...
...
@@ -237,11 +289,11 @@ throw (::com::sun::star::uno::RuntimeException)
}
void
SAL_CALL
LangSelectionStatusbarController
::
command
(
const
::
com
::
sun
::
star
::
awt
::
Point
&
aPos
,
const
css
::
awt
::
Point
&
aPos
,
::
sal_Int32
nCommand
,
::
sal_Bool
/*bMouseEvent*/
,
const
::
com
::
sun
::
star
::
uno
::
Any
&
/*aData*/
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
)
const
css
::
uno
::
Any
&
/*aData*/
)
throw
(
css
::
uno
::
RuntimeException
)
{
if
(
nCommand
&
::
awt
::
Command
::
CONTEXTMENU
)
{
...
...
@@ -250,8 +302,8 @@ throw (::com::sun::star::uno::RuntimeException)
}
void
SAL_CALL
LangSelectionStatusbarController
::
click
(
const
::
com
::
sun
::
star
::
awt
::
Point
&
aPos
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
)
const
css
::
awt
::
Point
&
aPos
)
throw
(
css
::
uno
::
RuntimeException
)
{
LangMenu
(
aPos
);
}
...
...
@@ -311,4 +363,14 @@ throw ( RuntimeException )
}
extern
"C"
SAL_DLLPUBLIC_EXPORT
css
::
uno
::
XInterface
*
SAL_CALL
com_sun_star_comp_framework_LangSelectionStatusbarController_get_implementation
(
css
::
uno
::
XComponentContext
*
context
,
css
::
uno
::
Sequence
<
css
::
uno
::
Any
>
const
&
)
{
rtl
::
Reference
<
LangSelectionStatusbarController
>
x
(
new
LangSelectionStatusbarController
(
context
));
x
->
acquire
();
return
static_cast
<
cppu
::
OWeakObject
*>
(
x
.
get
());
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
framework/util/fwk.component
Dosyayı görüntüle @
fb20f522
...
...
@@ -53,7 +53,8 @@
<implementation
name=
"com.sun.star.comp.framework.JobExecutor"
>
<service
name=
"com.sun.star.task.JobExecutor"
/>
</implementation>
<implementation
name=
"com.sun.star.comp.framework.LangSelectionStatusbarController"
>
<implementation
name=
"com.sun.star.comp.framework.LangSelectionStatusbarController"
constructor=
"com_sun_star_comp_framework_LangSelectionStatusbarController_get_implementation"
>
<service
name=
"com.sun.star.frame.StatusbarController"
/>
</implementation>
<implementation
name=
"com.sun.star.comp.framework.LayoutManager"
>
...
...
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