summaryrefslogtreecommitdiff
path: root/vcl/inc/unx/gtk/gtkinst.hxx
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2018-04-05 12:40:52 +0100
committerCaolán McNamara <caolanm@redhat.com>2018-04-05 15:29:16 +0200
commit6c5aa32a3ca51f9feecf2ed59944080e766b9ac2 (patch)
tree87e8081be5696b7f08013e3b3d07d448ca46b517 /vcl/inc/unx/gtk/gtkinst.hxx
parentd9d6f805fdda16a1a51d50deaba8c3a08b606234 (diff)
enable mapping direct from awt::XWindow and weld::Window
Change-Id: I33b1309a4b81bfd84449213099c4f3f781413e00 Reviewed-on: https://gerrit.libreoffice.org/52456 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'vcl/inc/unx/gtk/gtkinst.hxx')
-rw-r--r--vcl/inc/unx/gtk/gtkinst.hxx13
1 files changed, 11 insertions, 2 deletions
diff --git a/vcl/inc/unx/gtk/gtkinst.hxx b/vcl/inc/unx/gtk/gtkinst.hxx
index 9a3cb48dfe03..b6f00a0752d7 100644
--- a/vcl/inc/unx/gtk/gtkinst.hxx
+++ b/vcl/inc/unx/gtk/gtkinst.hxx
@@ -229,6 +229,7 @@ public:
virtual OpenGLContext* CreateOpenGLContext() override;
virtual weld::Builder* CreateBuilder(weld::Widget* pParent, const OUString& rUIRoot, const OUString& rUIFile) override;
virtual weld::MessageDialog* CreateMessageDialog(weld::Widget* pParent, VclMessageType eMessageType, VclButtonsType eButtonType, const OUString &rPrimaryMessage) override;
+ virtual weld::Window* GetFrameWeld(const css::uno::Reference<css::awt::XWindow>& rWindow) override;
#endif
virtual const cairo_font_options_t* GetCairoFontOptions() override;
@@ -257,25 +258,33 @@ class SalGtkXWindow : public SalGtkXWindow_Base
{
private:
osl::Mutex m_aHelperMtx;
+ weld::Window* m_pWeldWidget;
GtkWidget* m_pWidget;
public:
- SalGtkXWindow(GtkWidget* pWidget)
+ SalGtkXWindow(weld::Window* pWeldWidget, GtkWidget* pWidget)
: SalGtkXWindow_Base(m_aHelperMtx)
+ , m_pWeldWidget(pWeldWidget)
, m_pWidget(pWidget)
{
}
void clear()
{
+ m_pWeldWidget = nullptr;
m_pWidget = nullptr;
}
- GtkWidget * getWidget() const
+ GtkWidget* getWidget() const
{
return m_pWidget;
}
+ weld::Window* getFrameWeld() const
+ {
+ return m_pWeldWidget;
+ }
+
// css::awt::XWindow
void SAL_CALL setPosSize(sal_Int32, sal_Int32, sal_Int32, sal_Int32, sal_Int16) override
{