[Geany-devel] Build system glitches

Enrico Tröger enrico.troeger at xxxxx
Mon Oct 12 18:06:12 UTC 2009


On Mon, 12 Oct 2009 16:49:43 +1100, Lex wrote:

Hey,

>In the new build system there are more execute commands than in the
>old system:
>
>1. from system filetypes files
>2. from user preferences filetypes files
>3. from user preference
>4. from project filetypes in the project file
>5. from project preference
>
>The cause of the issue you've identified is because modified execute
>commands are treated as a user preference rather than as a filetype.
>Its actually documented in the manual this way (see the table in
>'build menu configuration') and it notes that you can't set the
>filetype dependent execute commands using the dialog.
>
>Because the dialog doesn't have any way of selecting if the user is
>changing the preference/project setting or the filetype dependent
>setting a decision one way or the other had to be made.  I don't
>remember why this particular decision was made, but I see two
>"solutions":
>
>1. Since projects are most likely to have an execute command
>independent of the filetype and non-projects are more likely to be
>dependent on filetype we could have the execute commands set in the
>'build commands' dialog set the filetype preferences execute not the
>preferences execute, but the execute commands in the project 'build
>commands' dialog set the project execute not the project filetypes
>execute, but this is potentially confusing (I'm confused just writing
>it)
>
>2. Or I can try to get Enrico to agree to adding one itty bitty teeny
>weeny little checkbox to the build commands dialog to make the
>selection, I'll put it on the same line as the execute commands header
>and it won't make the dialog any bigger I *promise*. :-) It will

Putting things very close together won't help making better UIs...it's
not about size, it's about complexity.


>Let me know what you think.

No idea, really.
I somewhat prefer 1) as it is closer to the previous, original
behaviour which I believed we wanted to keep.
Maybe I missed the decision against it in one of the thousands mails
about the build system stuff. If so, my bad.

Though I remember saying myself a couple of times I wanted to have it
as compatible as possible and to not change the default behaviour when
not absolutely necessary.

Why the hell does one need so many different types of Run commands you
listed above? I loved the old behaviour so much where I just opened a
file and could execute it, without configuring anything and without
thinking about which of the thousands things it could do now...

(Sorry for sounding a bit harsh, probably I should have done deeper
testing before the merge but well, it doesn't make things better. We, at
least I thought so, tried to keep things small and stupid...maybe we
left this way without noticing.)


>> Furthermore, the Compile button is disabled in the toolbar. But this
>> seems to be a separate issue :).
>>
>
>AFAICT build.c doesn't know about the compile toolbar menu button, or
>the execute menu button for that matter, it only knows about the build
>toolbar menu button and the compile, build and execute actions, so I
>don't know what is setting the sensitivity of the compile and execute
>menu buttons.

The action is the toolbar button, at least it is the parent instance
which creates the actual button widget for the toolbar. So, setting the
sensitivity of the action, implicitly changes the sensitivity of the
toolbar button widget.
And the action's sensitivity is changed at the end of
build_menu_update(). And at some point, this worked.


Regards,
Enrico

-- 
Get my GPG key from http://www.uvena.de/pub.asc
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.geany.org/pipermail/devel/attachments/20091012/41d25fb4/attachment.pgp>


More information about the Devel mailing list