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
98b532d5
Kaydet (Commit)
98b532d5
authored
Haz 22, 2010
tarafından
Daniel Rentz
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
mib17: remove unused/needless code
üst
984c4838
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
89 additions
and
245 deletions
+89
-245
XVBAAppService.idl
oovbaapi/ooo/vba/XVBAAppService.idl
+0
-72
XVBADocService.idl
oovbaapi/ooo/vba/XVBADocService.idl
+0
-72
makefile.mk
oovbaapi/ooo/vba/makefile.mk
+2
-3
vbaapplicationbase.hxx
vbahelper/inc/vbahelper/vbaapplicationbase.hxx
+3
-2
vbadocumentbase.hxx
vbahelper/inc/vbahelper/vbadocumentbase.hxx
+1
-3
vbahelperinterface.hxx
vbahelper/inc/vbahelper/vbahelperinterface.hxx
+26
-4
vbaapplicationbase.cxx
vbahelper/source/vbahelper/vbaapplicationbase.cxx
+39
-56
vbadocumentbase.cxx
vbahelper/source/vbahelper/vbadocumentbase.cxx
+18
-33
No files found.
oovbaapi/ooo/vba/XVBAAppService.idl
deleted
100755 → 0
Dosyayı görüntüle @
984c4838
/*************************************************************************
*
*
DO
NOT
ALTER
OR
REMOVE
COPYRIGHT
NOTICES
OR
THIS
FILE
HEADER
.
*
*
Copyright
2008
by
Sun
Microsystems
,
Inc
.
*
*
OpenOffice
.
org
-
a
multi
-
platform
office
productivity
suite
*
*
$
RCSfile
:
XWorkbook
.
idl
,
v
$
*
$
Revision
:
1.4
$
*
*
This
file
is
part
of
OpenOffice
.
org.
*
*
OpenOffice
.
org
is
free
software
:
you
can
redistribute
it
and
/
or
modify
*
it
under
the
terms
of
the
GNU
Lesser
General
Public
License
version
3
*
only
,
as
published
by
the
Free
Software
Foundation
.
*
*
OpenOffice
.
org
is
distributed
in
the
hope
that
it
will
be
useful
,
*
but
WITHOUT
ANY
WARRANTY
; without even the implied warranty of
*
MERCHANTABILITY
or
FITNESS
FOR
A
PARTICULAR
PURPOSE
.
See
the
*
GNU
Lesser
General
Public
License
version
3
for
more
details
*
(
a
copy
is
included
in
the
LICENSE
file
that
accompanied
this
code
)
.
*
*
You
should
have
received
a
copy
of
the
GNU
Lesser
General
Public
License
*
version
3
along
with
OpenOffice
.
org.
If
not
,
see
*
<
http
:
//
www
.
openoffice.org/license.html>
*
for
a
copy
of
the
LGPLv3
License
.
*
************************************************************************/
#
ifndef
__ooo_vba_appservice_idl__
#
define
__ooo_vba_appservice_idl__
#
ifndef
__com_sun_star_uno_XInterface_idl__
#
include
<
com
/
sun
/
star
/
uno
/
XInterface
.
idl>
#
endif
#
ifndef
__com_sun_star_uno_XComponentContext_idl__
#
include
<
com
/
sun
/
star
/
uno
/
XComponentContext
.
idl>
#
endif
#
ifndef
__com_sun_star_frame_XModel_idl__
#
include
<
com
/
sun
/
star
/
frame
/
XModel
.
idl>
#
endif
#
ifndef
__com_sun_star_script_XLibraryContainer_idl__
#
include
<
com
/
sun
/
star
/
script
/
XLibraryContainer
.
idl>
#
endif
//=============================================================================
module
ooo
{
module
vba
{
//=============================================================================
interface
XHelperInterface
;
interface
XComponentContext
;
interface
XModel
;
interface
XVBAAppService
{
interface
::
com
::
sun
::
star
::
uno
::
XInterface
;
any
getVBE
(
[
in
]
XHelperInterface
xParent
,
[
in
]
::
com
::
sun
::
star
::
uno
::
XComponentContext
xContext
,
[
in
]
::
com
::
sun
::
star
::
frame
::
XModel
xModel
)
;
any
getVBProjects
(
[
in
]
XHelperInterface
xParent
,
[
in
]
::
com
::
sun
::
star
::
uno
::
XComponentContext
xContext
,
[
in
]
::
com
::
sun
::
star
::
frame
::
XModel
xModel
,
[
in
]
::
com
::
sun
::
star
::
script
::
XLibraryContainer
xMacroLibraryContainer
,
[
in
]
com
::
sun
::
star
::
script
::
XLibraryContainer
xDialogLibraryContainer
)
;
}
;
}
; };
#
endif
oovbaapi/ooo/vba/XVBADocService.idl
deleted
100755 → 0
Dosyayı görüntüle @
984c4838
/*************************************************************************
*
*
DO
NOT
ALTER
OR
REMOVE
COPYRIGHT
NOTICES
OR
THIS
FILE
HEADER
.
*
*
Copyright
2008
by
Sun
Microsystems
,
Inc
.
*
*
OpenOffice
.
org
-
a
multi
-
platform
office
productivity
suite
*
*
$
RCSfile
:
XVBADocService
.
idl
,
v
$
*
$
Revision
:
1.4
$
*
*
This
file
is
part
of
OpenOffice
.
org.
*
*
OpenOffice
.
org
is
free
software
:
you
can
redistribute
it
and
/
or
modify
*
it
under
the
terms
of
the
GNU
Lesser
General
Public
License
version
3
*
only
,
as
published
by
the
Free
Software
Foundation
.
*
*
OpenOffice
.
org
is
distributed
in
the
hope
that
it
will
be
useful
,
*
but
WITHOUT
ANY
WARRANTY
; without even the implied warranty of
*
MERCHANTABILITY
or
FITNESS
FOR
A
PARTICULAR
PURPOSE
.
See
the
*
GNU
Lesser
General
Public
License
version
3
for
more
details
*
(
a
copy
is
included
in
the
LICENSE
file
that
accompanied
this
code
)
.
*
*
You
should
have
received
a
copy
of
the
GNU
Lesser
General
Public
License
*
version
3
along
with
OpenOffice
.
org.
If
not
,
see
*
<
http
:
//
www
.
openoffice.org/license.html>
*
for
a
copy
of
the
LGPLv3
License
.
*
************************************************************************/
#
ifndef
__ooo_vba_socservice_idl__
#
define
__ooo_vba_appservice_idl__
#
ifndef
__com_sun_star_uno_XInterface_idl__
#
include
<
com
/
sun
/
star
/
uno
/
XInterface
.
idl>
#
endif
#
ifndef
__com_sun_star_uno_XComponentContext_idl__
#
include
<
com
/
sun
/
star
/
uno
/
XComponentContext
.
idl>
#
endif
#
ifndef
__com_sun_star_frame_XModel_idl__
#
include
<
com
/
sun
/
star
/
frame
/
XModel
.
idl>
#
endif
#
ifndef
__com_sun_star_script_XLibraryContainer_idl__
#
include
<
com
/
sun
/
star
/
script
/
XLibraryContainer
.
idl>
#
endif
//=============================================================================
module
ooo
{
module
vba
{
//=============================================================================
interface
XHelperInterface
;
interface
XComponentContext
;
interface
XModel
;
interface
XVBADocService
{
interface
::
com
::
sun
::
star
::
uno
::
XInterface
;
any
getVBProject
(
[
in
]
XHelperInterface
xParent
,
[
in
]
::
com
::
sun
::
star
::
uno
::
XComponentContext
xContext
,
[
in
]
::
com
::
sun
::
star
::
frame
::
XModel
xModel
,
[
in
]
::
com
::
sun
::
star
::
script
::
XLibraryContainer
xMacroLibraryContainer
,
[
in
]
com
::
sun
::
star
::
script
::
XLibraryContainer
xDialogLibraryContainer
)
;
}
;
}
; };
#
endif
oovbaapi/ooo/vba/makefile.mk
Dosyayı görüntüle @
98b532d5
...
...
@@ -61,9 +61,8 @@ IDLFILES=\
XFontBase.idl
\
XDialogsBase.idl
\
XDialogBase.idl
\
XPageSetupBase.idl
\
XVBAAppService.idl
\
XVBADocService.idl
\
XPageSetupBase.idl
# ------------------------------------------------------------------
.ENDIF
.INCLUDE
:
target.mk
vbahelper/inc/vbahelper/vbaapplicationbase.hxx
Dosyayı görüntüle @
98b532d5
...
...
@@ -57,13 +57,14 @@ public:
virtual
void
SAL_CALL
setInteractive
(
::
sal_Bool
bInteractive
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
css
::
uno
::
Any
SAL_CALL
CommandBars
(
const
css
::
uno
::
Any
&
aIndex
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
::
rtl
::
OUString
SAL_CALL
getVersion
()
throw
(
css
::
uno
::
RuntimeException
);
virtual
css
::
uno
::
Any
SAL_CALL
getVBE
()
throw
(
css
::
uno
::
RuntimeException
);
virtual
css
::
uno
::
Any
SAL_CALL
getVBProjects
()
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
Run
(
const
::
rtl
::
OUString
&
MacroName
,
const
css
::
uno
::
Any
&
varg1
,
const
css
::
uno
::
Any
&
varg2
,
const
css
::
uno
::
Any
&
varg3
,
const
css
::
uno
::
Any
&
varg4
,
const
css
::
uno
::
Any
&
varg5
,
const
css
::
uno
::
Any
&
varg6
,
const
css
::
uno
::
Any
&
varg7
,
const
css
::
uno
::
Any
&
varg8
,
const
css
::
uno
::
Any
&
varg9
,
const
css
::
uno
::
Any
&
varg10
,
const
css
::
uno
::
Any
&
varg11
,
const
css
::
uno
::
Any
&
varg12
,
const
css
::
uno
::
Any
&
varg13
,
const
css
::
uno
::
Any
&
varg14
,
const
css
::
uno
::
Any
&
varg15
,
const
css
::
uno
::
Any
&
varg16
,
const
css
::
uno
::
Any
&
varg17
,
const
css
::
uno
::
Any
&
varg18
,
const
css
::
uno
::
Any
&
varg19
,
const
css
::
uno
::
Any
&
varg20
,
const
css
::
uno
::
Any
&
varg21
,
const
css
::
uno
::
Any
&
varg22
,
const
css
::
uno
::
Any
&
varg23
,
const
css
::
uno
::
Any
&
varg24
,
const
css
::
uno
::
Any
&
varg25
,
const
css
::
uno
::
Any
&
varg26
,
const
css
::
uno
::
Any
&
varg27
,
const
css
::
uno
::
Any
&
varg28
,
const
css
::
uno
::
Any
&
varg29
,
const
css
::
uno
::
Any
&
varg30
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
OnTime
(
const
::
com
::
sun
::
star
::
uno
::
Any
&
aEarliestTime
,
const
::
rtl
::
OUString
&
aFunction
,
const
::
com
::
sun
::
star
::
uno
::
Any
&
aLatestTime
,
const
::
com
::
sun
::
star
::
uno
::
Any
&
aSchedule
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
float
SAL_CALL
CentimetersToPoints
(
float
_Centimeters
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
Undo
(
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
Quit
(
)
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
);
virtual
css
::
uno
::
Any
SAL_CALL
getVBE
()
throw
(
css
::
uno
::
RuntimeException
);
virtual
css
::
uno
::
Any
SAL_CALL
SAL_CALL
getVBProjects
()
throw
(
css
::
uno
::
RuntimeException
);
// XHelperInterface
virtual
rtl
::
OUString
&
getServiceImplName
();
...
...
vbahelper/inc/vbahelper/vbadocumentbase.hxx
Dosyayı görüntüle @
98b532d5
...
...
@@ -52,9 +52,7 @@ public:
virtual
::
rtl
::
OUString
SAL_CALL
getFullName
()
throw
(
css
::
uno
::
RuntimeException
);
virtual
sal_Bool
SAL_CALL
getSaved
()
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
setSaved
(
sal_Bool
bSave
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
css
::
uno
::
Any
SAL_CALL
getVBProject
()
throw
(
css
::
uno
::
RuntimeException
);
// Michhael E. Bohn
virtual
css
::
uno
::
Any
SAL_CALL
getVBProject
()
throw
(
css
::
uno
::
RuntimeException
);
// Methods
virtual
void
SAL_CALL
Close
(
const
css
::
uno
::
Any
&
bSaveChanges
,
...
...
vbahelper/inc/vbahelper/vbahelperinterface.hxx
Dosyayı görüntüle @
98b532d5
...
...
@@ -28,6 +28,8 @@
#define OOVBAAPI_VBA_HELPERINTERFACE_HXX
#include <cppuhelper/implbase1.hxx>
#include <cppuhelper/implbase2.hxx>
#include <cppuhelper/implbase3.hxx>
#include <ooo/vba/XHelperInterface.hpp>
#include <vbahelper/vbahelper.hxx>
#include <com/sun/star/container/XNameAccess.hpp>
...
...
@@ -68,6 +70,7 @@ protected:
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>
mxContext
;
public
:
InheritedHelperInterfaceImpl
()
{}
InheritedHelperInterfaceImpl
(
const
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>&
xContext
)
:
mxContext
(
xContext
)
{}
InheritedHelperInterfaceImpl
(
const
css
::
uno
::
Reference
<
ov
::
XHelperInterface
>&
xParent
,
const
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>&
xContext
)
:
mxParent
(
xParent
),
mxContext
(
xContext
)
{}
virtual
rtl
::
OUString
&
getServiceImplName
()
=
0
;
virtual
css
::
uno
::
Sequence
<
rtl
::
OUString
>
getServiceNames
()
=
0
;
...
...
@@ -86,7 +89,6 @@ public:
return
xNameAccess
->
getByName
(
rtl
::
OUString
(
RTL_CONSTASCII_USTRINGPARAM
(
"Application"
)
)
);
}
// XServiceInfo Methods
virtual
::
rtl
::
OUString
SAL_CALL
getImplementationName
(
)
throw
(
css
::
uno
::
RuntimeException
)
{
return
getServiceImplName
();
}
virtual
::
sal_Bool
SAL_CALL
supportsService
(
const
::
rtl
::
OUString
&
ServiceName
)
throw
(
css
::
uno
::
RuntimeException
)
...
...
@@ -101,19 +103,39 @@ public:
}
virtual
css
::
uno
::
Sequence
<
::
rtl
::
OUString
>
SAL_CALL
getSupportedServiceNames
(
)
throw
(
css
::
uno
::
RuntimeException
)
{
css
::
uno
::
Sequence
<
rtl
::
OUString
>
aNames
=
getServiceNames
();
;
css
::
uno
::
Sequence
<
rtl
::
OUString
>
aNames
=
getServiceNames
();
return
aNames
;
}
};
template
<
typename
Ifc1
>
class
VBAHELPER_DLLPUBLIC
InheritedHelperInterfaceImpl1
:
public
InheritedHelperInterfaceImpl
<
::
cppu
::
WeakImplHelper1
<
Ifc1
>
>
{
typedef
InheritedHelperInterfaceImpl
<
::
cppu
::
WeakImplHelper1
<
Ifc1
>
>
Base
;
public
:
InheritedHelperInterfaceImpl1
<
Ifc1
>
()
{}
InheritedHelperInterfaceImpl1
<
Ifc1
>
(
const
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>&
xContext
)
:
Base
(
xContext
)
{}
InheritedHelperInterfaceImpl1
<
Ifc1
>
(
const
css
::
uno
::
Reference
<
ov
::
XHelperInterface
>&
xParent
,
const
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>&
xContext
)
:
Base
(
xParent
,
xContext
)
{}
};
template
<
typename
Ifc1
,
typename
Ifc2
>
class
VBAHELPER_DLLPUBLIC
InheritedHelperInterfaceImpl2
:
public
InheritedHelperInterfaceImpl
<
::
cppu
::
WeakImplHelper2
<
Ifc1
,
Ifc2
>
>
{
typedef
InheritedHelperInterfaceImpl
<
::
cppu
::
WeakImplHelper1
<
Ifc1
>
>
Base
;
typedef
InheritedHelperInterfaceImpl
<
::
cppu
::
WeakImplHelper2
<
Ifc1
,
Ifc2
>
>
Base
;
public
:
InheritedHelperInterfaceImpl1
<
Ifc1
>
(
const
css
::
uno
::
Reference
<
ov
::
XHelperInterface
>&
xParent
,
const
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>&
xContext
)
:
Base
(
xParent
,
xContext
)
{}
InheritedHelperInterfaceImpl2
<
Ifc1
,
Ifc2
>
()
{}
InheritedHelperInterfaceImpl2
<
Ifc1
,
Ifc2
>
(
const
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>&
xContext
)
:
Base
(
xContext
)
{}
InheritedHelperInterfaceImpl2
<
Ifc1
,
Ifc2
>
(
const
css
::
uno
::
Reference
<
ov
::
XHelperInterface
>&
xParent
,
const
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>&
xContext
)
:
Base
(
xParent
,
xContext
)
{}
};
template
<
typename
Ifc1
,
typename
Ifc2
,
typename
Ifc3
>
class
VBAHELPER_DLLPUBLIC
InheritedHelperInterfaceImpl3
:
public
InheritedHelperInterfaceImpl
<
::
cppu
::
WeakImplHelper3
<
Ifc1
,
Ifc2
,
Ifc3
>
>
{
typedef
InheritedHelperInterfaceImpl
<
::
cppu
::
WeakImplHelper3
<
Ifc1
,
Ifc2
,
Ifc3
>
>
Base
;
public
:
InheritedHelperInterfaceImpl3
<
Ifc1
,
Ifc2
,
Ifc3
>
()
{}
InheritedHelperInterfaceImpl3
<
Ifc1
,
Ifc2
,
Ifc3
>
(
const
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>&
xContext
)
:
Base
(
xContext
)
{}
InheritedHelperInterfaceImpl3
<
Ifc1
,
Ifc2
,
Ifc3
>
(
const
css
::
uno
::
Reference
<
ov
::
XHelperInterface
>&
xParent
,
const
css
::
uno
::
Reference
<
css
::
uno
::
XComponentContext
>&
xContext
)
:
Base
(
xParent
,
xContext
)
{}
};
// ============================================================================
...
...
vbahelper/source/vbahelper/vbaapplicationbase.cxx
Dosyayı görüntüle @
98b532d5
...
...
@@ -24,39 +24,36 @@
* for a copy of the LGPLv3 License.
*
************************************************************************/
#include "vbahelper/vbaapplicationbase.hxx"
#include <com/sun/star/container/XIndexAccess.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
//Michael E. Bohn
#include <com/sun/star/lang/XMultiComponentFactory.hpp>
//Michael E. Bohn
#include <com/sun/star/lang/XComponent.hpp>
//Michael E. Bohn
#include <com/sun/star/container/XEnumeration.hpp>
//Michael E. Bohn
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
#include <com/sun/star/lang/XMultiComponentFactory.hpp>
#include <com/sun/star/lang/XComponent.hpp>
#include <com/sun/star/container/XEnumeration.hpp>
#include <com/sun/star/frame/XLayoutManager.hpp>
#include <com/sun/star/frame/XDesktop.hpp>
#include <com/sun/star/container/XEnumerationAccess.hpp>
#include <com/sun/star/document/XDocumentInfoSupplier.hpp>
#include <com/sun/star/document/XDocumentProperties.hpp>
#include <com/sun/star/document/XDocumentPropertiesSupplier.hpp>
#include <com/sun/star/document/XEmbeddedScripts.hpp> //Michael E. Bohn
#include <ooo/vba/XVBAAppService.hpp> //Michael E. Bohn
#include <com/sun/star/document/XEmbeddedScripts.hpp>
#include <com/sun/star/awt/XWindow2.hpp>
#include "vbacommandbars.hxx"
#include <hash_map>
#include <filter/msfilter/msvbahelper.hxx>
#include <tools/datetime.hxx>
// start basic includes
#include <basic/sbx.hxx>
#include <basic/sbstar.hxx>
#include <basic/sbuno.hxx>
#include <basic/sbmeth.hxx>
#include <basic/sbmod.hxx>
// end basic includes
#include
<hash_map>
#include
"vbacommandbars.hxx"
using
namespace
com
::
sun
::
star
;
using
namespace
ooo
::
vba
;
using
namespace
::
com
::
sun
::
star
;
using
namespace
::
ooo
::
vba
;
#define OFFICEVERSION "11.0"
...
...
@@ -407,57 +404,43 @@ float SAL_CALL VbaApplicationBase::CentimetersToPoints( float _Centimeters ) thr
return
(
_Centimeters
*
rate
);
}
// inserted by Michael E. Bohn
uno
::
Any
SAL_CALL
VbaApplicationBase
::
getVBE
()
throw
(
uno
::
RuntimeException
)
{
uno
::
Any
aAny
;
uno
::
Reference
<
::
lang
::
XMultiComponentFactory
>
xServiceManager
=
mxContext
->
getServiceManager
();
try
{
uno
::
Reference
<
::
uno
::
XInterface
>
xInterface
=
xServiceManager
->
createInstanceWithContext
(
::
rtl
::
OUString
(
RTL_CONSTASCII_USTRINGPARAM
(
"ooo.vba.VBAAppService"
)),
mxContext
);
uno
::
Reference
<
::
ooo
::
vba
::
XVBAAppService
>
xVBAAppService
(
xInterface
,
::
uno
::
UNO_QUERY_THROW
);
if
(
xVBAAppService
.
is
()){
uno
::
Reference
<
frame
::
XModel
>
xModel
(
getCurrentDocument
(),
uno
::
UNO_QUERY_THROW
);
return
xVBAAppService
->
getVBE
(
this
,
mxContext
,
xModel
);
}
}
catch
(
uno
::
Exception
*
e
)
{
}
return
aAny
;
try
// return empty object on error
{
uno
::
Sequence
<
uno
::
Any
>
aArgs
(
2
);
aArgs
[
0
]
<<=
uno
::
Reference
<
XHelperInterface
>
(
this
);
aArgs
[
1
]
<<=
getCurrentDocument
();
uno
::
Reference
<
lang
::
XMultiComponentFactory
>
xServiceManager
(
mxContext
->
getServiceManager
(),
uno
::
UNO_SET_THROW
);
uno
::
Reference
<
uno
::
XInterface
>
xVBE
=
xServiceManager
->
createInstanceWithArgumentsAndContext
(
::
rtl
::
OUString
(
RTL_CONSTASCII_USTRINGPARAM
(
"ooo.vba.VBE"
)
),
aArgs
,
mxContext
);
return
uno
::
Any
(
xVBE
);
}
catch
(
uno
::
Exception
&
)
{
}
return
uno
::
Any
();
}
uno
::
Any
SAL_CALL
VbaApplicationBase
::
getVBProjects
()
throw
(
uno
::
RuntimeException
)
{
uno
::
Any
aAny
;
uno
::
Reference
<
::
lang
::
XMultiComponentFactory
>
xServiceManager
=
mxContext
->
getServiceManager
();
try
{
uno
::
Reference
<
::
uno
::
XInterface
>
xInterface
=
xServiceManager
->
createInstanceWithContext
(
::
rtl
::
OUString
(
RTL_CONSTASCII_USTRINGPARAM
(
"ooo.vba.VBAAppService"
)),
mxContext
);
uno
::
Reference
<
::
ooo
::
vba
::
XVBAAppService
>
xVBAAppService
(
xInterface
,
::
uno
::
UNO_QUERY_THROW
);
if
(
xVBAAppService
.
is
()){
uno
::
Reference
<
frame
::
XModel
>
xModel
(
getCurrentDocument
(),
uno
::
UNO_QUERY_THROW
);
uno
::
Reference
<
document
::
XEmbeddedScripts
>
xEnbeddedScripts
(
xModel
,
uno
::
UNO_QUERY_THROW
);
uno
::
Reference
<
script
::
XStorageBasedLibraryContainer
>
xMacroStorageBasedLibraryContainer
=
xEnbeddedScripts
->
getBasicLibraries
();
uno
::
Reference
<
script
::
XStorageBasedLibraryContainer
>
xDialogStorageBasedLibraryContainer
=
xEnbeddedScripts
->
getDialogLibraries
();
uno
::
Reference
<
script
::
XLibraryContainer
>
xMacroLibraryContainer
(
xMacroStorageBasedLibraryContainer
,
uno
::
UNO_QUERY_THROW
);
uno
::
Reference
<
script
::
XLibraryContainer
>
xDialogLibraryContainer
(
xDialogStorageBasedLibraryContainer
,
uno
::
UNO_QUERY_THROW
);
return
xVBAAppService
->
getVBProjects
(
this
,
mxContext
,
xModel
,
xMacroLibraryContainer
,
xDialogLibraryContainer
);
}
}
catch
(
uno
::
Exception
*
e
)
{
}
return
aAny
;
try
// return empty object on error
{
uno
::
Sequence
<
uno
::
Any
>
aArgs
(
2
);
aArgs
[
0
]
<<=
uno
::
Reference
<
XHelperInterface
>
(
this
);
aArgs
[
1
]
<<=
getCurrentDocument
();
uno
::
Reference
<
lang
::
XMultiComponentFactory
>
xServiceManager
(
mxContext
->
getServiceManager
(),
uno
::
UNO_SET_THROW
);
uno
::
Reference
<
uno
::
XInterface
>
xVBProjects
=
xServiceManager
->
createInstanceWithArgumentsAndContext
(
::
rtl
::
OUString
(
RTL_CONSTASCII_USTRINGPARAM
(
"ooo.vba.VBProjects"
)
),
aArgs
,
mxContext
);
return
uno
::
Any
(
xVBProjects
);
}
catch
(
uno
::
Exception
&
)
{
}
return
uno
::
Any
();
}
rtl
::
OUString
&
VbaApplicationBase
::
getServiceImplName
()
{
...
...
vbahelper/source/vbahelper/vbadocumentbase.cxx
Dosyayı görüntüle @
98b532d5
...
...
@@ -24,9 +24,9 @@
* for a copy of the LGPLv3 License.
*
************************************************************************/
#include <vbahelper/vbadocumentbase.hxx>
#include
<vbahelper/helperdecl.hxx>
#include
<comphelper/unwrapargs.hxx>
#include
"vbahelper/vbadocumentbase.hxx"
#include
"vbahelper/helperdecl.hxx"
#include <com/sun/star/util/XModifiable.hpp>
#include <com/sun/star/util/XProtectable.hpp>
...
...
@@ -35,8 +35,8 @@
#include <com/sun/star/frame/XFrame.hpp>
#include <com/sun/star/document/XEmbeddedScripts.hpp> //Michael E. Bohn
#include <com/sun/star/beans/XPropertySet.hpp>
#include <ooo/vba/XVBADocService.hpp>
#include <comphelper/unwrapargs.hxx>
#include <tools/urlobj.hxx>
#include <osl/file.hxx>
...
...
@@ -206,40 +206,25 @@ VbaDocumentBase::Activate() throw (uno::RuntimeException)
xFrame
->
activate
();
}
// ---- Michael E.Bohn Start-----
uno
::
Any
SAL_CALL
VbaDocumentBase
::
getVBProject
()
throw
(
uno
::
RuntimeException
)
{
uno
::
Any
aAny
;
uno
::
Reference
<
::
lang
::
XMultiComponentFactory
>
xServiceManager
=
mxContext
->
getServiceManager
();
try
{
uno
::
Reference
<
::
uno
::
XInterface
>
xInterface
=
xServiceManager
->
createInstanceWithContext
(
::
rtl
::
OUString
(
RTL_CONSTASCII_USTRINGPARAM
(
"ooo.vba.VBADocService"
)),
mxContext
);
uno
::
Reference
<
::
ooo
::
vba
::
XVBADocService
>
xVBADocService
(
xInterface
,
::
uno
::
UNO_QUERY_THROW
);
if
(
xVBADocService
.
is
()){
uno
::
Reference
<
frame
::
XModel
>
xModel
(
getModel
(),
uno
::
UNO_QUERY_THROW
);
uno
::
Reference
<
document
::
XEmbeddedScripts
>
xEnbeddedScripts
(
xModel
,
uno
::
UNO_QUERY_THROW
);
uno
::
Reference
<
script
::
XStorageBasedLibraryContainer
>
xMacroStorageBasedLibraryContainer
=
xEnbeddedScripts
->
getBasicLibraries
();
uno
::
Reference
<
script
::
XStorageBasedLibraryContainer
>
xDialogStorageBasedLibraryContainer
=
xEnbeddedScripts
->
getDialogLibraries
();
uno
::
Reference
<
script
::
XLibraryContainer
>
xMacroLibraryContainer
(
xMacroStorageBasedLibraryContainer
,
uno
::
UNO_QUERY_THROW
);
uno
::
Reference
<
script
::
XLibraryContainer
>
xDialogLibraryContainer
(
xDialogStorageBasedLibraryContainer
,
uno
::
UNO_QUERY_THROW
);
return
xVBADocService
->
getVBProject
(
this
,
mxContext
,
xModel
,
xMacroLibraryContainer
,
xDialogLibraryContainer
);
}
}
catch
(
uno
::
Exception
*
e
)
{
}
return
aAny
;
try
// return empty object on error
{
uno
::
Sequence
<
uno
::
Any
>
aArgs
(
2
);
aArgs
[
0
]
<<=
uno
::
Reference
<
XHelperInterface
>
(
this
);
aArgs
[
1
]
<<=
mxModel
;
uno
::
Reference
<
lang
::
XMultiComponentFactory
>
xServiceManager
(
mxContext
->
getServiceManager
(),
uno
::
UNO_SET_THROW
);
uno
::
Reference
<
uno
::
XInterface
>
xVBProjects
=
xServiceManager
->
createInstanceWithArgumentsAndContext
(
::
rtl
::
OUString
(
RTL_CONSTASCII_USTRINGPARAM
(
"ooo.vba.VBProject"
)
),
aArgs
,
mxContext
);
return
uno
::
Any
(
xVBProjects
);
}
catch
(
uno
::
Exception
&
)
{
}
return
uno
::
Any
();
}
// ---- Michael E.Bohn End -----
rtl
::
OUString
&
VbaDocumentBase
::
getServiceImplName
()
{
...
...
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