home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / boot / i386 / root / usr / share / YaST2 / modules / XVersion.ycp < prev    next >
Text File  |  2006-11-29  |  2KB  |  117 lines

  1. /**
  2.  * File:    modules/XVersion.ycp
  3.  * Module:    yast2
  4.  * Summary:    Differences between multiple X versions
  5.  * Authors:    Jiri Srain <jsrain@suse.cz>
  6.  *
  7.  */
  8.  
  9. {
  10.  
  11. module "XVersion";
  12.  
  13. /**
  14.  * All paths related to X server
  15.  */
  16. map<string,string> _paths = nil;;
  17.  
  18. /**
  19.  * Initialize the paths
  20.  */
  21. void Initialize () {
  22.     list<string> keys = (list<string>)SCR::Dir (.x_version);
  23.     if (size (keys) > 0)
  24.     {
  25.     _paths = $[];
  26.     foreach (string k, keys, {
  27.         string id = substring (k, 1);
  28.         _paths[id] = (string)SCR::Read (add (.x_version, k));
  29.     });
  30.     y2milestone ("X11 paths: %1", _paths);
  31.     }
  32.     else
  33.     {
  34.     y2error("Data for XVersion not defined!");
  35.     }
  36. }
  37.  
  38. /**
  39.  * Provide a path
  40.  * @param id string path identification to provide
  41.  * @return string required path, nil if not defined
  42.  */
  43. global string Path (string id) {
  44.     if (_paths == nil)
  45.     Initialize ();
  46.     return _paths[id]:nil;
  47. }
  48.  
  49. // wrappers below
  50.  
  51. /**
  52.  * Provide path to bin directory of X11
  53.  * @return string path to /usr/X11R6/bin, resp. /usr/bin
  54.  */
  55. global string binPath () {
  56.     return Path ("bindir");
  57. }
  58.  
  59. /**
  60.  * Provide path to lib directory of X11
  61.  * @return string path to /usr/X11R6/lib, resp. /usr/lib
  62.  */
  63. global string libPath () {
  64.     return Path ("libdir");
  65. }
  66.  
  67. /**
  68.  * Provide path to lib64 directory of X11
  69.  * @return string path to /usr/X11R6/lib64, resp. /usr/lib64
  70.  */
  71. global string lib64Path () {
  72.     return Path ("lib64dir");
  73. }
  74.  
  75. /**
  76.  * Provide path to man directory of X11
  77.  * @return string path to /usr/X11R6/man, resp. /usr/man
  78.  */
  79. global string manPath () {
  80.     return Path ("mandir");
  81. }
  82.  
  83. /**
  84.  * Provide path to include directory of X11
  85.  * @return string path to /usr/X11R6/include, resp. /usr/include
  86.  */
  87. global string includePath () {
  88.     return Path ("includedir");
  89. }
  90.  
  91. /**
  92.  * Provide path to share directory of X11
  93.  * @return string path to /usr/X11R6/share, resp. /usr/share
  94.  */
  95. global string sharePath () {
  96.     return Path ("sharedir");
  97. }
  98.  
  99. /**
  100.  * Provide path to info directory of X11
  101.  * @return string path to /usr/X11R6/info, resp. /usr/info
  102.  */
  103. global string infoPath () {
  104.     return Path ("infodir");
  105. }
  106.  
  107. /**
  108.  * Provide path to font directory of X11
  109.  * @return string path to /usr/X11R6/font, resp. /usr/font
  110.  */
  111. global string fontPath () {
  112.     return Path ("fontdir");
  113. }
  114.  
  115. /* EOF */
  116. }
  117.