Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Mobile and Embedded
  4. How to edit a .ini file?
Forum Updated to NodeBB v4.3 + New Features

How to edit a .ini file?

Scheduled Pinned Locked Moved Solved Mobile and Embedded
20 Posts 5 Posters 6.0k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Sriu1

    @mrjj I'm giving user an option to browse and change the background-image this new path I'm editing in weston.ini

    JonBJ Offline
    JonBJ Offline
    JonB
    wrote on last edited by JonB
    #10

    @Sriu1
    OK, I think I might guess what you mean (not sure if you've changed code since original?). Do you mean: after you have gone settings.setValue("background-image","myImage.png"); you want that value saved back to the .ini file, and you're not seeing that happen? Then see http://doc.qt.io/qt-5/qsettings.html#isWritable, http://doc.qt.io/qt-5/qsettings.html#sync.

    EDIT: Oh, now you're changing the question/information ... It's much better if you can do that in the first place...

    I can only say %23 is the hex code for a #, and QSettings is choosing to save it encoded. You seem to be using # in your .ini file as a comment character. What makes you think that is acceptable to QSettings?

    S 1 Reply Last reply
    1
    • JonBJ JonB

      @Sriu1
      OK, I think I might guess what you mean (not sure if you've changed code since original?). Do you mean: after you have gone settings.setValue("background-image","myImage.png"); you want that value saved back to the .ini file, and you're not seeing that happen? Then see http://doc.qt.io/qt-5/qsettings.html#isWritable, http://doc.qt.io/qt-5/qsettings.html#sync.

      EDIT: Oh, now you're changing the question/information ... It's much better if you can do that in the first place...

      I can only say %23 is the hex code for a #, and QSettings is choosing to save it encoded. You seem to be using # in your .ini file as a comment character. What makes you think that is acceptable to QSettings?

      S Offline
      S Offline
      Sriu1
      wrote on last edited by Sriu1
      #11

      @JonB I'm not creating any comments.That is the ini file generated by weston.The" # "are not created by me.
      I'm just editing it
      and why is this getting created
      [General]
      background-image=myImage.png

      I want to edit here
      [shell]
      background-image=/home/tel/Documents/woman.jpg

      Can you please send a code snippet?

      JonBJ 1 Reply Last reply
      0
      • S Sriu1

        @JonB I'm not creating any comments.That is the ini file generated by weston.The" # "are not created by me.
        I'm just editing it
        and why is this getting created
        [General]
        background-image=myImage.png

        I want to edit here
        [shell]
        background-image=/home/tel/Documents/woman.jpg

        Can you please send a code snippet?

        JonBJ Offline
        JonBJ Offline
        JonB
        wrote on last edited by
        #12

        @Sriu1
        I don't know exactly why your settings.beginGroup("shell"); is not being taken into account. It's going into General because of:

        In addition, if you save a top-level setting (a key with no slashes in it, e.g., "someKey"), it will appear in the INI file's "General" section.

        So, if it were me, I would try for myself:

        • Take out all the the # lines, at least temporarily while I test.
        • Now try again with beginGroup(). Does it work now?
        • If that doesn't work, try without beginGroup() and use shell/background-image instead.
        • Does it work now?

        If still not, you can ask with a minimal example, consisting now of just a couple of lines in the .ini file, instead of loads of irrelevant stuff.

        I'm not creating any comments.That is the ini file generated by weston.The" # "are not created by me.
        I'm just editing it

        I'm pointing out that QSettings does not handle those lines in the way Windows/your "weston" does. Which may lead to problems.

        S 1 Reply Last reply
        0
        • JonBJ JonB

          @Sriu1
          I don't know exactly why your settings.beginGroup("shell"); is not being taken into account. It's going into General because of:

          In addition, if you save a top-level setting (a key with no slashes in it, e.g., "someKey"), it will appear in the INI file's "General" section.

          So, if it were me, I would try for myself:

          • Take out all the the # lines, at least temporarily while I test.
          • Now try again with beginGroup(). Does it work now?
          • If that doesn't work, try without beginGroup() and use shell/background-image instead.
          • Does it work now?

          If still not, you can ask with a minimal example, consisting now of just a couple of lines in the .ini file, instead of loads of irrelevant stuff.

          I'm not creating any comments.That is the ini file generated by weston.The" # "are not created by me.
          I'm just editing it

          I'm pointing out that QSettings does not handle those lines in the way Windows/your "weston" does. Which may lead to problems.

          S Offline
          S Offline
          Sriu1
          wrote on last edited by
          #13

          @JonB Hi,Thanks for the reply
          I tried this as you mentioned.
          QSettings settings("/home/tel/weston.ini", QSettings::IniFormat);
          settings.beginGroup("shell");
          settings.setValue("shell/background-image","myImage.png");
          settings.sync();
          settings.endGroup();

          My ini file after executing_________________

          [core]
          %23gbm-format=xrgb2101010
          %23modules=cms-colord.so
          %23require-input=true
          %23shell=desktop-shell.so
          %23xwayland=true

          [input-method]
          %23constant_accel_factor=50
          %23enable_tap=true
          %23icc_profile=/usr/share/color/icc/colord/Bluish.icc
          %23max_accel_factor=1.0
          %23min_accel_factor=0.16
          %23mode=1024x768@60
          %23name=X1
          %23transform=flipped-90
          path=/usr/local/libexec/weston-keyboard

          [launcher]
          icon=/usr/share/icons/gnome/24x24/apps/arts.png
          path=/home/samhita/weston-4.0.0/weston-flower

          [screen-share]
          %23path=/usr/local/bin/Xwayland
          command="/usr/local/bin/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize"

          [shell]
          %23animation=fade
          %23binding-modifier=ctrl
          %23cursor-size=24
          %23cursor-theme=whiteglass
          %23homescreen=/usr/share/backgrounds/gnome/Blinds.jpg
          %23lockscreen=/usr/share/backgrounds/gnome/Garden.jpg
          %23lockscreen-icon=/usr/share/icons/gnome/256x256/actions/lock.png
          %23num-workspaces=6
          animation=zoom
          background-color=0xff002244
          background-image=/usr/share/backgrounds/gnome/Aqua.jpg
          background-type=tile
          clock-format=minutes
          locking=true
          panel-color=0x90ff0000
          shell\background-image=myImage.png
          startup-animation=fade


          This is getting created
          shell\background-image=myImage.png

          JonBJ 1 Reply Last reply
          0
          • S Sriu1

            @JonB Hi,Thanks for the reply
            I tried this as you mentioned.
            QSettings settings("/home/tel/weston.ini", QSettings::IniFormat);
            settings.beginGroup("shell");
            settings.setValue("shell/background-image","myImage.png");
            settings.sync();
            settings.endGroup();

            My ini file after executing_________________

            [core]
            %23gbm-format=xrgb2101010
            %23modules=cms-colord.so
            %23require-input=true
            %23shell=desktop-shell.so
            %23xwayland=true

            [input-method]
            %23constant_accel_factor=50
            %23enable_tap=true
            %23icc_profile=/usr/share/color/icc/colord/Bluish.icc
            %23max_accel_factor=1.0
            %23min_accel_factor=0.16
            %23mode=1024x768@60
            %23name=X1
            %23transform=flipped-90
            path=/usr/local/libexec/weston-keyboard

            [launcher]
            icon=/usr/share/icons/gnome/24x24/apps/arts.png
            path=/home/samhita/weston-4.0.0/weston-flower

            [screen-share]
            %23path=/usr/local/bin/Xwayland
            command="/usr/local/bin/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize"

            [shell]
            %23animation=fade
            %23binding-modifier=ctrl
            %23cursor-size=24
            %23cursor-theme=whiteglass
            %23homescreen=/usr/share/backgrounds/gnome/Blinds.jpg
            %23lockscreen=/usr/share/backgrounds/gnome/Garden.jpg
            %23lockscreen-icon=/usr/share/icons/gnome/256x256/actions/lock.png
            %23num-workspaces=6
            animation=zoom
            background-color=0xff002244
            background-image=/usr/share/backgrounds/gnome/Aqua.jpg
            background-type=tile
            clock-format=minutes
            locking=true
            panel-color=0x90ff0000
            shell\background-image=myImage.png
            startup-animation=fade


            This is getting created
            shell\background-image=myImage.png

            JonBJ Offline
            JonBJ Offline
            JonB
            wrote on last edited by
            #14

            @Sriu1
            Since I specifically wrote: If you use shell/background-image, you must remove the beginGroup(). You ignored that and left it in? Please don't.

            S 1 Reply Last reply
            1
            • JonBJ JonB

              @Sriu1
              Since I specifically wrote: If you use shell/background-image, you must remove the beginGroup(). You ignored that and left it in? Please don't.

              S Offline
              S Offline
              Sriu1
              wrote on last edited by
              #15

              @JonB Hi,
              I tried this code

              QSettings settings("/home/tel/weston.ini", QSettings::IniFormat);
              settings.setValue("shell/background-image","myImage.png");
              //settings.sync();
              This is my ini

              [core]
              %23gbm-format=xrgb2101010
              %23modules=cms-colord.so
              %23require-input=true
              %23shell=desktop-shell.so
              %23xwayland=true

              [input-method]
              %23constant_accel_factor=50
              %23enable_tap=true
              %23icc_profile=/usr/share/color/icc/colord/Bluish.icc
              %23max_accel_factor=1.0
              %23min_accel_factor=0.16
              %23mode=1024x768@60
              %23name=X1
              %23transform=flipped-90
              path=/usr/local/libexec/weston-keyboard

              [launcher]
              icon=/usr/share/icons/gnome/24x24/apps/arts.png
              path=/home/samhita/weston-4.0.0/weston-flower

              [screen-share]
              %23path=/usr/local/bin/Xwayland
              command="/usr/local/bin/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize"

              [shell]
              %23animation=fade
              %23binding-modifier=ctrl
              %23cursor-size=24
              %23cursor-theme=whiteglass
              %23homescreen=/usr/share/backgrounds/gnome/Blinds.jpg
              %23lockscreen=/usr/share/backgrounds/gnome/Garden.jpg
              %23lockscreen-icon=/usr/share/icons/gnome/256x256/actions/lock.png
              %23num-workspaces=6
              animation=zoom
              background-color=0xff002244
              background-image=myImage.png
              background-type=tile
              clock-format=minutes
              locking=true
              panel-color=0x90ff0000
              startup-animation=fade

              jsulmJ 1 Reply Last reply
              0
              • S Sriu1

                @JonB Hi,
                I tried this code

                QSettings settings("/home/tel/weston.ini", QSettings::IniFormat);
                settings.setValue("shell/background-image","myImage.png");
                //settings.sync();
                This is my ini

                [core]
                %23gbm-format=xrgb2101010
                %23modules=cms-colord.so
                %23require-input=true
                %23shell=desktop-shell.so
                %23xwayland=true

                [input-method]
                %23constant_accel_factor=50
                %23enable_tap=true
                %23icc_profile=/usr/share/color/icc/colord/Bluish.icc
                %23max_accel_factor=1.0
                %23min_accel_factor=0.16
                %23mode=1024x768@60
                %23name=X1
                %23transform=flipped-90
                path=/usr/local/libexec/weston-keyboard

                [launcher]
                icon=/usr/share/icons/gnome/24x24/apps/arts.png
                path=/home/samhita/weston-4.0.0/weston-flower

                [screen-share]
                %23path=/usr/local/bin/Xwayland
                command="/usr/local/bin/weston --backend=rdp-backend.so --shell=fullscreen-shell.so --no-clients-resize"

                [shell]
                %23animation=fade
                %23binding-modifier=ctrl
                %23cursor-size=24
                %23cursor-theme=whiteglass
                %23homescreen=/usr/share/backgrounds/gnome/Blinds.jpg
                %23lockscreen=/usr/share/backgrounds/gnome/Garden.jpg
                %23lockscreen-icon=/usr/share/icons/gnome/256x256/actions/lock.png
                %23num-workspaces=6
                animation=zoom
                background-color=0xff002244
                background-image=myImage.png
                background-type=tile
                clock-format=minutes
                locking=true
                panel-color=0x90ff0000
                startup-animation=fade

                jsulmJ Offline
                jsulmJ Offline
                jsulm
                Lifetime Qt Champion
                wrote on last edited by
                #16

                @Sriu1 Looks like it is working now?

                https://forum.qt.io/topic/113070/qt-code-of-conduct

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  Sriu1
                  wrote on last edited by
                  #17

                  but .ini is getting altered.The "#" starting lines are getting removed.

                  JonBJ 1 Reply Last reply
                  0
                  • S Sriu1

                    but .ini is getting altered.The "#" starting lines are getting removed.

                    JonBJ Offline
                    JonBJ Offline
                    JonB
                    wrote on last edited by
                    #18

                    @Sriu1
                    Yes, as I said earlier:

                    I can only say %23 is the hex code for a #, and QSettings is choosing to save it encoded. You seem to be using # in your .ini file as a comment character. What makes you think that is acceptable to QSettings?

                    and

                    I'm not creating any comments.That is the ini file generated by weston.The" # "are not created by me.
                    I'm just editing it

                    I'm pointing out that QSettings does not handle those lines in the way Windows/your "weston" does. Which may lead to problems.

                    S 1 Reply Last reply
                    0
                    • JonBJ JonB

                      @Sriu1
                      Yes, as I said earlier:

                      I can only say %23 is the hex code for a #, and QSettings is choosing to save it encoded. You seem to be using # in your .ini file as a comment character. What makes you think that is acceptable to QSettings?

                      and

                      I'm not creating any comments.That is the ini file generated by weston.The" # "are not created by me.
                      I'm just editing it

                      I'm pointing out that QSettings does not handle those lines in the way Windows/your "weston" does. Which may lead to problems.

                      S Offline
                      S Offline
                      Sriu1
                      wrote on last edited by
                      #19

                      @JonB Hi Thanks,
                      The ini is weston generated.How to handle the # lines in it ?If I give the ini without # lines my application is not working.Please suggest

                      JonBJ 1 Reply Last reply
                      0
                      • S Sriu1

                        @JonB Hi Thanks,
                        The ini is weston generated.How to handle the # lines in it ?If I give the ini without # lines my application is not working.Please suggest

                        JonBJ Offline
                        JonBJ Offline
                        JonB
                        wrote on last edited by JonB
                        #20

                        @Sriu1
                        So if your .ini file is not acceptable wrt the #s after you have modified it via QSettings (which does not necessarily claim to be compatible with existing .ini file formats from what I can see, only compatible with its own reading & writing), and you or someone else cannot find a call to make it compatible, you seem to have 3 choices:

                        • Do not use QSettings. Write your own reader/writer.
                        • Use QSettings as the reader, but not the writer. Do your own writing instead.
                        • Allow QSettings to write back. When finished, read the .ini file back as a text file and do your own substitution of %23s back to #s as you write it out as a text file.
                        1 Reply Last reply
                        2

                        • Login

                        • Login or register to search.
                        • First post
                          Last post
                        0
                        • Categories
                        • Recent
                        • Tags
                        • Popular
                        • Users
                        • Groups
                        • Search
                        • Get Qt Extensions
                        • Unsolved