Qt Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Unsolved

    Further "Plumbing" for Model->View->Delegate...

    General and Desktop
    3
    8
    2740
    Loading More Posts
    • 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.
    • R
      ronM71 last edited by

      I have a QListView, clearly showing, My model is full of data. My model's ::rowCount() is called and returns a > 0 result. I connected my model to the QListView with "setModel". I connected the delegate to the QListView with "setItemDelegate".

      Yet the "Paint" method on my delegate isn't called, not once. Not even after resizing the live QListView. Why?

      Do I need further "hooking up" of events here? perhaps connecting some slots to signals? I thought the "setModel" and "setDelegate" will take care of that for me. Was I wrong?

      1 Reply Last reply Reply Quote 0
      • G
        giesbert last edited by

        no, normally it works
        please show us some example code which does not work.
        I'm sure, there is some bug in :-)
        I use model view delegate a lot and it works

        Nokia Certified Qt Specialist.
        Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

        1 Reply Last reply Reply Quote 0
        • R
          ronM71 last edited by

          I got it.

          I wasn't signaling of a model update using the model's "begin/end" method pairs. I was adding content to the model using my own methods so the model really could not notify the listView there's content to view which of course resulted in no painting.

          1 Reply Last reply Reply Quote 0
          • A
            andre last edited by

            Check if you got the method signature exactly right. It is quite easy to forget the const, for instance.

            1 Reply Last reply Reply Quote 0
            • R
              ronM71 last edited by

              QT-Creator uses a compiler that screams about signatures, namely the const at the end.

              1 Reply Last reply Reply Quote 0
              • A
                andre last edited by

                If you type the function signatures yourself, Qt Creator allows you to forget the const just fine. :-)

                1 Reply Last reply Reply Quote 0
                • G
                  giesbert last edited by

                  Then you have two functions, one const and one not...
                  gives nice error prone behavior...

                  Nokia Certified Qt Specialist.
                  Programming Is Like Sex: One mistake and you have to support it for the rest of your life. (Michael Sinz)

                  1 Reply Last reply Reply Quote 0
                  • A
                    andre last edited by

                    My point was, that if you think you have reimplemented a virtual function like paintEvent, but you forgot the const at the end, you can wait for along time for it to get called :-) Your application will simply use the version in the baseclass you subclassed.

                    1 Reply Last reply Reply Quote 0
                    • First post
                      Last post