annotate netinstall/net.cc @ 510:5bdbc721d46a

[xemacs-hg @ 2001-05-06 08:33:35 by ben] implement printing the selection when it's selected. force redisplay when set-charset-ccl-program called. if bytecomp or byte-optimize need recompiling, then load the .el version of them first, recompile them, and reload the .elc versions to recompile everything else (so we won't be waiting until the cows come home).
author ben
date Sun, 06 May 2001 08:33:41 +0000
parents 3078fd1074e8
children 685b588e92d8
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 /* The purpose of this file is to get the network configuration
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
17 information from the user. */
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
18
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
19 #include "win32.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
20 #include <stdio.h>
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
21 #include <stdlib.h>
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
22 #include "dialog.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
23 #include "resource.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
24 #include "state.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
25 #include "msg.h"
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
26 #include "log.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 static int rb[] = { IDC_NET_IE5, IDC_NET_DIRECT, IDC_NET_PROXY, 0 };
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
29
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
30 static void
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
31 check_if_enable_next (HWND h)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
32 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
33 int e = 0, p = 0, pu = 0;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
34 if (net_method == IDC_NET_IE5)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
35 pu = 1;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
36 if (net_method == IDC_NET_IE5 || net_method == IDC_NET_DIRECT)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
37 e = 1;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
38 else if (net_method == IDC_NET_PROXY)
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 p = pu = 1;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
41 if (net_proxy_host && net_proxy_port)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
42 e = 1;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
43 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
44 EnableWindow (GetDlgItem (h, IDOK), e);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
45 EnableWindow (GetDlgItem (h, IDC_PROXY_HOST), p);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
46 EnableWindow (GetDlgItem (h, IDC_PROXY_PORT), p);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
47 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
48
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
49 static void
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
50 load_dialog (HWND h)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
51 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
52 rbset (h, rb, net_method);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
53 eset (h, IDC_PROXY_HOST, net_proxy_host);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
54 if (net_proxy_port == 0)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
55 net_proxy_port = 80;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
56 eset (h, IDC_PROXY_PORT, net_proxy_port);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
57 check_if_enable_next (h);
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
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
60 static void
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
61 save_dialog (HWND h)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
62 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
63 net_method = rbget (h, rb);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
64 net_proxy_host = eget (h, IDC_PROXY_HOST, net_proxy_host);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
65 net_proxy_port = eget (h, IDC_PROXY_PORT);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
66 }
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 static BOOL
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
69 dialog_cmd (HWND h, int id, HWND hwndctl, UINT code)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
70 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
71 switch (id)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
72 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
73
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
74 case IDC_NET_IE5:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
75 case IDC_NET_DIRECT:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
76 case IDC_NET_PROXY:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
77 case IDC_PROXY_HOST:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
78 case IDC_PROXY_PORT:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
79 save_dialog (h);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
80 check_if_enable_next (h);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
81 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 case IDOK:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
84 save_dialog (h);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
85 switch (source)
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 case IDC_SOURCE_NETINST:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
88 case IDC_SOURCE_DOWNLOAD:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
89 NEXT (IDD_SITE);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
90 break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
91 case IDC_SOURCE_CWD:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
92 NEXT (0);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
93 break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
94 default:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
95 msg ("source is default? %d\n", source);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
96 NEXT (0);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
97 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
98 break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
99
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
100 case IDC_BACK:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
101 save_dialog (h);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
102 switch (source)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
103 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
104 case IDC_SOURCE_DOWNLOAD:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
105 NEXT (IDD_LOCAL_DIR);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
106 break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
107 case IDC_SOURCE_NETINST:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
108 case IDC_SOURCE_CWD:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
109 NEXT (IDD_ROOT);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
110 break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
111 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
112 break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
113
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
114 case IDCANCEL:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
115 NEXT (0);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
116 break;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
117 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
118 return FALSE;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
119 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
120
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
121 static BOOL CALLBACK
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
122 dialog_proc (HWND h, UINT message, WPARAM wParam, LPARAM lParam)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
123 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
124 switch (message)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
125 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
126 case WM_INITDIALOG:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
127 load_dialog (h);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
128 return FALSE;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
129 case WM_COMMAND:
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
130 return HANDLE_WM_COMMAND (h, wParam, lParam, dialog_cmd);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
131 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
132 return FALSE;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
133 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
134
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
135 void
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
136 do_net (HINSTANCE h)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
137 {
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
138 int rv = 0;
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
139
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
140 rv = DialogBox (h, MAKEINTRESOURCE (IDD_NET), 0, dialog_proc);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
141 if (rv == -1)
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
142 fatal (IDS_DIALOG_FAILED);
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
143
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
144 log (0, "net: %s",
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
145 (net_method == IDC_NET_IE5) ? "IE5" :
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
146 (net_method == IDC_NET_DIRECT) ? "Direct" : "Proxy");
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
147 }
3078fd1074e8 Import from CVS: tag r21-2-39
cvs
parents:
diff changeset
148