Rob Jenkins (robj++at++quid)
Wed, 20 Aug 1997 16:43:25 -0700
I've seen something like this before where a pfpipewindow::addChan to associate
the channel with the pipewindow was what was missing.
Also I would recommend you do the pfChooseFBConfigData before the
XtVaCreateManagedWidget, that way you cn check that you got what you asked for
which is *always* good practice.
Cheers
Rob
On Aug 20, 8:20am, Ethan Phelps-Goodman wrote:
> Subject: Re: How do I render a pfPipeWindow into a motif widget?
> Brian Furtaw wrote:
> >
> > On Aug 19, 1:22pm, Ethan Phelps-Goodman wrote:
> > > Subject: How do I render a pfPipeWindow into a motif widget?
> > > I am trying to port a simulation package from Inventor to Performer. I
> > > am having trouble making a pfPipeWindow draw into a Widget. I have a
> > > window with several widgets, and in some of them I am trying to put a
> > > pfPipeWindow. I create the pfPipeWindow and the widget, and then call
> > > pfPipeWindow::setWSWindow(). When I call pfPipeWindow::open() a whole
> > > new motif window is created outside of my origonal window. How do I make
> > > Performer render to just one area of a window?
> > >
> > > Here is the code I am using:
> > >
> > > /* pfPipeWindow created here
> > > ...
> > > */
> > >
> > > // I need a void** to pass to pfChooseFBConfigData()
> > > int* foo = (int*)pfMalloc( sizeof(int), pfGetSharedArena() );
> > > // I create an OpenGL rendering widget
> > > windowWidget = XtVaCreateManagedWidget( name,
> > > glwMDrawingAreaWidgetClass, parentWidget,
> > > GLwNvisualInfo,
> > > pfChooseFBConfigData( (void**)&foo,
> > > XtDisplay(parentWidget), -1, NULL,
> > > pfGetSharedArena() ), NULL );
> > > _win->setWSDrawable( NULL, XtWindow( windowWidget ) );
> > > _win->setWSWindow( NULL, XtWindow( parentWidget ) );
> > >
> > >
> > > /* pfPipeWindow::open() called later
> > > ...
> > > */
> > >
> > >
> > > The widget is always black, and the seperate pfPipeWindow draws
> > > properly. Its like I never called setWSWindow().
> > >
> > > Does anyone know what's going wrong?
> > >
> > > --
> > >
> > > Ethan Phelps-Goodman
> > > ethan++at++coral.arc.nasa.gov
> > >
>
> >
> > Do you call pfPipeWindow::setOrigin(int xo, int yo); or
> > pfPipeWindow::setOriginSize(int xo, int yo, int xs, int ys);
> > Don't because I had problems getting performer to use a separate window
> > when using theses calls. Looks like you are doing everything
> > correctly maybe it is where you are calling the PfPipeWindow::open()
> > where do you do that?
> >
> > Brian
> >
> > --
> > o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o-o
> >
> > Brian Furtaw (brian++at++sgi.com)
> > VisSim Technical Consultant
> > 12200-G Plum Orchard Drive Office:(301)572-3293 Fax: (301)872-3293
> > Silver Spring, Maryland 20904 OpenGL/ImageVision/OpenInventor/Performer
>
>
> I call pfPipeWindow::open() later in the program when I want to show the
> viewer. open() is called in the application process.
>
>
>
> --
>
> Ethan Phelps-Goodman
> ethan++at++coral.arc.nasa.gov
> =======================================================================
> List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
> Submissions: info-performer++at++sgi.com
> Admin. requests: info-performer-request++at++sgi.com
>-- End of excerpt from Ethan Phelps-Goodman
--
________________________________________________________________
Rob Jenkins mailto:robj++at++sgi.com
Silicon Graphics, Mtn View, California, USA
=======================================================================
List Archives, FAQ, FTP: http://www.sgi.com/Technology/Performer/
Submissions: info-performer++at++sgi.com
Admin. requests: info-performer-request++at++sgi.com
This archive was generated by hypermail 2.0b2 on Mon Aug 10 1998 - 17:55:45 PDT