1------------------------------------------------------------------------------ 2-- -- 3-- Copyright (C) 1998-2000 E. Briot, J. Brobecker and A. Charlet -- 4-- Copyright (C) 2000-2015, AdaCore -- 5-- -- 6-- This library is free software; you can redistribute it and/or modify it -- 7-- under terms of the GNU General Public License as published by the Free -- 8-- Software Foundation; either version 3, or (at your option) any later -- 9-- version. This library is distributed in the hope that it will be useful, -- 10-- but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHAN- -- 11-- TABILITY or FITNESS FOR A PARTICULAR PURPOSE. -- 12-- -- 13-- As a special exception under Section 7 of GPL version 3, you are granted -- 14-- additional permissions described in the GCC Runtime Library Exception, -- 15-- version 3.1, as published by the Free Software Foundation. -- 16-- -- 17-- You should have received a copy of the GNU General Public License and -- 18-- a copy of the GCC Runtime Library Exception along with this program; -- 19-- see the files COPYING3 and COPYING.RUNTIME respectively. If not, see -- 20-- <http://www.gnu.org/licenses/>. -- 21-- -- 22------------------------------------------------------------------------------ 23 24pragma Style_Checks (Off); 25pragma Warnings (Off, "*is already use-visible*"); 26with Ada.Unchecked_Conversion; 27with Glib.Type_Conversion_Hooks; use Glib.Type_Conversion_Hooks; 28with Gtkada.Bindings; use Gtkada.Bindings; 29pragma Warnings(Off); -- might be unused 30with Interfaces.C.Strings; use Interfaces.C.Strings; 31pragma Warnings(On); 32 33package body Gtk.Print_Settings is 34 35 procedure C_Gtk_Print_Settings_Foreach 36 (Self : System.Address; 37 Func : System.Address; 38 User_Data : System.Address); 39 pragma Import (C, C_Gtk_Print_Settings_Foreach, "gtk_print_settings_foreach"); 40 -- Calls Func for each key-value pair of Settings. 41 -- Since: gtk+ 2.10 42 -- "func": the function to call 43 -- "user_data": user data for Func 44 45 function To_Gtk_Print_Settings_Func is new Ada.Unchecked_Conversion 46 (System.Address, Gtk_Print_Settings_Func); 47 48 function To_Address is new Ada.Unchecked_Conversion 49 (Gtk_Print_Settings_Func, System.Address); 50 51 procedure Internal_Gtk_Print_Settings_Func 52 (Key : Interfaces.C.Strings.chars_ptr; 53 Value : Interfaces.C.Strings.chars_ptr; 54 User_Data : System.Address); 55 pragma Convention (C, Internal_Gtk_Print_Settings_Func); 56 57 -------------------------------------- 58 -- Internal_Gtk_Print_Settings_Func -- 59 -------------------------------------- 60 61 procedure Internal_Gtk_Print_Settings_Func 62 (Key : Interfaces.C.Strings.chars_ptr; 63 Value : Interfaces.C.Strings.chars_ptr; 64 User_Data : System.Address) 65 is 66 Func : constant Gtk_Print_Settings_Func := To_Gtk_Print_Settings_Func (User_Data); 67 begin 68 Func (Gtkada.Bindings.Value_Allowing_Null (Key), Gtkada.Bindings.Value_Allowing_Null (Value)); 69 end Internal_Gtk_Print_Settings_Func; 70 71 package Type_Conversion_Gtk_Print_Settings is new Glib.Type_Conversion_Hooks.Hook_Registrator 72 (Get_Type'Access, Gtk_Print_Settings_Record); 73 pragma Unreferenced (Type_Conversion_Gtk_Print_Settings); 74 75 ------------- 76 -- Gtk_New -- 77 ------------- 78 79 procedure Gtk_New (Self : out Gtk_Print_Settings) is 80 begin 81 Self := new Gtk_Print_Settings_Record; 82 Gtk.Print_Settings.Initialize (Self); 83 end Gtk_New; 84 85 ----------------------- 86 -- Gtk_New_From_File -- 87 ----------------------- 88 89 procedure Gtk_New_From_File 90 (Self : out Gtk_Print_Settings; 91 File_Name : UTF8_String) 92 is 93 begin 94 Self := new Gtk_Print_Settings_Record; 95 Gtk.Print_Settings.Initialize_From_File (Self, File_Name); 96 end Gtk_New_From_File; 97 98 --------------------------- 99 -- Gtk_New_From_Key_File -- 100 --------------------------- 101 102 procedure Gtk_New_From_Key_File 103 (Self : out Gtk_Print_Settings; 104 Key_File : Glib.Key_File.G_Key_File; 105 Group_Name : UTF8_String := "") 106 is 107 begin 108 Self := new Gtk_Print_Settings_Record; 109 Gtk.Print_Settings.Initialize_From_Key_File (Self, Key_File, Group_Name); 110 end Gtk_New_From_Key_File; 111 112 ---------------------------- 113 -- Gtk_Print_Settings_New -- 114 ---------------------------- 115 116 function Gtk_Print_Settings_New return Gtk_Print_Settings is 117 Self : constant Gtk_Print_Settings := new Gtk_Print_Settings_Record; 118 begin 119 Gtk.Print_Settings.Initialize (Self); 120 return Self; 121 end Gtk_Print_Settings_New; 122 123 -------------------------------------- 124 -- Gtk_Print_Settings_New_From_File -- 125 -------------------------------------- 126 127 function Gtk_Print_Settings_New_From_File 128 (File_Name : UTF8_String) return Gtk_Print_Settings 129 is 130 Self : constant Gtk_Print_Settings := new Gtk_Print_Settings_Record; 131 begin 132 Gtk.Print_Settings.Initialize_From_File (Self, File_Name); 133 return Self; 134 end Gtk_Print_Settings_New_From_File; 135 136 ------------------------------------------ 137 -- Gtk_Print_Settings_New_From_Key_File -- 138 ------------------------------------------ 139 140 function Gtk_Print_Settings_New_From_Key_File 141 (Key_File : Glib.Key_File.G_Key_File; 142 Group_Name : UTF8_String := "") return Gtk_Print_Settings 143 is 144 Self : constant Gtk_Print_Settings := new Gtk_Print_Settings_Record; 145 begin 146 Gtk.Print_Settings.Initialize_From_Key_File (Self, Key_File, Group_Name); 147 return Self; 148 end Gtk_Print_Settings_New_From_Key_File; 149 150 ---------------- 151 -- Initialize -- 152 ---------------- 153 154 procedure Initialize 155 (Self : not null access Gtk_Print_Settings_Record'Class) 156 is 157 function Internal return System.Address; 158 pragma Import (C, Internal, "gtk_print_settings_new"); 159 begin 160 if not Self.Is_Created then 161 Set_Object (Self, Internal); 162 end if; 163 end Initialize; 164 165 -------------------------- 166 -- Initialize_From_File -- 167 -------------------------- 168 169 procedure Initialize_From_File 170 (Self : not null access Gtk_Print_Settings_Record'Class; 171 File_Name : UTF8_String) 172 is 173 function Internal 174 (File_Name : Interfaces.C.Strings.chars_ptr) return System.Address; 175 pragma Import (C, Internal, "gtk_print_settings_new_from_file"); 176 Tmp_File_Name : Interfaces.C.Strings.chars_ptr := New_String (File_Name); 177 Tmp_Return : System.Address; 178 begin 179 if not Self.Is_Created then 180 Tmp_Return := Internal (Tmp_File_Name); 181 Free (Tmp_File_Name); 182 Set_Object (Self, Tmp_Return); 183 end if; 184 end Initialize_From_File; 185 186 ------------------------------ 187 -- Initialize_From_Key_File -- 188 ------------------------------ 189 190 procedure Initialize_From_Key_File 191 (Self : not null access Gtk_Print_Settings_Record'Class; 192 Key_File : Glib.Key_File.G_Key_File; 193 Group_Name : UTF8_String := "") 194 is 195 function Internal 196 (Key_File : Glib.Key_File.G_Key_File; 197 Group_Name : Interfaces.C.Strings.chars_ptr) return System.Address; 198 pragma Import (C, Internal, "gtk_print_settings_new_from_key_file"); 199 Tmp_Group_Name : Interfaces.C.Strings.chars_ptr; 200 Tmp_Return : System.Address; 201 begin 202 if not Self.Is_Created then 203 if Group_Name = "" then 204 Tmp_Group_Name := Interfaces.C.Strings.Null_Ptr; 205 else 206 Tmp_Group_Name := New_String (Group_Name); 207 end if; 208 Tmp_Return := Internal (Key_File, Tmp_Group_Name); 209 Free (Tmp_Group_Name); 210 Set_Object (Self, Tmp_Return); 211 end if; 212 end Initialize_From_Key_File; 213 214 ---------- 215 -- Copy -- 216 ---------- 217 218 function Copy 219 (Self : not null access Gtk_Print_Settings_Record) 220 return Gtk_Print_Settings 221 is 222 function Internal (Self : System.Address) return System.Address; 223 pragma Import (C, Internal, "gtk_print_settings_copy"); 224 Stub_Gtk_Print_Settings : Gtk_Print_Settings_Record; 225 begin 226 return Gtk.Print_Settings.Gtk_Print_Settings (Get_User_Data (Internal (Get_Object (Self)), Stub_Gtk_Print_Settings)); 227 end Copy; 228 229 ------------- 230 -- Foreach -- 231 ------------- 232 233 procedure Foreach 234 (Self : not null access Gtk_Print_Settings_Record; 235 Func : Gtk_Print_Settings_Func) 236 is 237 begin 238 if Func = null then 239 C_Gtk_Print_Settings_Foreach (Get_Object (Self), System.Null_Address, System.Null_Address); 240 else 241 C_Gtk_Print_Settings_Foreach (Get_Object (Self), Internal_Gtk_Print_Settings_Func'Address, To_Address (Func)); 242 end if; 243 end Foreach; 244 245 package body Foreach_User_Data is 246 247 package Users is new Glib.Object.User_Data_Closure 248 (User_Data_Type, Destroy); 249 250 function To_Gtk_Print_Settings_Func is new Ada.Unchecked_Conversion 251 (System.Address, Gtk_Print_Settings_Func); 252 253 function To_Address is new Ada.Unchecked_Conversion 254 (Gtk_Print_Settings_Func, System.Address); 255 256 procedure Internal_Cb 257 (Key : Interfaces.C.Strings.chars_ptr; 258 Value : Interfaces.C.Strings.chars_ptr; 259 User_Data : System.Address); 260 pragma Convention (C, Internal_Cb); 261 262 ------------- 263 -- Foreach -- 264 ------------- 265 266 procedure Foreach 267 (Self : not null access Gtk.Print_Settings.Gtk_Print_Settings_Record'Class; 268 Func : Gtk_Print_Settings_Func; 269 User_Data : User_Data_Type) 270 is 271 begin 272 if Func = null then 273 C_Gtk_Print_Settings_Foreach (Get_Object (Self), System.Null_Address, System.Null_Address); 274 else 275 C_Gtk_Print_Settings_Foreach (Get_Object (Self), Internal_Cb'Address, Users.Build (To_Address (Func), User_Data)); 276 end if; 277 end Foreach; 278 279 ----------------- 280 -- Internal_Cb -- 281 ----------------- 282 283 procedure Internal_Cb 284 (Key : Interfaces.C.Strings.chars_ptr; 285 Value : Interfaces.C.Strings.chars_ptr; 286 User_Data : System.Address) 287 is 288 D : constant Users.Internal_Data_Access := Users.Convert (User_Data); 289 begin 290 To_Gtk_Print_Settings_Func (D.Func) (Gtkada.Bindings.Value_Allowing_Null (Key), Gtkada.Bindings.Value_Allowing_Null (Value), D.Data.all); 291 end Internal_Cb; 292 293 end Foreach_User_Data; 294 295 --------- 296 -- Get -- 297 --------- 298 299 function Get 300 (Self : not null access Gtk_Print_Settings_Record; 301 Key : UTF8_String) return UTF8_String 302 is 303 function Internal 304 (Self : System.Address; 305 Key : Interfaces.C.Strings.chars_ptr) 306 return Interfaces.C.Strings.chars_ptr; 307 pragma Import (C, Internal, "gtk_print_settings_get"); 308 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 309 Tmp_Return : Interfaces.C.Strings.chars_ptr; 310 begin 311 Tmp_Return := Internal (Get_Object (Self), Tmp_Key); 312 Free (Tmp_Key); 313 return Gtkada.Bindings.Value_Allowing_Null (Tmp_Return); 314 end Get; 315 316 -------------- 317 -- Get_Bool -- 318 -------------- 319 320 function Get_Bool 321 (Self : not null access Gtk_Print_Settings_Record; 322 Key : UTF8_String) return Boolean 323 is 324 function Internal 325 (Self : System.Address; 326 Key : Interfaces.C.Strings.chars_ptr) return Glib.Gboolean; 327 pragma Import (C, Internal, "gtk_print_settings_get_bool"); 328 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 329 Tmp_Return : Glib.Gboolean; 330 begin 331 Tmp_Return := Internal (Get_Object (Self), Tmp_Key); 332 Free (Tmp_Key); 333 return Tmp_Return /= 0; 334 end Get_Bool; 335 336 ----------------- 337 -- Get_Collate -- 338 ----------------- 339 340 function Get_Collate 341 (Self : not null access Gtk_Print_Settings_Record) return Boolean 342 is 343 function Internal (Self : System.Address) return Glib.Gboolean; 344 pragma Import (C, Internal, "gtk_print_settings_get_collate"); 345 begin 346 return Internal (Get_Object (Self)) /= 0; 347 end Get_Collate; 348 349 ------------------------ 350 -- Get_Default_Source -- 351 ------------------------ 352 353 function Get_Default_Source 354 (Self : not null access Gtk_Print_Settings_Record) return UTF8_String 355 is 356 function Internal 357 (Self : System.Address) return Interfaces.C.Strings.chars_ptr; 358 pragma Import (C, Internal, "gtk_print_settings_get_default_source"); 359 begin 360 return Gtkada.Bindings.Value_Allowing_Null (Internal (Get_Object (Self))); 361 end Get_Default_Source; 362 363 ---------------- 364 -- Get_Dither -- 365 ---------------- 366 367 function Get_Dither 368 (Self : not null access Gtk_Print_Settings_Record) return UTF8_String 369 is 370 function Internal 371 (Self : System.Address) return Interfaces.C.Strings.chars_ptr; 372 pragma Import (C, Internal, "gtk_print_settings_get_dither"); 373 begin 374 return Gtkada.Bindings.Value_Allowing_Null (Internal (Get_Object (Self))); 375 end Get_Dither; 376 377 ---------------- 378 -- Get_Double -- 379 ---------------- 380 381 function Get_Double 382 (Self : not null access Gtk_Print_Settings_Record; 383 Key : UTF8_String) return Gdouble 384 is 385 function Internal 386 (Self : System.Address; 387 Key : Interfaces.C.Strings.chars_ptr) return Gdouble; 388 pragma Import (C, Internal, "gtk_print_settings_get_double"); 389 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 390 Tmp_Return : Gdouble; 391 begin 392 Tmp_Return := Internal (Get_Object (Self), Tmp_Key); 393 Free (Tmp_Key); 394 return Tmp_Return; 395 end Get_Double; 396 397 ----------------------------- 398 -- Get_Double_With_Default -- 399 ----------------------------- 400 401 function Get_Double_With_Default 402 (Self : not null access Gtk_Print_Settings_Record; 403 Key : UTF8_String; 404 Def : Gdouble) return Gdouble 405 is 406 function Internal 407 (Self : System.Address; 408 Key : Interfaces.C.Strings.chars_ptr; 409 Def : Gdouble) return Gdouble; 410 pragma Import (C, Internal, "gtk_print_settings_get_double_with_default"); 411 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 412 Tmp_Return : Gdouble; 413 begin 414 Tmp_Return := Internal (Get_Object (Self), Tmp_Key, Def); 415 Free (Tmp_Key); 416 return Tmp_Return; 417 end Get_Double_With_Default; 418 419 ---------------- 420 -- Get_Duplex -- 421 ---------------- 422 423 function Get_Duplex 424 (Self : not null access Gtk_Print_Settings_Record) 425 return Gtk.Enums.Gtk_Print_Duplex 426 is 427 function Internal 428 (Self : System.Address) return Gtk.Enums.Gtk_Print_Duplex; 429 pragma Import (C, Internal, "gtk_print_settings_get_duplex"); 430 begin 431 return Internal (Get_Object (Self)); 432 end Get_Duplex; 433 434 -------------------- 435 -- Get_Finishings -- 436 -------------------- 437 438 function Get_Finishings 439 (Self : not null access Gtk_Print_Settings_Record) return UTF8_String 440 is 441 function Internal 442 (Self : System.Address) return Interfaces.C.Strings.chars_ptr; 443 pragma Import (C, Internal, "gtk_print_settings_get_finishings"); 444 begin 445 return Gtkada.Bindings.Value_Allowing_Null (Internal (Get_Object (Self))); 446 end Get_Finishings; 447 448 ------------- 449 -- Get_Int -- 450 ------------- 451 452 function Get_Int 453 (Self : not null access Gtk_Print_Settings_Record; 454 Key : UTF8_String) return Gint 455 is 456 function Internal 457 (Self : System.Address; 458 Key : Interfaces.C.Strings.chars_ptr) return Gint; 459 pragma Import (C, Internal, "gtk_print_settings_get_int"); 460 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 461 Tmp_Return : Gint; 462 begin 463 Tmp_Return := Internal (Get_Object (Self), Tmp_Key); 464 Free (Tmp_Key); 465 return Tmp_Return; 466 end Get_Int; 467 468 -------------------------- 469 -- Get_Int_With_Default -- 470 -------------------------- 471 472 function Get_Int_With_Default 473 (Self : not null access Gtk_Print_Settings_Record; 474 Key : UTF8_String; 475 Def : Gint) return Gint 476 is 477 function Internal 478 (Self : System.Address; 479 Key : Interfaces.C.Strings.chars_ptr; 480 Def : Gint) return Gint; 481 pragma Import (C, Internal, "gtk_print_settings_get_int_with_default"); 482 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 483 Tmp_Return : Gint; 484 begin 485 Tmp_Return := Internal (Get_Object (Self), Tmp_Key, Def); 486 Free (Tmp_Key); 487 return Tmp_Return; 488 end Get_Int_With_Default; 489 490 ---------------- 491 -- Get_Length -- 492 ---------------- 493 494 function Get_Length 495 (Self : not null access Gtk_Print_Settings_Record; 496 Key : UTF8_String; 497 Unit : Gtk.Enums.Gtk_Unit) return Gdouble 498 is 499 function Internal 500 (Self : System.Address; 501 Key : Interfaces.C.Strings.chars_ptr; 502 Unit : Gtk.Enums.Gtk_Unit) return Gdouble; 503 pragma Import (C, Internal, "gtk_print_settings_get_length"); 504 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 505 Tmp_Return : Gdouble; 506 begin 507 Tmp_Return := Internal (Get_Object (Self), Tmp_Key, Unit); 508 Free (Tmp_Key); 509 return Tmp_Return; 510 end Get_Length; 511 512 -------------------- 513 -- Get_Media_Type -- 514 -------------------- 515 516 function Get_Media_Type 517 (Self : not null access Gtk_Print_Settings_Record) return UTF8_String 518 is 519 function Internal 520 (Self : System.Address) return Interfaces.C.Strings.chars_ptr; 521 pragma Import (C, Internal, "gtk_print_settings_get_media_type"); 522 begin 523 return Gtkada.Bindings.Value_Allowing_Null (Internal (Get_Object (Self))); 524 end Get_Media_Type; 525 526 ------------------ 527 -- Get_N_Copies -- 528 ------------------ 529 530 function Get_N_Copies 531 (Self : not null access Gtk_Print_Settings_Record) return Gint 532 is 533 function Internal (Self : System.Address) return Gint; 534 pragma Import (C, Internal, "gtk_print_settings_get_n_copies"); 535 begin 536 return Internal (Get_Object (Self)); 537 end Get_N_Copies; 538 539 ------------------- 540 -- Get_Number_Up -- 541 ------------------- 542 543 function Get_Number_Up 544 (Self : not null access Gtk_Print_Settings_Record) return Gint 545 is 546 function Internal (Self : System.Address) return Gint; 547 pragma Import (C, Internal, "gtk_print_settings_get_number_up"); 548 begin 549 return Internal (Get_Object (Self)); 550 end Get_Number_Up; 551 552 -------------------------- 553 -- Get_Number_Up_Layout -- 554 -------------------------- 555 556 function Get_Number_Up_Layout 557 (Self : not null access Gtk_Print_Settings_Record) 558 return Gtk.Enums.Gtk_Number_Up_Layout 559 is 560 function Internal 561 (Self : System.Address) return Gtk.Enums.Gtk_Number_Up_Layout; 562 pragma Import (C, Internal, "gtk_print_settings_get_number_up_layout"); 563 begin 564 return Internal (Get_Object (Self)); 565 end Get_Number_Up_Layout; 566 567 --------------------- 568 -- Get_Orientation -- 569 --------------------- 570 571 function Get_Orientation 572 (Self : not null access Gtk_Print_Settings_Record) 573 return Gtk.Enums.Gtk_Page_Orientation 574 is 575 function Internal 576 (Self : System.Address) return Gtk.Enums.Gtk_Page_Orientation; 577 pragma Import (C, Internal, "gtk_print_settings_get_orientation"); 578 begin 579 return Internal (Get_Object (Self)); 580 end Get_Orientation; 581 582 -------------------- 583 -- Get_Output_Bin -- 584 -------------------- 585 586 function Get_Output_Bin 587 (Self : not null access Gtk_Print_Settings_Record) return UTF8_String 588 is 589 function Internal 590 (Self : System.Address) return Interfaces.C.Strings.chars_ptr; 591 pragma Import (C, Internal, "gtk_print_settings_get_output_bin"); 592 begin 593 return Gtkada.Bindings.Value_Allowing_Null (Internal (Get_Object (Self))); 594 end Get_Output_Bin; 595 596 --------------------- 597 -- Get_Page_Ranges -- 598 --------------------- 599 600 function Get_Page_Ranges 601 (Self : not null access Gtk_Print_Settings_Record) 602 return Gtk_Page_Range_Array 603 is 604 type Internal_Page_Range_Array is 605 array (Natural) of Gtk_Page_Range_Record; 606 pragma Convention (C, Internal_Page_Range_Array); 607 608 type Internal_Page_Range_Array_Access is 609 access Internal_Page_Range_Array; 610 pragma Convention (C, Internal_Page_Range_Array_Access); 611 612 procedure Free (Item : in out Internal_Page_Range_Array_Access); 613 pragma Import (C, Free, "g_free"); 614 615 function Internal 616 (Settings : System.Address; 617 Num_Ranges : access Gint) 618 return Internal_Page_Range_Array_Access; 619 pragma Import (C, Internal, "gtk_print_settings_get_page_ranges"); 620 621 Len : aliased Gint; 622 Result : Internal_Page_Range_Array_Access; 623 begin 624 Result := Internal (Get_Object (Self), Len'Access); 625 declare 626 Ranges : constant Gtk_Page_Range_Array := 627 Gtk_Page_Range_Array (Result (0 .. Natural (Len))); 628 begin 629 Free (Result); 630 return Ranges; 631 end; 632 end Get_Page_Ranges; 633 634 ------------------ 635 -- Get_Page_Set -- 636 ------------------ 637 638 function Get_Page_Set 639 (Self : not null access Gtk_Print_Settings_Record) 640 return Gtk.Enums.Gtk_Page_Set 641 is 642 function Internal 643 (Self : System.Address) return Gtk.Enums.Gtk_Page_Set; 644 pragma Import (C, Internal, "gtk_print_settings_get_page_set"); 645 begin 646 return Internal (Get_Object (Self)); 647 end Get_Page_Set; 648 649 ---------------------- 650 -- Get_Paper_Height -- 651 ---------------------- 652 653 function Get_Paper_Height 654 (Self : not null access Gtk_Print_Settings_Record; 655 Unit : Gtk.Enums.Gtk_Unit) return Gdouble 656 is 657 function Internal 658 (Self : System.Address; 659 Unit : Gtk.Enums.Gtk_Unit) return Gdouble; 660 pragma Import (C, Internal, "gtk_print_settings_get_paper_height"); 661 begin 662 return Internal (Get_Object (Self), Unit); 663 end Get_Paper_Height; 664 665 -------------------- 666 -- Get_Paper_Size -- 667 -------------------- 668 669 function Get_Paper_Size 670 (Self : not null access Gtk_Print_Settings_Record) 671 return Gtk.Paper_Size.Gtk_Paper_Size 672 is 673 function Internal (Self : System.Address) return System.Address; 674 pragma Import (C, Internal, "gtk_print_settings_get_paper_size"); 675 begin 676 return From_Object (Internal (Get_Object (Self))); 677 end Get_Paper_Size; 678 679 --------------------- 680 -- Get_Paper_Width -- 681 --------------------- 682 683 function Get_Paper_Width 684 (Self : not null access Gtk_Print_Settings_Record; 685 Unit : Gtk.Enums.Gtk_Unit) return Gdouble 686 is 687 function Internal 688 (Self : System.Address; 689 Unit : Gtk.Enums.Gtk_Unit) return Gdouble; 690 pragma Import (C, Internal, "gtk_print_settings_get_paper_width"); 691 begin 692 return Internal (Get_Object (Self), Unit); 693 end Get_Paper_Width; 694 695 --------------------- 696 -- Get_Print_Pages -- 697 --------------------- 698 699 function Get_Print_Pages 700 (Self : not null access Gtk_Print_Settings_Record) 701 return Gtk.Enums.Gtk_Print_Pages 702 is 703 function Internal 704 (Self : System.Address) return Gtk.Enums.Gtk_Print_Pages; 705 pragma Import (C, Internal, "gtk_print_settings_get_print_pages"); 706 begin 707 return Internal (Get_Object (Self)); 708 end Get_Print_Pages; 709 710 ----------------- 711 -- Get_Printer -- 712 ----------------- 713 714 function Get_Printer 715 (Self : not null access Gtk_Print_Settings_Record) return UTF8_String 716 is 717 function Internal 718 (Self : System.Address) return Interfaces.C.Strings.chars_ptr; 719 pragma Import (C, Internal, "gtk_print_settings_get_printer"); 720 begin 721 return Gtkada.Bindings.Value_Allowing_Null (Internal (Get_Object (Self))); 722 end Get_Printer; 723 724 --------------------- 725 -- Get_Printer_Lpi -- 726 --------------------- 727 728 function Get_Printer_Lpi 729 (Self : not null access Gtk_Print_Settings_Record) return Gdouble 730 is 731 function Internal (Self : System.Address) return Gdouble; 732 pragma Import (C, Internal, "gtk_print_settings_get_printer_lpi"); 733 begin 734 return Internal (Get_Object (Self)); 735 end Get_Printer_Lpi; 736 737 ----------------- 738 -- Get_Quality -- 739 ----------------- 740 741 function Get_Quality 742 (Self : not null access Gtk_Print_Settings_Record) 743 return Gtk.Enums.Gtk_Print_Quality 744 is 745 function Internal 746 (Self : System.Address) return Gtk.Enums.Gtk_Print_Quality; 747 pragma Import (C, Internal, "gtk_print_settings_get_quality"); 748 begin 749 return Internal (Get_Object (Self)); 750 end Get_Quality; 751 752 -------------------- 753 -- Get_Resolution -- 754 -------------------- 755 756 function Get_Resolution 757 (Self : not null access Gtk_Print_Settings_Record) return Gint 758 is 759 function Internal (Self : System.Address) return Gint; 760 pragma Import (C, Internal, "gtk_print_settings_get_resolution"); 761 begin 762 return Internal (Get_Object (Self)); 763 end Get_Resolution; 764 765 ---------------------- 766 -- Get_Resolution_X -- 767 ---------------------- 768 769 function Get_Resolution_X 770 (Self : not null access Gtk_Print_Settings_Record) return Gint 771 is 772 function Internal (Self : System.Address) return Gint; 773 pragma Import (C, Internal, "gtk_print_settings_get_resolution_x"); 774 begin 775 return Internal (Get_Object (Self)); 776 end Get_Resolution_X; 777 778 ---------------------- 779 -- Get_Resolution_Y -- 780 ---------------------- 781 782 function Get_Resolution_Y 783 (Self : not null access Gtk_Print_Settings_Record) return Gint 784 is 785 function Internal (Self : System.Address) return Gint; 786 pragma Import (C, Internal, "gtk_print_settings_get_resolution_y"); 787 begin 788 return Internal (Get_Object (Self)); 789 end Get_Resolution_Y; 790 791 ----------------- 792 -- Get_Reverse -- 793 ----------------- 794 795 function Get_Reverse 796 (Self : not null access Gtk_Print_Settings_Record) return Boolean 797 is 798 function Internal (Self : System.Address) return Glib.Gboolean; 799 pragma Import (C, Internal, "gtk_print_settings_get_reverse"); 800 begin 801 return Internal (Get_Object (Self)) /= 0; 802 end Get_Reverse; 803 804 --------------- 805 -- Get_Scale -- 806 --------------- 807 808 function Get_Scale 809 (Self : not null access Gtk_Print_Settings_Record) return Gdouble 810 is 811 function Internal (Self : System.Address) return Gdouble; 812 pragma Import (C, Internal, "gtk_print_settings_get_scale"); 813 begin 814 return Internal (Get_Object (Self)); 815 end Get_Scale; 816 817 ------------------- 818 -- Get_Use_Color -- 819 ------------------- 820 821 function Get_Use_Color 822 (Self : not null access Gtk_Print_Settings_Record) return Boolean 823 is 824 function Internal (Self : System.Address) return Glib.Gboolean; 825 pragma Import (C, Internal, "gtk_print_settings_get_use_color"); 826 begin 827 return Internal (Get_Object (Self)) /= 0; 828 end Get_Use_Color; 829 830 ------------- 831 -- Has_Key -- 832 ------------- 833 834 function Has_Key 835 (Self : not null access Gtk_Print_Settings_Record; 836 Key : UTF8_String) return Boolean 837 is 838 function Internal 839 (Self : System.Address; 840 Key : Interfaces.C.Strings.chars_ptr) return Glib.Gboolean; 841 pragma Import (C, Internal, "gtk_print_settings_has_key"); 842 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 843 Tmp_Return : Glib.Gboolean; 844 begin 845 Tmp_Return := Internal (Get_Object (Self), Tmp_Key); 846 Free (Tmp_Key); 847 return Tmp_Return /= 0; 848 end Has_Key; 849 850 --------------- 851 -- Load_File -- 852 --------------- 853 854 function Load_File 855 (Self : not null access Gtk_Print_Settings_Record; 856 File_Name : UTF8_String) return Boolean 857 is 858 function Internal 859 (Self : System.Address; 860 File_Name : Interfaces.C.Strings.chars_ptr) return Glib.Gboolean; 861 pragma Import (C, Internal, "gtk_print_settings_load_file"); 862 Tmp_File_Name : Interfaces.C.Strings.chars_ptr := New_String (File_Name); 863 Tmp_Return : Glib.Gboolean; 864 begin 865 Tmp_Return := Internal (Get_Object (Self), Tmp_File_Name); 866 Free (Tmp_File_Name); 867 return Tmp_Return /= 0; 868 end Load_File; 869 870 ------------------- 871 -- Load_Key_File -- 872 ------------------- 873 874 function Load_Key_File 875 (Self : not null access Gtk_Print_Settings_Record; 876 Key_File : Glib.Key_File.G_Key_File; 877 Group_Name : UTF8_String := "") return Boolean 878 is 879 function Internal 880 (Self : System.Address; 881 Key_File : Glib.Key_File.G_Key_File; 882 Group_Name : Interfaces.C.Strings.chars_ptr) return Glib.Gboolean; 883 pragma Import (C, Internal, "gtk_print_settings_load_key_file"); 884 Tmp_Group_Name : Interfaces.C.Strings.chars_ptr; 885 Tmp_Return : Glib.Gboolean; 886 begin 887 if Group_Name = "" then 888 Tmp_Group_Name := Interfaces.C.Strings.Null_Ptr; 889 else 890 Tmp_Group_Name := New_String (Group_Name); 891 end if; 892 Tmp_Return := Internal (Get_Object (Self), Key_File, Tmp_Group_Name); 893 Free (Tmp_Group_Name); 894 return Tmp_Return /= 0; 895 end Load_Key_File; 896 897 --------- 898 -- Set -- 899 --------- 900 901 procedure Set 902 (Self : not null access Gtk_Print_Settings_Record; 903 Key : UTF8_String; 904 Value : UTF8_String := "") 905 is 906 procedure Internal 907 (Self : System.Address; 908 Key : Interfaces.C.Strings.chars_ptr; 909 Value : Interfaces.C.Strings.chars_ptr); 910 pragma Import (C, Internal, "gtk_print_settings_set"); 911 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 912 Tmp_Value : Interfaces.C.Strings.chars_ptr; 913 begin 914 if Value = "" then 915 Tmp_Value := Interfaces.C.Strings.Null_Ptr; 916 else 917 Tmp_Value := New_String (Value); 918 end if; 919 Internal (Get_Object (Self), Tmp_Key, Tmp_Value); 920 Free (Tmp_Value); 921 Free (Tmp_Key); 922 end Set; 923 924 -------------- 925 -- Set_Bool -- 926 -------------- 927 928 procedure Set_Bool 929 (Self : not null access Gtk_Print_Settings_Record; 930 Key : UTF8_String; 931 Value : Boolean) 932 is 933 procedure Internal 934 (Self : System.Address; 935 Key : Interfaces.C.Strings.chars_ptr; 936 Value : Glib.Gboolean); 937 pragma Import (C, Internal, "gtk_print_settings_set_bool"); 938 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 939 begin 940 Internal (Get_Object (Self), Tmp_Key, Boolean'Pos (Value)); 941 Free (Tmp_Key); 942 end Set_Bool; 943 944 ----------------- 945 -- Set_Collate -- 946 ----------------- 947 948 procedure Set_Collate 949 (Self : not null access Gtk_Print_Settings_Record; 950 Collate : Boolean) 951 is 952 procedure Internal (Self : System.Address; Collate : Glib.Gboolean); 953 pragma Import (C, Internal, "gtk_print_settings_set_collate"); 954 begin 955 Internal (Get_Object (Self), Boolean'Pos (Collate)); 956 end Set_Collate; 957 958 ------------------------ 959 -- Set_Default_Source -- 960 ------------------------ 961 962 procedure Set_Default_Source 963 (Self : not null access Gtk_Print_Settings_Record; 964 Default_Source : UTF8_String) 965 is 966 procedure Internal 967 (Self : System.Address; 968 Default_Source : Interfaces.C.Strings.chars_ptr); 969 pragma Import (C, Internal, "gtk_print_settings_set_default_source"); 970 Tmp_Default_Source : Interfaces.C.Strings.chars_ptr := New_String (Default_Source); 971 begin 972 Internal (Get_Object (Self), Tmp_Default_Source); 973 Free (Tmp_Default_Source); 974 end Set_Default_Source; 975 976 ---------------- 977 -- Set_Dither -- 978 ---------------- 979 980 procedure Set_Dither 981 (Self : not null access Gtk_Print_Settings_Record; 982 Dither : UTF8_String) 983 is 984 procedure Internal 985 (Self : System.Address; 986 Dither : Interfaces.C.Strings.chars_ptr); 987 pragma Import (C, Internal, "gtk_print_settings_set_dither"); 988 Tmp_Dither : Interfaces.C.Strings.chars_ptr := New_String (Dither); 989 begin 990 Internal (Get_Object (Self), Tmp_Dither); 991 Free (Tmp_Dither); 992 end Set_Dither; 993 994 ---------------- 995 -- Set_Double -- 996 ---------------- 997 998 procedure Set_Double 999 (Self : not null access Gtk_Print_Settings_Record; 1000 Key : UTF8_String; 1001 Value : Gdouble) 1002 is 1003 procedure Internal 1004 (Self : System.Address; 1005 Key : Interfaces.C.Strings.chars_ptr; 1006 Value : Gdouble); 1007 pragma Import (C, Internal, "gtk_print_settings_set_double"); 1008 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 1009 begin 1010 Internal (Get_Object (Self), Tmp_Key, Value); 1011 Free (Tmp_Key); 1012 end Set_Double; 1013 1014 ---------------- 1015 -- Set_Duplex -- 1016 ---------------- 1017 1018 procedure Set_Duplex 1019 (Self : not null access Gtk_Print_Settings_Record; 1020 Duplex : Gtk.Enums.Gtk_Print_Duplex) 1021 is 1022 procedure Internal 1023 (Self : System.Address; 1024 Duplex : Gtk.Enums.Gtk_Print_Duplex); 1025 pragma Import (C, Internal, "gtk_print_settings_set_duplex"); 1026 begin 1027 Internal (Get_Object (Self), Duplex); 1028 end Set_Duplex; 1029 1030 -------------------- 1031 -- Set_Finishings -- 1032 -------------------- 1033 1034 procedure Set_Finishings 1035 (Self : not null access Gtk_Print_Settings_Record; 1036 Finishings : UTF8_String) 1037 is 1038 procedure Internal 1039 (Self : System.Address; 1040 Finishings : Interfaces.C.Strings.chars_ptr); 1041 pragma Import (C, Internal, "gtk_print_settings_set_finishings"); 1042 Tmp_Finishings : Interfaces.C.Strings.chars_ptr := New_String (Finishings); 1043 begin 1044 Internal (Get_Object (Self), Tmp_Finishings); 1045 Free (Tmp_Finishings); 1046 end Set_Finishings; 1047 1048 ------------- 1049 -- Set_Int -- 1050 ------------- 1051 1052 procedure Set_Int 1053 (Self : not null access Gtk_Print_Settings_Record; 1054 Key : UTF8_String; 1055 Value : Gint) 1056 is 1057 procedure Internal 1058 (Self : System.Address; 1059 Key : Interfaces.C.Strings.chars_ptr; 1060 Value : Gint); 1061 pragma Import (C, Internal, "gtk_print_settings_set_int"); 1062 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 1063 begin 1064 Internal (Get_Object (Self), Tmp_Key, Value); 1065 Free (Tmp_Key); 1066 end Set_Int; 1067 1068 ---------------- 1069 -- Set_Length -- 1070 ---------------- 1071 1072 procedure Set_Length 1073 (Self : not null access Gtk_Print_Settings_Record; 1074 Key : UTF8_String; 1075 Value : Gdouble; 1076 Unit : Gtk.Enums.Gtk_Unit) 1077 is 1078 procedure Internal 1079 (Self : System.Address; 1080 Key : Interfaces.C.Strings.chars_ptr; 1081 Value : Gdouble; 1082 Unit : Gtk.Enums.Gtk_Unit); 1083 pragma Import (C, Internal, "gtk_print_settings_set_length"); 1084 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 1085 begin 1086 Internal (Get_Object (Self), Tmp_Key, Value, Unit); 1087 Free (Tmp_Key); 1088 end Set_Length; 1089 1090 -------------------- 1091 -- Set_Media_Type -- 1092 -------------------- 1093 1094 procedure Set_Media_Type 1095 (Self : not null access Gtk_Print_Settings_Record; 1096 Media_Type : UTF8_String) 1097 is 1098 procedure Internal 1099 (Self : System.Address; 1100 Media_Type : Interfaces.C.Strings.chars_ptr); 1101 pragma Import (C, Internal, "gtk_print_settings_set_media_type"); 1102 Tmp_Media_Type : Interfaces.C.Strings.chars_ptr := New_String (Media_Type); 1103 begin 1104 Internal (Get_Object (Self), Tmp_Media_Type); 1105 Free (Tmp_Media_Type); 1106 end Set_Media_Type; 1107 1108 ------------------ 1109 -- Set_N_Copies -- 1110 ------------------ 1111 1112 procedure Set_N_Copies 1113 (Self : not null access Gtk_Print_Settings_Record; 1114 Num_Copies : Gint) 1115 is 1116 procedure Internal (Self : System.Address; Num_Copies : Gint); 1117 pragma Import (C, Internal, "gtk_print_settings_set_n_copies"); 1118 begin 1119 Internal (Get_Object (Self), Num_Copies); 1120 end Set_N_Copies; 1121 1122 ------------------- 1123 -- Set_Number_Up -- 1124 ------------------- 1125 1126 procedure Set_Number_Up 1127 (Self : not null access Gtk_Print_Settings_Record; 1128 Number_Up : Gint) 1129 is 1130 procedure Internal (Self : System.Address; Number_Up : Gint); 1131 pragma Import (C, Internal, "gtk_print_settings_set_number_up"); 1132 begin 1133 Internal (Get_Object (Self), Number_Up); 1134 end Set_Number_Up; 1135 1136 -------------------------- 1137 -- Set_Number_Up_Layout -- 1138 -------------------------- 1139 1140 procedure Set_Number_Up_Layout 1141 (Self : not null access Gtk_Print_Settings_Record; 1142 Number_Up_Layout : Gtk.Enums.Gtk_Number_Up_Layout) 1143 is 1144 procedure Internal 1145 (Self : System.Address; 1146 Number_Up_Layout : Gtk.Enums.Gtk_Number_Up_Layout); 1147 pragma Import (C, Internal, "gtk_print_settings_set_number_up_layout"); 1148 begin 1149 Internal (Get_Object (Self), Number_Up_Layout); 1150 end Set_Number_Up_Layout; 1151 1152 --------------------- 1153 -- Set_Orientation -- 1154 --------------------- 1155 1156 procedure Set_Orientation 1157 (Self : not null access Gtk_Print_Settings_Record; 1158 Orientation : Gtk.Enums.Gtk_Page_Orientation) 1159 is 1160 procedure Internal 1161 (Self : System.Address; 1162 Orientation : Gtk.Enums.Gtk_Page_Orientation); 1163 pragma Import (C, Internal, "gtk_print_settings_set_orientation"); 1164 begin 1165 Internal (Get_Object (Self), Orientation); 1166 end Set_Orientation; 1167 1168 -------------------- 1169 -- Set_Output_Bin -- 1170 -------------------- 1171 1172 procedure Set_Output_Bin 1173 (Self : not null access Gtk_Print_Settings_Record; 1174 Output_Bin : UTF8_String) 1175 is 1176 procedure Internal 1177 (Self : System.Address; 1178 Output_Bin : Interfaces.C.Strings.chars_ptr); 1179 pragma Import (C, Internal, "gtk_print_settings_set_output_bin"); 1180 Tmp_Output_Bin : Interfaces.C.Strings.chars_ptr := New_String (Output_Bin); 1181 begin 1182 Internal (Get_Object (Self), Tmp_Output_Bin); 1183 Free (Tmp_Output_Bin); 1184 end Set_Output_Bin; 1185 1186 --------------------- 1187 -- Set_Page_Ranges -- 1188 --------------------- 1189 1190 procedure Set_Page_Ranges 1191 (Self : not null access Gtk_Print_Settings_Record; 1192 Page_Ranges : Gtk_Page_Range_Array) 1193 is 1194 procedure Internal 1195 (Settings : System.Address; 1196 Page_Ranges : System.Address; 1197 Num_Ranges : Gint); 1198 pragma Import (C, Internal, "gtk_print_settings_set_page_ranges"); 1199 begin 1200 Internal 1201 (Get_Object (Self), 1202 Page_Ranges (Page_Ranges'First)'Address, 1203 Page_Ranges'Length); 1204 end Set_Page_Ranges; 1205 1206 ------------------ 1207 -- Set_Page_Set -- 1208 ------------------ 1209 1210 procedure Set_Page_Set 1211 (Self : not null access Gtk_Print_Settings_Record; 1212 Page_Set : Gtk.Enums.Gtk_Page_Set) 1213 is 1214 procedure Internal 1215 (Self : System.Address; 1216 Page_Set : Gtk.Enums.Gtk_Page_Set); 1217 pragma Import (C, Internal, "gtk_print_settings_set_page_set"); 1218 begin 1219 Internal (Get_Object (Self), Page_Set); 1220 end Set_Page_Set; 1221 1222 ---------------------- 1223 -- Set_Paper_Height -- 1224 ---------------------- 1225 1226 procedure Set_Paper_Height 1227 (Self : not null access Gtk_Print_Settings_Record; 1228 Height : Gdouble; 1229 Unit : Gtk.Enums.Gtk_Unit) 1230 is 1231 procedure Internal 1232 (Self : System.Address; 1233 Height : Gdouble; 1234 Unit : Gtk.Enums.Gtk_Unit); 1235 pragma Import (C, Internal, "gtk_print_settings_set_paper_height"); 1236 begin 1237 Internal (Get_Object (Self), Height, Unit); 1238 end Set_Paper_Height; 1239 1240 -------------------- 1241 -- Set_Paper_Size -- 1242 -------------------- 1243 1244 procedure Set_Paper_Size 1245 (Self : not null access Gtk_Print_Settings_Record; 1246 Paper_Size : Gtk.Paper_Size.Gtk_Paper_Size) 1247 is 1248 procedure Internal 1249 (Self : System.Address; 1250 Paper_Size : System.Address); 1251 pragma Import (C, Internal, "gtk_print_settings_set_paper_size"); 1252 begin 1253 Internal (Get_Object (Self), Get_Object (Paper_Size)); 1254 end Set_Paper_Size; 1255 1256 --------------------- 1257 -- Set_Paper_Width -- 1258 --------------------- 1259 1260 procedure Set_Paper_Width 1261 (Self : not null access Gtk_Print_Settings_Record; 1262 Width : Gdouble; 1263 Unit : Gtk.Enums.Gtk_Unit) 1264 is 1265 procedure Internal 1266 (Self : System.Address; 1267 Width : Gdouble; 1268 Unit : Gtk.Enums.Gtk_Unit); 1269 pragma Import (C, Internal, "gtk_print_settings_set_paper_width"); 1270 begin 1271 Internal (Get_Object (Self), Width, Unit); 1272 end Set_Paper_Width; 1273 1274 --------------------- 1275 -- Set_Print_Pages -- 1276 --------------------- 1277 1278 procedure Set_Print_Pages 1279 (Self : not null access Gtk_Print_Settings_Record; 1280 Pages : Gtk.Enums.Gtk_Print_Pages) 1281 is 1282 procedure Internal 1283 (Self : System.Address; 1284 Pages : Gtk.Enums.Gtk_Print_Pages); 1285 pragma Import (C, Internal, "gtk_print_settings_set_print_pages"); 1286 begin 1287 Internal (Get_Object (Self), Pages); 1288 end Set_Print_Pages; 1289 1290 ----------------- 1291 -- Set_Printer -- 1292 ----------------- 1293 1294 procedure Set_Printer 1295 (Self : not null access Gtk_Print_Settings_Record; 1296 Printer : UTF8_String) 1297 is 1298 procedure Internal 1299 (Self : System.Address; 1300 Printer : Interfaces.C.Strings.chars_ptr); 1301 pragma Import (C, Internal, "gtk_print_settings_set_printer"); 1302 Tmp_Printer : Interfaces.C.Strings.chars_ptr := New_String (Printer); 1303 begin 1304 Internal (Get_Object (Self), Tmp_Printer); 1305 Free (Tmp_Printer); 1306 end Set_Printer; 1307 1308 --------------------- 1309 -- Set_Printer_Lpi -- 1310 --------------------- 1311 1312 procedure Set_Printer_Lpi 1313 (Self : not null access Gtk_Print_Settings_Record; 1314 Lpi : Gdouble) 1315 is 1316 procedure Internal (Self : System.Address; Lpi : Gdouble); 1317 pragma Import (C, Internal, "gtk_print_settings_set_printer_lpi"); 1318 begin 1319 Internal (Get_Object (Self), Lpi); 1320 end Set_Printer_Lpi; 1321 1322 ----------------- 1323 -- Set_Quality -- 1324 ----------------- 1325 1326 procedure Set_Quality 1327 (Self : not null access Gtk_Print_Settings_Record; 1328 Quality : Gtk.Enums.Gtk_Print_Quality) 1329 is 1330 procedure Internal 1331 (Self : System.Address; 1332 Quality : Gtk.Enums.Gtk_Print_Quality); 1333 pragma Import (C, Internal, "gtk_print_settings_set_quality"); 1334 begin 1335 Internal (Get_Object (Self), Quality); 1336 end Set_Quality; 1337 1338 -------------------- 1339 -- Set_Resolution -- 1340 -------------------- 1341 1342 procedure Set_Resolution 1343 (Self : not null access Gtk_Print_Settings_Record; 1344 Resolution : Gint) 1345 is 1346 procedure Internal (Self : System.Address; Resolution : Gint); 1347 pragma Import (C, Internal, "gtk_print_settings_set_resolution"); 1348 begin 1349 Internal (Get_Object (Self), Resolution); 1350 end Set_Resolution; 1351 1352 ----------------------- 1353 -- Set_Resolution_Xy -- 1354 ----------------------- 1355 1356 procedure Set_Resolution_Xy 1357 (Self : not null access Gtk_Print_Settings_Record; 1358 Resolution_X : Gint; 1359 Resolution_Y : Gint) 1360 is 1361 procedure Internal 1362 (Self : System.Address; 1363 Resolution_X : Gint; 1364 Resolution_Y : Gint); 1365 pragma Import (C, Internal, "gtk_print_settings_set_resolution_xy"); 1366 begin 1367 Internal (Get_Object (Self), Resolution_X, Resolution_Y); 1368 end Set_Resolution_Xy; 1369 1370 ----------------- 1371 -- Set_Reverse -- 1372 ----------------- 1373 1374 procedure Set_Reverse 1375 (Self : not null access Gtk_Print_Settings_Record; 1376 Gtk_Reverse : Boolean) 1377 is 1378 procedure Internal 1379 (Self : System.Address; 1380 Gtk_Reverse : Glib.Gboolean); 1381 pragma Import (C, Internal, "gtk_print_settings_set_reverse"); 1382 begin 1383 Internal (Get_Object (Self), Boolean'Pos (Gtk_Reverse)); 1384 end Set_Reverse; 1385 1386 --------------- 1387 -- Set_Scale -- 1388 --------------- 1389 1390 procedure Set_Scale 1391 (Self : not null access Gtk_Print_Settings_Record; 1392 Scale : Gdouble) 1393 is 1394 procedure Internal (Self : System.Address; Scale : Gdouble); 1395 pragma Import (C, Internal, "gtk_print_settings_set_scale"); 1396 begin 1397 Internal (Get_Object (Self), Scale); 1398 end Set_Scale; 1399 1400 ------------------- 1401 -- Set_Use_Color -- 1402 ------------------- 1403 1404 procedure Set_Use_Color 1405 (Self : not null access Gtk_Print_Settings_Record; 1406 Use_Color : Boolean) 1407 is 1408 procedure Internal (Self : System.Address; Use_Color : Glib.Gboolean); 1409 pragma Import (C, Internal, "gtk_print_settings_set_use_color"); 1410 begin 1411 Internal (Get_Object (Self), Boolean'Pos (Use_Color)); 1412 end Set_Use_Color; 1413 1414 ------------- 1415 -- To_File -- 1416 ------------- 1417 1418 function To_File 1419 (Self : not null access Gtk_Print_Settings_Record; 1420 File_Name : UTF8_String) return Boolean 1421 is 1422 function Internal 1423 (Self : System.Address; 1424 File_Name : Interfaces.C.Strings.chars_ptr) return Glib.Gboolean; 1425 pragma Import (C, Internal, "gtk_print_settings_to_file"); 1426 Tmp_File_Name : Interfaces.C.Strings.chars_ptr := New_String (File_Name); 1427 Tmp_Return : Glib.Gboolean; 1428 begin 1429 Tmp_Return := Internal (Get_Object (Self), Tmp_File_Name); 1430 Free (Tmp_File_Name); 1431 return Tmp_Return /= 0; 1432 end To_File; 1433 1434 ----------------- 1435 -- To_Key_File -- 1436 ----------------- 1437 1438 procedure To_Key_File 1439 (Self : not null access Gtk_Print_Settings_Record; 1440 Key_File : Glib.Key_File.G_Key_File; 1441 Group_Name : UTF8_String) 1442 is 1443 procedure Internal 1444 (Self : System.Address; 1445 Key_File : Glib.Key_File.G_Key_File; 1446 Group_Name : Interfaces.C.Strings.chars_ptr); 1447 pragma Import (C, Internal, "gtk_print_settings_to_key_file"); 1448 Tmp_Group_Name : Interfaces.C.Strings.chars_ptr := New_String (Group_Name); 1449 begin 1450 Internal (Get_Object (Self), Key_File, Tmp_Group_Name); 1451 Free (Tmp_Group_Name); 1452 end To_Key_File; 1453 1454 ----------- 1455 -- Unset -- 1456 ----------- 1457 1458 procedure Unset 1459 (Self : not null access Gtk_Print_Settings_Record; 1460 Key : UTF8_String) 1461 is 1462 procedure Internal 1463 (Self : System.Address; 1464 Key : Interfaces.C.Strings.chars_ptr); 1465 pragma Import (C, Internal, "gtk_print_settings_unset"); 1466 Tmp_Key : Interfaces.C.Strings.chars_ptr := New_String (Key); 1467 begin 1468 Internal (Get_Object (Self), Tmp_Key); 1469 Free (Tmp_Key); 1470 end Unset; 1471 1472end Gtk.Print_Settings; 1473