Help with clipChildren

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Help with clipChildren

Jerry Bell
I'm having problems with redrawing in a Web Browser control.

I thought I had figured out a clever way of displaying PDF docs in my app
without bothering with the Adobe ActiveX control, which seems less than
happy hosted in Dolphin. (Apparently it is not really a full-featured
ActiveX control, it's meant only for use in IE.  I guess VB and others do
extra work to make non-controls such as these work).  Anyway, I was just
using a web browser control and feeding it PDF files.  The Acrobat plug-in
would display fine, and as long as I had clipChildren set in the
ContainerView which the URLPresenter was in everything seemed OK at first.

I can drag the window around, resize it, etc without problems.  But, as soon
as I minimize or maximize it, or drag another window on top of it and then
off again, I begin to get redraw problems.

The window layout is like this:

ContainerView (Border Layout)
    ContainerView (west)
    ContainerView (clipChildren=true) (center)
        AXValueConvertingControlSite (Shell.Explorer)
    ContainerView (east)

If it matters, I'm setting this presenter up under CompositePresenter and
letting Dolphin add the Shell when it's shown.

By setting the background color of the topmost ContainerView to red, it
becomes obvious that the topmost ContainerView is painting over the PDF
after the PDF has displayed.  So, I tried adding clipChildren to the topmost
ContainerView as well.  This works great for the PDF in all ways, but now
the ListView which I had stuffed under the West-most ContainerView won't
redraw correctly.  When the window is first displayed, the ListView doesn't
draw at all unless I start selecting items, then they draw one item at a
time as I select them.  I can force them all to redraw by drastically
resizing the window with the mouse.  Strangely, a reference view containing
a few edit boxes and some buttons (under the East ContainerView) displays
fine.  Setting ALL ContainerView to clipChildren results in the same effect:
PDFs are happy, reference view is happy, listview is wacky.

I'm not sure if the problem is with clipChildren, ListViews, something else,
or myself.  I don't really know much about clipChildren at all, except that
it fixes redraw problems sometimes.

Any ideas?

BTW, I'm running NT 4 SP6.

Thanks,

Jerry Bell
[hidden email]


Reply | Threaded
Open this post in threaded view
|

Re: Help with clipChildren

Jerry Bell
Strangely enough, the problem seems to have disappeared after I rearranged
the layout of the presenters.

The new layout is more like:

ContainerView
    ContainerView (Center)
        ContainerView(west) - List
        ContainerView(center) - Shell.Explorer
    ContainerView(South)
        ContainerView - reference view, originally the eastmost presenter

All of the ContainerViews have clipChildren set to true.  I don't think I've
chaned anything other than re-arranging subpresenters.  Nevertheless, both
the PDF view and the ListView seem to be working great.

Strange.

Jerry Bell
[hidden email]

"Jerry Bell" <[hidden email]> wrote in message
news:91nufj$4qq08$[hidden email]...

> I'm having problems with redrawing in a Web Browser control.
>
> I thought I had figured out a clever way of displaying PDF docs in my app
> without bothering with the Adobe ActiveX control, which seems less than
> happy hosted in Dolphin. (Apparently it is not really a full-featured
> ActiveX control, it's meant only for use in IE.  I guess VB and others do
> extra work to make non-controls such as these work).  Anyway, I was just
> using a web browser control and feeding it PDF files.  The Acrobat plug-in
> would display fine, and as long as I had clipChildren set in the
> ContainerView which the URLPresenter was in everything seemed OK at first.
>
> I can drag the window around, resize it, etc without problems.  But, as
soon

> as I minimize or maximize it, or drag another window on top of it and then
> off again, I begin to get redraw problems.
>
> The window layout is like this:
>
> ContainerView (Border Layout)
>     ContainerView (west)
>     ContainerView (clipChildren=true) (center)
>         AXValueConvertingControlSite (Shell.Explorer)
>     ContainerView (east)
>
> If it matters, I'm setting this presenter up under CompositePresenter and
> letting Dolphin add the Shell when it's shown.
>
> By setting the background color of the topmost ContainerView to red, it
> becomes obvious that the topmost ContainerView is painting over the PDF
> after the PDF has displayed.  So, I tried adding clipChildren to the
topmost
> ContainerView as well.  This works great for the PDF in all ways, but now
> the ListView which I had stuffed under the West-most ContainerView won't
> redraw correctly.  When the window is first displayed, the ListView
doesn't
> draw at all unless I start selecting items, then they draw one item at a
> time as I select them.  I can force them all to redraw by drastically
> resizing the window with the mouse.  Strangely, a reference view
containing
> a few edit boxes and some buttons (under the East ContainerView) displays
> fine.  Setting ALL ContainerView to clipChildren results in the same
effect:
> PDFs are happy, reference view is happy, listview is wacky.
>
> I'm not sure if the problem is with clipChildren, ListViews, something
else,
> or myself.  I don't really know much about clipChildren at all, except
that

> it fixes redraw problems sometimes.
>
> Any ideas?
>
> BTW, I'm running NT 4 SP6.
>
> Thanks,
>
> Jerry Bell
> [hidden email]
>
>
>
>
>
>
>
>
>
>
>