I am porting a reading app to an arm-based low refresh rate e-paper device. There is an existing Qt screen driver plugin already had been developed for this platform. A class derived from QLinuxFbScreen provides the screen update services.There are several views implemented in the app and there is a class that eventually calls repaint() and does the drawing inside the paintEvent().

I have a problem with the refresh on this device. All e-paper screens produce artifacts, so they have to do a special full screen refresh to avoid them. I only want to do this kind of refresh when the full page has been turned in the app. I want to do partial refresh if a hyperlink was highlighted or a small dialog box has been displayed.
So, do I need to invent fullRepaint() and fullPaintEvent() (by analogy to repaint/paintEvent), derive from QLinuxFbScreen and have a special blit for full refresh? Is there a simple more elegant way?

I have also posted this questions in another forum, but did not receive any replies so far.