mc/gnome/gmain.h
Miguel de Icaza b3bb157ad5 These are a bunch of changes to fix CORBA and session management. They
are almost complete (i.e. to handle all nitty gritty cases), but they
seem to be working OK right now.  SM should be much more stable now.
Please tell me if you find any weird behavior - Federico

1999-03-30  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gdesktop-icon.c (desktop_icon_realize): Remove the
	WM_CLIENT_LEADER property from icon windows so that window
	managers will not store SM information for them.

	* gnome-open-dialog.c: Added missing #includes.

	* gdesktop-init.c (desktop_init_at): Removed an unused variable.

	* gdesktop.h: Added some missing prototypes.

	* gmain.h: Added some missing prototypes.

	* Makefile.in: Added gsession.[ch] to the list of sources.

	* gmain.c (create_panels): Consider whether we have a CORBA server
	and session management.

	* gdesktop.c: #include "gdesktop-init.h"
	* gdesktop.c: Added a missing cast to GNOME_DIALOG.

	* gmain.c (create_panels): Removed the run_desktop global
	variable.

	* glayout.c (create_container): Set the wmclass of the panel to
	include its unique ID.

	* gsession.[ch]: New file with the functions that deal with
	session management.

	* glayout.c (gnome_exit): Use session_set_restart().

	* gcorba.c (corba_init): Now returns an int with an error value.
	(corba_init_server): Initialize the server properly.
	Fixed all the object implementation code.
	(corba_create_window): New function used to create a window with
	the CORBA server.

	* gmain.c (gnome_check_super_user): Now the check for running as
	root is done here.  There should be no GUI code in src/.

1999-03-30  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* dlg.c (dlg_run_done): Do not call the callback of a NULL current
	widget.

	* setup.h: Added missing prototype for setup_init().

	* filegui.c (check_progress_buttons): Added a missing return
	value.

	* dlg.c (remove_widget): Added a missing return value.

	* main.c: Removed the global directory_list variable.
	Removed the main_corba_register_server() function.

	* main.h: Removed the global run_desktop variable.

	* panel.h: Now the panel structure has a unique numerical ID used
	for session management.

	* screen.c (panel_new): Maintain a unique ID for each panel.

	* main.c (maybe_display_linksdir): Handle display of the desktop
	init dir here.
	(main): Call gnome_check_super_user().
	(init_corba_with_args): Call corba_init_server().

	* main.c (init_corba_with_args): Do CORBA initialization here.  Also
	removed the global force_activation option.

1999-03-30  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* vfs.c (vfs_add_current_stamps): Only do stamping of the panels
	if they exist.

	* mcserv.c: #include <sys/wait.h>
	(get_client): Put `#ifdef __EMX__' around an otherwise-unused
	variable.

	* utilvfs.c (vfs_split_url): Fix NULL <-> 0 confusion when
	comparing characters.

	* ftpfs.c (retrieve_dir): Removed unused variable dot_dot_found.

	* extfs.c (extfs_init): Assign `key' to c, not `&key'.
1999-03-30 06:09:56 +00:00

72 lines
2.6 KiB
C

#ifndef __GMC_MAIN_H
#define __GMC_MAIN_H
#include "dlg.h"
#include "panel.h"
#include "widget.h"
#include "info.h"
int xtoolkit_init (int *argc, char *argv []);
void xtoolkit_end (void);
extern Dlg_head *desktop_dlg;
extern int nowindows;
extern int corba_have_server;
/* Required by the standard code */
widget_data xtoolkit_create_dialog (Dlg_head *h, int with_grid);
widget_data xtoolkit_get_main_dialog (Dlg_head *h);
void x_dlg_set_window (Dlg_head *h, GtkWidget *win);
widget_data x_create_panel_container (int which);
void x_panel_container_show (widget_data wdata);
void x_destroy_cmd (void *);
int x_create_radio (Dlg_head *h, widget_data parent, WRadio *r);
int x_create_check (Dlg_head *h, widget_data parent, WCheck *c);
int x_create_label (Dlg_head *h, widget_data parent, WLabel *l);
int x_create_input (Dlg_head *h, widget_data parent, WInput *in);
int x_create_listbox (Dlg_head *h, widget_data parent, WListbox *l);
int x_create_buttonbar (Dlg_head *h, widget_data parent, WButtonBar *bb);
void x_filter_changed (WPanel *panel);
void x_list_insert (WListbox *l, WLEntry *p, WLEntry *e);
void x_redefine_label (WButtonBar *bb, int idx);
void x_add_widget (Dlg_head *h, Widget_Item *w);
int translate_gdk_keysym_to_curses (GdkEventKey *event);
void gnome_init_panels ();
void bind_gtk_keys (GtkWidget *w, Dlg_head *h);
WPanel *new_panel_at (char *dir);
WPanel *new_panel_with_geometry_at (char *dir, char *geometry);
void set_current_panel (WPanel *panel);
void layout_panel_gone (WPanel *panel);
void gtkrundlg_event (Dlg_head *h);
int gmc_open (file_entry *fe);
int gmc_open_with (char *filename);
int gmc_open_filename (char *fname, GList *args);
int gmc_edit (char *fname);
int gmc_can_view_file (char *filename);
int gmc_view (char *filename, int start_line);
void x_show_info (WInfo *info, struct my_statfs *s, struct stat *b);
void x_create_info (Dlg_head *h, widget_data parent, WInfo *info);
void gnome_check_super_user (void);
gint create_new_menu_from (char *file, GtkWidget *shell, gint pos);
/*
* stuff from gaction.c
*/
int gmc_open (file_entry *fe);
int gmc_open_filename (char *fname, GList *args);
int gmc_edit_filename (char *fname);
int gmc_view (char *filename, int start_line);
void gmc_window_setup_from_panel (GnomeDialog *dialog, WPanel *panel);
struct gmc_color_pairs_s {
GdkColor *fore, *back;
};
void gmc_do_quit (void);
#if 0
extern GnomeClient *session_client;
#endif
extern struct gmc_color_pairs_s gmc_color_pairs [];
#endif