<div dir="ltr"><div>I did not make GSOC but I'm willing to continue. I've tried many functions in the ScViewData class. So far the only function that did what I needed was SetScreenPos() function. But it does not seem to refresh the current view and the numbering. <br>
</div>Can some one point me to the code which handles events like page down or ctrl+up. <br></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Apr 4, 2014 at 12:46 PM, Tharindu Amila Perera <span dir="ltr"><<a href="mailto:amilastbmmv@gmail.com" target="_blank">amilastbmmv@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">First of all Thank you for the help. :)<br>
<div class=""><br>
On Fri, Apr 4, 2014 at 1:56 AM, Michael Stahl <<a href="mailto:mstahl@redhat.com">mstahl@redhat.com</a>> wrote:<br>
> On 01/04/14 06:50, Tharindu Amila Perera wrote:<br>
>> Hi all,<br>
>><br>
>> Using the reply I found out that the events coming from the keyboard<br>
>> has this behavior.<br>
>><br>
>> Using the argument KeyEvent coming to function in file tabvwsh4.cxx<br>
>>     bool ScTabViewShell::TabKeyInput(const KeyEvent& rKEvt)<br>
>><br>
>><br>
>> I can get codes of all keys except of Caps-Lock, NumLock and<br>
>> Scroll(Which is the needed input).<br>
><br>
>> I noticed that when any of the above keys are pressed this function is<br>
>> called twice. But in both events the keycodes are not accessible.<br>
><br>
> hmm... indeed the keycode is 0 there... it looks like the "lock" keys<br>
> are not mapped to a keycode in VCL... perhaps intentionally.<br>
<br>
</div>Maybe they did it on purpose as only finding if it is on or off is the<br>
only operation done on the value.<br>
<div class=""><br>
><br>
>> When CapsLock is on pressing key 'A' in keyboard will give the same<br>
>> keycode as when it is not on. So there must be a place where it is<br>
>> handled to differentiate a and A inputs. It would be appreciated if I<br>
>> can get a code pointer for this.<br>
><br>
> if i read the bug correctly you don't actually need the key events, you<br>
> just need to know if the lock key is active when some other input happens.<br>
><br>
</div> Yes I only need to know if it was on or not.<br>
<div class="">> vcl/unx/generic/app/saldisp.cxx:<br>
><br>
>  sal_uInt16 SalDisplay::GetIndicatorState() const<br>
>  {<br>
>     unsigned int _state = 0;<br>
>     sal_uInt16 nState = 0;<br>
>     XkbGetIndicatorState(pDisp_, XkbUseCoreKbd, &_state);<br>
><br>
>     if ((_state & 0x00000001))<br>
>         nState |= INDICATOR_CAPSLOCK;<br>
>     if ((_state & 0x00000002))<br>
>         nState |= INDICATOR_NUMLOCK;<br>
>     if ((_state & 0x00000004))<br>
>         nState |= INDICATOR_SCROLLLOCK;<br>
><br>
>     return nState;<br>
>  }<br>
><br>
> there is an example for requesting the caps-lock key state in<br>
> editeng/source/misc/svxacorr.cxx:<br>
><br>
>  bool bLockKeyOn = pFrameWin && (pFrameWin->GetIndicatorState() &<br>
> INDICATOR_CAPSLOCK);<br>
><br>
> so you need a VCL Window to get the state; a SfxViewShell like the<br>
> ScTabVierwShell has a pointer to its Window.<br>
><br>
> (since i read the bug too late i've already got a patch to assign a<br>
> keycode for the scroll-lock key (see attachment), but i now think that<br>
> is actually useless)<br>
><br>
<br>
</div>Following your example I went ahead and added<br>
<br>
Window* pWin = &(pThisFrame->GetWindow());<br>
bool bScrollLockKeyOn = pWin && (pWin->GetIndicatorState() &<br>
INDICATOR_SCROLLLOCK);<br>
<br>
to tabvwsh4.cxx<br>
<br>
If I'm using this method to find capslock on it works fine. I checked<br>
the value of pWin->GetIndicatorState()<br>
It returns 1 for CapsLock 2 for NumLock and 0 for ScrollLock.<br>
<br>
My keyboard doesn't have ScrollLock key in it. I was using the onboard<br>
app in Ubuntu. Maybe it caused the error.<br>
<br>
I'm going ahead with the rest of the implementation. And try to fix<br>
getting the input later :).<br>
<div class="HOEnZb"><div class="h5">--<br>
Thanks and regards,<br>
Tharindu Amila Perera<br>
Undergraduate<br>
Department of Computer Science & Engineering<br>
University of Moratuwa<br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Thanks and regards,<br>Tharindu Amila Perera<br>Undergraduate<br>Department of Computer Science & Engineering<br>University of Moratuwa<br><br>
</div>