<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-text-flowed" style="font-family: -moz-fixed;
      font-size: 12px;" lang="x-western">I'm pretty sure my last email
      didn't go through because I did not receive it, so I will resend
      it. If it did actually go through the first time, I am sorry for
      the duplicate.<br>
      <br>
      On 07/10/2012 02:56 AM, Thomas Martitz wrote:
      <br>
      <blockquote type="cite" style="color: #000000;">Am 10.07.2012
        07:37, schrieb Matthew Brush:
        <br>
        <blockquote type="cite" style="color: #000000;">On 12-07-09
          04:57 PM, Braden Walters wrote:
          <br>
          <blockquote type="cite" style="color: #000000;">Hi. I noticed
            a problem that affected me back in 0.2x that thankfully is
            <br>
            (mostly) solved in 1.22. When I say mostly, I mean it fixes
            how the
            <br>
            problem affects me right now, but possibly not for others,
            and I feel
            <br>
            this may also affect me again eventually. The problem I
            noticed is that
            <br>
            not all configuration options that may change from
            project-to-project
            <br>
            are actually settings you can change on a per-project basis.
            The options
            <br>
            that concern me the most are those that deal with the format
            of the
            <br>
            saved file (line ending characters, new line at end of file
            (fixed in
            <br>
            1.22), tabs/spaces (not a problem), file encoding). I'm
            interested in
            <br>
            the developers' opinions on this.
            <br>
            <br>
            Someone in IRC also mentioned that if many more options
            become
            <br>
            configurable per-project, the global application options
            might be
            <br>
            rendered useless (as project settings will override
            everything). Perhaps
            <br>
            this could be solved by having a way to reset individual
            project options
            <br>
            (perhaps a list of all things that have been changed, and a
            "Reset to
            <br>
            Global" button to reset that individual item so it does not
            appear in
            <br>
            that project's file).
            <br>
            <br>
            I'm curious what the core developers' opinion is on this. If
            it sounds
            <br>
            good, I'd definitely be interested in helping make it
            possible (although
            <br>
            I don't know the Geany code base, I could learn my way
            around relevant
            <br>
            parts).
            <br>
          </blockquote>
          <br>
          Hi,
          <br>
          <br>
          What about just adding new settings to the project config file
          without messing with the UI? Those who need them can RTM and
          see what settings are available, those who are content with
          what exists currently can go on happily ever after. You can
          add as many project preferences as you care to code and
          document this way.
          <br>
        </blockquote>
        <br>
        <br>
        I hate needing to edit config files directly. This is not user
        friendly.
        <br>
        <br>
        <br>
        <blockquote type="cite" style="color: #000000;">
          <br>
          If a user sets something in the project config file, it
          overrides the global config file when that project is open,
          end of story, no UI tricks needed to tell her this, it's "just
          how it is" (documented).
          <br>
          <br>
          The other way(s) discussed seem like they would Eclipse the
          UI's usability.
          <br>
          <br>
        </blockquote>
        <br>
        <br>
        I actually quite like how Eclipse handles this, it should be
        considered for Geany too:
        <br>
        <br>
        Each global settings tab (given it can be overridden by a
        project) has a line at the top saying that it can be overridden
        on a per-project basis.
        <br>
        <br>
        Then, for each project, each tab in the project preferences have
        a checkbox at the top that choose whether to inherit from global
        settings or override all settings in the tab. Unchecking the
        checkbox immediatly applies the global settings to the project.
        Checking the box prefills the settings with the values from the
        current global settings but can be changed obviously.
        <br>
        <br>
        Note that settings are grouped in tabs, so there is not one
        checkbox per setting, but per tab.
        <br>
        <br>
        This UI makes it easy to discover if stuff can be/is overriden
        by a project. It makes it easy to revert to global settings. It
        makes it possible without a massive amount new per-setting
        checkboxes to decide whether to override.
        <br>
        <br>
        PS: Eclipse's way to handle per-file settings is also quite OK
        IMO but I guess that's another topic.
        <br>
        <br>
        Best regards.
        <br>
        _______________________________________________
        <br>
        Geany-devel mailing list
        <br>
        <a class="moz-txt-link-abbreviated"
          href="mailto:Geany-devel@uvena.de">Geany-devel@uvena.de</a>
        <br>
        <a class="moz-txt-link-freetext"
          href="https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel">https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel</a>
        <br>
      </blockquote>
      <br>
      That actually sounds like a good idea. Here's another idea I had
      last night. If there is no context menu for any item in the
      settings, that could be added for each item. If you change
      anything to where it'd be included in the project configuration
      and override the global settings, perhaps change the colour of the
      option's label or create some simple way of making this
      noticeable. Then, if the user wants to revert to the global
      settings, he/she could secondary click and select "Restore to
      Global Settings". This would allow full customization (you don't
      have to do it on a per-tab basis) and it's not very intrusive into
      the UI.
      <br>
      <br>
    </div>
  </body>
</html>