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
d43ffd30
Kaydet (Commit)
d43ffd30
authored
Tem 30, 2017
tarafından
Pranav Kant
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
lokdialog: Handle key events in core
Change-Id: If84aaac87beebf69d92db5446fc713d8cc20421e
üst
522a9c0a
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
47 additions
and
1 deletion
+47
-1
dialog.hxx
include/vcl/dialog.hxx
+3
-0
unotxdoc.cxx
sw/source/uibase/uno/unotxdoc.cxx
+30
-1
dialog.cxx
vcl/source/window/dialog.cxx
+14
-0
No files found.
include/vcl/dialog.hxx
Dosyayı görüntüle @
d43ffd30
...
@@ -84,6 +84,9 @@ public:
...
@@ -84,6 +84,9 @@ public:
void
LogicMouseButtonUp
(
const
MouseEvent
&
rMouseEvent
);
void
LogicMouseButtonUp
(
const
MouseEvent
&
rMouseEvent
);
void
LogicMouseMove
(
const
MouseEvent
&
rMouseEvent
);
void
LogicMouseMove
(
const
MouseEvent
&
rMouseEvent
);
void
LOKKeyInput
(
const
KeyEvent
&
rKeyEvent
);
void
LOKKeyUp
(
const
KeyEvent
&
rKeyEvent
);
protected
:
protected
:
explicit
Dialog
(
WindowType
nType
);
explicit
Dialog
(
WindowType
nType
);
explicit
Dialog
(
vcl
::
Window
*
pParent
,
const
OUString
&
rID
,
const
OUString
&
rUIXMLDescription
,
WindowType
nType
,
InitFlag
eFlag
=
InitFlag
::
Default
);
explicit
Dialog
(
vcl
::
Window
*
pParent
,
const
OUString
&
rID
,
const
OUString
&
rUIXMLDescription
,
WindowType
nType
,
InitFlag
eFlag
=
InitFlag
::
Default
);
...
...
sw/source/uibase/uno/unotxdoc.cxx
Dosyayı görüntüle @
d43ffd30
...
@@ -3667,9 +3667,38 @@ void SwXTextDocument::paintDialog(const vcl::DialogID& rDialogID, VirtualDevice&
...
@@ -3667,9 +3667,38 @@ void SwXTextDocument::paintDialog(const vcl::DialogID& rDialogID, VirtualDevice&
nHeight
=
aSize
.
getHeight
();
nHeight
=
aSize
.
getHeight
();
}
}
void
SwXTextDocument
::
postDialogKeyEvent
(
const
vcl
::
DialogID
&
/*rDialogID*/
,
int
/*nType*/
,
int
/*nCharCode*/
,
int
/*nKeyCode*/
)
void
SwXTextDocument
::
postDialogKeyEvent
(
const
vcl
::
DialogID
&
rDialogID
,
int
nType
,
int
nCharCode
,
int
nKeyCode
)
{
{
SolarMutexGuard
aGuard
;
// check if dialog is already open
SfxViewFrame
*
pViewFrame
=
pDocShell
->
GetView
()
->
GetViewFrame
();
SfxSlotPool
*
pSlotPool
=
SW_MOD
()
->
GetSlotPool
();
const
SfxSlot
*
pSlot
=
pSlotPool
->
GetUnoSlot
(
rDialogID
);
if
(
!
pSlot
)
{
SAL_WARN
(
"lok.dialog"
,
"No slot found for "
<<
rDialogID
);
return
;
}
SfxChildWindow
*
pChild
=
pViewFrame
->
GetChildWindow
(
pSlot
->
GetSlotId
());
if
(
pChild
)
{
Dialog
*
pDialog
=
static_cast
<
Dialog
*>
(
pChild
->
GetWindow
());
KeyEvent
aEvent
(
nCharCode
,
nKeyCode
,
0
);
switch
(
nType
)
{
case
LOK_KEYEVENT_KEYINPUT
:
pDialog
->
LOKKeyInput
(
aEvent
);
break
;
case
LOK_KEYEVENT_KEYUP
:
pDialog
->
LOKKeyUp
(
aEvent
);
break
;
default
:
assert
(
false
);
break
;
}
}
}
}
void
SwXTextDocument
::
postDialogMouseEvent
(
const
vcl
::
DialogID
&
rDialogID
,
int
nType
,
int
nX
,
int
nY
,
void
SwXTextDocument
::
postDialogMouseEvent
(
const
vcl
::
DialogID
&
rDialogID
,
int
nType
,
int
nX
,
int
nY
,
...
...
vcl/source/window/dialog.cxx
Dosyayı görüntüle @
d43ffd30
...
@@ -898,6 +898,20 @@ void Dialog::LogicMouseMove(const MouseEvent& rMouseEvent)
...
@@ -898,6 +898,20 @@ void Dialog::LogicMouseMove(const MouseEvent& rMouseEvent)
ImplWindowFrameProc
(
this
,
SalEvent
::
ExternalMouseMove
,
&
rMouseEvent
);
ImplWindowFrameProc
(
this
,
SalEvent
::
ExternalMouseMove
,
&
rMouseEvent
);
}
}
void
Dialog
::
LOKKeyInput
(
const
KeyEvent
&
rKeyEvent
)
{
assert
(
comphelper
::
LibreOfficeKit
::
isActive
());
ImplWindowFrameProc
(
this
,
SalEvent
::
ExternalKeyInput
,
&
rKeyEvent
);
}
void
Dialog
::
LOKKeyUp
(
const
KeyEvent
&
rKeyEvent
)
{
assert
(
comphelper
::
LibreOfficeKit
::
isActive
());
ImplWindowFrameProc
(
this
,
SalEvent
::
ExternalKeyUp
,
&
rKeyEvent
);
}
void
Dialog
::
ensureRepaint
()
void
Dialog
::
ensureRepaint
()
{
{
// ensure repaint
// ensure repaint
...
...
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