Lines 33-100
Link Here
|
33 |
#include <stdlib.h> |
33 |
#include <stdlib.h> |
34 |
|
34 |
|
35 |
#include "ATITVOExtensions.h" |
35 |
#include "ATITVOExtensions.h" |
36 |
#include "Radeon_extension_tvout.h" |
36 |
#include "TVOExt.h" |
37 |
|
37 |
|
38 |
static XExtensionInfo _atitvo_info_data; |
38 |
static XExtensionInfo _atitvo_info_data; |
39 |
static XExtensionInfo *atitvo_info = &_atitvo_info_data; |
|
|
40 |
static char *atitvo_extension_name = ATITVOUT_EXTENSION_NAME; |
41 |
|
42 |
|
39 |
|
43 |
////////////////////////////////////////////////////////////////////////////// |
40 |
////////////////////////////////////////////////////////////////////////////// |
44 |
// private functions |
41 |
// private functions |
45 |
|
42 |
|
46 |
XExtDisplayInfo *info; |
43 |
XExtDisplayInfo *info; |
47 |
|
44 |
|
48 |
// X shutdown hook function that will cleanup the opened extension |
|
|
49 |
static XEXT_GENERATE_CLOSE_DISPLAY (close_display_atitvo, |
50 |
atitvo_info) |
51 |
|
52 |
// table with X hooks |
53 |
static /* const */ XExtensionHooks atitvo_extension_hooks = { |
54 |
NULL, /* create_gc */ |
55 |
NULL, /* copy_gc */ |
56 |
NULL, /* flush_gc */ |
57 |
NULL, /* free_gc */ |
58 |
NULL, /* create_font */ |
59 |
NULL, /* free_font */ |
60 |
close_display_atitvo, /* close_display */ |
61 |
NULL, /* wire_to_event */ |
62 |
NULL, /* event_to_wire */ |
63 |
NULL, /* error */ |
64 |
NULL, /* error_string */ |
65 |
}; |
66 |
|
67 |
// find_display_atitvo - get the display info block for atitvo extension |
68 |
static XEXT_GENERATE_FIND_DISPLAY (find_display_atitvo, |
69 |
atitvo_info, |
70 |
atitvo_extension_name, |
71 |
&atitvo_extension_hooks, |
72 |
ATITVOUT_NUMBER_EVENTS, |
73 |
NULL) |
74 |
|
75 |
|
76 |
|
77 |
static int |
78 |
answerisyes(char *s) |
79 |
{ |
80 |
if (s[0] == '\'') /* For fools that type the ' literally. */ |
81 |
return tolower(s[1]) == 'y'; |
82 |
return tolower(s[0]) == 'y'; |
83 |
} |
84 |
|
85 |
|
86 |
static void |
87 |
getstring(char *s) |
88 |
{ |
89 |
char *cp; |
90 |
fgets(s, 80, stdin); |
91 |
cp = strchr(s, '\n'); |
92 |
if (cp) |
93 |
*cp=0; |
94 |
} |
95 |
|
96 |
|
97 |
|
98 |
////////////////////////////////////////////////////////////////////////////// |
45 |
////////////////////////////////////////////////////////////////////////////// |
99 |
// type defines |
46 |
// type defines |
100 |
|
47 |
|