Re: Learning about BonoboControls/NautilusViews

Michael Meeks <[email protected]>
Newsgroups gmane.comp.gnome.components
Organization Ximian.
Message-ID <[email protected]>
Hi Steven,

On Mon, 2003-04-21 at 20:38, M wrote:
> * About BonoboPersistFile: the GObject is deprecated
> but the Interface itself not. If you want an application
> to implement the interface you have to create your own
> GObject instead of using/inheriting from BonoboPersistFile?
> Is that Correct? (do I have to compile the idl file then?)

	Right; it is correct to inherit from BonoboPersist, the best thing to
do is to cut and paste bonobo-persist-file.[ch], rename it sensibly, and
bin the callback emission stuff - simply implementing the methods
yourself.

> btw: But why are so many new applications using
> BonoboPersistFile (like Eog-Collection ??)

	No idea; Jens ?

> * If you want a BonoboControl to be able to show up in
> Nautilus it has to implement besides Bonobo::Unknown
> and Bonobo::Control also Bonobo::PersistFile? (and the
> server file must have the view-as etc elements). Is
> that correct? At least a saw Eog-Collection doing it
> that way...

	I believe so; we really need some documentation on all the different
.server extensions/properties that have been added in a rather ad-hoc
fashion.

> I also know that if your .server file says it implements
> Nautilus/View it shows up. Btw: if you really create
> an an object inherited from NautilusView, for wich reasons
> I should do that? 

	There are some reasons; but they're typically not very good ones so -
IIWY I'd stick with a plain control for now.

> * ...and is there a way to tell nautilus not
> to activate your control (NO Bonobo_Control_activate) ?

	Why do you not want to be activated ?

> * As an exercise a made simple BonoboControl implementing
> BonoboZoomable and simple container for it. I also made
> a NautilusView that wraps the BonoboControl using
> 'nautilus_view_construct_from_bonobo_control'. I made the
> server file that way that it could show up as a view or
> as an property page tab. But when I go back to another view
> , my little sample control keeps haning around in the 
> memory for a while, and during that period i cannot activate
> the view again? Any ideas why?

	Sounds very odd; what is the control doing ? you're not doing a
sleep(5) somewhere ;-) then again, perhaps the nautilus adaptor is
causing grief; although it shouldn't. Try re-building ORBit2 with
--enable-debug=yes; from clean; and doing export ORBIT2_DEBUG=traces,
and running your component from the console - you should see lots of
output on what is happening - see if that helps locate the slow piece,
or use gdb.

> Ok, this for a starter. Please bare with me :-) I probably
> have a lot more questions.

	It's great to ask questions; keep going.

	Regards,

		Michael.

-- 
 [email protected]  <><, Pseudo Engineer, itinerant idiot
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.