Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Checking run time characteristics for QFileDialog::getOpenFileName()
Forum Update on Monday, May 27th 2025

Checking run time characteristics for QFileDialog::getOpenFileName()

Scheduled Pinned Locked Moved Unsolved General and Desktop
qfiledialoggetopenfilenamerun timeresponsivenessfile management
16 Posts 4 Posters 3.4k Views
  • 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.
  • E elfring
    5 Oct 2018, 19:52

    @SGaist said in Checking run time characteristics for QFileDialog::getOpenFileName():

    And what version is it ?

    I am using the Qt versions which were provided together with openSUSE Tumbleweed for years. It is currently 5.11.2-1.1.

    A Offline
    A Offline
    aha_1980
    Lifetime Qt Champion
    wrote on 5 Oct 2018, 20:07 last edited by
    #7

    @elfring just to add to @SGaist, especially check network drives. I especially have a delay in Windows because of that (but only some seconds).

    Qt has to stay free or it will die.

    1 Reply Last reply
    0
    • S SGaist
      5 Oct 2018, 19:57

      What desktop environment are you using ?

      How many and what type of storage system do you have connected to your computer ?

      E Offline
      E Offline
      elfring
      wrote on 5 Oct 2018, 20:08 last edited by
      #8

      @SGaist said in Checking run time characteristics for QFileDialog::getOpenFileName():

      What desktop environment are you using ?

      I am using XFCE 4.12.1 primarily at the moment while I have got access also to programs from other environments.

      How many and what type of storage system do you have connected to your computer ?

      I refer to directories from a local hard disk for this clarification request.

      1 Reply Last reply
      0
      • S Offline
        S Offline
        SGaist
        Lifetime Qt Champion
        wrote on 5 Oct 2018, 20:59 last edited by
        #9

        The fact that you are opening the dialog on your local hard drive, doesn't mean that there's no access to the other devices that you may have.

        By the way, do you have the same problem if your disable the native dialog ?

        Interested in AI ? www.idiap.ch
        Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

        E 1 Reply Last reply 6 Oct 2018, 07:19
        1
        • S SGaist
          5 Oct 2018, 20:59

          The fact that you are opening the dialog on your local hard drive, doesn't mean that there's no access to the other devices that you may have.

          By the way, do you have the same problem if your disable the native dialog ?

          E Offline
          E Offline
          elfring
          wrote on 6 Oct 2018, 07:19 last edited by
          #10

          The fact that you are opening the dialog on your local hard drive, doesn't mean that there's no access to the other devices that you may have.

          • I would be also curious then which of other possible device connections will influence the primary file selection in undesirable ways.
          • Which data processing actions can disturb the dialogue display considerably?

          By the way, do you have the same problem if your disable the native dialog ?

          Can be determined if a native file dialogue is used by the function “QFileDialog::getOpenFileName” at all (if the passing of the configuration option “QFileDialog::DontUseNativeDialog” was omitted so far)?
          (Do I need to add debug output to any source code place?)

          J 1 Reply Last reply 6 Oct 2018, 14:31
          0
          • E elfring
            6 Oct 2018, 07:19

            The fact that you are opening the dialog on your local hard drive, doesn't mean that there's no access to the other devices that you may have.

            • I would be also curious then which of other possible device connections will influence the primary file selection in undesirable ways.
            • Which data processing actions can disturb the dialogue display considerably?

            By the way, do you have the same problem if your disable the native dialog ?

            Can be determined if a native file dialogue is used by the function “QFileDialog::getOpenFileName” at all (if the passing of the configuration option “QFileDialog::DontUseNativeDialog” was omitted so far)?
            (Do I need to add debug output to any source code place?)

            J Offline
            J Offline
            JonB
            wrote on 6 Oct 2018, 14:31 last edited by
            #11

            @elfring

            • Don't know what you're saying, but @SGaist is suggesting you try passing the DontUseNativeDialog flag and see whether Qt's own inbuilt dialog behaves better for you in this situation.

            • While you're at it. The most likely cause for any big time delay would be the dialog doing any work examining network or detachable-media drives. Note that Qt has a QFileDialog::DontUseCustomDirectoryIcons flag, which you should also try using:

            Some platforms allow the user to set a different icon. Custom icon lookup cause a big performance impact over network or removable drives.

            • And on that note what do you pass as the "initial/root directory" to your getOpenFileName()? Try not to pass the very "root" directory of the file system, where network/removable drives stem from, if you don't need to. Pass a directory lower down on a fixed, local drive if you can.

            • Finally, if you still have big delays and don't know why, use Linux strace to discover what the code is actually doing behind the scenes to cause this!

            E 1 Reply Last reply 6 Oct 2018, 15:18
            3
            • J JonB
              6 Oct 2018, 14:31

              @elfring

              • Don't know what you're saying, but @SGaist is suggesting you try passing the DontUseNativeDialog flag and see whether Qt's own inbuilt dialog behaves better for you in this situation.

              • While you're at it. The most likely cause for any big time delay would be the dialog doing any work examining network or detachable-media drives. Note that Qt has a QFileDialog::DontUseCustomDirectoryIcons flag, which you should also try using:

              Some platforms allow the user to set a different icon. Custom icon lookup cause a big performance impact over network or removable drives.

              • And on that note what do you pass as the "initial/root directory" to your getOpenFileName()? Try not to pass the very "root" directory of the file system, where network/removable drives stem from, if you don't need to. Pass a directory lower down on a fixed, local drive if you can.

              • Finally, if you still have big delays and don't know why, use Linux strace to discover what the code is actually doing behind the scenes to cause this!

              E Offline
              E Offline
              elfring
              wrote on 6 Oct 2018, 15:18 last edited by
              #12

              Finally, if you still have big delays and don't know why,

              I am wondering about occasional hiccups in the responsiveness of file management dialogues.

              use Linux strace to discover what the code is actually doing behind the scenes to cause this!

              I have got the impression that it can matter also which program tries to open a fresh dialogue for another file (or directory) selection. If there is an unpleasant software initialisation process involved, I imagine that it can become very challenging to find the concrete error reason in a reasonable time frame.
              Will any other debugging aproaches or system performance analysis help better?

              J 1 Reply Last reply 6 Oct 2018, 15:32
              0
              • E elfring
                6 Oct 2018, 15:18

                Finally, if you still have big delays and don't know why,

                I am wondering about occasional hiccups in the responsiveness of file management dialogues.

                use Linux strace to discover what the code is actually doing behind the scenes to cause this!

                I have got the impression that it can matter also which program tries to open a fresh dialogue for another file (or directory) selection. If there is an unpleasant software initialisation process involved, I imagine that it can become very challenging to find the concrete error reason in a reasonable time frame.
                Will any other debugging aproaches or system performance analysis help better?

                J Offline
                J Offline
                JonB
                wrote on 6 Oct 2018, 15:32 last edited by
                #13

                @elfring

                Will any other debugging aproaches or system performance analysis help better?

                Yes, like I said, use strace!

                E 1 Reply Last reply 7 Oct 2018, 08:02
                1
                • J JonB
                  6 Oct 2018, 15:32

                  @elfring

                  Will any other debugging aproaches or system performance analysis help better?

                  Yes, like I said, use strace!

                  E Offline
                  E Offline
                  elfring
                  wrote on 7 Oct 2018, 08:02 last edited by
                  #14

                  Yes, like I said, use strace!

                  I have accidentally noticed the unpleasant software behaviour once more.

                  The program trace displays so many information so that it seems to be hard to connect another unexpected big delay in the file directory display with a specific function call within the affected software implementation.

                  J 1 Reply Last reply 7 Oct 2018, 15:18
                  0
                  • E elfring
                    7 Oct 2018, 08:02

                    Yes, like I said, use strace!

                    I have accidentally noticed the unpleasant software behaviour once more.

                    The program trace displays so many information so that it seems to be hard to connect another unexpected big delay in the file directory display with a specific function call within the affected software implementation.

                    J Offline
                    J Offline
                    JonB
                    wrote on 7 Oct 2018, 15:18 last edited by
                    #15

                    @elfring
                    Well I can't see your output so I don't know. But I would have expected that provided you are looking at the strace output in real time what you would see is the last line of output would "hang" just as you went into a "delay", and that would be your indication as to why....

                    E 1 Reply Last reply 7 Oct 2018, 16:50
                    1
                    • J JonB
                      7 Oct 2018, 15:18

                      @elfring
                      Well I can't see your output so I don't know. But I would have expected that provided you are looking at the strace output in real time what you would see is the last line of output would "hang" just as you went into a "delay", and that would be your indication as to why....

                      E Offline
                      E Offline
                      elfring
                      wrote on 7 Oct 2018, 16:50 last edited by
                      #16

                      you are looking at the strace output in real time

                      Not really. - I would start such program tracing only after a personal delay to notice that data processing for the function “QFileDialog::getOpenFileName” might take longer than what I would usually expect.
                      (I might be more patient under other circumstances.)

                      what you would see is the last line of output would "hang"

                      This did not happen. The dialogue software might be still busy with other stuff.
                      Additional activities might distract then from temporary technical difficulties.

                      just as you went into a "delay", and that would be your indication as to why....

                      I found questionable software behaviour also for other components in the suggested way so that corresponding clarification requests and bug reports were published.

                      1 Reply Last reply
                      0

                      16/16

                      7 Oct 2018, 16:50

                      • Login

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