libxfcecombo API reference
Jasper Huijsmans
jasper at moongroup.com
Sat Jan 10 10:05:20 CET 2004
Thanks, it starts to make a bit more sense to me now.
One thing you can easily do is have the module_init() function fill in
the function pointers, instead of looking up every single symbol
manually.
I'll get back to you with other suggestions later ;-)
Jasper
Op za 10-01-2004, om 00:30 schreef edscott wilson garcia:
> To avoid spaguetti loading, the combo module can be plainly linked to
> the panel and plugins as any normal dynamic library like libxfce4gui
> would. This would require configure to fail is xfce4-modules not
> installed. Anyways, that's Jasper's call.
>
> This is a short api for the module/library:
> gboolean xfc_is_in_history(char *path2dbh_file,char *path2find);
>
> // Tests whether the string path2find is in the history
>
> gboolean xfc_set_combo(xfc_combo_info_t *combo_info, char *token);
>
> // Sets the combo list of related items to the most visited dozen
> // elements that begin with the string token.
>
> void xfc_set_blank(xfc_combo_info_t *combo_info);
>
> // Clears the entry of the combo box. This is normally set
> // to the last visited item.
>
> void xfc_set_entry(xfc_combo_info_t *combo_info,char *entry_string);
>
> // Sets the entry of the combo box to the string entry_string. The
> // entry is normally set to the last visited item.
>
> void xfc_save_to_history(char *path2dbh_file,char *path2save);
>
> // Opens/creates the history file and saves the string path2save. If
> // the string is already in history file, increments the visit count.
>
> void xfc_remove_from_history(char *path2dbh_file,char *path2remove);
>
> // Eliminates path2remove from history file, if file exists and is
> // writeable.
>
> void xfc_read_history(xfc_combo_info_t *combo_info, gchar
> *path2dbh_file);
>
> // Reads history file. I think this function should no longer be
> // exported... note to myself :-\
>
> void xfc_clear_history(xfc_combo_info_t *combo_info);
>
> // Erases the history file, I suppose, and reinitialises the data in
> // the combo_info object.
>
> xfc_combo_info_t xfc_init_combo(GtkCombo *combo);
>
> // Initialises pointers and allocates memory for the combo object
> // of type xfc_combo_info_t
>
> xfc_combo_info_t xfc_destroy_combo(xfc_combo_info_t *combo_info);
>
> // Frees memory used by combo object. Probably should be called before
> // unloading module. Should check if the unload function uses this
> // function.
>
> The following are functions that can be imported and used by the module:
>
> int extra_key_completion(gpointer extra_key_data);
>
> // Any additional callbacks to perform while doing completion (like
> // toggling the state of checkbuttons.
>
>
> I think that's it. Everything else in the module is static.
>
>
>
> On Fri, 2004-01-09 at 16:52, Danny Milosavljevic wrote:
> > hi,
> > Am Fre, den 09.01.2004 schrieb Danny Milosavljevic um 23:30:
> > > Am Fre, den 09.01.2004 schrieb Danny Milosavljevic um 22:00:
> > > > Hey Jasper,
> > > >
> > > > what about adding a function to the panel which
> > > > - is made available to the plugins, for use in create_options
> > > > - receives:
> > > > Control * ?
> > > > an optional GtkSizeGroup
> > > > - creates:
> > > > some boxes, eventboxes, whatever,
> > > > the command entry or the combo if applicable,
> > > > the openbutton,
> > > > the opendialog,
> > > > the "exec in terminal" checkbutton
> > > > the "use startup notification" checkbutton
> > > > - returns:
> > > > the (outermost) GtkWidget *, to be used in packing
> > > > a GtkEntry *
> > > > an optional GtkCombo *
> > > > the two checkbuttons
> > > > [best all in a g_new'ed struct since additions are easier]
> > > >
> > > > ? :)
> > >
> > > attached... yet untested ;)
> >
> > attached and tested, working.
> >
> >
> > ______________________________________________________________________
> > _______________________________________________
> > Xfce4-dev mailing list
> > Xfce4-dev at xfce.org
> > http://lunar-linux.org/mailman/listinfo/xfce4-dev
>
> _______________________________________________
> Xfce4-dev mailing list
> Xfce4-dev at xfce.org
> http://lunar-linux.org/mailman/listinfo/xfce4-dev
More information about the Xfce4-dev
mailing list