Re: [orca-list] To-> (Jos? Vilmar Est?cio de Souza) orca-list Digest, Vol 95, Issue 37



Thanks Jos? Vilmar Est?cio de Souza  for giving me your suggestion and brief answer.

But still I have one question that , if in eclipse IDE is not useful then I have to use PDB debugger and trace each and every file . that I have to set PDB.set_trace() in each file , but it will be very time consuming process , but still there is any other way that we can Debug the Orca's source code?









On Tue, Dec 24, 2013 at 5:30 PM, <orca-list-request gnome org> wrote:
Send orca-list mailing list submissions to
        orca-list gnome org

To subscribe or unsubscribe via the World Wide Web, visit
        https://mail.gnome.org/mailman/listinfo/orca-list
or, via email, send a message with subject or body 'help' to
        orca-list-request gnome org

You can reach the person managing the list at
        orca-list-owner gnome org

When replying, please edit your Subject line so it is more specific
than "Re: Contents of orca-list digest..."


Today's Topics:

   1. Re:  TO (Jos? Vilmar Est?cio de Souza) orca-list Digest, Vol
      95, Issue 34 (Jos? Vilmar Est?cio de Souza)


----------------------------------------------------------------------

Message: 1
Date: Tue, 24 Dec 2013 09:33:35 -0200
From: Jos? Vilmar Est?cio de Souza      <vilmar informal com br>
To: orca-list gnome org
Subject: Re: [orca-list] TO (Jos? Vilmar Est?cio de Souza) orca-list
        Digest, Vol 95, Issue 34
Message-ID: <52B9710F 6000906 informal com br>
Content-Type: text/plain; charset=UTF-8; format=flowed

Hi all.
Sorry for the long message and the bad english but I hope it is of some
help.
I would also like to take this opportunity to wish everyone a wonderful
Christma

No, I think that you can not run orca under eclipse and debug it like a
java program.
You will lose accessibility in orca running with a debugger.

I don't know orca very well, but if I understood correctly, orca works
driven by events.

 From script.py>:
Each script maintains a set of key bindings, braille bindings, and
AT-SPI event listeners.  The key bindings are an instance of
KeyBindings.  The braille bindings are also a dictionary where the
keys are BrlTTY command integers and the values are instances of
InputEventHandler.  The listeners field is a dictionary where the keys
are AT-SPI event names and the values are function pointers.

Instances of scripts are intended to be created solely by the
script manager.

This Script class is not intended to be instantiated directly.
Instead, it is expected that subclasses of the Script class will be
created in their own module.  The module defining the Script subclass
is also required to have a 'getScript(app)' method that returns an
instance of the Script subclass.  See default.py for an example.



 From default.py, a sub class of script.py:
.............
import orca.script as script
............
class Script(script.Script):
...............
     def getListeners(self):
         """Sets up the AT-SPI event listeners for this script.
         """
         listeners = script.Script.getListeners(self)
         listeners["focus:"]                                 = \
             self.onFocus
         listeners["document:reload"]                        = \
             self.onDocumentReload
         listeners["document:load-complete"]                 = \
             self.onDocumentLoadComplete
         listeners["document:load-stopped"]                  = \
             self.onDocumentLoadStopped
         listeners["mouse:button"]                           = \
             self.onMouseButton
         listeners["object:property-change:accessible-name"] = \
             self.onNameChanged
         listeners["object:text-caret-moved"]                = \
             self.onCaretMoved
         ........
         return listeners


Observe that there is one function for each event. If for example an
application issue the focus event, orca will call the onFocus function.

     def onFocus(self, event):
         """Callback for focus: accessibility events."""

         pass

The focus event is being deprecated, so its simplicity in this script.

In a script that is a subclass of default.py, you can override for
exemple the onfocus function to change its behavior.

In the scripts that I wrote to manage eclipse, I rewrote the function
onTextDeleted. This function is called when the event
object:text-changed:delete is issued by an application, in the case eclipse.

In the debug output from orca you will find something like:

KEYBOARDEVENT: type=<enum ATSPI_KEY_PRESSED_EVENT of type AtspiEventType>
                 id=65535
                 hw_code=119
                 modifiers=0
                 event_string=(Delete)
                 keyval_name=(Delete)
                 is_text=True
                 timestamp=5787135
                 time=1387882771.659806
                 keyType=action
                 shouldEcho=False

This means that a key in the keyboard was pressed and the key pressed is
the delete key.

----------> QUEUEING OBJECT:TEXT-CHANGED:DELETE

This means two things:
1.  an application issue the event OBJECT:TEXT-CHANGED:DELETE.
2. The event was placed by orca in a queue to be processed.

Orca keeps a queue of all incoming events to be processed later.

DEQUEUED OBJECT:TEXT-CHANGED:DELETE  <----------

