GSOC report week 0,1
Noel Power
nopower at suse.com
Mon Jun 17 02:29:56 PDT 2013
On 16/06/13 19:54, Gergő Mocsi wrote:
> Hi all,
> this is my GSOC weekly (now, two week) report. Unfortunately, I could
> work a few due to some other matters.
sorry to hear you were sick
> Here's what I've got:
> Accordig to the arrangement, I've started to investigate, how BASIC
> handles variable delarations (as I wrote in the email), and I've tried
> to do the same as it does in VBA mode. Now, it allows variable of any
> type to be declared, and does not complain about it (in experimental
> mode). Further, I've introduced reflection, so it checks if that
> interface exists, eg:
> Dim aPicker As com.sun.star.ui.dialogs.XFilePicker will be treated as
> a valid type, and Dim aVar As com.sun.star.foo.Foo will be an invalid one.
cool, this is this is the real keystone patch, somewhere down the line
we can think improvements to this e.g. perhaps being able to accept just
the leaf name ( XFilePicker ) or even ( like vba does ) accept all
variant of the name e.g. ( dialogs.XFilePicker, ui.dialogs.XFilePicker
etc. ) but.. anyway I think that is more cosmetic issue that can be
looked into when we have actually something working
> Also, i've moved further to find the function whick checks for newly
> declared subroutines in the IDE when writing the code.
so, any more luck with that ?, probably it is done in basic module ( and
not the IDE module ) IIRC I saw where this was done at some point when
we made the IDE accept run from cursor ( might be you could find it from
there ) e.g. If you have a number of macros defined in a module and from
the ide you place the cursor in a macro and press the 'Run' button on
the toolbar (or press F5) then the IDE will try and invoke the procedure
the cursor is in is run. I recall that when you are typing basic tracks
any procedures that are defined ( and the line numbers that the
procedure occupies )
> This is needed to connect these two things together, but I've notices
> that the object inspector does not shows the declared variables, and
> maybe this is needed (another idea to solve :D ). This function is
> called void TreeListBox::ImpCreateLibSubEntries() and it's located in
> file basctl/source/basicide/bastype2.cxx in line 325. This is what
> I've done.
hmm, that's the not the object inspector but the browser ( that shows
the modules and procedures ) Its surely related as it displays the
SbMethod instances that represent the procedures we are interested in.
Finding where those are created will eventually point to where the
pre-parsing for that happens
Noel
More information about the LibreOffice
mailing list