Hi Vishv,

On 04/01/2013 04:15 PM, Vishv Brahmbhatt wrote:
Hi,

I need help for Bug 47302.
https://bugs.freedesktop.org/show_bug.cgi?id=47302

For *impress* : I have to get slide name in the text-field through
option *Insert->Fields->Slide Name*. Similar to the Page Number option
in the Insert->Fields->Page Number
That's a good start. You could refer to the SvxAuthorField as well for reference.


I  am not completely sure of  the correct mechanism of storing slide
name for different slides.But through bits and pieces of understanding,I
have been able to get the *Slidename* in the Text-Field and store it
(because slide name appears perfectly in *Notes(page)* even after
closing & reopening of *impress* file). But still ,I am facing some
problems in *Normal View* ,as the slide name(in text-field)  doesn't
change automatically with *renaming* of the Slide.
You could refer to the code where the slide numbers are reset.
I am guessing it should be called with some Invalidate()


I am attaching my *git-diff patch* for current status on the bug.

So following are my Questions :

(1) What is the exact mechanism that works behind in storing page number
(in text field)(like some array or data structure) and how it can be
used for *Slide Name* too?
http://opengrok.libreoffice.org/search?q=SvxPageField&project=core
throws up some interesting results for you.

I think you missed,
http://opengrok.libreoffice.org/xref/core/tools/inc/tools/pstm.hxx#SV_DECL_PERSIST

Which is kind of the the first line in the class definition of SvxPageField:

SV_DECL_PERSIST1( SvxPageField, SvxFieldData, com::sun::star::text::textfield::Type::PAGE )

Trace it through and you should be able to find out, how it works.


(2) How can I handle renaming of the Slide (with my existing code) and
the slide name can automatically change in the text-field?
Some kind of refresh needs to occur when the slide orders change - trace the pagefield.


(3) In this code ,I am using *pagenumber service* which will affect
*Insert->Fields->Page Number* option (and it will not work properly).So
I need to define a new *service* for *slide name*,but how can I create a
new service and use it?
You would have to create the idls and create the corresponding services.
The easiest way to start is to copy those files and change it accordingly.

Because my attempt to define a new service through IDL file was
not successful ,as compiler did not recognize it.So how can I handle
this problem?
May be you you missed changing some files (?)
Also don't forget to compile modules like officecfg, offapi, etc (afaik) - which does the additional work of creating the corresponding C++ header files. The best is to do a 'make' in the root (at least the first time) and a fresh make dev-install.



In-spite of many attempts ,I am not able to get further clue about this
problem.So any sort of help is appreciated.
Hope these help.
And its a very nice patch for the first time. I really liked your efforts in adding the UI changes as well!

A little more digging and you should be able to complete this.

Thanks a lot for the patch again!
Muthu Subramanian



Thanks and Regards,
Vishv


_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice


_______________________________________________
LibreOffice mailing list
LibreOffice@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice

Reply via email to