Commit 14824b27 authored by Lee Mallabone's avatar Lee Mallabone

Gladeify gdmchooser, move installed glade files to $(datadir)/gdm, and

adjust the spec file/makefiles accordingly.
parent 62765015
Mon Mar 05 22:42:54 2001 Lee Mallabone <lee0@callnetuk.com>
* gui/Makefile.am: Change shared directory for glade files
to allow centralised storage of all gdm .glade files.
Link gdmchooser against libglade.
* gui/gdmconfig.c: Use new location for glade files.
* gui/gdmchooser.c: Gladeify gdmchooser and give it a slightly
less sucky GUI.
* gui/gdmchooser.glade, gui/gdmchooser-strings.c: Added GUI and
translatable strings for updated gdmchooser.
* gui/*.glade: Ensure WM_Class is set to be 'gdm' everywhere.
* gdm.spec.in: Adjust paths for new glade file and location.
Sun Mar 04 16:28:52 2001 George Lebl <jirka@5z.com>
* daemon/filecheck.[ch]: fix an error message and make const correct
......
......@@ -15,3 +15,6 @@ Default login for kiosks machines
Allow passwordless login for select users on local screens. Think kiosk
or public terminal use.
Expunge explicit imlib usage from gdmlogin/gdmchooser. (This requires
gdk-pixbuf support in GnomeIconList to do properly).
......@@ -93,7 +93,8 @@ ${prefix}/sbin/gdmconfig
%config /etc/X11/gdm/Init/*
%config /etc/X11/gdm/PreSession/*
%config /etc/X11/gdm/PostSession/*
%{prefix}/share/gdmconfig/gdmconfig.glade
%{prefix}/share/gdm/gdmconfig.glade
%{prefix}/share/gdm/gdmchooser.glade
%{prefix}/share/gnome/apps/System/gdmconfig.desktop
%{prefix}/share/locale/*/*/*
%{prefix}/share/pixmaps/*
......@@ -101,6 +102,9 @@ ${prefix}/sbin/gdmconfig
%attr(750, gdm, gdm) %dir /var/gdm
%changelog
* Mon Mar 05 2001 Lee Mallabone <lee0@callnetuk.com>
- Change glade file paths and add gdmchooser glade file.
* Wed Feb 28 2001 Lee Mallabone <lee0@callnetuk.com>
- Add necessary paths/flags to use console-helper for gdmconfig.
......
......@@ -24,14 +24,14 @@ gdmconfig_SOURCES = \
gdmconfig.c \
gdmconfig.h
gdmchooser_LDADD = $(GNOME_LIBDIR) $(GNOME_LIBS) $(GNOMEUI_LIBS) -lXdmcp -lX11 $(INTLLIBS)
gdmchooser_LDADD = $(GNOME_LIBDIR) $(GNOME_LIBS) $(GNOMEUI_LIBS) -lXdmcp -lX11 $(INTLLIBS) @LIBGLADE_LIBS@
gdmlogin_LDADD = $(GNOME_LIBDIR) $(GNOME_LIBS) $(GNOMEUI_LIBS) $(INTLLIBS)
gdmconfig_LDADD = $(GNOME_LIBDIR) $(GNOME_LIBS) $(GNOMEUI_LIBS) $(INTLLIBS) @LIBGLADE_LIBS@
Systemdir = $(datadir)/gnome/apps/System
System_DATA = gdmconfig.desktop
Gladedir = $(datadir)/gdmconfig
Glade_DATA = gdmconfig.glade
Gladedir = $(datadir)/gdm
Glade_DATA = gdmconfig.glade gdmchooser.glade
EXTRA_DIST = gdmconfig-strings.c $(Glade_DATA) $(System_DATA)
/*
* Translatable strings file generated by Glade.
* Add this file to your project's POTFILES.in.
* DO NOT compile it as part of your application.
*/
gchar *s = N_("GDM Host Chooser");
gchar *s = N_("Open a session to the selected host");
gchar *s = N_("Connect");
gchar *s = N_("Probe the network");
gchar *s = N_("Rescan");
gchar *s = N_("How to use this application");
gchar *s = N_("Help");
gchar *s = N_("Exit the application");
gchar *s = N_("Quit");
gchar *s = N_(" ");
gchar *s = N_("Most recently queried hosts");
gchar *s = N_("The main area of this application shows the hosts on the local\n"
"network that have \"XDMCP\" enabled. This allows users to login\n"
"remotely to other machines as if they were logged on using the\n"
"console.\n"
"\n"
"You can rescan the network for new hosts by clicking 'rescan'.\n"
"When you have selected a host click \"Connect\" to open a session\n"
"to that machine.");
gchar *s = N_("Information");
......@@ -20,8 +20,15 @@
* presents a list of them and allows the user to choose one. The
* selected hostname will be printed on stdout. */
/* This should always be commented before commiting/releasing. When it's
* defined the current directory is searched for the glade file, prior to
* the system directory.
*/
/*#define DOING_DEVELOPMENT 1*/
#include <config.h>
#include <gnome.h>
#include <glade/glade.h>
#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>
......@@ -48,6 +55,11 @@
static const gchar RCSid[]="$Id$";
static const gchar *scanning_message = N_("Please wait: scanning local network for XDMCP-enabled hosts...");
static const gchar *empty_network = N_("No serving hosts were found.");
static const gchar *active_network = N_("Choose a host to connect to from the selection below.");
static gchar *glade_filename = NULL;
static GdmChooserHost *gdm_chooser_host_alloc (gchar *hostname, gchar *description);
static void gdm_chooser_decode_packet (void);
static void gdm_chooser_abort (const gchar *format, ...);
......@@ -86,10 +98,9 @@ static gchar *GdmHostIconDir;
static gchar *GdmHostDefaultIcon;
static gchar *GdmGtkRC;
static GtkWidget *chooser;
static GtkWidget *manage;
static GtkWidget *rescan;
static GtkWidget *cancel;
static GladeXML *chooser_app;
static GtkWidget *chooser, *manage, *rescan, *cancel;
static GtkWidget *status_label;
static gint maxwidth = 0;
static GIOChannel *channel;
......@@ -235,7 +246,7 @@ gdm_chooser_find_bcaddr (void)
}
static gboolean
gboolean
gdm_chooser_xdmcp_discover (void)
{
struct sockaddr_in sock;
......@@ -244,7 +255,11 @@ gdm_chooser_xdmcp_discover (void)
struct in_addr *ia;
GList *hl = hosts;
gtk_widget_set_sensitive (GTK_WIDGET (chooser), FALSE);
gtk_widget_set_sensitive (GTK_WIDGET (manage), FALSE);
gnome_icon_list_clear (GNOME_ICON_LIST (browser));
gtk_widget_set_sensitive (GTK_WIDGET (browser), FALSE);
gtk_label_set (GTK_LABEL (status_label),
scanning_message);
while (hl) {
gdm_chooser_host_dispose ((GdmChooserHost *) hl->data);
......@@ -320,7 +335,7 @@ gdm_chooser_xdmcp_init (char **hosts)
}
static gboolean
gboolean
gdm_chooser_cancel (void)
{
closelog();
......@@ -330,16 +345,16 @@ gdm_chooser_cancel (void)
}
static gboolean
gdm_chooser_manage (void)
gboolean
gdm_chooser_manage (GtkButton *button, gpointer data)
{
if (curhost)
gdm_chooser_choose_host (curhost->name);
closelog();
gtk_main_quit();
return TRUE;
if (curhost)
gdm_chooser_choose_host (curhost->name);
closelog();
gtk_main_quit();
return TRUE;
}
......@@ -386,7 +401,7 @@ gdm_chooser_parse_config (void)
}
static gboolean
gboolean
gdm_chooser_browser_select (GtkWidget *widget, gint selected, GdkEvent *event)
{
if (!widget || !event)
......@@ -408,7 +423,7 @@ gdm_chooser_browser_select (GtkWidget *widget, gint selected, GdkEvent *event)
}
static gboolean
gboolean
gdm_chooser_browser_unselect (GtkWidget *widget, gint selected, GdkEvent *event)
{
if (!event)
......@@ -453,27 +468,48 @@ gdm_chooser_browser_update (void)
gnome_icon_list_thaw (GNOME_ICON_LIST (browser));
gtk_widget_set_sensitive (GTK_WIDGET (chooser), TRUE);
if (hosts) {
gtk_label_set (GTK_LABEL (glade_xml_get_widget (chooser_app, "status_label")),
active_network);
} else {
gtk_label_set (GTK_LABEL (glade_xml_get_widget (chooser_app, "status_label")),
empty_network);
}
gtk_widget_set_sensitive (GTK_WIDGET (manage), FALSE);
gtk_widget_show_all (GTK_WIDGET (chooser));
gtk_widget_set_sensitive (GTK_WIDGET (rescan), TRUE);
gtk_widget_set_sensitive (GTK_WIDGET (browser), TRUE);
}
void
display_chooser_information (void)
{
glade_xml_new (glade_filename, "gdmchooser_help_dialog");
}
static void
gdm_chooser_gui_init (void)
{
GdkWindow *rootwin;
GtkWidget *frame;
GtkWidget *vbox;
GtkWidget *bbox;
GtkWidget *buttonpane;
GtkWidget *scrollbar;
GtkWidget *bframe;
GtkAdjustment *adj;
GtkStyle *style;
GdkColor bbg = { 0, 0xFFFF, 0xFFFF, 0xFFFF };
struct stat statbuf;
/* Look for the glade file in $(datadir)/gdmconfig or, failing that,
* look in the current directory.
* Except when doing development, we want the app to use the glade file
* in the same directory, so we can actually make changes easily.
*/
#ifndef DOING_DEVELOPMENT
glade_filename = gnome_datadir_file("gdm/gdmchooser.glade");
if (!glade_filename)
{
glade_filename = g_strdup("gdmchooser.glade");
}
#else
glade_filename = g_strdup("gdmchooser.glade");
#endif /* DOING_DEVELOPMENT */
/* Enable theme */
if (GdmGtkRC)
gtk_rc_parse (GdmGtkRC);
......@@ -490,22 +526,22 @@ gdm_chooser_gui_init (void)
rootwin = gdk_window_foreign_new (GDK_ROOT_WINDOW ());
/* Main window */
chooser = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_container_border_width (GTK_CONTAINER (chooser), 0);
/* 3D frame for main window */
frame = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_OUT);
gtk_container_border_width (GTK_CONTAINER (frame), 0);
gtk_container_add (GTK_CONTAINER (chooser), frame);
/* Vertical box containing browser box and button pane */
vbox = gtk_vbox_new (FALSE, 10);
gtk_container_border_width (GTK_CONTAINER (vbox), 10);
gtk_container_add (GTK_CONTAINER (frame), vbox);
g_assert (glade_filename != NULL);
chooser_app = glade_xml_new (glade_filename, "gdmchooser_main");
glade_xml_signal_autoconnect (chooser_app);
chooser = glade_xml_get_widget (chooser_app, "gdmchooser_main");
manage = glade_xml_get_widget (chooser_app, "connect_button");
rescan = glade_xml_get_widget (chooser_app, "rescan_button");
cancel = glade_xml_get_widget (chooser_app, "quit_button");
status_label = glade_xml_get_widget (chooser_app, "status_label");
/* Find background style for browser */
style = gtk_style_copy (chooser->style);
/* FIXME: Forcing the background to be white seems a bit off seeing as
* the user might like having a dark theme.
*/
style->bg[GTK_STATE_NORMAL] = bbg;
gtk_widget_push_style (style);
......@@ -513,90 +549,21 @@ gdm_chooser_gui_init (void)
if (maxwidth < GdmIconMaxWidth/2)
maxwidth = (gint) GdmIconMaxWidth/2;
browser = GNOME_ICON_LIST (gnome_icon_list_new (maxwidth+20, NULL, FALSE));
browser = (GnomeIconList *) glade_xml_get_widget (chooser_app,
"chooser_iconlist");
gnome_icon_list_freeze (GNOME_ICON_LIST (browser));
gnome_icon_list_set_separators (GNOME_ICON_LIST (browser), " /-_.");
gnome_icon_list_set_row_spacing (GNOME_ICON_LIST (browser), 2);
gnome_icon_list_set_col_spacing (GNOME_ICON_LIST (browser), 2);
gnome_icon_list_set_icon_width (GNOME_ICON_LIST (browser), maxwidth+20);
gnome_icon_list_set_icon_border (GNOME_ICON_LIST (browser), 2);
gnome_icon_list_set_text_spacing (GNOME_ICON_LIST (browser), 2);
gnome_icon_list_set_selection_mode (GNOME_ICON_LIST (browser), GTK_SELECTION_SINGLE);
gtk_signal_connect (GTK_OBJECT (browser), "select_icon",
GTK_SIGNAL_FUNC (gdm_chooser_browser_select), NULL);
gtk_signal_connect (GTK_OBJECT (browser), "unselect_icon",
GTK_SIGNAL_FUNC (gdm_chooser_browser_unselect), NULL);
gtk_widget_pop_style();
/* Browser 3D frame */
bframe = gtk_frame_new (NULL);
gtk_frame_set_shadow_type (GTK_FRAME (bframe), GTK_SHADOW_IN);
gtk_container_add (GTK_CONTAINER(bframe), GTK_WIDGET (browser));
/* Browser scroll bar */
adj = GTK_ADJUSTMENT (gtk_adjustment_new (0.0, 0.0, 0.0, 0.0, 0.0, 0.0));
scrollbar = gtk_vscrollbar_new (adj);
gnome_icon_list_set_vadjustment (browser, adj);
/* Box containing all browser functionality */
bbox = gtk_hbox_new (0, 0);
gtk_box_pack_start (GTK_BOX (bbox), GTK_WIDGET (bframe), 1, 1, 0);
gtk_box_pack_start (GTK_BOX (bbox), scrollbar, 0, 0, 0);
gtk_widget_show_all (GTK_WIDGET (bbox));
/* Put browser box in main window */
gtk_box_pack_start (GTK_BOX (vbox), GTK_WIDGET (bbox), TRUE, TRUE, 0);
/* Buttons */
manage = gtk_button_new_with_label (_("Connect"));
gtk_signal_connect (GTK_OBJECT (manage), "clicked",
GTK_SIGNAL_FUNC (gdm_chooser_manage), NULL);
GTK_WIDGET_SET_FLAGS (GTK_WIDGET (manage), GTK_CAN_DEFAULT);
gtk_widget_set_sensitive (GTK_WIDGET (manage), FALSE);
gtk_widget_show (GTK_WIDGET (manage));
rescan = gtk_button_new_with_label (_("Rescan"));
gtk_signal_connect(GTK_OBJECT (rescan), "clicked",
GTK_SIGNAL_FUNC (gdm_chooser_xdmcp_discover), NULL);
GTK_WIDGET_SET_FLAGS (GTK_WIDGET (rescan), GTK_CAN_DEFAULT);
gtk_widget_show (GTK_WIDGET (rescan));
cancel = gtk_button_new_with_label (_("Cancel"));
gtk_signal_connect(GTK_OBJECT (cancel), "clicked",
GTK_SIGNAL_FUNC (gdm_chooser_cancel), NULL);
GTK_WIDGET_SET_FLAGS(GTK_WIDGET (cancel), GTK_CAN_DEFAULT);
gtk_widget_show (GTK_WIDGET (cancel));
/* Button pane */
buttonpane = gtk_hbox_new(TRUE, 0);
gtk_container_set_border_width ( GTK_CONTAINER (buttonpane), 0);
gtk_box_pack_start (GTK_BOX (buttonpane),
GTK_WIDGET (manage), TRUE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (buttonpane),
GTK_WIDGET (rescan), TRUE, TRUE, 0);
gtk_box_pack_start (GTK_BOX (buttonpane),
GTK_WIDGET (cancel), TRUE, TRUE, 0);
gtk_window_set_default (GTK_WINDOW (chooser), GTK_WIDGET (manage));
gtk_widget_show_all (GTK_WIDGET (buttonpane));
/* Put button pane in main window */
gtk_box_pack_end (GTK_BOX (vbox),
GTK_WIDGET (buttonpane), FALSE, FALSE, 0);
gtk_widget_show (GTK_WIDGET (vbox));
gtk_widget_show (GTK_WIDGET (frame));
gtk_window_set_policy (GTK_WINDOW (chooser), 1, 1, 1);
gtk_window_set_focus (GTK_WINDOW (chooser), GTK_WIDGET (manage));
/* Geometry fun */
gtk_widget_show_all (GTK_WIDGET (browser));
gnome_icon_list_thaw (GNOME_ICON_LIST (browser));
gtk_widget_set_usize (GTK_WIDGET (chooser),
(gint) gdk_screen_width() * 0.4,
(gint) gdk_screen_height() * 0.6);
/* FIXME: This should probably obey some user-specified geometry? */
gtk_window_position (GTK_WINDOW (chooser), GTK_WIN_POS_CENTER);
gtk_widget_show_all (GTK_WIDGET (chooser));
}
......@@ -839,6 +806,7 @@ main (int argc, char *argv[])
fixedargv[fixedargc-1] = "--disable-sound";
gnome_init_with_popt_table ("gdmchooser", VERSION, fixedargc, fixedargv, xdm_options, 0, &ctx);
glade_gnome_init();
g_free (fixedargv);
bindtextdomain (PACKAGE, GNOMELOCALEDIR);
......
<?xml version="1.0"?>
<GTK-Interface>
<project>
<name>gdmchooser</name>
<program_name>gdmchooser</program_name>
<directory></directory>
<source_directory>src</source_directory>
<pixmaps_directory>pixmaps</pixmaps_directory>
<language>C</language>
<gnome_support>True</gnome_support>
<gettext_support>True</gettext_support>
<output_main_file>False</output_main_file>
<output_support_files>False</output_support_files>
<output_build_files>False</output_build_files>
<output_translatable_strings>True</output_translatable_strings>
<translatable_strings_file>gdmchooser-strings.c</translatable_strings_file>
</project>
<widget>
<class>GnomeApp</class>
<name>gdmchooser_main</name>
<signal>
<name>delete_event</name>
<handler>gdm_chooser_cancel</handler>
<last_modification_time>Mon, 05 Mar 2001 11:52:54 GMT</last_modification_time>
</signal>
<title>GDM Host Chooser</title>
<type>GTK_WINDOW_TOPLEVEL</type>
<position>GTK_WIN_POS_NONE</position>
<modal>False</modal>
<allow_shrink>False</allow_shrink>
<allow_grow>True</allow_grow>
<auto_shrink>False</auto_shrink>
<wmclass_name>gdmchooser</wmclass_name>
<wmclass_class>gdm</wmclass_class>
<enable_layout_config>True</enable_layout_config>
<widget>
<class>GnomeDock</class>
<child_name>GnomeApp:dock</child_name>
<name>dock1</name>
<allow_floating>True</allow_floating>
<child>
<padding>0</padding>
<expand>True</expand>
<fill>True</fill>
</child>
<widget>
<class>GnomeDockItem</class>
<name>dockitem2</name>
<border_width>1</border_width>
<placement>GNOME_DOCK_TOP</placement>
<band>0</band>
<position>0</position>
<offset>1</offset>
<locked>False</locked>
<exclusive>True</exclusive>
<never_floating>False</never_floating>
<never_vertical>False</never_vertical>
<never_horizontal>False</never_horizontal>
<shadow_type>GTK_SHADOW_OUT</shadow_type>
<widget>
<class>GtkToolbar</class>
<name>toolbar1</name>
<border_width>1</border_width>
<orientation>GTK_ORIENTATION_HORIZONTAL</orientation>
<type>GTK_TOOLBAR_BOTH</type>
<space_size>16</space_size>
<space_style>GTK_TOOLBAR_SPACE_LINE</space_style>
<relief>GTK_RELIEF_NONE</relief>
<tooltips>True</tooltips>
<widget>
<class>GtkButton</class>
<child_name>Toolbar:button</child_name>
<name>connect_button</name>
<sensitive>False</sensitive>
<tooltip>Open a session to the selected host</tooltip>
<can_focus>True</can_focus>
<has_focus>True</has_focus>
<signal>
<name>clicked</name>
<handler>gdm_chooser_manage</handler>
<last_modification_time>Sun, 04 Mar 2001 22:47:24 GMT</last_modification_time>
</signal>
<label>Connect</label>
<stock_pixmap>GNOME_STOCK_PIXMAP_JUMP_TO</stock_pixmap>
</widget>
<widget>
<class>GtkButton</class>
<child_name>Toolbar:button</child_name>
<name>rescan_button</name>
<tooltip>Probe the network</tooltip>
<can_focus>True</can_focus>
<signal>
<name>clicked</name>
<handler>gdm_chooser_xdmcp_discover</handler>
<last_modification_time>Sun, 04 Mar 2001 22:48:05 GMT</last_modification_time>
</signal>
<label>Rescan</label>
<stock_pixmap>GNOME_STOCK_PIXMAP_REFRESH</stock_pixmap>
</widget>
<widget>
<class>GtkButton</class>
<child_name>Toolbar:button</child_name>
<name>help_button</name>
<tooltip>How to use this application</tooltip>
<can_focus>True</can_focus>
<signal>
<name>clicked</name>
<handler>display_chooser_information</handler>
<last_modification_time>Sun, 04 Mar 2001 22:48:48 GMT</last_modification_time>
</signal>
<label>Help</label>
<stock_pixmap>GNOME_STOCK_PIXMAP_BOOK_OPEN</stock_pixmap>
<child>
<new_group>True</new_group>
</child>
</widget>
<widget>
<class>GtkButton</class>
<child_name>Toolbar:button</child_name>
<name>quit_button</name>
<tooltip>Exit the application</tooltip>
<can_focus>True</can_focus>
<signal>
<name>clicked</name>
<handler>gdm_chooser_cancel</handler>
<last_modification_time>Sun, 04 Mar 2001 22:48:32 GMT</last_modification_time>
</signal>
<label>Quit</label>
<stock_pixmap>GNOME_STOCK_PIXMAP_EXIT</stock_pixmap>
<child>
<new_group>True</new_group>
</child>
</widget>
</widget>
</widget>
<widget>
<class>GtkVBox</class>
<child_name>GnomeDock:contents</child_name>
<name>vbox1</name>
<homogeneous>False</homogeneous>
<spacing>0</spacing>
<widget>
<class>GtkLabel</class>
<name>status_label</name>
<label> </label>
<justify>GTK_JUSTIFY_CENTER</justify>
<wrap>False</wrap>
<xalign>0.5</xalign>
<yalign>0.5</yalign>
<xpad>0</xpad>
<ypad>0</ypad>
<child>
<padding>2</padding>
<expand>False</expand>
<fill>False</fill>
</child>
</widget>
<widget>
<class>GtkFrame</class>
<child_name>GnomeDock:contents</child_name>
<name>frame1</name>
<border_width>6</border_width>
<label>Most recently queried hosts</label>
<label_xalign>0</label_xalign>
<shadow_type>GTK_SHADOW_ETCHED_IN</shadow_type>
<child>
<padding>0</padding>
<expand>True</expand>
<fill>True</fill>
</child>
<widget>
<class>GtkScrolledWindow</class>
<name>scrolledwindow1</name>
<border_width>3</border_width>
<hscrollbar_policy>GTK_POLICY_AUTOMATIC</hscrollbar_policy>
<vscrollbar_policy>GTK_POLICY_AUTOMATIC</vscrollbar_policy>
<hupdate_policy>GTK_UPDATE_CONTINUOUS</hupdate_policy>
<vupdate_policy>GTK_UPDATE_CONTINUOUS</vupdate_policy>
<widget>
<class>GnomeIconList</class>
<name>chooser_iconlist</name>
<can_focus>True</can_focus>
<signal>
<name>select_icon</name>
<handler>gdm_chooser_browser_select</handler>
<last_modification_time>Sun, 04 Mar 2001 22:46:22 GMT</last_modification_time>
</signal>
<signal>
<name>unselect_icon</name>
<handler>gdm_chooser_browser_unselect</handler>
<last_modification_time>Sun, 04 Mar 2001 22:46:45 GMT</last_modification_time>
</signal>
<selection_mode>GTK_SELECTION_SINGLE</selection_mode>
<icon_width>78</icon_width>
<row_spacing>2</row_spacing>
<column_spacing>2</column_spacing>
<text_spacing>2</text_spacing>
<text_editable>False</text_editable>
<text_static>False</text_static>
</widget>
</widget>
</widget>
</widget>
</widget>
</widget>
<widget>
<class>GnomeMessageBox</class>
<name>gdmchooser_help_dialog</name>
<message_box_type>GNOME_MESSAGE_BOX_INFO</message_box_type>
<message>The main area of this application shows the hosts on the local
network that have &quot;XDMCP&quot; enabled. This allows users to login
remotely to other machines as if they were logged on using the
console.
You can rescan the network for new hosts by clicking 'rescan'.
When you have selected a host click &quot;Connect&quot; to open a session
to that machine.</message>
<title>Information</title>
<position>GTK_WIN_POS_NONE</position>
<modal>False</modal>
<allow_shrink>False</allow_shrink>
<allow_grow>False</allow_grow>
<auto_shrink>False</auto_shrink>
<wmclass_class>gdm</wmclass_class>
<auto_close>True</auto_close>
<hide_on_close>False</hide_on_close>
<widget>
<class>GtkVBox</class>
<child_name>GnomeDialog:vbox</child_name>
<name>dialog-vbox2</name>
<homogeneous>False</homogeneous>
<spacing>8</spacing>
<child>
<padding>4</padding>
<expand>True</expand>
<fill>True</fill>
</child>
<widget>
<class>GtkHButtonBox</class>
<child_name>GnomeDialog:action_area</child_name>
<name>dialog-action_area2</name>
<layout_style>GTK_BUTTONBOX_END</layout_style>
<spacing>8</spacing>
<child_min_width>85</child_min_width>
<child_min_height>27</child_min_height>
<child_ipad_x>7</child_ipad_x>
<child_ipad_y>0</child_ipad_y>
<child>
<padding>0</padding>
<expand>False</expand>
<fill>True</fill>
<pack>GTK_PACK_END</pack>
</child>
<widget>
<class>GtkButton</class>
<name>button8</name>
<can_default>True</can_default>
<can_focus>True</can_focus>
<stock_button>GNOME_STOCK_BUTTON_CLOSE</stock_button>
</widget>
</widget>
</widget>
</widget>
</GTK-Interface>
......@@ -35,6 +35,17 @@ struct _GdmChooserHost {
GdkImlibImage *picture;
};
gboolean gdm_chooser_cancel (void);
gboolean gdm_chooser_manage (GtkButton *button, gpointer data);
gboolean
gdm_chooser_browser_select (GtkWidget *widget, gint selected, GdkEvent *event);
gboolean
gdm_chooser_browser_unselect (GtkWidget *widget, gint selected, GdkEvent *event);
gboolean
gdm_chooser_xdmcp_discover (void);
void
display_chooser_information (void);
#endif /* __GDM_CHOOSER_H__ */
/* EOF */
......@@ -106,14 +106,14 @@ main (int argc, char *argv[])
}
#endif /* DOING_DEVELOPMENT */
/* Look for the glade file in $(datadir)/gdmconfig or, failing that,
/* Look for the glade file in $(datadir)/gdm or, failing that,
* look in the current directory.
* Except when doing development, we want the app to use the glade file
* in the same directory, so we can actually make changes easily.
*/
#ifndef DOING_DEVELOPMENT
glade_filename = gnome_datadir_file("gdmconfig/gdmconfig.glade");
glade_filename = gnome_datadir_file("gdm/gdmconfig.glade");
if (!glade_filename)
{
glade_filename = g_strdup("gdmconfig.glade");
......
......@@ -236,7 +236,7 @@
<allow_grow>True</allow_grow>
<auto_shrink>False</auto_shrink>
<wmclass_name>gdmconfig</wmclass_name>
<wmclass_class>Configuration</wmclass_class>
<wmclass_class>gdm</wmclass_class>
<enable_layout_config>False</enable_layout_config>
<widget>
......@@ -4548,6 +4548,8 @@ This is %n
<class>GnomeAbout</class>
<name>about_gdmconfig</name>
<modal>False</modal>
<wmclass_name>About the GDM Configurator</wmclass_name>
<wmclass_class>gdm</wmclass_class>
<copyright>(C) 2001 Lee Mallabone</copyright>
<authors>Lee Mallabone &lt;lee@fonicmonkey.net&gt;
</authors>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment