[Bf-committers] Proposal: Split up Outliner code

Joshua Leung aligorith at gmail.com
Mon Jul 11 03:55:57 CEST 2011


Hi,

Ok, that looks similar to an alternative version I had in mind earlier.

I'll be starting work on this this afternoon. Hopefully we don't have
any other commits in outliner.c in the meantime, otherwise merges are
going to be a pain.

Joshua

On Mon, Jul 11, 2011 at 4:58 AM, Ton Roosendaal <ton at blender.org> wrote:
> Hi Joshua,
>
> I also had this in mind many times... never had the time for it.
> If you don't mind, here's a slight alternative split suggestion:
>
> outliner_tree.c - building outliner structure
> outliner_draw.c - could get buttons now too, code is too mixed up
> outliner_edit.c - same as you propose
> outliner_tools.c - might be better name as '_menu' :)
>
> Thanks!
>
> -Ton-
>
> ------------------------------------------------------------------------
> Ton Roosendaal  Blender Foundation   ton at blender.org    www.blender.org
> Blender Institute   Entrepotdok 57A  1018AD Amsterdam   The Netherlands
>
> On 6 Jul, 2011, at 16:36, Brecht Van Lommel wrote:
>
>> I agree this can be split up, proposed files seem fine.
>>
>> Brecht.
>>
>> On Wed, Jul 6, 2011 at 4:05 PM, Joshua Leung <aligorith at gmail.com>
>> wrote:
>>> Hi all,
>>>
>>> Having been working on extending the Outliner code with some
>>> additional editing functionality via the context menus (RMB) as part
>>> of my SoC project, I've found that it's starting to be a bit of a
>>> chore navigating around this code (on a few occasions, I've been
>>> flip-flopping around trying to locate outliner_make_element()  for
>>> example - for some reason, it seems to have a knack of hiding...).
>>>
>>> Basically, currently the bulk of the code, from tree building and
>>> drawing, through to editing and additional tools is all defined in
>>> the
>>> outliner.c, which at last check weighed in at 157 kb. While not at
>>> readfile.c (> 300 kb) proportions yet, I think it's getting to the
>>> point where it would help that the various "precincts" in this file
>>> get their own dedicated files.
>>>
>>> I'm currently thinking of dividing it up into the following files:
>>> * outliner_core.c - all utilities for building (outliner_add_element,
>>> etc.), filtering (outliner_filter_tree), and free/store/openclose
>>> stuff
>>> * outliner_menu.c - all operators and callbacks used for handling RMB
>>> click on items
>>> * outliner_edit.c - all operators for toggling stuff, and/or hotkey
>>> accessed operators. Also KeyingSet and Driver operators could go
>>> here.
>>> * outliner_draw.c - outliner_draw(), etc. outliner_buttons() and its
>>> callbacks may go here too, although perhaps they should be put into
>>> their own file too (outliner_buttons.c)?
>>>
>>> Objections? Suggestions? Comments?
>>>
>>> Regards,
>>> Joshua
>>> _______________________________________________
>>> Bf-committers mailing list
>>> Bf-committers at blender.org
>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
>>
>
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers
>


More information about the Bf-committers mailing list