📄 magnifier-main_8c-source.html
字号:
<a name="l00359"></a>00359 <a class="code" href="structGNOME__Magnifier__RectBounds__type.html">GNOME_Magnifier_RectBounds</a> *roi = <a class="code" href="GNOME__Magnifier_8h.html#4c6dfed82915e087efb0f2a65268ab78">GNOME_Magnifier_RectBounds__alloc</a>();<a name="l00360"></a>00360 <a class="code" href="structGNOME__Magnifier__RectBounds__type.html">GNOME_Magnifier_RectBounds</a> *viewport = <a class="code" href="GNOME__Magnifier_8h.html#4c6dfed82915e087efb0f2a65268ab78">GNOME_Magnifier_RectBounds__alloc</a>();<a name="l00361"></a>00361 CORBA_any *viewport_any;<a name="l00362"></a>00362 <span class="keywordtype">int</span> x = 0, y = 0, fullwidth, fullheight;<a name="l00363"></a>00363 guint pan_handle = 0, refresh_handle = 0;<a name="l00364"></a>00364 CORBA_Environment ev;<a name="l00365"></a>00365 <a class="code" href="GNOME__Magnifier_8h.html#7804bd3fd4edd2aae1f9daf2dfc94524">Bonobo_PropertyBag</a> properties;<a name="l00366"></a>00366 <a name="l00367"></a>00367 <a class="code" href="structMagnifier.html">Magnifier</a> *magnifier;<a name="l00368"></a>00368 <a name="l00369"></a>00369 <span class="keywordflow">if</span> (!bonobo_init (&argc, argv)) {<a name="l00370"></a>00370 g_error (<span class="stringliteral">"Could not initialize Bonobo"</span>);<a name="l00371"></a>00371 }<a name="l00372"></a>00372 CORBA_exception_init (&ev);<a name="l00373"></a>00373 <a name="l00374"></a>00374 context = g_option_context_new (<span class="stringliteral">"- a screen magnifier for Gnome"</span>);<a name="l00375"></a>00375 g_option_context_set_description (context, <span class="stringliteral">"Report bugs to http://bugzilla.gnome.org\n"</span>);<a name="l00376"></a>00376 g_option_context_add_main_entries (context, <a class="code" href="magnifier-main_8c.html#8f5bf3f77e471251d8b1a1f90973192a">magnifier_options</a>, <span class="stringliteral">"main options"</span>);<a name="l00377"></a>00377 g_option_context_set_ignore_unknown_options (context, TRUE);<a name="l00378"></a>00378 g_option_context_parse(context, &argc, &argv, NULL);<a name="l00379"></a>00379 g_option_context_free(context);<a name="l00380"></a>00380 <a name="l00381"></a>00381 <span class="keywordflow">if</span> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#e5914d18ce62aebb0f23837bef3d6e00">print_version</a>) {<a name="l00382"></a>00382 g_print (<span class="stringliteral">"%s\n"</span>, VERSION);<a name="l00383"></a>00383 <span class="keywordflow">return</span> 0;<a name="l00384"></a>00384 }<a name="l00385"></a>00385 <a name="l00391"></a>00391 <span class="keywordflow">if</span> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#d74cb3bca74c652043664686d14d0c26">target_display</a>) {<a name="l00392"></a>00392 gchar *string;<a name="l00393"></a>00393 string = g_strconcat (<span class="stringliteral">"DISPLAY="</span>, <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#d74cb3bca74c652043664686d14d0c26">target_display</a>, NULL);<a name="l00394"></a>00394 putenv (string);<a name="l00395"></a>00395 } <span class="keywordflow">else</span> {<a name="l00396"></a>00396 <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#d74cb3bca74c652043664686d14d0c26">target_display</a> = getenv (<span class="stringliteral">"DISPLAY"</span>);<a name="l00397"></a>00397 <span class="keywordflow">if</span> (!<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#d74cb3bca74c652043664686d14d0c26">target_display</a>) {<a name="l00398"></a>00398 fprintf (stderr, _(<span class="stringliteral">"Can't open display, DISPLAY is not set"</span>));<a name="l00399"></a>00399 exit (1);<a name="l00400"></a>00400 }<a name="l00401"></a>00401 } <a name="l00402"></a>00402 <a name="l00403"></a>00403 <span class="keywordflow">if</span> (!<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#5de774dde41d3b145e0dc55272905452">source_display</a>) {<a name="l00404"></a>00404 <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#5de774dde41d3b145e0dc55272905452">source_display</a> = <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#d74cb3bca74c652043664686d14d0c26">target_display</a>;<a name="l00405"></a>00405 }<a name="l00406"></a>00406 <a name="l00407"></a>00407 <span class="keywordflow">if</span> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#ff3ecd32f9e0fcd40f9c35b93fa52bf7">timing_pan_rate</a> && <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#a8079ebec7dc413e42b4cc31e5023a4b">timing_iterations</a> == 0)<a name="l00408"></a>00408 {<a name="l00409"></a>00409 g_error (<span class="stringliteral">"Must specify timing_iterations when running pan test"</span>);<a name="l00410"></a>00410 }<a name="l00411"></a>00411 <a name="l00412"></a>00412 <span class="comment">/* FIXME */</span><a name="l00413"></a>00413 gtk_init (&argc, &argv);<a name="l00414"></a>00414 <a name="l00415"></a>00415 <span class="keywordflow">if</span> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#2545762b773dc73a9f3b7079c0203c02">ignore_damage</a>)<a name="l00416"></a>00416 {<a name="l00417"></a>00417 g_setenv (<span class="stringliteral">"MAGNIFIER_IGNORE_DAMAGE"</span>, <span class="stringliteral">"1"</span>, TRUE);<a name="l00418"></a>00418 }<a name="l00419"></a>00419 <span class="preprocessor">#ifdef HAVE_COMPOSITE</span><a name="l00420"></a>00420 <span class="preprocessor"></span> <span class="keywordflow">if</span> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.ignore_composite) {<a name="l00421"></a>00421 g_setenv (<span class="stringliteral">"MAGNIFIER_IGNORE_COMPOSITE"</span>, <span class="stringliteral">"1"</span>, TRUE);<a name="l00422"></a>00422 }<a name="l00423"></a>00423 <span class="preprocessor">#endif </span><span class="comment">/* HAVE_COMPOSITE */</span><a name="l00424"></a>00424 <a name="l00425"></a>00425 magnifier = <a class="code" href="magnifier_8c.html#5c93eee868a854c2e67ab3a75c16c708">magnifier_new</a> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#a35a5c07a25b5607d41ffd7f134cafba">is_override_redirect</a>);<a name="l00426"></a>00426 <a name="l00427"></a>00427 properties = <a class="code" href="GNOME__Magnifier-stubs_8c.html#62aeeb56b52c87b55cdf6ab803040dea">GNOME_Magnifier_Magnifier_getProperties</a> (<a name="l00428"></a>00428 BONOBO_OBJREF (magnifier), &ev);<a name="l00429"></a>00429 <span class="keywordflow">if</span> (ev._major != CORBA_NO_EXCEPTION) fprintf (stderr, <span class="stringliteral">"EXCEPTION\n"</span>);<a name="l00430"></a>00430 <a name="l00431"></a>00431 <span class="keywordflow">if</span> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#5de774dde41d3b145e0dc55272905452">source_display</a>)<a name="l00432"></a>00432 bonobo_pbclient_set_string (properties, <span class="stringliteral">"source-display-screen"</span>,<a name="l00433"></a>00433 <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#5de774dde41d3b145e0dc55272905452">source_display</a>, NULL);<a name="l00434"></a>00434 <a name="l00435"></a>00435 <span class="keywordflow">if</span> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#d74cb3bca74c652043664686d14d0c26">target_display</a>)<a name="l00436"></a>00436 bonobo_pbclient_set_string (properties, <span class="stringliteral">"target-display-screen"</span>,<a name="l00437"></a>00437 <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#d74cb3bca74c652043664686d14d0c26">target_display</a>, NULL);<a name="l00438"></a>00438 <a name="l00439"></a>00439 <span class="keywordflow">if</span> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#1b71dc5ab5d975b1e810e2b14c387b75">cursor_set</a>)<a name="l00440"></a>00440 bonobo_pbclient_set_string (properties, <span class="stringliteral">"cursor-set"</span>,<a name="l00441"></a>00441 <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#1b71dc5ab5d975b1e810e2b14c387b75">cursor_set</a>, NULL);<a name="l00442"></a>00442 <a name="l00443"></a>00443 <span class="keywordflow">if</span> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#5ca304dad6c097321db4add74949bd3b">cursor_size</a>)<a name="l00444"></a>00444 bonobo_pbclient_set_long (properties, <span class="stringliteral">"cursor-size"</span>,<a name="l00445"></a>00445 <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#5ca304dad6c097321db4add74949bd3b">cursor_size</a>, NULL);<a name="l00446"></a>00446 <a name="l00447"></a>00447 <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#3822cea47cb903bbd1159ae7cf3aa82f">cursor_scale_factor</a> != 0.0F)<a name="l00448"></a>00448 bonobo_pbclient_set_float (properties, <span class="stringliteral">"cursor-scale-factor"</span>,<a name="l00449"></a>00449 <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#3822cea47cb903bbd1159ae7cf3aa82f">cursor_scale_factor</a>, NULL);<a name="l00450"></a>00450 <span class="keywordflow">else</span> <a name="l00451"></a>00451 bonobo_pbclient_set_float (properties, <span class="stringliteral">"cursor-scale-factor"</span>,<a name="l00452"></a>00452 <a class="code" href="magnifier-main_8c.html#b4d2b03157ec9554d008ee134e28172c">global_options</a>.<a class="code" href="structMagnifierOptions.html#002ef34f3ec4073b1a3cdfb9c8378105">zoom_factor</a>, NULL);<a name="l00453"></a>00453 <a name="l00454"></a>00454 <span class="keywordflow">if</span> (<a class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -