Menu

#57 Some context menu options for project unnecessarily greyed out during compile

Next_Release
fixed
None
Undefined
2017-10-19
2014-09-27
Riot
No

While compiling, the following context menu options are greyed out when right-clicking the project in the project tree:

However, "save everything" is still enabled in the file menu, and pressing this does cause the project file to save any changes. It would be sensible therefore to re-enable the "save" context menu option, as well - saving the project during a compile does not present any risk and is often very useful in case of long compiles or occasional crashes, where every modified file in the compiled project is saved automatically, but the project is not, potentially leaving it in an inconsistent state when reloading after a crash.

There also seems to be no reason to grey out "find file" since normal find operates during compile. I'm also not sure if there is a valid reason for greying out both "build options" and "properties" options - not being able to access these windows during long compiles is an impediment to efficient workflow.

Discussion

  • Morten MacFly

    Morten MacFly - 2015-02-07
    • Type: --> Undefined
     
  • Teodor Petrov

    Teodor Petrov - 2017-10-19
    • status: open --> fixed
    • assigned_to: Teodor Petrov
     
  • Teodor Petrov

    Teodor Petrov - 2017-10-19

    Find files options is enabled in rev11204. So I think this issue is fixed. The others are correctly disabled during compilation. If you want to re-enable them you'll need to provide patches which guarantee that the compiler won't use data structures modified by some of the dialogs.

     
    • Riot

      Riot - 2017-10-19

      It's inconsistent to have "Save project" disabled here. It's still possible to save the project during compilation by pressing "save everything", and this is something I do frequently during a compile. I would suggest not disabling it.

       
  • Teodor Petrov

    Teodor Petrov - 2017-10-19

    So you're saying save everything is not disabled during compilation? :)

     
  • Teodor Petrov

    Teodor Petrov - 2017-10-19

    Save everything is correctly disabled in trunk during compilation in my tests. Is this the case for you?

    The real bug is that the project is not saved before compilation is started. Saving during compilation is not 100% safe, I cannot prove it but feals safer if we disable the menus.

     
    • Riot

      Riot - 2017-10-20

      I hadn't tested the new commits, I was referring to the old "save everything" behaviour which was separate to this.

      In my opinion it's a big mistake to disable saving during compilation; this is something I've never had any problems with, but conversely, CB refusing to save has caused many problems for me and my team on many occasions.

      All in all I'm not at all a fan of "features" like this that lock the user out of certain functionality, especially when you have no evidence that it causes any kind of problems - you end up screwing up your users workflow because of unfounded assumptions, and the entire thing ends up feeling very nanny-ish. If you're worried about that behaviour, just have a dismissable popup warning the first time you save during a compile, saying that in some obscure cases it may be unsafe to do this - but don't stop the user from doing what they actually want to do with the tool they're using.

       
      • Teodor Petrov

        Teodor Petrov - 2017-10-21

        With current trunk you could do save everything (ctrl-shift-s is the short cut) before starting compilation.

        Sometime in the future we'll do it automatically, so you won't have to do it at all. See [#396] for details.

        Changing project/build options or adding/removing files is 100% guaranteed to cause problems and rare crashes or memory corruptions, because the code is not designed to handle them during build.

         

        Related

        Tickets: #396


Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.