Development of Extensions for LibreOffice

Hi Stephen,

     I am having all sorts of problems with the source code in Eclipse. I
have created a new blank C++ project in Eclipse and imported the entire
sc directory into that project. Subsequently I have opened
dpgroupdlg.cxx in the editor (I'm also not sure why Eclipse displays all
directories duplicated) and Eclipse is displaying errors on just about
every statement in that file.

  Well - that's really Eclipse' problem :slight_smile: can you turn off it's bogus
error display ? I guess getting help with Eclipse would be a good thing
to do. Potentially you don't want to create a project - but just use it
to edit the specific files.

I think what has caused my problem is that I am using the JEE version of Eclipse that I have added the C/C++ project to, and the JEE version has project auto build active by default, which is the only way java development should be done (in my opinion) as when you get these sorts of statement errors for standard java processes one of the solutions provided is for Eclipse to add the necessary include file into the code to resolve the issue (admittedly this won't work for user defined processes). I can turn off the auto build functionality.

     I think the first thing I need to do is to find all the include
files and add those directories into the include file path in the
project properties. One of the problems I have is that the statement
"com::sun::star::sheet::DataPilotFieldGroupBy::SECONDS," is producing an
error complaining that symbol SECONDS is not found.

  This is from an UNO / generated header. It seems highly unlikely that
Eclipse is going to do a perfect job of building LibreOffice. As such, I
would use it as a syntax-colouring text editor - not in it's all-seeing
monster mode :wink:

I may be approaching this process from the wrong angle, but from my perspective I ideally need to create a project containing all the modules that make up calc, so that when I change the source code I can compile it and then run unit tests on the pivot processes and system tests on the entire calc program to make sure I haven't adversely impacted anything else in the application, particularly if I can implement the menu entry to allow formatting of pivot variables post pivot table creation.
The easiest way to implement this is to create a project and then build the project which will then create the program.

How I configure eclipse to consider the idl file to be the same as
the hpp file so that these symbols get resolved?

  I have no idea. You need to edit the code with some sort of source code
editor, Elipse is one option. If it can't control it's urges to try to
understand the entire (apparently not built) code-base then I'd
recommend using something else :wink:

The only other editor I use occasionally is Netbeans but it does the same thing.

     I am also having difficulty determining which dp module equates to
the dialog that gets displayed for variables that are dragged to the
pivot table layout areas, to specify the attributes of those variables.
Is there any documentation anywhere that explains what each module
within the suite actually does and how they relate to what is actually
displayed by Libreoffice for each function it performs?

  Each module ? each top-level directory has README - patches to improve
them appreciated. Sadly there is no further good structural
documentation at all.

  In general - if you want to go from the UI -> the source code, you need
to go via the .src files - which you can grok for user-visible strings,
and then look for the defined names of those in the .hrc files - which
are shared between resources and C++ and hence into the relevant source
code and down to a widget.

I'll check these out and see if I can understand these first to try to work out how each of the modules interact with each other amalgamate to produce the entire calc application.

regards,
Steve

Hi :slight_smile:
It's always a good idea to post to the Users List first because if we can't answer it we can signpost to documentation and / or better lists also we do have people with unexpected skills, talents and experience on this list.

Sorry to hear you didn't get a response from the devs list.  If any list has not given a decent response after a day or 2 then post again, preferably as a comment into the same thread as the one you just started but as a new question might not hurt either. 
Apols and regards from
Tom :slight_smile:

Tom,

Rather a substantive response to Steve's month long effort to get an
Extension or feature delveloped for calc over on the devs list. Basically
telling him that he "can't get there from here" using an IDE like Eclipse--
http://nabble.documentfoundation.org/Re-libreoffice-users-Development-of-Extensions-for-LibreOffice-tp4035059.html

And I'll disagree on the where to post. He is an ambitious programmer and
clearly Steve's question would have played better from the start back in
February on the devs list where, if worded correctly, he would have been set
straight by the first answers--nobody attempts to use Eclipse for
LibreOffice development because it won't work RELIABLY. The UNO core code
base is just too unwieldy for an IDE to handle the full project.

Stuart