vvvvv PROCESS OBJECT EVENT object:text-changed:delete vvvvv
OBJECT EVENT: object:text-changed:delete               detail=(0,1,p)
     app.name='Eclipse' name='None' role='text' state='editable enabled
focusable focused multi line sensitive showing visible' relations=''
Script for event: Eclipse (module=orca.scripts.apps.Eclipse.script)
BRAILLE: update disabled
SPEECH OUTPUT: 'a'
TOTAL PROCESSING TIME: 0.0142
^^^^^ PROCESS OBJECT EVENT object:text-changed:delete ^^^^^

Two things here:
1. The OBJECT:TEXT-CHANGED:DELETE event was removed from the orca's
queue to be processed.
2. It was processed.
When processing the event, orca tells me the following:
Script for event: Eclipse (module=orca.scripts.apps.Eclipse.script)

Since I know the script used to process the event and since I know the
name of the event, I can find the function used to process the event.
In general all scripts are a subclass of the default.py script. You can
open the default.py script and look for the name of the event to find
the associated function.


On 12/24/2013 02:20 AM, Dhairyashil Bhosale wrote:
> Ok, I tried a lot in eclipse IDE means I tried many times to run orca in
> Eclipse .
>
> But in which way I can compile Orca's source code . and debug it? ,
>
> Is that any way to to travers through orca's source code while running
> means Like in Eclipse we press F5 while debugging for understanding
> which function is called.
>
> I just Dubug  using : $orca --debug-file=debugOutPut
>
> but it's very large file I understand some part of it but not get Work
> Flow of it
>
> Please help.
>
>
>
>
>
>
>         6. Re:  Running Orca In Eclipse IDE (Jos? Vilmar Est?cio de Souza)
>
>
>     Message: 6
>     Date: Mon, 23 Dec 2013 13:41:06 -0200
>     From: Jos? Vilmar Est?cio de Souza      <vilmar informal com br
>     <mailto:vilmar informal com br>>
>     To: orca-list gnome org <mailto:orca-list gnome org>
>     Subject: Re: [orca-list] Running Orca In Eclipse IDE
>     Message-ID: <52B85992 8070407 informal com br
>     <mailto:52B85992 8070407 informal com br>>
>     Content-Type: text/plain; charset=UTF-8; format=flowed
>
>     Hi.
>     I am not sure if this is simple, at least I never tried.
>
>
>
>     On 12/23/2013 12:03 PM, Dhairyashil Bhosale wrote:
>      > Hi All,
>      >
>      >
>      > I just Configure Eclipse IDE by PyDev plug-in  for python
>     programming.
>      >
>      > Please Tell me that How to run Orca's source In Eclipse IDE.
>      > that is -:
>      >               1) Import Orca's Source Code In Eclips IDE,
>      >               2) Compile Orca's Source Code,
>      >               3) Run Orca's Source Code.
>      >
>      >
>      >
>      >
>      > _______________________________________________
>      > orca-list mailing list
>      > orca-list gnome org <mailto:orca-list gnome org>
>      > https://mail.gnome.org/mailman/listinfo/orca-list
>      > Visit http://live.gnome.org/Orca for more information on Orca.
>      > The manual is at
>     http://library.gnome.org/users/gnome-access-guide/nightly/ats-2.html
>      > The FAQ is at http://live.gnome.org/Orca/FrequentlyAskedQuestions
>      > Log bugs and feature requests at http://bugzilla.gnome.org
>      > Find out how to help at http://live.gnome.org/Orca/HowCanIHelp
>      >
>
>     --
>     {}S Jos? Vilmar Est?cio de Souza
>
>
>     ------------------------------
>
>     Subject: Digest Footer
>
>     _______________________________________________
>     orca-list mailing list
>     orca-list gnome org <mailto:orca-list gnome org>
>     https://mail.gnome.org/mailman/listinfo/orca-list
>
>
>     ------------------------------
>
>     End of orca-list Digest, Vol 95, Issue 34
>     *****************************************
>
>
>
>
> _______________________________________________
> orca-list mailing list
> orca-list gnome org
> https://mail.gnome.org/mailman/listinfo/orca-list
> Visit http://live.gnome.org/Orca for more information on Orca.
> The manual is at http://library.gnome.org/users/gnome-access-guide/nightly/ats-2.html
> The FAQ is at http://live.gnome.org/Orca/FrequentlyAskedQuestions
> Log bugs and feature requests at http://bugzilla.gnome.org
> Find out how to help at http://live.gnome.org/Orca/HowCanIHelp
>

--
{}S Jos? Vilmar Est?cio de Souza


------------------------------

Subject: Digest Footer

_______________________________________________
orca-list mailing list
orca-list gnome org
https://mail.gnome.org/mailman/listinfo/orca-list


------------------------------

End of orca-list Digest, Vol 95, Issue 37
*****************************************



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]