Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Geometry(3)		       Tk Themed Widget			   Geometry(3)

______________________________________________________________________________

NAME
       Ttk_MakeBox,   Ttk_PadBox,  Ttk_ExpandBox,  Ttk_PackBox,	 Ttk_StickBox,
       Ttk_PlaceBox,  Ttk_BoxContains,	Ttk_MakePadding,   Ttk_UniformPadding,
       Ttk_AddPadding,	Ttk_RelievePadding, Ttk_GetPaddingFromObj, Ttk_GetBor-
       derFromObj, Ttk_GetStickyFromObj	- Tk themed geometry utilities

SYNOPSIS
       #include	<tkTheme.h>

       Ttk_Box
       Ttk_MakeBox(int x, int y, int width, int	height);

       Ttk_Box
       Ttk_PadBox(Ttk_Box parcel, Ttk_Padding padding);

       Ttk_Box
       Ttk_ExpandBox(Ttk_Box parcel, Ttk_Padding padding);

       Ttk_Box
       Ttk_PackBox(Ttk_Box *cavity, int	width, int height, Ttk_Side side);

       Ttk_Box
       Ttk_StickBox(Ttk_Box parcel, int	width, int height, unsigned sticky);

       Ttk_Box
       Ttk_PlaceBox(Ttk_Box *cavity, int width,	int height, Ttk_Side side, unsigned sticky);

       Ttk_Box
       Ttk_AnchorBox(Ttk_Box parcel, int width,	int height, Tk_Anchor anchor);

       Ttk_Padding
       Ttk_MakePadding(short left, short top, short right, short bottom);

       Ttk_Padding
       Ttk_UniformPadding(short	border);

       Ttk_Padding
       Ttk_AddPadding(Ttk_Padding padding1, Ttk_Padding	padding2;

       Ttk_Padding
       Ttk_RelievePadding(Ttk_Padding padding, int relief);

       int
       Ttk_BoxContains(Ttk_Box box, int	x, int y);

       int
       Ttk_GetPaddingFromObj(Tcl_Interp	*interp, Tk_Window tkwin, Tcl_Obj *objPtr, Ttk_Padding *padding_rtn);

       int
       Ttk_GetBorderFromObj(Tcl_Interp *interp,	Tcl_Obj	*objPtr, Ttk_Padding *padding_rtn);

       int
       Ttk_GetStickyFromObj(Tcl_Interp *interp,	Tcl_Obj	*objPtr, int *sticky_rtn);

ARGUMENTS
       Tk_Anchor anchor	(in)			 One of	the symbolic constants
						 TK_ANCHOR_N,	 TK_ANCHOR_NE,
						 etc.	See   Tk_GetAnchorFro-
						 mObj(3).

       Ttk_Box * cavity	(in/out)		 A   rectangular  region  from
						 which a parcel	is allocated.

       short border (in)			 Extra padding (in pixels)  to
						 add uniformly to each side of
						 a region.

       short bottom (in)			 Extra padding (in pixels)  to
						 add  to  the  bottom of a re-
						 gion.

       Ttk_Box box (in)

       Ttk_Box * box_rtn (out)			 Specifies a  rectangular  re-
						 gion.

       int height (in)				 The height in pixels of a re-
						 gion.

       Tcl_Interp * interp (in)			 Used to store error messages.

       int left	(in)				 Extra padding (in pixels)  to
						 add to	the left side of a re-
						 gion.

       Tcl_Obj * objPtr	(in)			 String	value contains a  sym-
						 bolic name to be converted to
						 an enumerated value  or  bit-
						 mask.	Internal rep may be be
						 modified to cache correspond-
						 ing value.

       Ttk_Padding padding (in)

       Ttk_Padding * padding_rtn (out)		 Extra	padding	 to add	on the
						 inside	of a region.

       Ttk_Box parcel (in)			 A rectangular	region,	 allo-
						 cated from a cavity.

       int relief (in)				 One of	the standard Tk	relief
						 options    (TK_RELIEF_RAISED,
						 TK_RELIEF_SUNKEN, etc.).  See
						 Tk_GetReliefFromObj.

       short right (in)				 Extra padding (in pixles)  to
						 add  to  the  right side of a
						 region.

       Ttk_Side	side (in)			 One	 of	TTK_SIDE_LEFT,
						 TTK_SIDE_TOP, TTK_SIDE_RIGHT,
						 or TTK_SIDE_BOTTOM.

       unsigned	sticky (in)			 A bitmask containing  one  or
						 more  of the bits TTK_STICK_W
						 (west,	or left),  TTK_STICK_E
						 (east,	 or right, TTK_STICK_N
						 (north,    or	  top),	   and
						 TTK_STICK_S  (south,  or bot-
						 tom).	TTK_FILL_X is  defined
						 as	 a     synonym	   for
						 (TTK_STICK_W|TTK_STICK_E),
						 TTK_FILL_Y  is	 a synonym for
						 (TTK_STICK_N|TTK_STICK_S),
						 and	  TTK_FILL_BOTH	   and
						 TTK_STICK_ALL	are   synonyms
						 for  (TTK_FILL_X|TTK_FILL_Y).
						 See also: grid(n).

       Tk_Window tkwin (in)			 Window	whose screen  geometry
						 determines the	conversion be-
						 tween absolute	units and pix-
						 els.

       short top (in)				 Extra padding at the top of a
						 region.

       int width (in)				 The width in pixels of	a  re-
						 gion.

       int x (in)				 X  coordinate	of  upper-left
						 corner	of region.

       int y (in)				 Y  coordinate	of  upper-left
						 corner	of region.
______________________________________________________________________________

BOXES
       The Ttk_Box structure represents	a rectangular region of	a window:
	      typedef struct {
		  int x;
		  int y;
		  int width;
		  int height;
	      }	Ttk_Box;
       All coordinates are relative to the window.

       Ttk_MakeBox  is	a convenience routine that contsructs a	Ttk_Box	struc-
       ture representing a region width	pixels wide, height  pixels  tall,  at
       the specified x,	y coordinates.

       Ttk_PadBox  returns  a  new  box	 located  inside the specified parcel,
       shrunken	according to the left, top, right, and bottom  margins	speci-
       fied by padding.

       Ttk_ExpandBox  is  the inverse of Ttk_PadBox: it	returns	a new box sur-
       rounding	the specified parcel, expanded	according to  the  left,  top,
       right, and bottom margins specified by padding.

       Ttk_PackBox allocates a parcel width by height pixels wide on the spec-
       ified side of the cavity, and shrinks the cavity	accordingly.

       Ttk_StickBox places a box with the requested width  and	height	inside
       the parcel according to the sticky bits.

       Ttk_PlaceBox combines Ttk_PackBox and Ttk_StickBox: it allocates	a par-
       cel on the specified side of the	cavity,	places a box of	the  requested
       size inside the parcel according	to sticky, and shrinks the cavity.

       Ttk_AnchorBox  places  a	box with the requested width and height	inside
       the parcel according to the specified anchor option.

       Ttk_BoxContains tests if	the specified x, y coordinate lies within  the
       rectangular region box.

PADDDING
       The  Ttk_Padding	 structure is used to represent	borders, internal pad-
       ding, and external margins:
	      typedef struct {
		  short	left;
		  short	top;
		  short	right;
		  short	bottom;
	      }	Ttk_Padding;

       Ttk_MakePadding is a convenience	routine	that contsructs	a  Ttk_Padding
       structure with the specified left, top, right, and bottom components.

       Ttk_UniformPadding  constructs  a Ttk_Padding structure with all	compo-
       nents equal to the specified border.

       Ttk_AddPadding adds two Ttk_Paddings together and  returns  a  combined
       padding containing the sum of the individual padding components.

       Ttk_RelievePadding adds an extra	2 pixels of padding to padding accord-
       ing to the specified relief.  If	relief is TK_RELIEF_SUNKEN,  adds  two
       pixels  at  the top and left so the inner region	is shifted down	and to
       the left.  If it	is TK_RELIEF_RAISED, adds two pixels at	the bottom and
       right  so  the inner region is shifted up and to	the right.  Otherwise,
       adds 1 pixel on all sides.  This	is typically used in element  geometry
       procedures to simulate a	"pressed-in" look for pushbuttons.

CONVERSION ROUTINES
       Ttk_GetPaddingFromObj  converts	the  string in objPtr to a Ttk_Padding
       structure.  The string representation is	a list of up  to  four	length
       specifications  "left  top  right bottom".  If fewer than four elements
       are specified, bottom defaults to top, right defaults to	left, and  top
       defaults	 to left.  See Tk_GetPixelsFromObj(3) for the syntax of	length
       specifications.

       Ttk_GetBorderFromObj is the same	as Ttk_GetPaddingFromObj  except  that
       the  lengths are	specified as integers (i.e., resolution-dependant val-
       ues like	3m are not allowed).

       Ttk_GetStickyFromObj converts the string	in objPtr to a sticky bitmask.
       The string contains zero	or more	of the characters n, s,	e, or w.

SEE ALSO
       Tk_GetReliefFromObj(3), Tk_GetPixelsFromObj(3), Tk_GetAnchorFromObj(3)

KEYWORDS
       geometry, padding, margins, box,	region,	sticky,	relief

Tk				      8.5			   Geometry(3)

NAME | SYNOPSIS | ARGUMENTS | BOXES | PADDDING | CONVERSION ROUTINES | SEE ALSO | KEYWORDS

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Ttk_AddPadding.tk85&sektion=3&manpath=FreeBSD+13.0-RELEASE+and+Ports>

home | help