ManageGeom.3
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:3k
源码类别:

通讯编程

开发平台:

Visual C++

  1. '"
  2. '" Copyright (c) 1990-1994 The Regents of the University of California.
  3. '" Copyright (c) 1994-1996 Sun Microsystems, Inc.
  4. '"
  5. '" See the file "license.terms" for information on usage and redistribution
  6. '" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
  7. '" 
  8. '" RCS: @(#) $Id: ManageGeom.3,v 1.2 1998/09/14 18:22:52 stanton Exp $
  9. '" 
  10. .so man.macros
  11. .TH Tk_ManageGeometry 3 4.0 Tk "Tk Library Procedures"
  12. .BS
  13. .SH NAME
  14. Tk_ManageGeometry - arrange to handle geometry requests for a window
  15. .SH SYNOPSIS
  16. .nf
  17. fB#include <tk.h>fR
  18. .sp
  19. fBTk_ManageGeometryfR(fItkwin, mgrPtr, clientDatafR)
  20. .SH ARGUMENTS
  21. .AS Tk_GeometryProc clientData
  22. .AP Tk_Window tkwin in
  23. Token for window to be managed.
  24. .AP Tk_GeomMgr *mgrPtr in
  25. Pointer to data structure containing information about the
  26. geometry manager, or NULL to indicate that fItkwinfR's geometry
  27. shouldn't be managed anymore.
  28. The data structure pointed to by fImgrPtrfR must be static:
  29. Tk keeps a reference to it as long as the window is managed.
  30. .AP ClientData clientData in
  31. Arbitrary one-word value to pass to geometry manager callbacks.
  32. .BE
  33. .SH DESCRIPTION
  34. .PP
  35. fBTk_ManageGeometryfR arranges for a particular geometry manager,
  36. described by the fImgrPtrfR argument, to control the geometry
  37. of a particular slave window, given by fItkwinfR.
  38. If fItkwinfR was previously managed by some other geometry manager,
  39. the previous manager loses control in favor of the new one.
  40. If fImgrPtrfR is NULL, geometry management is cancelled for
  41. fItkwinfR.
  42. .PP
  43. The structure pointed to by fImgrPtrfR contains information about
  44. the geometry manager:
  45. .CS
  46. typedef struct {
  47. char *fInamefR;
  48. Tk_GeomRequestProc *fIrequestProcfR;
  49. Tk_GeomLostSlaveProc *fIlostSlaveProcfR;
  50. } Tk_GeomMgr;
  51. .CE
  52. The fInamefR field is the textual name for the geometry manager,
  53. such as fBpackfR or fBplacefR;  this value will be returned
  54. by the command fBwinfo managerfR.
  55. .PP
  56. fIrequestProcfR is a procedure in the geometry manager that
  57. will be invoked whenever fBTk_GeometryRequestfR is called by the
  58. slave to change its desired geometry.
  59. fIrequestProcfR should have arguments and results that match the
  60. type fBTk_GeomRequestProcfR:
  61. .CS
  62. typedef void Tk_GeomRequestProc(
  63. ClientData fIclientDatafR,
  64. Tk_Window fItkwinfR);
  65. .CE
  66. The parameters to fIrequestProcfR will be identical to the
  67. corresponding parameters passed to fBTk_ManageGeometryfR.
  68. fIclientDatafR usually points to a data
  69. structure containing application-specific information about
  70. how to manage fItkwinfR's geometry.
  71. .PP
  72. The fIlostSlaveProcfR field of fImgrPtrfR points to another
  73. procedure in the geometry manager.
  74. Tk will invoke fIlostSlaveProcfR if some other manager
  75. calls fBTk_ManageGeometryfR to claim
  76. fItkwinfR away from the current geometry manager.
  77. fIlostSlaveProcfR is not invoked if fBTk_ManageGeometryfR is
  78. called with a NULL value for fImgrPtrfR (presumably the current
  79. geometry manager has made this call, so it already knows that the
  80. window is no longer managed), nor is it called if fImgrPtrfR
  81. is the same as the window's current geometry manager.
  82. fIlostSlaveProcfR should have
  83. arguments and results that match the following prototype:
  84. .CS
  85. typedef void Tk_GeomLostSlaveProc(
  86. ClientData fIclientDatafR,
  87. Tk_Window fItkwinfR);
  88. .CE
  89. The parameters to fIlostSlaveProcfR will be identical to the
  90. corresponding parameters passed to fBTk_ManageGeometryfR.
  91. .SH KEYWORDS
  92. callback, geometry, managed, request, unmanaged