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
3961bcb5
Kaydet (Commit)
3961bcb5
authored
Ock 23, 2014
tarafından
Matúš Kukan
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
tk: Constructor feature for VCLXToolkit.
Change-Id: I1575ea1b14342a5a64f13d39e409ed33151bcdf9
üst
52d4203a
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
171 additions
and
17 deletions
+171
-17
vclxtoolkit.hxx
include/toolkit/awt/vclxtoolkit.hxx
+0
-0
vclxtoolkit.cxx
toolkit/source/awt/vclxtoolkit.cxx
+169
-13
registerservices.cxx
toolkit/source/helper/registerservices.cxx
+0
-3
tk.component
toolkit/util/tk.component
+2
-1
No files found.
include/toolkit/awt/vclxtoolkit.hxx
deleted
100644 → 0
Dosyayı görüntüle @
52d4203a
This diff is collapsed.
Click to expand it.
toolkit/source/awt/vclxtoolkit.cxx
Dosyayı görüntüle @
3961bcb5
...
...
@@ -17,17 +17,11 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#include <boost/ptr_container/ptr_vector.hpp>
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <stdio.h>
#ifdef WNT
#include <prewin.h>
#include <postwin.h>
#endif
#include <com/sun/star/awt/ImageScaleMode.hpp>
#include <com/sun/star/awt/WindowAttribute.hpp>
#include <com/sun/star/awt/VclWindowPeerAttribute.hpp>
#include <com/sun/star/awt/WindowClass.hpp>
...
...
@@ -43,11 +37,21 @@
#include <com/sun/star/uno/XInterface.hpp>
#include <com/sun/star/beans/NamedValue.hpp>
#include <com/sun/star/datatransfer/clipboard/SystemClipboard.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/awt/XToolkitExperimental.hpp>
#include <com/sun/star/awt/XMessageBoxFactory.hpp>
#include <cppuhelper/compbase2.hxx>
#include <cppuhelper/interfacecontainer.hxx>
#include <cppuhelper/supportsservice.hxx>
#include <cppuhelper/typeprovider.hxx>
#include <osl/conditn.hxx>
#include <osl/module.h>
#include <osl/mutex.hxx>
#include <rtl/uuid.h>
#include <rtl/process.h>
#include <tools/link.hxx>
#include <tools/wintypes.hxx>
#ifdef MACOSX
#include "premac.h"
...
...
@@ -65,7 +69,6 @@ using org::libreoffice::touch::ByteBufferWrapper;
#include <toolkit/awt/vclxwindows.hxx>
#include <toolkit/awt/vclxsystemdependentwindow.hxx>
#include <toolkit/awt/vclxregion.hxx>
#include <toolkit/awt/vclxtoolkit.hxx>
#include <toolkit/awt/vclxtabpagecontainer.hxx>
#include <toolkit/awt/vclxtabpagemodel.hxx>
...
...
@@ -129,7 +132,154 @@ using org::libreoffice::touch::ByteBufferWrapper;
#define SYSTEM_DEPENDENT_TYPE ::com::sun::star::lang::SystemDependent::SYSTEM_XWINDOW
#endif
TOOLKIT_DLLPUBLIC
WinBits
ImplGetWinBits
(
sal_uInt32
nComponentAttribs
,
sal_uInt16
nCompType
)
namespace
{
extern
"C"
typedef
Window
*
(
SAL_CALL
*
FN_SvtCreateWindow
)(
VCLXWindow
**
ppNewComp
,
const
css
::
awt
::
WindowDescriptor
*
pDescriptor
,
Window
*
pParent
,
WinBits
nWinBits
);
class
VCLXToolkit_Impl
{
protected
:
::
osl
::
Mutex
maMutex
;
};
class
VCLXToolkit
:
public
VCLXToolkit_Impl
,
public
cppu
::
WeakComponentImplHelper2
<
css
::
awt
::
XToolkitExperimental
,
css
::
lang
::
XServiceInfo
>
{
css
::
uno
::
Reference
<
css
::
datatransfer
::
clipboard
::
XClipboard
>
mxClipboard
;
css
::
uno
::
Reference
<
css
::
datatransfer
::
clipboard
::
XClipboard
>
mxSelection
;
oslModule
hSvToolsLib
;
FN_SvtCreateWindow
fnSvtCreateWindow
;
::
cppu
::
OInterfaceContainerHelper
m_aTopWindowListeners
;
::
cppu
::
OInterfaceContainerHelper
m_aKeyHandlers
;
::
cppu
::
OInterfaceContainerHelper
m_aFocusListeners
;
::
Link
m_aEventListenerLink
;
::
Link
m_aKeyListenerLink
;
bool
m_bEventListener
;
bool
m_bKeyListener
;
DECL_LINK
(
eventListenerHandler
,
::
VclSimpleEvent
const
*
);
DECL_LINK
(
keyListenerHandler
,
::
VclSimpleEvent
const
*
);
void
callTopWindowListeners
(
::
VclSimpleEvent
const
*
pEvent
,
void
(
SAL_CALL
css
::
awt
::
XTopWindowListener
::*
pFn
)(
css
::
lang
::
EventObject
const
&
));
long
callKeyHandlers
(
::
VclSimpleEvent
const
*
pEvent
,
bool
bPressed
);
void
callFocusListeners
(
::
VclSimpleEvent
const
*
pEvent
,
bool
bGained
);
protected
:
::
osl
::
Mutex
&
GetMutex
()
{
return
maMutex
;
}
virtual
void
SAL_CALL
disposing
();
Window
*
ImplCreateWindow
(
VCLXWindow
**
ppNewComp
,
const
css
::
awt
::
WindowDescriptor
&
rDescriptor
,
Window
*
pParent
,
WinBits
nWinBits
);
css
::
uno
::
Reference
<
css
::
awt
::
XWindowPeer
>
ImplCreateWindow
(
const
css
::
awt
::
WindowDescriptor
&
Descriptor
,
WinBits
nWinBits
);
public
:
VCLXToolkit
();
~
VCLXToolkit
();
// css::awt::XToolkitExperimental
css
::
uno
::
Reference
<
css
::
awt
::
XDevice
>
SAL_CALL
createScreenCompatibleDeviceUsingBuffer
(
sal_Int32
Width
,
sal_Int32
Height
,
sal_Int32
ScaleNumerator
,
sal_Int32
ScaleDenominator
,
sal_Int32
XOffset
,
sal_Int32
YOffset
,
sal_Int64
AddressOfMemoryBufferForSharedArrayWrapper
)
throw
(
css
::
uno
::
RuntimeException
);
// css::awt::XToolkit
css
::
uno
::
Reference
<
css
::
awt
::
XWindowPeer
>
SAL_CALL
getDesktopWindow
(
)
throw
(
css
::
uno
::
RuntimeException
);
css
::
awt
::
Rectangle
SAL_CALL
getWorkArea
(
)
throw
(
css
::
uno
::
RuntimeException
);
css
::
uno
::
Reference
<
css
::
awt
::
XWindowPeer
>
SAL_CALL
createWindow
(
const
css
::
awt
::
WindowDescriptor
&
Descriptor
)
throw
(
css
::
lang
::
IllegalArgumentException
,
css
::
uno
::
RuntimeException
);
css
::
uno
::
Sequence
<
css
::
uno
::
Reference
<
css
::
awt
::
XWindowPeer
>
>
SAL_CALL
createWindows
(
const
css
::
uno
::
Sequence
<
css
::
awt
::
WindowDescriptor
>&
Descriptors
)
throw
(
css
::
lang
::
IllegalArgumentException
,
css
::
uno
::
RuntimeException
);
css
::
uno
::
Reference
<
css
::
awt
::
XDevice
>
SAL_CALL
createScreenCompatibleDevice
(
sal_Int32
Width
,
sal_Int32
Height
)
throw
(
css
::
uno
::
RuntimeException
);
css
::
uno
::
Reference
<
css
::
awt
::
XRegion
>
SAL_CALL
createRegion
(
)
throw
(
css
::
uno
::
RuntimeException
);
// css::awt::XSystemChildFactory
css
::
uno
::
Reference
<
css
::
awt
::
XWindowPeer
>
SAL_CALL
createSystemChild
(
const
css
::
uno
::
Any
&
Parent
,
const
css
::
uno
::
Sequence
<
sal_Int8
>&
ProcessId
,
sal_Int16
SystemType
)
throw
(
css
::
uno
::
RuntimeException
);
// css::awt::XMessageBoxFactory
virtual
css
::
uno
::
Reference
<
css
::
awt
::
XMessageBox
>
SAL_CALL
createMessageBox
(
const
css
::
uno
::
Reference
<
css
::
awt
::
XWindowPeer
>&
aParent
,
css
::
awt
::
MessageBoxType
eType
,
::
sal_Int32
aButtons
,
const
OUString
&
aTitle
,
const
OUString
&
aMessage
)
throw
(
css
::
uno
::
RuntimeException
);
// css::awt::XDataTransfer
css
::
uno
::
Reference
<
css
::
datatransfer
::
dnd
::
XDragGestureRecognizer
>
SAL_CALL
getDragGestureRecognizer
(
const
css
::
uno
::
Reference
<
css
::
awt
::
XWindow
>&
window
)
throw
(
css
::
uno
::
RuntimeException
);
css
::
uno
::
Reference
<
css
::
datatransfer
::
dnd
::
XDragSource
>
SAL_CALL
getDragSource
(
const
css
::
uno
::
Reference
<
css
::
awt
::
XWindow
>&
window
)
throw
(
css
::
uno
::
RuntimeException
);
css
::
uno
::
Reference
<
css
::
datatransfer
::
dnd
::
XDropTarget
>
SAL_CALL
getDropTarget
(
const
css
::
uno
::
Reference
<
css
::
awt
::
XWindow
>&
window
)
throw
(
css
::
uno
::
RuntimeException
);
css
::
uno
::
Reference
<
css
::
datatransfer
::
clipboard
::
XClipboard
>
SAL_CALL
getClipboard
(
const
OUString
&
clipboardName
)
throw
(
css
::
uno
::
RuntimeException
);
// css::lang::XServiceInfo
OUString
SAL_CALL
getImplementationName
(
)
throw
(
css
::
uno
::
RuntimeException
);
sal_Bool
SAL_CALL
supportsService
(
const
OUString
&
ServiceName
)
throw
(
css
::
uno
::
RuntimeException
);
css
::
uno
::
Sequence
<
OUString
>
SAL_CALL
getSupportedServiceNames
(
)
throw
(
css
::
uno
::
RuntimeException
);
// css::awt::XExtendedToolkit:
virtual
::
sal_Int32
SAL_CALL
getTopWindowCount
()
throw
(
css
::
uno
::
RuntimeException
);
virtual
css
::
uno
::
Reference
<
css
::
awt
::
XTopWindow
>
SAL_CALL
getTopWindow
(
::
sal_Int32
nIndex
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
css
::
uno
::
Reference
<
css
::
awt
::
XTopWindow
>
SAL_CALL
getActiveTopWindow
()
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
addTopWindowListener
(
css
::
uno
::
Reference
<
css
::
awt
::
XTopWindowListener
>
const
&
rListener
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
removeTopWindowListener
(
css
::
uno
::
Reference
<
css
::
awt
::
XTopWindowListener
>
const
&
rListener
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
addKeyHandler
(
css
::
uno
::
Reference
<
css
::
awt
::
XKeyHandler
>
const
&
rHandler
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
removeKeyHandler
(
css
::
uno
::
Reference
<
css
::
awt
::
XKeyHandler
>
const
&
rHandler
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
addFocusListener
(
css
::
uno
::
Reference
<
css
::
awt
::
XFocusListener
>
const
&
rListener
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
removeFocusListener
(
css
::
uno
::
Reference
<
css
::
awt
::
XFocusListener
>
const
&
rListener
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
fireFocusGained
(
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
const
&
source
)
throw
(
css
::
uno
::
RuntimeException
);
virtual
void
SAL_CALL
fireFocusLost
(
css
::
uno
::
Reference
<
css
::
uno
::
XInterface
>
const
&
source
)
throw
(
css
::
uno
::
RuntimeException
);
// css::awt::XReschedule:
virtual
void
SAL_CALL
reschedule
()
throw
(
css
::
uno
::
RuntimeException
);
};
WinBits
ImplGetWinBits
(
sal_uInt32
nComponentAttribs
,
sal_uInt16
nCompType
)
{
WinBits
nWinBits
=
0
;
...
...
@@ -407,10 +557,6 @@ namespace
}
}
// ----------------------------------------------------
// class VCLXToolkit
// ----------------------------------------------------
static
sal_Int32
nVCLToolkitInstanceCount
=
0
;
static
bool
bInitedByVCLToolkit
=
false
;
...
...
@@ -1387,7 +1533,7 @@ sal_Bool VCLXToolkit::supportsService( const OUString& rServiceName ) throw(::co
::
com
::
sun
::
star
::
uno
::
Sequence
<
OUString
>
VCLXToolkit
::
getSupportedServiceNames
()
throw
(
::
com
::
sun
::
star
::
uno
::
RuntimeException
)
{
OUString
aServiceName
(
OUString
::
createFromAscii
(
szServiceName2_Toolkit
)
);
OUString
aServiceName
(
"com.sun.star.awt.Toolkit"
);
return
::
com
::
sun
::
star
::
uno
::
Sequence
<
OUString
>
(
&
aServiceName
,
1
);
}
...
...
@@ -1743,4 +1889,14 @@ void SAL_CALL VCLXToolkit::reschedule()
Application
::
Reschedule
(
true
);
}
}
extern
"C"
SAL_DLLPUBLIC_EXPORT
css
::
uno
::
XInterface
*
SAL_CALL
stardiv_Toolkit_VCLXToolkit_get_implementation
(
css
::
uno
::
XComponentContext
*
,
css
::
uno
::
Sequence
<
css
::
uno
::
Any
>
const
&
)
{
return
cppu
::
acquire
(
new
VCLXToolkit
());
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
toolkit/source/helper/registerservices.cxx
Dosyayı görüntüle @
3961bcb5
...
...
@@ -27,7 +27,6 @@
#include <osl/mutex.hxx>
#include <toolkit/helper/servicenames.hxx>
#include <toolkit/helper/macros.hxx>
#include <toolkit/awt/vclxtoolkit.hxx>
#include <toolkit/awt/vclxmenu.hxx>
#include <toolkit/awt/vclxpointer.hxx>
#include <toolkit/awt/vclxprinter.hxx>
...
...
@@ -100,7 +99,6 @@ namespace toolkit
using
namespace
toolkit
;
IMPL_CREATEINSTANCE
(
VCLXToolkit
)
IMPL_CREATEINSTANCE
(
StdTabController
)
IMPL_CREATEINSTANCE
(
StdTabControllerModel
)
IMPL_CREATEINSTANCE
(
UnoControlContainer
)
...
...
@@ -137,7 +135,6 @@ TOOLKIT_DLLPUBLIC void* SAL_CALL tk_component_getFactory( const sal_Char* sImple
{
::
com
::
sun
::
star
::
uno
::
Reference
<
::
com
::
sun
::
star
::
lang
::
XMultiServiceFactory
>
xServiceFactory
=
static_cast
<
::
com
::
sun
::
star
::
lang
::
XMultiServiceFactory
*
>
(
_pServiceManager
);
GET_FACTORY
(
VCLXToolkit
,
szServiceName_Toolkit
,
szServiceName2_Toolkit
)
GET_FACTORY
(
VCLXPopupMenu
,
szServiceName_PopupMenu
,
szServiceName2_PopupMenu
)
GET_FACTORY
(
VCLXMenuBar
,
szServiceName_MenuBar
,
szServiceName2_MenuBar
)
GET_FACTORY
(
VCLXPointer
,
szServiceName_Pointer
,
szServiceName2_Pointer
)
...
...
toolkit/util/tk.component
Dosyayı görüntüle @
3961bcb5
...
...
@@ -345,7 +345,8 @@
<service
name=
"com.sun.star.awt.PrinterServer"
/>
<service
name=
"stardiv.vcl.PrinterServer"
/>
</implementation>
<implementation
name=
"stardiv.Toolkit.VCLXToolkit"
>
<implementation
name=
"stardiv.Toolkit.VCLXToolkit"
constructor=
"stardiv_Toolkit_VCLXToolkit_get_implementation"
>
<service
name=
"com.sun.star.awt.Toolkit"
/>
<service
name=
"stardiv.vcl.VclToolkit"
/>
</implementation>
...
...
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