C4 Data Types

boolean

A True or False value.


[#C4Id]C4Id

This is a string.

All profiles generated by CodeWeavers or from the compatibility center will be of the form com.codeweavers.c4.xxx


[#expandable-string]expandable string

We perform Windows-style environment variable substitutions in these strings. This is used so profiles don't have to hard-code things like 'c:', 'Program Files', etc. To this end the installer core access to the standard environment variables, which include the ones listed below (values are indicative only):

  • %AllUsersProfile% = c:\users\Public
  • %AppData% = c:\users\crossover\Application Data
  • %ComSpec% = c:\windows\system32\cmd.exe
  • %LocalAppData% = c:\users\crossover\Local Settings\Application Data
  • %ProgramFiles% = c:\Program Files
  • %SystemDrive% = c:
  • %SystemRoot% = c:\windows
  • %Temp% = c:\windows\temp
  • %UserProfile% = c:\users\crossover
  • %WinDir% = c:\windows
  • %WinSysDir% = c:\windows\system32

In addition to the standard Windows environment variables, the installer defines (values are indicative only):

  • %Desktop% = c:\users\crossover\Desktop
  • %StartMenu% = c:\users\crossover\Start Menu
  • %Programs% = Programs
  • %Accessories% = Programs\Accessories

[#limited-html-string]limited HTML string

This type is used for most text where we want to allow some control on the formatting so that specific parts of it can be emphasized with bold or colors. This should also allow links.

The exact HTML subset we support will be determined by the GUI widget capabilities.


[#localizable-string]localizable string

In the current CrossOver Setup a number of strings are automatically localized, the application names for instance. This is needed because applications may have a different name depending on the language, Windows Media Player for instance, and users may not recognize their foreign name.

  • ISVs that put up a .c4p file on their web site will want to be able to provide translations for these strings right in that profile file. With XML this can be done by allowing multiple instances of the corresponding tag and giving it a 'lang' attribute. So we would have things like:
 <name lang="fr">Lecteur Windows Media</name>```

----

[#regular-expression]**regular expression**

A fairly general perl-style regular expression.

----

[#restricted-file-glob]**restricted file glob**

In many places we need to check for the presence of files or work on a set of files. We do so by using file globs using the standard shell syntax.

The glob can also be an [expandable string](/support/wiki/c4p_DataTypes#expandable-string).

----

[#restricted-file-path]**restricted file path**

This is a relative file path. This is used to identify a destination directory for a file copy for instance.
Last modified on 2023-10-02 15:38:35 UTC by Andrew Balfour