Hi Arvind, On Wed, Feb 12, 2020 at 06:41:24PM -0600, Arvind Kumar <arvind.kumar@gmail.com> wrote:
I came across your presentation on the code structure of LibreOffice source code. https://libocon.org/assets/Conference/Rome/Slides/beginners-structure-locon-rome-2k17.pdf I was able to download the code and compile it on my Linux machine. I'm now trying to make sense of the code and wish to know the following. If you don't mind, I have three questions. (1) Are the pages in a LibreOffice document GtkTextView objects? If so, where is the code for the creation of the TextView object?
git grep GtkTextView vcl/ should give you some hints, the gtk3 case either creates widgets using .ui files ("welded" case) or using the VclBuilder (non-welded case).
(2) Where is the code to get the input from the keyboard and then set the text in the TextView object?
Keyboard input is typically handled by the KeyInput() virtual member function of vcl::Window subclasses. See include/vcl/weld.hxx for the interface that is an abstraction on top of the gtk3 and vcl (non-gtk3) cases.
(3) Where is the code to save the text from the TextView object into a file?
A typical Writer/Calc/Impress document content is presented using custom widgets in gtk3 terms, so it's rare that a GtkTextView content would be really saved to a file as-is.
By understanding the code for the creation, read, and write operations, it will get me started off since that is the core functionality of a document writer.
Perhaps ask something more specific, so you can get specific answers. :-) Regards, Miklos
Attachment:
signature.asc
Description: Digital signature