1 This file is some notes about how different widgets are drawn.
8 +----------------------------------------------------------------------------+
10 | +------------------------------------------------------------------------+ |
11 | |############################# C ########################################| |
13 | |# +-------------------------------------------------------------------+#| |
23 | |# +-------------------------------------------------------------------+#| |
24 | |# +-------------------------------------------------------------------+#| |
34 | |# +-------------------------------------------------------------------+#| |
36 | |# +-------------------------------------------------------------------+#| |
46 | |# +-------------------------------------------------------------------+#| |
48 | |############################# C ########################################| |
49 | +------------------------------------------------------------------------| |
51 +----------------------------------------------------------------------------+
53 A: GtkContainer::border_width
64 +----------------------------------------------------------------------------+
66 | +------------------------------------------------------------------------+ |
67 | |############################# C ########################################| |
68 | |#+-+------------+--+-------------------------------+--+-------------+-+#| |
69 | |#| |\\\\\\\\\\\\| | /|\ |**| | |#| |
70 | |#| |<------E------>| | |**| G | |#| |
71 | |#| |\\\\\\\\\\\\| | | |**| | |#| |
72 | |#| |\\\\\\\\\\\\| | | |**| >> | |#| |
73 | |#| |\\\\\\\\\\\\| | | |**| >>>> | |#| |
74 | |#| |\\\\\\\\\\\\| | | |**| >>>>>> | |#| |
75 |A|B|D|\\\\\\\\\\\\| F| Child G |*H| >>>>>>>> |D|B|A|
76 | |#| |\\\\\\\\\\\\| | | |**| >>>>>> | |#| |
77 | |#| |\\\\\\\\\\\\| | | |**| >>>> | |#| |
78 | |#| |\\\\\\\\\\\\| | | |**| >> | |#| |
79 | |#| |\\\\\\\\\\\\| | | |**| | |#| |
80 | |#| |\\\\\\\\\\\\| | | |**| | |#| |
81 | |#| |\\\\\\\\\\\\| | \|/ |**| | |#| |
82 | |#+-+------------+--+-------------------------------+--+-------------+-+#| |
83 | |############################# C ########################################| |
84 | +------------------------------------------------------------------------+ |
86 +----------------------------------------------------------------------------+
88 A: GtkContainer:border_width
94 G: Requested height of child (also used for width of arrow
95 H: arrow_spacing spacing (when the item has a non-vertical submenu)
108 GtkWidget::interior_focus = TRUE
109 GtkWidget::focus_width = 1
110 GtkWidget::focus_padding = 0
111 GtkOptionMenu::indicator_size = { 7, 13 }
112 GtkOptionMenu::indicator_spacing = { 7, 5, 2, 2 }
116 GtkContainer::border_width = 0
120 CHILD_LEFT_SPACING = 5
121 CHILD_RIGHT_SPACING = 1
122 CHILD_TOP_SPACING = 1
123 CHILD_BOTTOM_SPACING = 1
126 I) interior_focus = TRUE
128 +--------------------------------------------------+
130 | +----------------------------------------------+ |
131 | |\\\\\\\\\\\\\\\\\\\\ H ///////////////////////| |
132 | |\+------------------------------------------+/| |
134 | |\| +------------------------------+ |/| |
135 | |\| |################ D ###########| L |/| |
136 | |\| |#+--------------------------+#| |/| |
137 | |\| |#| K |#| |/| |
138 | |\| |#| +----------------------+ |#| +-----+ |/| |
139 | |\| |#| | | |#| | /#\ | |/| |
140 | |\| |#| | | |#| | === | |/| |
141 |A|B|C|D|E| Child |F|D|G| IxJ |O|B|A|
142 | |/| |#| | | |#| | === | |\| |
143 | |/| |#| | | |#| | \#/ | |\| |
144 | |/| |#| +----------------------+ |#| +-----+ |\| |
145 | |/| |#| M |#| |\| |
146 | |/| |#+---------------------------#| |\| |
147 | |/| |################ D ###########| N |\| |
148 | |/| +------------------------------+ |\| |
150 | |/+------------------------------------------+\| |
151 | |//////////////////// H \\\\\\\\\\\\\\\\\\\\\\\| |
152 | +----------------------------------------------+ |
154 +--------------------------------------------------+
156 A: GtkContainer::border_width
158 C: GtkWidget::focus_pad
159 D: GtkWidget::focus_width
160 E: CHILD_LEFT_SPACING
161 F: CHILD_RIGHT_SPACING
162 G: GtkOptionMenu::indicator_spacing::left
164 I: GtkOptionMenu::indicator_size::width
165 J: GtkOptionMenu::indicator_size::height
167 L: GtkOptionMenu::indicator_spacing::top + GtkWidget::focus_width + GtkWidget::focus_pad + CHILD_TOP_SPACING
168 M: CHILD_BOTTOM_SPACING
169 N: GtkOptionMenu::indicator_spacing::bottom + GtkWidget::focus_width + GtkWidget::focus_pad + CHILD_BOTTOM_SPACING
170 O: GtkOptionMenu::indicator_spacing::right
173 II) interior_focus = FALSE
175 +--------------------------------------------------+
177 | +----------------------------------------------+ |
178 | |#################### B #######################| |
179 | |#+------------------------------------------+#| |
181 | |#| +--------------------------------------+ |#| |
182 | |#| |\\\\\\\\\\\\\\\\ H ///////////////////| |#| |
183 | |#| |\+----------------------------------+/| |#| |
184 | |#| |\| K L |/| |#| |
185 | |#| |\| +----------------------+ +-----+ |/| |#| |
186 | |#| |\| | | | /#\ | |/| |#| |
187 | |#| |\| | | | === | |/| |#| |
188 |A|B|C|D|E| Child |F| IxJ |G|D|C|B|A|
189 | |#| |/| | | | === | |\| |#| |
190 | |#| |/| | | | \#/ | |\| |#| |
191 | |#| |/| +----------------------+ +-----+ |\| |#| |
192 | |#| |/| M N |\| |#| |
193 | |#| |/+----------------------------------+\| |#| |
194 | |#| |//////////////// H \\\\\\\\\\\\\\\\\\\| |#| |
195 | |#| +--------------------------------------+ |#| |
197 | |#+------------------------------------------+#| |
198 | |#################### B #######################| |
199 | +----------------------------------------------+ |
201 +--------------------------------------------------+
204 A: GtkContainer::border_width
205 B: GtkWidget::focus_width
206 C: GtkWidget::focus_padding
208 E: CHILD_LEFT_SPACING
209 F: CHILD_RIGHT_SPACING + GtkOptionMenu::indicator_spacing::left
210 G: GtkOptionMenu::indicator_spacing::right
212 I: GtkOptionMenu::indicator_size::width
213 J: GtkOptionMenu::indicator_size::height
215 L: CHILD_TOP_SPACING + GtkOptionMenu::indicator_spacing::top
216 M: CHILD_BOTTOM_SPACING
217 N: CHILD_BOTTOM_SPACING + GtkOptionMenu::indicator_spacing::bottom
220 III) interior_focus = FALSE, !HAVE_FOCUS
222 +--------------------------------------------------+
224 | +----------------------------------------------+ |
225 | |\\\\\\\\\\\\\\\\\\\\ H ///////////////////////| |
226 | |\+------------------------------------------+/| |
232 | |\| +----------------------+ +-----+ |/| |
233 | |\| | | | /#\ | |/| |
234 | |\| | | | === | |/| |
235 |A|D| E| Child |F| IxJ |G |D|A|
236 | |/| | | | === | |\| |
237 | |/| | | | \#/ | |\| |
238 | |/| +----------------------+ +-----+ |\| |
244 | |/+------------------------------------------+\| |
245 | |//////////////////// H \\\\\\\\\\\\\\\\\\\\\\\| |
246 | +----------------------------------------------+ |
248 +--------------------------------------------------+
251 A: GtkContainer::border_width
252 B: GtkWidget::focus_width
253 C: GtkWidget::focus_padding
255 E: CHILD_LEFT_SPACING + GtkWidget::focus_width + GtkWidget::focus_padding
256 F: CHILD_RIGHT_SPACING + GtkOptionMenu::in+icator_spacing::left
257 G: GtkOptionMenu::indicator_spacing::right + GtkWidget::focus_width + GtkWidget::focus_padding
259 I: GtkOptionMenu::indicator_size::width
260 J: GtkOptionMenu::indicator_size::height
261 K: CHILD_TOP_SPACING + GtkWidget::focus_width + GtkWidget::focus_padding
262 L: CHILD_TOP_SPACING + GtkOptionMenu::indicator_spacing::top + GtkWidget::focus_width + GtkWidget::focus_padding
263 M: CHILD_BOTTOM_SPACING + GtkWidget::focus_width + GtkWidget::focus_padding
264 N: CHILD_BOTTOM_SPACING + GtkOptionMenu::indicator_spacing::bottom + GtkWidget::focus_width + GtkWidget::focus_padding
268 =====================
272 =====================
274 NOTE: Due to a bug that is basically unfixable in a sufficiently compatible
275 NOTE: way, the button gives the space requested for focus_width and
276 NOTE: focus_padding to the child (in addition to the space requested by
277 NOTE: the child), if the button is !CAN_FOCUS.
281 GtkWidget::interior_focus = TRUE
282 GtkWidget::focus_width = 1
283 GtkWidget::focus_padding = 0
284 GtkButton::default_border = { 1, 1, 1, 1 };
285 GtkButton::default_outside_border = { 0, 0, 0, 0 };
286 GtkButton::child_displacement_x = 0;
287 GtkButton::child_displacement_y = 0;
291 GtkContainer::border_width = 0
297 I) HAS_DEFAULT && (!GtkWidget::interior-focus || !HAVE_FOCUS)
299 +----------------------------------------------+
301 | +------------------------------------------+ |
302 | |@@@@@@@@@@@@@@@@@@@ I @@@@@@@@@@@@@@@@@@@@| |
303 | |@+--------------------------------------+@| |
304 | |@|\\\\\\\\\\\\\\\\\ J //////////////////|@| |
305 | |@|\+----------------------------------+/|@| |
307 | |@|\| +------------------------------+ |/|@| |
308 | |@|\| |############# F ##############| |/|@| |
309 | |@|\| |#+--------------------------+#| |/|@| |
310 | |@|\| |#| L |#| |/|@| |
311 | |@|\| |#| +----------------------+ |#| |/|@| |
312 | |@|\| |#| | | |#| |/|@| |
313 | |@|\| |#| | | |#| |/|@| |
314 |A|B|D|E|F|G| Child |M|F|E|D|C|A|
315 | |@|/| |#| | | |#| |\|@| |
316 | |@|/| |#| | | |#| |\|@| |
317 | |@|/| |#| +----------------------+ |#| |\|@| |
318 | |@|/| |#| N |#| |\|@| |
319 | |@|/| |#+--------------------------+#| |\|@| |
320 | |@|/| |############# F ##############| |\|@| |
321 | |@|/| +------------------------------+ |\|@| |
323 | |@|/+----------------------------------+\|@| |
324 | |@|///////////////// J \\\\\\\\\\\\\\\\\\|@| |
325 | |@+--------------------------------------+@| |
326 | |@@@@@@@@@@@@@@@@@@@ K @@@@@@@@@@@@@@@@@@@@| |
327 | +------------------------------------------+ |
329 +----------------------------------------------+
331 A: GtkContainer::border-width
332 B: GtkButton::default-border::left
333 C: GtkButton::default-border::right
335 E: GtkWidget::focus-padding
336 F: GtkWidget::focus-line-width
337 G: CHILD_SPACING + (depressed ? GtkButton::child-displacement-x : 0)
338 I: GtkButton::default-border::top
340 K: GtkButton::default-border::bottom
341 L: CHILD_SPACING + (depressed ? GtkButton::child-displacement-y : 0)
342 M: CHILD_SPACING - (depressed ? GtkButton::child-displacement-x : 0)
343 N: CHILD_SPACING - (depressed ? GtkButton::child-displacement-y : 0)
346 II) !HAS_DEFAULT && (!GtkWidget::interior-focus || !HAVE_FOCUS)
348 +----------------------------------------------+
352 | +--------------------------------------+ |
353 | |\\\\\\\\\\\\\\\\\ J //////////////////| |
354 | |\+----------------------------------+/| |
356 | |\| +------------------------------+ |/| |
357 | |\| |############# F ##############| |/| |
358 | |\| |#+--------------------------+#| |/| |
359 | |\| |#| L |#| |/| |
360 | |\| |#| +----------------------+ |#| |/| |
361 | |\| |#| | | |#| |/| |
362 | |\| |#| | | |#| |/| |
363 | B |D|E|F|G| Child |M|F|E|D| C |
364 | |/| |#| | | |#| |\| |
365 | |/| |#| | | |#| |\| |
366 | |/| |#| +----------------------+ |#| |\| |
367 | |/| |#| N |#| |\| |
368 | |/| |#+--------------------------+#| |\| |
369 | |/| |############# F ##############| |\| |
370 | |/| +------------------------------+ |\| |
372 | |/+----------------------------------+\| |
373 | |///////////////// J \\\\\\\\\\\\\\\\\\| |
374 | +--------------------------------------+ |
378 +----------------------------------------------+
383 B: GtkContainer::border-width + GtkButton::default-outside-border::left
384 C: GtkContainer::border-width + GtkButton::default-outside-border::right
386 E: GtkWidget::focus-padding
387 F: GtkWidget::focus-line-width
388 G: CHILD_SPACING + (depressed ? GtkButton::child-displacement-x : 0) +
389 (GtkButton::default-outside-border - GtkButton::default-outside-border)::left
390 I: GtkContainer::border-width + GtkButton::default-outside-border::top
392 K: GtkContainer::border-width + GtkButton::default-outside-border::bottom
393 L: CHILD_SPACING + (depressed ? GtkButton::child-displacement-y : 0) +
394 (GtkButton::default-outside-border - GtkButton::default-outside-border)::top
395 M: CHILD_SPACING - (depressed ? GtkButton::child-displacement-x : 0) +
396 (GtkButton::default-outside-border - GtkButton::default-outside-border)::right
397 N: CHILD_SPACING - (depressed ? GtkButton::child-displacement-y : 0) +
398 (GtkButton::default-outside-border - GtkButton::default-outside-border)::bottom
403 B: GtkContainer::border-width
404 C: GtkContainer::border-width
406 E: GtkWidget::focus-padding
407 F: GtkWidget::focus-line-width
408 G: CHILD_SPACING + (depressed ? GtkButton::child-displacement-x : 0)
409 I: GtkContainer::border-width
411 K: GtkContainer::border-width
412 L: CHILD_SPACING + (depressed ? GtkButton::child-displacement-y : 0)
413 M: CHILD_SPACING - (depressed ? GtkButton::child-displacement-x : 0)
414 N: CHILD_SPACING - (depressed ? GtkButton::child-displacement-y : 0)
419 III) HAS_DEFAULT && (GtkWidget::interior-focus && HAVE_FOCUS)
421 +----------------------------------------------+
423 | +------------------------------------------+ |
424 | |@@@@@@@@@@@@@@@@@@@ I @@@@@@@@@@@@@@@@@@@@| |
425 | |@+--------------------------------------+@| |
426 | |@|################# F ##################|@| |
427 | |@|#+----------------------------------+#|@| |
429 | |@|#| +------------------------------+ |#|@| |
430 | |@|#| |\\\\\\\\\\\\\ J //////////////| |#|@| |
431 | |@|#| |\+--------------------------+/| |#|@| |
432 | |@|#| |\| L |/| |#|@| |
433 | |@|#| |\| +----------------------+ |/| |#|@| |
434 | |@|#| |\| | | |/| |#|@| |
435 | |@|#| |\| | | |/| |#|@| |
436 |A|B|F|E|D|G| Child |M|D|E|F|C|A|
437 | |@|#| |/| | | |\| |#|@| |
438 | |@|#| |/| | | |\| |#|@| |
439 | |@|#| |/| +----------------------+ |\| |#|@| |
440 | |@|#| |/| N |\| |#|@| |
441 | |@|#| |/+--------------------------+\| |#|@| |
442 | |@|#| |///////////// J \\\\\\\\\\\\\\| |#|@| |
443 | |@|#| +------------------------------+ |#|@| |
445 | |@|#+----------------------------------+#|@| |
446 | |@|################# F ##################|@| |
447 | |@+--------------------------------------+@| |
448 | |@@@@@@@@@@@@@@@@@@@ K @@@@@@@@@@@@@@@@@@@@| |
449 | +------------------------------------------+ |
451 +----------------------------------------------+
453 A: GtkContainer::border-width
454 B: GtkButton::default-border::left
455 C: GtkButton::default-border::right
457 E: GtkWidget::focus-padding
458 F: GtkWidget::focus-line-width
459 G: CHILD_SPACING + (depressed ? GtkButton::child-displacement-x : 0)
460 I: GtkButton::default-border::top
462 K: GtkButton::default-border::bottom
463 L: CHILD_SPACING + (depressed ? GtkButton::child-displacement-y : 0)
464 M: CHILD_SPACING - (depressed ? GtkButton::child-displacement-x : 0)
465 N: CHILD_SPACING - (depressed ? GtkButton::child-displacement-y : 0)
468 IV) !HAS_DEFAULT && (GtkWidget::interior-focus && HAVE_FOCUS)
470 +----------------------------------------------+
474 | +--------------------------------------+ |
475 | |################# J ##################| |
476 | |#+----------------------------------+#| |
478 | |#| +------------------------------+ |#| |
479 | |#| |\\\\\\\\\\\\\ F //////////////| |#| |
480 | |#| |\+--------------------------+/| |#| |
481 | |#| |\| L |/| |#| |
482 | |#| |\| +----------------------+ |/| |#| |
483 | |#| |\| | | |/| |#| |
484 | |#| |\| | | |/| |#| |
485 | B |D|E|F|G| Child |M|F|E|D| C |
486 | |#| |/| | | |\| |#| |
487 | |#| |/| | | |\| |#| |
488 | |#| |/| +----------------------+ |\| |#| |
489 | |#| |/| N |\| |#| |
490 | |#| |/+--------------------------+\| |#| |
491 | |#| |///////////// F \\\\\\\\\\\\\\| |#| |
492 | |#| +------------------------------+ |#| |
494 | |#+----------------------------------+#| |
495 | |################# J ##################| |
496 | +--------------------------------------+ |
500 +----------------------------------------------+
505 B: GtkContainer::border-width + GtkButton::default-outside-border::left
506 C: GtkContainer::border-width + GtkButton::default-outside-border::right
508 E: GtkWidget::focus-padding
509 F: GtkWidget::focus-line-width
510 G: CHILD_SPACING + (depressed ? GtkButton::child-displacement-x : 0) +
511 (GtkButton::default-outside-border - GtkButton::default-outside-border)::left
512 I: GtkContainer::border-width + GtkButton::default-outside-border::top
514 K: GtkContainer::border-width + GtkButton::default-outside-border::bottom
515 L: CHILD_SPACING + (depressed ? GtkButton::child-displacement-y : 0) +
516 (GtkButton::default-outside-border - GtkButton::default-outside-border)::top
517 M: CHILD_SPACING - (depressed ? GtkButton::child-displacement-x : 0) +
518 (GtkButton::default-outside-border - GtkButton::default-outside-border)::right
519 N: CHILD_SPACING - (depressed ? GtkButton::child-displacement-y : 0) +
520 (GtkButton::default-outside-border - GtkButton::default-outside-border)::bottom
525 B: GtkContainer::border-width
526 C: GtkContainer::border-width
528 E: GtkWidget::focus-padding
529 F: GtkWidget::focus-line-width
530 G: CHILD_SPACING + (depressed ? GtkButton::child-displacement-x : 0)
531 I: GtkContainer::border-width
533 K: GtkContainer::border-width
534 L: CHILD_SPACING + (depressed ? GtkButton::child-displacement-y : 0)
535 M: CHILD_SPACING - (depressed ? GtkButton::child-displacement-x : 0)
536 N: CHILD_SPACING - (depressed ? GtkButton::child-displacement-y : 0)
539 ======================
543 ======================
545 Note: This is the draw_indicator=TRUE case; draw_indicator=FALSE
550 GtkWidget::interior_focus = TRUE
551 GtkWidget::focus_width = 1
552 GtkWidget::focus_padding = 0
553 GtkButton::indicator-size = 13
554 GtkButton::indicator-spacing = 2
558 GtkContainer::border_width = 0
566 +-------------------------------------------+
568 | G +------------------------+ |
569 | |########### D ##########| |
570 | +------------+ |#+--------------------+#| |
572 | | | |#| +----------------+ |#| |
574 |A| BxB |C|D|E| Child |E|#|F|
576 | | | |#| +----------------+ |#| |
578 | +------------+ |#+--------------------+#| |
579 | |########### D ##########| |
580 | G +------------------------+ |
582 +-------------------------------------------+
584 A: GtkContainer::border-width + GtkCheckButton::indicator-spacing
585 B: GtkCheckButton::indicator-size
586 C: 2 * GtkCheckButton::indicator-spacing
587 D: GtkWidget::focus-line-width
588 E: GtkWidget::focus-padding
589 F: GtkContainer::border-width
590 G: GtkConainer::border-width + GtkCheckButton::indicator-spacing
594 +-------------------------------------------+
596 | +---------------------------------------+ |
597 | |################ D ####################| |
598 | |#+-----------------------------------+#| |
600 | |#| +------------+ +---------------+ |#| |
603 |A|D|F| BxB |C | Child |E|D|A|
606 | |#| +------------+ +---------------+ |#| |
608 | |#+-----------------------------------+#| |
609 | |################ D ####################| |
610 | +---------------------------------------+ |
612 +-------------------------------------------+
614 A: GtkContainer::border-width
615 B: GtkCheckButton::indicator-size
616 C: 2 * GtkCheckButton::indicator-spacing
617 D: GtkWidget::focus-line-width
618 E: GtkWidget::focus-padding
619 F: GtkWidget::focus-padding + GtkCheckButton::indicator-spacing
620 G: GtkWidget::focus-padding + GtkCheckButton::indicator-spacing
630 GtkWidget::interior_focus = TRUE
631 GtkWidget::focus_width = 1
632 GtkWidget::focus_padding = 0
636 GtkContainer::border_width = 0
646 +--------------------------------------+
647 |\\\\\\\\\\\\\\\\\ B //////////////////|
648 |\+----------------------------------+/|
650 |\| +------------------------------+ |/|
656 |\| +------------------------------+ |/|
658 |\+----------------------------------+/|
659 |///////////////// B \\\\\\\\\\\\\\\\\/|
660 +--------------------------------------+
668 +------------------------------------------+
669 |####################C#####################|
670 |#+--------------------------------------+#|
671 |#|\\\\\\\\\\\\\\\\\ B //////////////////|#|
672 |#|\+----------------------------------+/|#|
674 |#|\| +------------------------------+ |/|#|
680 |#|\| +------------------------------+ |/|#|
682 |#|\+----------------------------------+/|#|
683 |#|///////////////// B \\\\\\\\\\\\\\\\\/|#|
684 |#+--------------------------------------+#|
685 |####################C#####################|
686 +------------------------------------------+
690 C: GtkWidget::focus-line-width
691 D: INNER_BORDER + (HAVE_FOCUS ? 0 : GtkWidget::focus-line-width
693 Note - effect here for !interior_focus is that bevel moves in
694 by focus-line-width when entry gains focus
703 GtkWidget::focus_line_width
704 GtkWidget::focus_padding
705 GtkExpander::expander_size
706 GtkExpander::expander_spacing
709 GtkContainer::border_width
712 if (GTK_WIDGET_VISIBLE (bin->child) && interior_focus)
714 +-------------------------------------+
716 | +---------+-----------------------+ |
717 | | C |##########E############| |
718 | | +-----+ |#+-------------------+#| |
720 | | | | |#| +---------------+ |#| |
721 |A|C| BxB |C|E|F| label_widget |F|E|A|
722 | | | | |#| +---------------+ |#| |
724 | | +-----+ |#+-------------------+#| |
725 | | C |##########E############| |
726 | +---------+-----------------------+ |
728 | +---------------------------------+ |
736 | +---------------------------------+ |
738 +-------------------------------------+
740 A: GtkContainer::border_width
741 B: GtkExpander::expander_size
742 C: GtkExpander::expander_spacing
743 D: GtkExpander::spacing
744 E: GtkWidget::focus_line_width
745 F: GtkWidget::focus_padding
747 if (GTK_WIDGET_VISIBLE (bin->child) && !interior_focus)
749 +-------------------------------------------+
751 | +---------------------------------------+ |
752 | |##################E####################| |
753 | |#+-----------------------------------+#| |
755 | |#| +---------+---------------------+ |#| |
757 | |#| | +-----+ | | |#| |
758 |A|E|F|C| BxB |C| label_widget |F|E|A|
759 | |#| | +-----+ | | |#| |
761 | |#| +---------+---------------------+ |#| |
763 | |#+-----------------------------------+#| |
764 | |##################E####################| |
765 | +---------------------------------------+ |
767 | +---------------------------------------+ |
775 | +---------------------------------------+ |
777 +-------------------------------------------+
779 A: GtkContainer::border_width
780 B: GtkExpander::expander_size
781 C: GtkExpander::expander_spacing
782 D: GtkExpander::spacing
783 E: GtkWidget::focus_line_width
784 F: GtkWidget::focus_padding
786 if (!GTK_WIDGET_VISIBLE (bin->child) && interior_focus)
788 +-------------------------------------+
790 | +---------+-----------------------+ |
791 | | C |##########E############| |
792 | | +-----+ |#+-------------------+#| |
794 | | | | |#| +---------------+ |#| |
795 |A|C| BxB |C|E|F| label_widget |F|E|A|
796 | | | | |#| +---------------+ |#| |
798 | | +-----+ |#+-------------------+#| |
799 | | C |##########E############| |
800 | +---------+-----------------------+ |
802 +-------------------------------------+
804 A: GtkContainer::border_width
805 B: GtkExpander::expander_size
806 C: GtkExpander::expander_spacing
807 E: GtkWidget::focus_line_width
808 F: GtkWidget::focus_padding
810 if (!GTK_WIDGET_VISIBLE (bin->child) && !interior_focus)
812 +-------------------------------------------+
814 | +---------------------------------------+ |
815 | |##################E####################| |
816 | |#+-----------------------------------+#| |
818 | |#| +---------+---------------------+ |#| |
820 | |#| | +-----+ | | |#| |
821 |A|E|F|C| BxB |C| label_widget |F|E|A|
822 | |#| | +-----+ | | |#| |
824 | |#| +---------+---------------------+ |#| |
826 | |#+-----------------------------------+#| |
827 | |##################E####################| |
828 | +---------------------------------------+ |
830 +-------------------------------------------+
832 A: GtkContainer::border_width
833 B: GtkExpander::expander_size
834 C: GtkExpander::expander_spacing
835 E: GtkWidget::focus_line_width
836 F: GtkWidget::focus_padding