| 1 | ;; Common Lisp bindings for GTK+ v2.0.x |
| 2 | ;; Copyright (C) 1999-2000 Espen S. Johnsen <espejohn@online.no> |
| 3 | ;; |
| 4 | ;; This library is free software; you can redistribute it and/or |
| 5 | ;; modify it under the terms of the GNU Lesser General Public |
| 6 | ;; License as published by the Free Software Foundation; either |
| 7 | ;; version 2 of the License, or (at your option) any later version. |
| 8 | ;; |
| 9 | ;; This library is distributed in the hope that it will be useful, |
| 10 | ;; but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 11 | ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| 12 | ;; Lesser General Public License for more details. |
| 13 | ;; |
| 14 | ;; You should have received a copy of the GNU Lesser General Public |
| 15 | ;; License along with this library; if not, write to the Free Software |
| 16 | ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
| 17 | |
| 18 | ;; $Id: gtktypes.lisp,v 1.1 2000-08-14 16:44:59 espen Exp $ |
| 19 | |
| 20 | |
| 21 | |
| 22 | (in-package "GTK") |
| 23 | |
| 24 | |
| 25 | ; (deftype color-type |
| 26 | ; (enum |
| 27 | ; :foreground |
| 28 | ; :background |
| 29 | ; :light |
| 30 | ; :dark |
| 31 | ; :mid |
| 32 | ; :text |
| 33 | ; :base |
| 34 | ; :white |
| 35 | ; :black)) |
| 36 | |
| 37 | |
| 38 | (defclass style (gobject) |
| 39 | () |
| 40 | (:metaclass gobject-class) |
| 41 | (:alien-name "GtkStyle")) |
| 42 | |
| 43 | ; (define-boxed accel-group :c-name "GtkAccelGroup") |
| 44 | |
| 45 | |
| 46 | (deftype (accel-group "GtkAccelGroup") () 'pointer) |
| 47 | |
| 48 | (deftype accel-entry () 'pointer) |
| 49 | (deftype radio-button-group () 'pointer) |
| 50 | (deftype radio-menu-item-group () 'pointer) |
| 51 | ; (define-boxed ctree-node :c-name "GtkCTreeNode") |
| 52 | |
| 53 | |
| 54 | (defclass data (object) |
| 55 | () |
| 56 | (:metaclass object-class) |
| 57 | (:alien-name "GtkData")) |
| 58 | |
| 59 | |
| 60 | (defclass adjustment (data) |
| 61 | ((lower |
| 62 | :allocation :alien |
| 63 | :accessor adjustment-lower |
| 64 | :initarg :lower |
| 65 | :type single-float) |
| 66 | (upper |
| 67 | :allocation :alien |
| 68 | :accessor adjustment-upper |
| 69 | :initarg :upper |
| 70 | :type single-float) |
| 71 | (value |
| 72 | :allocation :alien |
| 73 | :accessor adjustment-value |
| 74 | :initarg :value |
| 75 | :type single-float) |
| 76 | (step-increment |
| 77 | :allocation :alien |
| 78 | :accessor adjustment-step-increment |
| 79 | :initarg :step-increment |
| 80 | :type single-float) |
| 81 | (page-increment |
| 82 | :allocation :alien |
| 83 | :accessor adjustment-page-increment |
| 84 | :initarg :page-increment |
| 85 | :type single-float) |
| 86 | (page-size |
| 87 | :allocation :alien |
| 88 | :accessor adjustment-page-size |
| 89 | :initarg :page-size |
| 90 | :type single-float)) |
| 91 | (:metaclass object-class) |
| 92 | (:alien-name "GtkAdjustment")) |
| 93 | |
| 94 | |
| 95 | ; (define-class tooltips data |
| 96 | ; :slots |
| 97 | ; ;; slots not accessible through the arg mechanism |
| 98 | ; ((delay :type unsigned-int))) |
| 99 | |
| 100 | |
| 101 | ;; Forward declaration, the real definition is in gtkwidget.lisp |
| 102 | (defclass widget (object) |
| 103 | () |
| 104 | (:metaclass object-class) |
| 105 | (:alien-name "GtkWidget")) |
| 106 | |
| 107 | |
| 108 | (defclass misc (widget) |
| 109 | ((xalign |
| 110 | :allocation :arg |
| 111 | :accessor misc-xalign |
| 112 | :initarg :xalign |
| 113 | :type single-float) |
| 114 | (yalign |
| 115 | :allocation :arg |
| 116 | :accessor misc-yalign |
| 117 | :initarg :yalign |
| 118 | :type single-float) |
| 119 | (xpad |
| 120 | :allocation :arg |
| 121 | :accessor misc-xpad |
| 122 | :initarg :xpad |
| 123 | :type int) |
| 124 | (ypad |
| 125 | :allocation :arg |
| 126 | :accessor misc-ypad |
| 127 | :initarg :ypad |
| 128 | :type int)) |
| 129 | (:metaclass widget-class) |
| 130 | (:alien-name "GtkMisc")) |
| 131 | |
| 132 | |
| 133 | (defclass label (misc) |
| 134 | ((label |
| 135 | :allocation :arg |
| 136 | :accessor label-label |
| 137 | :initarg :label |
| 138 | :type string) |
| 139 | (pattern |
| 140 | :allocation :arg |
| 141 | :accessor label-pattern |
| 142 | :initarg :pattern |
| 143 | :type string) |
| 144 | (justify |
| 145 | :allocation :arg |
| 146 | :accessor label-justify |
| 147 | :initarg :justify |
| 148 | :type justification) |
| 149 | (wrap |
| 150 | :allocation :arg |
| 151 | :accessor label-line-wrap-p |
| 152 | :initarg :wrap |
| 153 | :type boolean)) |
| 154 | (:metaclass widget-class) |
| 155 | (:alien-name "GtkLabel")) |
| 156 | |
| 157 | |
| 158 | (defclass accel-label (label) |
| 159 | ((widget |
| 160 | :allocation :arg |
| 161 | :location "GtkAccelLabel::accel_widget" |
| 162 | :accessor accel-widget |
| 163 | :initarg :widget |
| 164 | :type widget) |
| 165 | (width |
| 166 | :allocation :virtual |
| 167 | :location "gtk_accel_label_get_accel_width" |
| 168 | :reader width |
| 169 | :type unsigned-int)) |
| 170 | (:metaclass widget-class) |
| 171 | (:alien-name "GtkAccelLabel")) |
| 172 | |
| 173 | |
| 174 | (defclass tips-query (label) |
| 175 | ((emit-always |
| 176 | :allocation :arg |
| 177 | :accessor tips-query-emit-always-p |
| 178 | :initarg :emit-always |
| 179 | :type boolean) |
| 180 | (caller |
| 181 | :allocation :arg |
| 182 | :accessor tips-query-caller |
| 183 | :initarg :caller |
| 184 | :type widget) |
| 185 | (label-inactive |
| 186 | :allocation :arg |
| 187 | :accessor tips-query-label-inactive |
| 188 | :initarg :label-inactive |
| 189 | :type string) |
| 190 | (label-no-tip |
| 191 | :allocation :arg |
| 192 | :accessor tips-query-label-no-tip |
| 193 | :initarg :label-no-tip |
| 194 | :type string)) |
| 195 | (:metaclass widget-class) |
| 196 | (:alien-name "GtkTipsQuery")) |
| 197 | |
| 198 | |
| 199 | (defclass arrow (misc) |
| 200 | ((arrow-type |
| 201 | :allocation :arg |
| 202 | :accessor arrow-arrow-type |
| 203 | :initarg :arrow-type |
| 204 | :type arrow-type) |
| 205 | (shadow-type |
| 206 | :allocation :arg |
| 207 | :accessor arrow-shadow-type |
| 208 | :initarg :shadow-type |
| 209 | :type shadow-type)) |
| 210 | (:metaclass widget-class) |
| 211 | (:alien-name "GtkArrow")) |
| 212 | |
| 213 | |
| 214 | (defclass image (misc) |
| 215 | () |
| 216 | (:metaclass widget-class) |
| 217 | (:alien-name "GtkImage")) |
| 218 | |
| 219 | |
| 220 | (defclass pixmap (misc) |
| 221 | () |
| 222 | (:metaclass widget-class) |
| 223 | (:alien-name "GtkPixmap")) |
| 224 | |
| 225 | |
| 226 | ;; Forward declaration, the real definition is in gtkcontainer.lisp |
| 227 | (defclass container (widget) |
| 228 | () |
| 229 | (:metaclass widget-class) |
| 230 | (:alien-name "GtkContainer")) |
| 231 | |
| 232 | (defclass container-child () |
| 233 | ((parent |
| 234 | :initarg :parent |
| 235 | :type container) |
| 236 | (child |
| 237 | :initarg :child |
| 238 | :type widget))) |
| 239 | |
| 240 | |
| 241 | (defclass bin (container) |
| 242 | ((child |
| 243 | :allocation :virtual |
| 244 | :location bin-child |
| 245 | :initarg :child |
| 246 | :type widget)) |
| 247 | (:metaclass container-class) |
| 248 | (:alien-name "GtkBin")) |
| 249 | |
| 250 | (defclass bin-child (container-child)) |
| 251 | |
| 252 | |
| 253 | (defclass alignment (bin) |
| 254 | ((xalign |
| 255 | :allocation :arg |
| 256 | :accessor alignment-xalign |
| 257 | :initarg :xalign |
| 258 | :type single-float) |
| 259 | (yalign |
| 260 | :allocation :arg |
| 261 | :accessor alignment-yalign |
| 262 | :initarg :yalign |
| 263 | :type single-float) |
| 264 | (xscale |
| 265 | :allocation :arg |
| 266 | :accessor alignment-xscale |
| 267 | :initarg :xscale |
| 268 | :type single-float) |
| 269 | (yscale |
| 270 | :allocation :arg |
| 271 | :accessor alignment-yscale |
| 272 | :initarg :yscale |
| 273 | :type single-float)) |
| 274 | (:metaclass container-class) |
| 275 | (:alien-name "GtkAlignment")) |
| 276 | |
| 277 | (defclass alignment-child (bin-child)) |
| 278 | |
| 279 | |
| 280 | (defclass frame (bin) |
| 281 | ((label |
| 282 | :allocation :arg |
| 283 | :accessor frame-label |
| 284 | :initarg :label |
| 285 | :type string) |
| 286 | (label-xalign |
| 287 | :allocation :arg |
| 288 | :accessor frame-label-xalign |
| 289 | :initarg :label-xalign |
| 290 | :type single-float) |
| 291 | (label-yalign |
| 292 | :allocation :arg |
| 293 | :accessor frame-label-yalign |
| 294 | :initarg :label-yalign |
| 295 | :type single-float) |
| 296 | (shadow-type |
| 297 | :allocation :arg |
| 298 | :location "GtkFrame::shadow" |
| 299 | :accessor frame-shadow-type |
| 300 | :initarg :shadow-type |
| 301 | :type shadow-type)) |
| 302 | (:metaclass container-class) |
| 303 | (:alien-name "GtkFrame")) |
| 304 | |
| 305 | (defclass frame-child (bin-child)) |
| 306 | |
| 307 | |
| 308 | ; (defclass aspect-frame (frame) |
| 309 | ; ((xalign |
| 310 | ; :allocation :arg |
| 311 | ; :accessor aspect-frame-xalign |
| 312 | ; :initarg :xalign |
| 313 | ; :type single-float) |
| 314 | ; (yalign |
| 315 | ; :allocation :arg |
| 316 | ; :accessor aspect-frame-yalign |
| 317 | ; :initarg :yalign |
| 318 | ; :type single-float) |
| 319 | ; (ratio |
| 320 | ; :allocation :arg |
| 321 | ; :accessor aspect-frame-ratio |
| 322 | ; :initarg :ratio |
| 323 | ; :type single-float) |
| 324 | ; (obey-child |
| 325 | ; :allocation :arg |
| 326 | ; :accessor aspect-frame-obey-child-p |
| 327 | ; :initarg :obey-child |
| 328 | ; :type boolean)) |
| 329 | ; (:metaclass container-class) |
| 330 | ; (:alien-name "GtkAspectFrame")) |
| 331 | |
| 332 | ; (defclass aspect-frame-child (aspect-child)) |
| 333 | |
| 334 | |
| 335 | (defclass button (bin) |
| 336 | ((label |
| 337 | :allocation :arg |
| 338 | :accessor button-label |
| 339 | :initarg :label |
| 340 | :type string) |
| 341 | (relief |
| 342 | :allocation :arg |
| 343 | :accessor button-relief |
| 344 | :initarg :relief |
| 345 | :type relief-style)) |
| 346 | (:metaclass container-class) |
| 347 | (:alien-name "GtkButton")) |
| 348 | |
| 349 | (defclass button-child (bin-child)) |
| 350 | |
| 351 | |
| 352 | (defclass toggle-button (button) |
| 353 | ((active |
| 354 | :allocation :arg |
| 355 | :accessor toggle-button-active-p |
| 356 | :initarg :active |
| 357 | :type boolean) |
| 358 | (draw-indicator |
| 359 | :allocation :arg |
| 360 | :accessor toggle-button-draw-indicator-p |
| 361 | :initarg :draw-indicator |
| 362 | :type boolean)) |
| 363 | (:metaclass container-class) |
| 364 | (:alien-name "GtkToggleButton")) |
| 365 | |
| 366 | (defclass toggle-button-child (button-child)) |
| 367 | |
| 368 | |
| 369 | (defclass check-button (toggle-button) |
| 370 | () |
| 371 | (:metaclass container-class) |
| 372 | (:alien-name "GtkCheckButton")) |
| 373 | |
| 374 | (defclass check-button-child (toggle-button-child)) |
| 375 | |
| 376 | |
| 377 | (defclass radio-button (check-button) |
| 378 | ((group |
| 379 | :allocation :arg |
| 380 | :initarg :group |
| 381 | ; :access :write-only |
| 382 | :type pointer)) ;radio-button-group)) |
| 383 | (:metaclass container-class) |
| 384 | (:alien-name "GtkRadioButton")) |
| 385 | |
| 386 | (defclass radio-button-child (check-button-child)) |
| 387 | |
| 388 | |
| 389 | (defclass option-menu (button) |
| 390 | ((menu |
| 391 | :allocation :virtual |
| 392 | :location ("gtk_option_menu_get_menu" (setf option-menu-menu)) |
| 393 | :reader option-menu-menu |
| 394 | :initarg :menu |
| 395 | :type widget) |
| 396 | (history |
| 397 | :allocation :virtual |
| 398 | :location (nil "gtk_option_menu_set_history") |
| 399 | :writer (setf option-menu-history) |
| 400 | :initarg :history |
| 401 | :type unsigned-int)) |
| 402 | (:metaclass container-class) |
| 403 | (:alien-name "GtkOptionMenu")) |
| 404 | |
| 405 | (defclass option-menu-child (button-child)) |
| 406 | |
| 407 | |
| 408 | (defclass item (bin) |
| 409 | () |
| 410 | (:metaclass container-class) |
| 411 | (:alien-name "GtkOptionMenu")) |
| 412 | |
| 413 | (defclass item-child (bin-child)) |
| 414 | |
| 415 | |
| 416 | (defclass menu-item (item) |
| 417 | () |
| 418 | ; :slots |
| 419 | ; ;; slots not accessible through the arg mechanism |
| 420 | ; ((label :write-only t :access-method :lisp :type string) |
| 421 | ; (submenu :write-method :lisp :type menu-item) |
| 422 | ; (placement :write-only t :type submenu-placement) |
| 423 | ; (toggle-indicator :c-reader "gtk_menu_item_get_show_toggle" |
| 424 | ; :write-method :lisp :type boolean) |
| 425 | ; (submenu-indicator :c-reader "gtk_menu_item_get_show_submenu" |
| 426 | ; :write-method :lisp :type boolean))) |
| 427 | (:metaclass container-class) |
| 428 | (:alien-name "GtkMenuItem")) |
| 429 | |
| 430 | (defclass menu-item-child (item-child)) |
| 431 | |
| 432 | |
| 433 | (defclass check-menu-item (menu-item) |
| 434 | () |
| 435 | ; :slots |
| 436 | ; ;; slots not accessible through the arg mechanism |
| 437 | ; ((active :type boolean) |
| 438 | ; (toggle-indicator :c-writer "gtk_check_menu_item_set_show_toggle" |
| 439 | ; :c-reader "gtk_check_menu_item_get_show_toggle" |
| 440 | ; :type boolean))) |
| 441 | (:metaclass container-class) |
| 442 | (:alien-name "GtkCheckMenuItem")) |
| 443 | |
| 444 | (defclass check-menu-item-child (menu-item-child)) |
| 445 | |
| 446 | (defclass radio-menu-item (check-menu-item) |
| 447 | () |
| 448 | ; :slots |
| 449 | ; ;; slots not accessible through the arg mechanism |
| 450 | ; ((group :c-reader "gtk_radio_menu_item_group" |
| 451 | ; :type radio-menu-item-group))) |
| 452 | (:metaclass container-class) |
| 453 | (:alien-name "GtkRadioMenuItem")) |
| 454 | |
| 455 | (defclass radio-menu-item-child (check-menu-item-child)) |
| 456 | |
| 457 | |
| 458 | (defclass tearoff-menu-item (menu-item) |
| 459 | () |
| 460 | (:metaclass container-class) |
| 461 | (:alien-name "GtkTearoffMenuItem")) |
| 462 | |
| 463 | (defclass tearoff-menu-item-child (menu-item-child)) |
| 464 | |
| 465 | (defclass list-item (item) |
| 466 | () |
| 467 | (:metaclass container-class) |
| 468 | (:alien-name "GtkListItem")) |
| 469 | |
| 470 | (defclass list-item-child (item-child)) |
| 471 | |
| 472 | |
| 473 | (defclass tree-item (item) |
| 474 | () |
| 475 | ; :slots |
| 476 | ; ;; slots not accessible through the arg mechanism |
| 477 | ; ((subtree :write-method :lisp :type tree-item))) |
| 478 | (:metaclass container-class) |
| 479 | (:alien-name "GtkTreeItem")) |
| 480 | |
| 481 | (defclass tree-item-child (item-child)) |
| 482 | |
| 483 | |
| 484 | (defclass window (bin) |
| 485 | ((type |
| 486 | :allocation :arg |
| 487 | :accessor window-type |
| 488 | :initarg :type |
| 489 | :type window-type) |
| 490 | (title |
| 491 | :allocation :arg |
| 492 | :accessor window-title |
| 493 | :initarg :title |
| 494 | :type string) |
| 495 | (auto-shrink |
| 496 | :allocation :arg |
| 497 | :accessor window-auto-shrink-p |
| 498 | :initarg :auto-shrink |
| 499 | :type boolean) |
| 500 | (allow-shrink |
| 501 | :allocation :arg |
| 502 | :accessor window-allow-shrink-p |
| 503 | :initarg :allow-shrink |
| 504 | :type boolean) |
| 505 | (allow-grow |
| 506 | :allocation :arg |
| 507 | :accessor window-allow-grow-p |
| 508 | :initarg :allow-grow |
| 509 | :type boolean) |
| 510 | (modal |
| 511 | :allocation :arg |
| 512 | :accessor window-modal-p |
| 513 | :initarg :modal |
| 514 | :type boolean) |
| 515 | (position |
| 516 | :allocation :arg |
| 517 | :location "GtkWindow::window_position" |
| 518 | :accessor window-position |
| 519 | :initarg :position |
| 520 | :type window-position) |
| 521 | (default-width |
| 522 | :allocation :arg |
| 523 | :accessor window-default-width |
| 524 | :initarg :default-width |
| 525 | :type int) |
| 526 | (default-height |
| 527 | :allocation :arg |
| 528 | :accessor window-default-height |
| 529 | :initarg :default-height |
| 530 | :type int)) |
| 531 | (:metaclass container-class) |
| 532 | (:alien-name "GtkWindow")) |
| 533 | |
| 534 | (defclass window-child (bin-child)) |
| 535 | |
| 536 | |
| 537 | ; (defclass color-selection-dialog window |
| 538 | ; :slots |
| 539 | ; ;; slots not accessible through the arg mechanism |
| 540 | ; ((colorsel :read-only t :type widget) |
| 541 | ; (main-vbox :read-only t :type widget) |
| 542 | ; (ok-button :read-only t :type widget) |
| 543 | ; (reset-button :read-only t :type widget) |
| 544 | ; (cancel-button :read-only t :type widget) |
| 545 | ; (help-button :read-only t :type widget))) |
| 546 | |
| 547 | ; (defclass dialog window |
| 548 | ; :slots |
| 549 | ; ;; slots not accessible through the arg mechanism |
| 550 | ; ((action-area :read-only t :type widget) |
| 551 | ; (vbox :read-only t :type widget))) |
| 552 | |
| 553 | ; (defclass input-dialog dialog) |
| 554 | |
| 555 | ; (defclass file-selection window |
| 556 | ; :slots |
| 557 | ; ;; slots not accessible through the arg mechanism |
| 558 | ; ((filename :type string) |
| 559 | ; (action-area :read-only t :type widget) |
| 560 | ; (ok-button :read-only t :type widget) |
| 561 | ; (cancel-button :read-only t :type widget))) |
| 562 | |
| 563 | ; (defclass plug window) |
| 564 | |
| 565 | ; (defclass event-box bin) |
| 566 | |
| 567 | ; (defclass handle-box bin |
| 568 | ; :slots |
| 569 | ; ((shadow-type :read-method :arg :arg-name "shadow" |
| 570 | ; :type shadow-type) |
| 571 | ; (handle-position :read-method :arg :type position-type) |
| 572 | ; (snap-edge :read-method :arg :type position-type))) |
| 573 | |
| 574 | (defclass scrolled-window (bin) |
| 575 | ((hadjustment |
| 576 | :allocation :arg |
| 577 | :accessor scrolled-window-hadjustment |
| 578 | :initarg :hadjustment |
| 579 | :type adjustment) |
| 580 | (vadjustment |
| 581 | :allocation :arg |
| 582 | :accessor scrolled-window-vadjustment |
| 583 | :initarg :vadjustment |
| 584 | :type adjustment) |
| 585 | (hscrollbar-policy |
| 586 | :allocation :arg |
| 587 | :accessor scrolled-window-hscrollbar-policy |
| 588 | :initarg :hscrollbar-policy |
| 589 | :type policy-type) |
| 590 | (vscrollbar-policy |
| 591 | :allocation :arg |
| 592 | :accessor scrolled-window-vscrollbar-policy |
| 593 | :initarg :vscrollbar-policy |
| 594 | :type policy-type) |
| 595 | (placement |
| 596 | :allocation :arg |
| 597 | :location "GtkScrolledWindow::window_placement" |
| 598 | :accessor scrolled-window-placement |
| 599 | :initarg :placement |
| 600 | :type corner-type) |
| 601 | (shadow-type |
| 602 | :allocation :arg |
| 603 | :location "GtkScrolledWindow::shadow" |
| 604 | :accessor scrolled-window-shadow-type |
| 605 | :initarg :shadow-type |
| 606 | :type shadow-type) |
| 607 | (hscrollbar |
| 608 | :allocation :virtual |
| 609 | :location "gtk_scrolled_window_get_hscrollbar" |
| 610 | :accessor scrolled-window-hscrollbar |
| 611 | :type widget) |
| 612 | (vscrollbar |
| 613 | :allocation :virtual |
| 614 | :location "gtk_scrolled_window_get_vscrollbar" |
| 615 | :accessor scrolled-window-vscrollbar |
| 616 | :type widget)) |
| 617 | (:metaclass container-class) |
| 618 | (:alien-name "GtkScrolledWindow")) |
| 619 | |
| 620 | (defclass scrolled-window-child (bin-child)) |
| 621 | |
| 622 | |
| 623 | |
| 624 | ; (defclass viewport bin |
| 625 | ; :slots |
| 626 | ; ((hadjustment :read-method :arg :type adjustment) |
| 627 | ; (vadjustment :read-method :arg :type adjustment) |
| 628 | ; (shadow-type :read-method :arg :type shadow-type))) |
| 629 | |
| 630 | (defclass box (container) |
| 631 | ((spacing |
| 632 | :allocation :arg |
| 633 | :accessor box-spacing |
| 634 | :initarg :spacing |
| 635 | :type int) |
| 636 | (homogeneous |
| 637 | :allocation :arg |
| 638 | :accessor box-homogeneous-p |
| 639 | :initarg :homogeneous |
| 640 | :type boolean)) |
| 641 | (:metaclass container-class) |
| 642 | (:alien-name "GtkBox")) |
| 643 | |
| 644 | (defclass box-child (container-child) |
| 645 | ((expand |
| 646 | :allocation :arg |
| 647 | :accessor box-child-expand-p |
| 648 | :initarg :expand |
| 649 | :type boolean) |
| 650 | (fill |
| 651 | :allocation :arg |
| 652 | :accessor box-child-fill-p |
| 653 | :initarg :fill |
| 654 | :type boolean) |
| 655 | (padding |
| 656 | :allocation :arg |
| 657 | :accessor box-child-padding |
| 658 | :initarg :padding |
| 659 | :type unsigned-long) |
| 660 | (pack-type |
| 661 | :allocation :arg |
| 662 | :accessor box-child-pack-type |
| 663 | :initarg :pack-type |
| 664 | :type pack-type) |
| 665 | (position |
| 666 | :allocation :arg |
| 667 | :accessor box-child-position |
| 668 | :initarg :position |
| 669 | :type long)) |
| 670 | (:metaclass child-class)) |
| 671 | |
| 672 | |
| 673 | (defclass button-box (box) |
| 674 | ((spacing |
| 675 | :allocation :virtual |
| 676 | :location ("gtk_button_box_get_spacing" "gtk_button_box_set_spacing") |
| 677 | :accessor button-box-spacing |
| 678 | :type int) |
| 679 | (layout |
| 680 | :allocation :virtual |
| 681 | :location ("gtk_button_box_get_layout" "gtk_button_box_set_layout") |
| 682 | :accessor button-box-layout |
| 683 | :type button-box-style)) |
| 684 | (:metaclass container-class) |
| 685 | (:alien-name "GtkButtonBox")) |
| 686 | |
| 687 | (defclass button-box-child (box-child) |
| 688 | () |
| 689 | (:metaclass child-class)) |
| 690 | |
| 691 | (defclass hbutton-box (button-box) |
| 692 | () |
| 693 | (:metaclass container-class) |
| 694 | (:alien-name "GtkHButtonBox")) |
| 695 | |
| 696 | (defclass hbutton-box-child (button-box-child) |
| 697 | () |
| 698 | (:metaclass child-class)) |
| 699 | |
| 700 | (defclass vbutton-box-child (button-box-child) |
| 701 | () |
| 702 | (:metaclass child-class)) |
| 703 | |
| 704 | (defclass vbox (box) |
| 705 | () |
| 706 | (:metaclass container-class) |
| 707 | (:alien-name "GtkVBox")) |
| 708 | |
| 709 | (defclass vbox-child (box-child) |
| 710 | () |
| 711 | (:metaclass child-class)) |
| 712 | |
| 713 | |
| 714 | |
| 715 | ; (defclass color-selection vbox |
| 716 | ; :slots |
| 717 | ; ((policy :c-writer "gtk_color_selection_set_update_policy" |
| 718 | ; :read-method :arg :type update-type) |
| 719 | ; (use-opacity :c-writer "gtk_color_selection_set_opacity" |
| 720 | ; :read-method :arg :type boolean) |
| 721 | ; ;; slots not accessible through the arg mechanism |
| 722 | ; (color :access-method :lisp))) |
| 723 | |
| 724 | ; (defclass gamma-curve vbox) |
| 725 | |
| 726 | (defclass hbox (box) |
| 727 | () |
| 728 | (:metaclass container-class) |
| 729 | (:alien-name "GtkHBox")) |
| 730 | |
| 731 | (defclass hbox-child (box-child) |
| 732 | () |
| 733 | (:metaclass child-class)) |
| 734 | |
| 735 | |
| 736 | |
| 737 | ; (defclass statusbar hbox) |
| 738 | |
| 739 | ; (defclass clist container |
| 740 | ; :c-name "GtkCList" |
| 741 | ; :c-prefix "gtk_clist_" |
| 742 | ; :slots |
| 743 | ; ((n-columns :read-only t :initarg t :access-method :arg |
| 744 | ; :type unsigned-int) |
| 745 | ; (shadow-type :read-method :arg :type shadow-type) |
| 746 | ; (selection-mode :read-method :arg :type selection-mode) |
| 747 | ; (row-height :read-method :arg :type unsigned-int) |
| 748 | ; (reorderable :read-method :arg :type boolean) |
| 749 | ; (titles-visible :write-method :lisp :type boolean) |
| 750 | ; (titles-active :access-method :arg :type boolean) |
| 751 | ; (use-drag-icons :read-method :arg :type boolean) |
| 752 | ; (sort-type :read-method :arg :type sort-type) |
| 753 | ; ;; slots not accessible through the arg mechanism |
| 754 | ; (hadjustment :type adjustment) |
| 755 | ; (vadjustment :type adjustment) |
| 756 | ; (sort-column :type int) |
| 757 | ; (focus-row :reader %clist-focus-row :read-only t :type int) |
| 758 | ; (n-rows :read-only t :type int))) |
| 759 | |
| 760 | ; (defclass ctree clist |
| 761 | ; :c-name "GtkCTree" |
| 762 | ; :c-prefix "gtk_ctree_" |
| 763 | ; :slots |
| 764 | ; ((n-columns :read-only t :initarg t :access-method :arg |
| 765 | ; :type unsigned-int) |
| 766 | ; (tree-column :read-only t :initarg t :access-method :arg |
| 767 | ; :type unsigned-int) |
| 768 | ; (indent :read-method :arg :type unsigned-int) |
| 769 | ; (spacing :read-method :arg :type unsigned-int) |
| 770 | ; (show-stub :read-method :arg :type boolean) |
| 771 | ; (line-style :read-method :arg :type ctree-line-style) |
| 772 | ; (expander-style :read-method :arg :type ctree-expander-style))) |
| 773 | |
| 774 | ; (defclass fixed container) |
| 775 | |
| 776 | ; (defclass notebook container |
| 777 | ; :slots |
| 778 | ; ((show-tabs :read-method :arg :type boolean) |
| 779 | ; (show-border :read-method :arg :type boolean) |
| 780 | ; (scrollable :read-method :arg :type boolean) |
| 781 | ; (enable-popup :access-method :arg :type boolean) |
| 782 | ; (homogeneous :c-writer "gtk_notebook_set_homogeneous_tabs" |
| 783 | ; :read-method :arg :type boolean) |
| 784 | ; (current-page :c-writer "gtk_notebook_set_page" :type int) |
| 785 | ; (tab-pos :read-method :arg :type position-type) |
| 786 | ; (tab-border :read-method :arg :type unsigned-int) |
| 787 | ; (tab-hborder :read-method :arg :type unsigned-int) |
| 788 | ; (tab-vborder :read-method :arg :type unsigned-int)) |
| 789 | ; :child-slots |
| 790 | ; ((tab-label :access-method :arg :type string) |
| 791 | ; (menu-label :access-method :arg :type string) |
| 792 | ; (tab-fill :access-method :arg :type boolean) |
| 793 | ; (tab-pack :access-method :arg :type boolean) |
| 794 | ; (position :access-method :arg :type int))) |
| 795 | |
| 796 | ; (defclass font-selection notebook) |
| 797 | |
| 798 | ; (defclass paned container |
| 799 | ; :constructor nil |
| 800 | ; :slots |
| 801 | ; ((handle-size :read-method :arg :type unsigned-int) |
| 802 | ; (gutter-size :read-method :arg :type unsigned-int) |
| 803 | ; ;; slots not accessible through the arg mechanism |
| 804 | ; (position :write-only t :type int))) |
| 805 | |
| 806 | ; (defclass hpaned paned) |
| 807 | |
| 808 | ; (defclass vpaned paned) |
| 809 | |
| 810 | ; (defclass layout container |
| 811 | ; :slots |
| 812 | ; ;; slots not accessible through the arg mechanism |
| 813 | ; ((hadjustment :type adjustment) |
| 814 | ; (vadjustment :type adjustment) |
| 815 | ; (bin-window :read-only t :type gdk:window))) |
| 816 | |
| 817 | ; (defclass list-widget container |
| 818 | ; :c-name "GtkList" |
| 819 | ; :slots |
| 820 | ; ((selection-mode :read-method :arg :accessor list-selection-mode |
| 821 | ; :c-writer "gtk_list_set_selection_mode" |
| 822 | ; :type selection-mode))) |
| 823 | |
| 824 | ; (defclass menu-shell container :constructor nil) |
| 825 | |
| 826 | ; (defclass menu-bar menu-shell |
| 827 | ; :slots |
| 828 | ; ((shadow-type :read-method :arg :arg-name "shadow" |
| 829 | ; :type shadow-type))) |
| 830 | |
| 831 | ; (defclass menu menu-shell |
| 832 | ; :slots |
| 833 | ; ;; slots not accessible through the arg mechanism |
| 834 | ; ((accel-group :type accel-group) |
| 835 | ; (tearoff-state :write-only t :type boolean) |
| 836 | ; (title :write-only t :type string))) |
| 837 | |
| 838 | ; (defclass packer container |
| 839 | ; :slots |
| 840 | ; ((spacing :read-method :arg :type unsigned-int) |
| 841 | ; (default-border-width :read-method :arg :type unsigned-int) |
| 842 | ; (default-pad-x :access-method :arg :type unsigned-int) |
| 843 | ; (default-pad-y :access-method :arg :type unsigned-int) |
| 844 | ; (default-ipad-x :access-method :arg :type unsigned-int) |
| 845 | ; (default-ipad-y :access-method :arg :type unsigned-int)) |
| 846 | ; :child-slots |
| 847 | ; ((side :access-method :arg :type side-type) |
| 848 | ; (anchor :access-method :arg :type anchor-type) |
| 849 | ; (expand :access-method :arg :type boolean) |
| 850 | ; (fill-x :access-method :arg :type boolean) |
| 851 | ; (fill-y :access-method :arg :type boolean) |
| 852 | ; (use-default :access-method :arg :type boolean) |
| 853 | ; (border-width :access-method :arg :type unsigned-int) |
| 854 | ; (pad-x :access-method :arg :type unsigned-int) |
| 855 | ; (pad-y :access-method :arg :type unsigned-int) |
| 856 | ; (ipad-x :access-method :arg :type unsigned-int) |
| 857 | ; (ipad-y :access-method :arg :type unsigned-int) |
| 858 | ; (position :access-method :arg :type long))) |
| 859 | |
| 860 | ; (defclass socket container) |
| 861 | |
| 862 | ; (defclass table container |
| 863 | ; :slots |
| 864 | ; ((rows :access-method :arg :arg-name "n_rows" |
| 865 | ; :type unsigned-int) |
| 866 | ; (columns :access-method :arg :arg-name "n_columns" |
| 867 | ; :type unsigned-int) |
| 868 | ; (row-spacing :c-writer "gtk_table_set_row_spacings" |
| 869 | ; :accessor table-row-spacings |
| 870 | ; :read-method :arg :type unsigned-int) |
| 871 | ; (column-spacing :c-writer "gtk_table_set_col_spacings" |
| 872 | ; :accessor table-column-spacings |
| 873 | ; :read-method :arg :type unsigned-int) |
| 874 | ; (homogeneous :read-method :arg :type boolean)) |
| 875 | ; :child-slots |
| 876 | ; ((left-attach :access-method :arg :type unsigned-int) |
| 877 | ; (right-attach :access-method :arg :type unsigned-int) |
| 878 | ; (top-attach :access-method :arg :type unsigned-int) |
| 879 | ; (bottom-attach :access-method :arg :type unsigned-int) |
| 880 | ; (x-options :access-method :arg :type attach-options) |
| 881 | ; (y-options :access-method :arg :type attach-options) |
| 882 | ; (x-padding :access-method :arg :type unsigned-int) |
| 883 | ; (y-padding :access-method :arg :type unsigned-int) |
| 884 | ; ;; Slots added for convenience sake |
| 885 | ; (x-expand :access-method :lisp :type boolean) |
| 886 | ; (y-expand :access-method :lisp :type boolean) |
| 887 | ; (x-shrink :access-method :lisp :type boolean) |
| 888 | ; (y-shrink :access-method :lisp :type boolean) |
| 889 | ; (x-fill :access-method :lisp :type boolean) |
| 890 | ; (y-fill :access-method :lisp :type boolean))) |
| 891 | |
| 892 | ; (defclass toolbar container |
| 893 | ; :slots |
| 894 | ; ((orientation :read-method :arg :type orientation) |
| 895 | ; (toolbar-style :accessor toolbar-style |
| 896 | ; :c-writer "gtk_toolbar_set_style" |
| 897 | ; :read-method :arg :type toolbar-style) |
| 898 | ; (space-size :read-method :arg :type unsigned-int) |
| 899 | ; (space-style :read-method :arg :type toolbar-space-style) |
| 900 | ; (relief :c-writer "gtk_toolbar_set_button_relief" |
| 901 | ; :read-method :arg :type relief-style) |
| 902 | ; ;; slots not accessible through the arg mechanism |
| 903 | ; (tooltips :write-only t :type boolean))) |
| 904 | |
| 905 | (defclass tree (container) |
| 906 | () |
| 907 | ; :slots |
| 908 | ; ;; slots not accessible through the arg mechanism |
| 909 | ; ((selection-mode :type selection-mode) |
| 910 | ; (view-mode :type tree-view-mode) |
| 911 | ; (view-lines :type boolean) |
| 912 | ; (root-tree :read-only t :type tree))) |
| 913 | (:metaclass container-class) |
| 914 | (:alien-name "GtkTree")) |
| 915 | |
| 916 | |
| 917 | (defclass calendar (widget) |
| 918 | () |
| 919 | (:metaclass widget-class) |
| 920 | (:alien-name "GtkCalendar")) |
| 921 | |
| 922 | |
| 923 | ; (defclass drawing-area widget) |
| 924 | |
| 925 | ; (defclass curve drawing-area |
| 926 | ; :slots |
| 927 | ; ((curve-type :read-method :arg :type curve-type) |
| 928 | ; (min-x :access-method :arg :type single-float) |
| 929 | ; (max-x :access-method :arg :type single-float) |
| 930 | ; (min-y :access-method :arg :type single-float) |
| 931 | ; (max-y :access-method :arg :type single-float))) |
| 932 | |
| 933 | ; (defclass editable widget |
| 934 | ; :slots |
| 935 | ; ((position :type int) |
| 936 | ; (editable :read-method :arg :type boolean) |
| 937 | ; ;; slots not accessible through the arg mechanism |
| 938 | ; (text :access-method :lisp :type string))) |
| 939 | |
| 940 | ; (defclass entry editable |
| 941 | ; :slots |
| 942 | ; ((max-length :read-method :arg :type unsigned-int) |
| 943 | ; (visibility :read-method :arg :accessor entry-visible-p |
| 944 | ; :type boolean) |
| 945 | ; ;; slots not accessible through the arg mechanism |
| 946 | ; (text :type string))) |
| 947 | |
| 948 | ; (defclass combo hbox |
| 949 | ; :slots |
| 950 | ; ;; slots not accessible through the arg mechanism |
| 951 | ; ((entry :read-only t :type entry) |
| 952 | ; (use-arrows :type boolean) |
| 953 | ; (use-arrows-always :type boolean) |
| 954 | ; (case-sensitive :type boolean))) |
| 955 | |
| 956 | ; (defclass spin-button entry |
| 957 | ; :slots |
| 958 | ; ((adjustment :access-method :arg :type adjustment) |
| 959 | ; (climb-rate :access-method :arg :type single-float) |
| 960 | ; (digits :access-method :arg :type unsigned-int) |
| 961 | ; (snap-to-ticks :read-method :arg :type boolean) |
| 962 | ; (numeric :read-method :arg :type boolean) |
| 963 | ; (wrap :read-method :arg :type boolean) |
| 964 | ; (update-policy :read-method :arg :type spin-button-update-policy) |
| 965 | ; (shadow-type :read-method :arg :type shadow-type) |
| 966 | ; (value :read-method :arg :type single-float))) |
| 967 | |
| 968 | ; (defclass text editable |
| 969 | ; :slots |
| 970 | ; ((hadjustment :access-method :arg :type adjustment) |
| 971 | ; (vadjustment :access-method :arg :type adjustment) |
| 972 | ; (line-wrap :read-method :arg :type boolean) |
| 973 | ; (word-wrap :read-method :arg :type boolean) |
| 974 | ; ;; slots not accessible through the arg mechanism |
| 975 | ; (point :type unsigned-int) |
| 976 | ; (length :read-only t :type unsigned-int))) |
| 977 | |
| 978 | ; (defclass ruler widget |
| 979 | ; :constructor nil |
| 980 | ; :slots |
| 981 | ; ((lower :access-method :arg :type single-float) |
| 982 | ; (upper :access-method :arg :type single-float) |
| 983 | ; (position :access-method :arg :type single-float) |
| 984 | ; (max-size :access-method :arg :type single-float) |
| 985 | ; ;; slots not accessible through the arg mechanism |
| 986 | ; (:metric :write-only t :type metric-type))) |
| 987 | |
| 988 | ; (defclass hruler ruler) |
| 989 | |
| 990 | ; (defclass vruler ruler) |
| 991 | |
| 992 | ; (defclass range widget |
| 993 | ; :slots |
| 994 | ; ((update-policy :read-method :arg :type update-type) |
| 995 | ; ;; slots not accessible through the arg mechanism |
| 996 | ; (adjustment :type adjustment))) |
| 997 | |
| 998 | ; (defclass scale range |
| 999 | ; :constructor nil |
| 1000 | ; :slots |
| 1001 | ; ((digits :read-method :arg :type unsigned-int) |
| 1002 | ; (draw-value :read-method :arg :type boolean) |
| 1003 | ; (value-pos :read-method :arg :type position-type) |
| 1004 | ; ;; slots not accessible through the arg mechanism |
| 1005 | ; (value-width :read-only t :type int))) |
| 1006 | |
| 1007 | ; (defclass hscale scale) |
| 1008 | |
| 1009 | ; (defclass vscale scale) |
| 1010 | |
| 1011 | ; (defclass scrollbar range :constructor nil) |
| 1012 | |
| 1013 | ; (defclass hscrollbar scrollbar) |
| 1014 | |
| 1015 | ; (defclass vscrollbar scrollbar) |
| 1016 | |
| 1017 | (defclass separator (widget) |
| 1018 | () |
| 1019 | (:metaclass widget-class) |
| 1020 | (:alien-name "GtkSeparator")) |
| 1021 | |
| 1022 | |
| 1023 | (defclass hseparator (separator) |
| 1024 | () |
| 1025 | (:metaclass widget-class) |
| 1026 | (:alien-name "GtkHSeparator")) |
| 1027 | |
| 1028 | |
| 1029 | (defclass vseparator (separator) |
| 1030 | () |
| 1031 | (:metaclass widget-class) |
| 1032 | (:alien-name "GtkVSeparator")) |
| 1033 | |
| 1034 | |
| 1035 | ; (defclass preview widget |
| 1036 | ; :slots |
| 1037 | ; ((expand :read-method :arg :type boolean))) |
| 1038 | |
| 1039 | ; (defclass progress widget |
| 1040 | ; :slots |
| 1041 | ; ((activity-mode :read-method :arg :type boolean) |
| 1042 | ; (show-text :read-method :arg :type boolean) |
| 1043 | ; (text-xalign :access-method :arg :type single-float) |
| 1044 | ; (text-yalign :access-method :arg :type single-float) |
| 1045 | ; ;; slots not accessible through the arg mechanism |
| 1046 | ; (format-string :type string) |
| 1047 | ; (adjustment :type adjustment) |
| 1048 | ; (percentage :c-reader "gtk_progress_get_current_percentage" |
| 1049 | ; :type single-float) |
| 1050 | ; (value :type single-float) |
| 1051 | ; (text :c-reader "gtk_progress_get_current_text" |
| 1052 | ; :read-only t :type string))) |
| 1053 | |
| 1054 | ; (defclass progress-bar progress |
| 1055 | ; :slots |
| 1056 | ; ((adjustment :c-writer "gtk_progress_set_adjustment" |
| 1057 | ; :read-method :arg :type adjustment) |
| 1058 | ; (orientation :read-method :arg :type progress-bar-orientation) |
| 1059 | ; (bar-style :read-method :arg :accessor progress-bar-style |
| 1060 | ; :type progress-bar-style) |
| 1061 | ; (activity-step :read-method :arg :type unsigned-int) |
| 1062 | ; (activity-blocks :read-method :arg :type unsigned-int) |
| 1063 | ; (discrete-blocks :read-method :arg :type unsigned-int))) |
| 1064 | |
| 1065 | ; (defclass item-factory object) |
| 1066 | |