annotate netinstall/main.cc @ 589:37fe04af1590

[xemacs-hg @ 2001-05-31 02:00:29 by wmperry] Regenerated some .c files from their lisp equivalents for GTK bindings. Fix buttons as modifiers code so that text selection works in GTK event loop.
author wmperry
date Thu, 31 May 2001 02:00:31 +0000
parents 3078fd1074e8
children ce0b3f2eff35
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
448
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
1 /*
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
2 * Copyright (c) 2000, Red Hat, Inc.
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
3 *
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
4 * This program is free software; you can redistribute it and/or modify
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
5 * it under the terms of the GNU General Public License as published by
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
6 * the Free Software Foundation; either version 2 of the License, or
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
7 * (at your option) any later version.
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
8 *
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
9 * A copy of the GNU General Public License can be found at
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
10 * http://www.gnu.org/
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
11 *
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
12 * Written by DJ Delorie <dj@cygnus.com>
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
13 *
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
14 */
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
15
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
16 /* OK, here's how this works. Each of the steps needed for install -
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
17 dialogs, downloads, installs - are in their own files and have some
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
18 "do_*" function (prototype in dialog.h) and a resource id (IDD_* or
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
19 IDD_S_* in resource.h) for that step. Each step is responsible for
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
20 selecting the next step! See the NEXT macro in dialog.h. Note
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
21 that the IDD_S_* ids are fake; those are for steps that don't
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
22 really have a controlling dialog (some have progress dialogs, but
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
23 those don't count, although they could). Replace the IDD_S_* with
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
24 IDD_* if you create a real dialog for those steps. */
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
25
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
26 #include "win32.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
27
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
28 #include <stdio.h>
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
29 #include <stdlib.h>
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
30 #include "resource.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
31 #include "dialog.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
32 #include "state.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
33 #include "msg.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
34 #include "netio.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
35 #include "find.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
36 #include "log.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
37
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
38 #include "port.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
39
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
40 void netio_test (char *);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
41
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
42 int next_dialog;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
43 int exit_msg = 0;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
44
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
45 HINSTANCE hinstance;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
46
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
47 int WINAPI
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
48 WinMain (HINSTANCE h,
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
49 HINSTANCE hPrevInstance,
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
50 LPSTR command_line,
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
51 int cmd_show)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
52 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
53 hinstance = h;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
54
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
55 next_dialog = IDD_SPLASH;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
56
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
57 log (LOG_TIMESTAMP, "Starting XEmacs install");
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
58
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
59 char cwd[_MAX_PATH];
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
60 GetCurrentDirectory (sizeof (cwd), cwd);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
61 local_dir = strdup (cwd);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
62 log (0, "Current Directory: %s", cwd);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
63
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
64 while (next_dialog)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
65 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
66 switch (next_dialog)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
67 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
68 case IDD_SPLASH: do_splash (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
69 case IDD_SOURCE: do_source (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
70 case IDD_LOCAL_DIR: do_local_dir (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
71 case IDD_ROOT: do_root (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
72 case IDD_NET: do_net (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
73 case IDD_SITE: do_site (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
74 case IDD_OTHER_URL: do_other (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
75 case IDD_S_LOAD_INI: do_ini (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
76 case IDD_S_FROM_CWD: do_fromcwd (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
77 case IDD_CHOOSE: do_choose (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
78 case IDD_S_DOWNLOAD: do_download (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
79 case IDD_S_INSTALL: do_install (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
80 case IDD_DESKTOP: do_desktop (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
81 case IDD_S_POSTINSTALL: do_postinstall (h); break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
82
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
83 default:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
84 next_dialog = 0;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
85 break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
86 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
87 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
88
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
89 exit_setup (0);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
90
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
91 return EXIT_SUCCESS;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
92 }