2 * Copyright (c) 2000, Red Hat, Inc.
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.
9 * A copy of the GNU General Public License can be found at
12 * Written by DJ Delorie <dj@cygnus.com>
16 #ifndef SETUP_DIALOG_H
17 #define SETUP_DIALOG_H
23 /* global instance for the application; set in main.cc */
24 extern HINSTANCE hinstance
;
26 /* used by main.cc to select the next do_* function */
27 extern int next_dialog
;
29 /* either "nothing to do" or "setup complete" or something like that */
32 #define D(x) void x(HINSTANCE _h, HWND owner)
34 /* prototypes for all the do_* functions (most called by main.cc) */
37 bool do_from_local_dir (HINSTANCE _h
, HWND owner
, std::string
&local_dir
);
45 /* Get the value of an EditText control. Pass the previously stored
46 value and it will free the memory if needed. */
48 char *eget (HWND h
, int id
, char *var
);
50 /* Get the value of an EditText control. */
52 std::string
egetString (HWND h
, int id
);
54 /* Same, but convert the value to an integer */
56 int eget (HWND h
, int id
);
58 /* Set the EditText control to the given value */
60 void eset (HWND h
, int id
, const char *var
);
61 void eset (HWND h
, int id
, const std::string
);
62 void eset (HWND h
, int id
, int var
);
64 /* RadioButtons. ids is a null-terminated list of IDs. Get
65 returns the selected ID (or zero), pass an ID to set */
67 int rbget (HWND h
, int *ids
);
68 void rbset (HWND h
, int *ids
, int id
);
70 /* *This* version of fatal (compare with msg.h) uses GetLastError() to
71 format a suitable error message. Similar to perror() */
73 void fatal (const char *msg
, DWORD err
= ERROR_SUCCESS
) __attribute__ ((noreturn
));
75 #endif /* SETUP_DIALOG_H */