openoffice-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From jorge ivan poot diaz <ivan.pootd...@gmail.com>
Subject Re: FormatArea Draw
Date Fri, 15 Mar 2013 03:08:33 GMT
Hello again,

I have doubts about the Color dialog box: Attached the link below of the
color dialog

http://imagebin.org/250306

I'm in the code window, so far I have this link:

http://svn.services.openoffice.org/opengrok/xref/Current%20%28trunk%29/svtools/inc/svtools/colrdlg.hxx<http://imagebin.org/250306>

http://svn.services.openoffice.org/opengrok/xref/Current%20%28trunk%29/svtools/source/dialogs/colrdlg.cxx
 <http://imagebin.org/250306>

To register the colors,
What services are used?

Regards.


2013/3/14 jorge ivan poot diaz <ivan.pootdiaz@gmail.com>

> Hello,
>
> I have doubts about the Format dialog box:
> -> Colors
>
> Where is the code of this dialog box in the source code?
>
> [image: Imagen integrada 1]
>
> Regards.
>
>
> 2013/3/11 Ariel Constenla-Haile <arielch@apache.org>
>
>> Hi Ivan,
>>
>> On Mon, Mar 11, 2013 at 09:49:51PM -0600, jorge ivan poot diaz wrote:
>> > Hello,
>> > I'm seeing the files in the source code in draw, examples:
>> >
>> >
>> https://svn.apache.org/repos/asf/openoffice/trunk/main/sd/uiconfig/sdraw/toolbar/drawingobjectbar.xml
>> >
>> > I want to know where the source code files are declared Icons Standard
>> > Toolbar and Formatting.
>>
>> Do you want to know which of these xml files belongs to the "Standard"
>> toolbar, which to the "Text Formatting" toolbar, etc.? Or where is the
>> code that converts these xml into toolbars?
>>
>> > I want to know how I can add another icon in the toolbar.
>>
>> If you look at the file, you notice that the concept of an icon does not
>> exist there; all you have is what is called a UNO command, for example
>>
>> ".uno:FormatLine"
>>
>> The UNO command is the central point; from the UNO command the
>> application framework retrieves the label/text of the toolbar item, and
>> the icon bound to it.
>>
>> The command to label binding is done in the XxxCommands.xcu that you
>> already know, with the "Label"/"ContextLabel" proeprty; if the "Property"
>> property has a value of 1, it indicates that the command is bound to an
>> icon.
>>
>> Icons bound to UNO commands are located at
>>
>> https://svn.apache.org/repos/asf/openoffice/trunk/main/default_images/res/commandimagelist/
>>
>> the naming scheme is the following:
>>
>> * prefix:
>>
>>     sc_     16x16 image
>>     sch_    16x16 high-contrast image
>>     lc_     26x26 image
>>     lch_    26x26 h-c image
>>
>> * the UNO command without the protocol part (.uno:), in lowercase.
>>
>> For examle, for .uno:FormatLine:
>>
>>
>> https://svn.apache.org/repos/asf/openoffice/trunk/main/default_images/res/commandimagelist/sc_formatline.png
>>
>> https://svn.apache.org/repos/asf/openoffice/trunk/main/default_images/res/commandimagelist/sch_formatline.png
>>
>> https://svn.apache.org/repos/asf/openoffice/trunk/main/default_images/res/commandimagelist/lc_formatline.png
>>
>> https://svn.apache.org/repos/asf/openoffice/trunk/main/default_images/res/commandimagelist/lch_formatline.png
>>
>> In short, you don't add an icon to the toolbar; you add a UNO command.
>> If this UNO command is new (it does not exist in the current source
>> code), you'll have to implement the functionality that executes the
>> command (you click the toolbar item, the UNO command is "dispatched",
>> that is, the functionality bound to it is executed), and also gives
>> information about the status of the functionality this command
>> represents (toolbar items are context sensitive, they are enabled or
>> disabled, etc., depending on the state of the feature they represent).
>>
>>
>> > Similarly, I've noticed that there are several xml files at this
>> address:
>> >
>> >
>> https://svn.apache.org/repos/asf/openoffice/trunk/main/sd/uiconfig/sdraw/toolbar/
>>
>> Yes, because there are several toolbars in Draw.
>>
>> > What are the interface need to draw the toolbar?
>>
>> There is a lot of code involved in transforming this xml file into
>> a toolbar, spread in several modules. The central part is the
>> application framework, drawing the toolbar onto the screen happens in
>> vcl. If you want to dive into this, the best -IMO - is setting a break
>> point in the framework code:
>>
>> framework::ToolbarLayoutManager::implts_createElement
>>
>> Note that it's better to start the application from withing the
>> debugger, because UI elements are cached, you won't see it's creation
>> from zero (reading that xml file) if you attach to an already opened
>> document.
>>
>> If you want to see the creation of the other UI elements (menubar,
>> statusbar), break in framework::LayoutManager::createElement
>>
>>
>> Regards
>> --
>> Ariel Constenla-Haile
>> La Plata, Argentina
>>
>
>

Mime
  • Unnamed multipart/related (inline, None, 0 bytes)
View raw message