]> cygwin.com Git - cygwin-apps/setup.git/blob - main.cc
* (all): add cvsid tags
[cygwin-apps/setup.git] / main.cc
1 /*
2 * Copyright (c) 2000, Red Hat, Inc.
3 *
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * A copy of the GNU General Public License can be found at
10 * http://www.gnu.org/
11 *
12 * Written by DJ Delorie <dj@cygnus.com>
13 *
14 */
15
16 /* OK, here's how this works. Each of the steps needed for install -
17 dialogs, downloads, installs - are in their own files and have some
18 "do_*" function (prototype in dialog.h) and a resource id (IDD_* or
19 IDD_S_* in resource.h) for that step. Each step is responsible for
20 selecting the next step! See the NEXT macro in dialog.h. Note
21 that the IDD_S_* ids are fake; those are for steps that don't
22 really have a controlling dialog (some have progress dialogs, but
23 those don't count, although they could). Replace the IDD_S_* with
24 IDD_* if you create a real dialog for those steps. */
25
26 static char *cvsid = "\n%%% $Id$\n";
27
28 #include "win32.h"
29
30 #include <stdio.h>
31 #include "resource.h"
32 #include "dialog.h"
33 #include "state.h"
34 #include "msg.h"
35 #include "netio.h"
36 #include "find.h"
37 #include "mount.h"
38
39 void netio_test (char *);
40
41 int next_dialog;
42 int exit_msg = 0;
43
44 HINSTANCE hinstance;
45
46 int WINAPI
47 WinMain (HINSTANCE h,
48 HINSTANCE hPrevInstance,
49 LPSTR command_line,
50 int cmd_show)
51 {
52 hinstance = h;
53
54 next_dialog = IDD_SPLASH;
55
56 while (next_dialog)
57 {
58 switch (next_dialog)
59 {
60 case IDD_SPLASH: do_splash (h); break;
61 case IDD_SOURCE: do_source (h); break;
62 case IDD_ROOT: do_root (h); break;
63 case IDD_NET: do_net (h); break;
64 case IDD_SITE: do_site (h); break;
65 case IDD_OTHER_URL: do_other (h); break;
66 case IDD_S_LOAD_INI: do_ini (h); break;
67 case IDD_S_FROM_CWD: do_fromcwd (h); break;
68 case IDD_S_CHOOSE: do_choose (h); break;
69 case IDD_S_DOWNLOAD: do_download (h); break;
70 case IDD_S_INSTALL: do_install (h); break;
71 case IDD_S_DESKTOP: do_desktop (h); break;
72 case IDD_S_POSTINSTALL: do_postinstall (h); break;
73
74 default:
75 next_dialog = 0;
76 break;
77 }
78 }
79
80 if (exit_msg)
81 note (exit_msg);
82
83 return 0;
84 }
This page took 0.041934 seconds and 6 git commands to generate.