Keywords for Javascript will be highlighted in blue and TDS variables and classes will be highlighted in green. The text in the lower left corner will indicate if the TDS is idle, rendering, or finished rendering. If there were any errors in the file, the line with the problem will be highlighted in red. Correct the change and re-render.
The Preview window will also open. If you choose the "Render" item from the Drawing menu, you'll see the preview window update to show a scaled representation of your desktop, something like this:
If you like this image and want to install it on your desktop, you can choose the "Install onto Desktop" item from the Drawing menu. The image file (or files if you have multiple displays) will be set as your desktop. You can use System Preferences to set your desktop back to the original image if you change your mind. The most recent 10 images will be saved in
~/Library/Application Support/Google/TopDraw
File Menu | Description |
---|---|
New | Create a new TDS file with a few lines of code to generate an image. |
Open... | Open a TDS file for editing, rendering, and saving. |
Open Recent | A list of recently opened TDS files. |
Close | Close the frontmost TDS file. |
Save | Save the frontmost TDS file. |
Save As... | Save the frontmost TDS file with a different name. |
Revert to Saved | After a TDS file has been modified, this option will be enabled and if selected, it will replace the contents of the file with the last saved contents. |
Export Sample... | Opens a Save panel prompting for the location to place a rendered JPEG file that is a small (1024 x 768 pixel) representation of the After a TDS file has been modified, this option will be enabled and if selected, it will replace the contents of the file with the last saved contents. |
Drawing Menu | Description |
---|---|
Render | Render the frontmost TDS into an image. |
Cancel Render | If you have a problem with a TDS rendering taking too long, you can choose this to cancel the rendering. |
Install onto Desktop | The image rendered from the frontmost TDS will be set as your desktop image (or images if you have multiple displays). |
Viewers Menu | Description |
---|---|
Launch Menubar Viewer | Launch the Top Draw Viewer application or active it, if it's already running. |
Launch Menubar Viewer at Startup | Control the launching of the Top Draw Viewer as a Login Item. This item will be checked to indicate if the viewer will be automatically launched at login. You can also control this from the System Preferences > Accounts > Login Items tab. |
Install Screen Saver | Creates an link from the bundled Top Draw screen saver to
~/Library/Screen Saversand opens up the System Preferences Screen Savers preference pane. |
Window Menu | Description |
---|---|
Preview | Toggle the Preview window's visible state. If a TDS has been rendered, its image will be in the Preview window. |
Logging | Toggle the Logging window's visible state. Information about the rendering of the TDS file is in the Logging window, along with any errors that may have occurred. |
Show Welcome Dialog at Launch | Constrols if there is a Welcome Dialog at launch time. |
Arguments | Description |
---|---|
(none) | The red, green, and blue values will be randomly assigned. |
color-name: String [, alpha-value: float] | Lookup the name (e.g., "white" or "purple") from the list of HTML colors. Optionally set the alpha to alpha-value. |
gray-scale: float [, alpha-value: float] | Set the red, green, and blue values to gray-scale. Optionally set the alpha to alpha-value. |
red-value, green-value, blue-value: float [, alpha-value: float] | Set the red, green, and blue values. Optionally set the alpha to alpha-value. |
Name | Arguments | Description | Returns |
---|---|---|---|
blend | src-color: Color [, blend-amount: float] | Create a new Color object that is blend-amount of src-color and (1.0 - blend-amount) of this color. If not specified, blend-amount defaults to 0.5. | Color |
contrasting | [contrast-amount: float] | Create a new color based on the current color that is contrasting by contrast-amount. The contrast is created by changing both the hue and the brightness. If not specified, contrast-amount defaults to 0.2. | Color |
darker | [darker-amount: float] | Create a new color based on the current color with its brightness adjusted downwards by darker-amount. If not specified, darker-amount defaults to 0.2. | Color |
lighter | [lighter-amount: float] | Create a new color based on the current color with its brightness adjusted upwards by lighter-amount. If not specified, lighter-amount defaults to 0.2. | Color |
vary | red-value, green-value, blue-value: float [, alpha-value: float] | Create a new Color object based on the current color but vsaried by some random amount. Specify the amount of variation for each channel. If not specified, alpha-value is 0.0 (no variation). | Color |
Name | Description | Type | Read/Write |
---|---|---|---|
alpha / a | The alpha channel used for translucency / opacity. | float | Read/Write |
blue / b | The blue channel. | float | Read/Write |
brightness | The HSV brightness value. Setting this value may result in the red, green, and/or blue values changing. | float | Read/Write |
green / g | The green channel. | float | Read/Write |
hue | The HSV hue value. Setting this value may result in the red, green, and/or blue values changing. | float | Read/Write |
red / r | The red channel. | float | Read/Write |
saturation | The HSV saturation value. Setting this value may result in the red, green, and/or blue values changing. | float | Read/Write |
Name | Arguments | Description | Returns |
---|---|---|---|
addLayer | layer: Layer [, compositing-mode: String] | Layers are ordered from back to front as they are added. The compositing-mode is one of: normal (default), multiply, screen, overlay, darken, lighten, color-dodge, color-burn, soft-light, hard-light, difference, exclusion, hue, saturation, color, luminosity, clear, copy, source-in, source-out, source-atop, destination-over, destination-in, destination-out, destination-atop, xor, darker, lighter. Please see Apple's documentation on blend modes for more details. |
void |
boundsOfScreen | index: integer | Return a Rect object that is the bounds of the screen specified by zero-based index. The number of screens can be determined by the screenCount property. | Rect |
Name | Description | Type | Read/Write |
---|---|---|---|
randomSeed | The "seed" value for any of the randomization. If you set this value to a fixed value, the random values will be repeatable between executions of the script for any code that occurs after setting the seed. The random seed for each rendering is printed out in the logging window. | integer | Read/Write |
screenCount | The number of screeens (displays) on the current system. | integer | Read-only |
Arguments | Description |
---|---|
(none) | Creates a dynamic filter that will use the contents of the kernelSource property for rendering. |
name: String | Specify the name of the filter (e.g., "CIGaussianBlur") |
Name | Arguments | Description | Returns |
---|---|---|---|
setKeyValue | key: String, value: Number | Color | [Number [, ... Number] | Specify a key/value pair. The value can be a Number, Color, or comma separated list of numbers when needing to specify a NSNumber, CIColor, or CIVector for the filter parameter respectively. | void |
Name | Description | Type | Read/Write |
---|---|---|---|
inputFilter | The output of another Filter can be specified as the input to this filter. This allows complex and efficient renderings. The filter should be of a type that expects an inputImage key. | Filter | Read/Write |
kernelSource | Specifies the source for the kernel when using a dynamic filter. See the Core Image Kernel language reference for details. | String | Write-only |
name | The name of the filter | integer | Read-only |
Arguments | Description |
---|---|
(none) | Empty gradient. Use the addColorStop() function to add colors and locations. |
color1, color2: Color [, ... colorN: Color] | Specify two or more colors for the gradient. The spacing will be evenly spaced based on the number of colors specified. |
Name | Arguments | Description | Returns |
---|---|---|---|
addColorStop | color: Color, location: Number | Specify a color and location. The location should be in the range (0, 1). The color at location (if any) will be replaced. | void |
Name | Description | Type | Read/Write |
---|---|---|---|
end | The end point of the gradient in pixel space. If the object using the gradient extends past this value, the gradient will continue to output the color at the last location. | Point | Read/Write |
radius | The size of the radius to be used at the start (use the "x" property of the Point) and at the end (use the "y" property of the Point). If this value is specified, the gradient will be drawn as a radial gradient. Otherwise, if this value is null or zero, the gradient will be drawn as a linear gradient. | Point | Read/Write |
start | The start point of the gradient in pixel space. If the object using the gradient extends before this value, the gradient will continue to output the color at the first location. | Point | Read/Write |
Arguments | Description |
---|---|
(none) | Empty gravity point. Use the location and gravity properties to modify the behavior. |
Name | Description | Type | Read/Write |
---|---|---|---|
gravity | The spherical gravitational field scalar. The value will be divided by the square of the distance from this point and the object in the simulator. | Point | Read/Write |
location | The location in pixel space of the GravityPoint. | Point | Read/Write |
Arguments | Description |
---|---|
layer: Layer | Create an image with the dimensions of layer. |
url: String | Create an image with the contents of the image file at url |
Name | Arguments | Description | Returns |
---|---|---|---|
exportImage | name: String [, type: String] | Create a file with the contents of this image. The name can contain an extension which
will define the output file type. If specified, the type will control the output file type. Supported formats / extensions are "png", "jpeg", and "tiff". The image file will saved to the folder:
~/Library/Application Support/Google/TopDraw |
void |
Name | Description | Type | Read/Write |
---|---|---|---|
alpha | The alpha compositing value in the range (0, 1) to be used when drawing the image. The default is 1.0. | float | Read/Write |
compositingMode | The mode to use when compositing the image. See the discussion of the compositing mode for the Compositor object for more details. The default is "normal". | String | Read/Write |
height | Height (in pixels) of the image | integer | Read-only |
width | Width (in pixels) of the image | integer | Read-only |
Arguments | Description |
---|---|
width, height: integer | Create a Layer of width and height dimensions. |
bounds: Rect | Create a Layer of bounds dimensions. |
Name | Arguments | Description | Returns |
---|---|---|---|
applyFilter | filter: Filter | Apply filter to the layer, replacing the contents of the layer with the output of the filter. The filter output will always be cropped to the dimensions of the Layer. | void |
arc | center: Point, radius, startAngle, endAngle: float | Specify the center point, radius, start and end Angles (in Radians). The arc is added to the current path in a clock-wise direction from startAngle to endAngle. | void |
arcTo | p1, p2: Point, radius: float | Specify the two tangent points and a radius. The arc is added to the current path. | void |
beginPath | (none) | Reset the Layer's path in preparation for adding drawing operations. | void |
bezierCurveTo | c1, c2: Point, endPt: Point | Add a cubic Bézier curve to the current path using the two control points and the end point. | void |
circle | [x, y: float] | center: Point, radius: float | Add a closed circle to the current path using the specified arguments. | void |
clearRect | rect: Rect | Clear the contents of the Layer bounded by rect. | void |
clip | (none) | Use the contents of the current path to clip any subsequent drawing operations. A common usage would use the save() and restore() functions around calls to clip(). | void |
closePath | (none) | Close the current path before filling or stroking. This is often implicitly done before a fill or stroke. | void |
coloredRect | rect: Rect, bottom-left, top-left, top-right, bottom-right: Color | Specify the rectangle and four colors which will be smoothly interpolated over the area of the rectangle. | void |
colorAtPoint | [x, y: float] | point: Point | Return the Color that is at the point specified by the arguments. | Color |
curveFit | points: Array [, closed: Boolean [, flatness: float [, tension: float [, bias: float]]]] | Given the array of points, draw a smooth Hermite curve between the points, intersecting each point. If specified, the curve can be closed. The flatness argument [0.1, 10] (default: 0.6) sets the amount of error allowed at each point when fitting. Tension [-1, 1] (default: 0) will change the curviness. Bias [-1, 1] (default: 0) will shift the weighting from the first to last point. | void |
drawImage | image: Image [, point: Point | destination: Rect | source, destination: Rect | There are three ways to draw an image into a Layer:
|
void |
drawText | text: Text, pt: Point | bounds: Rect | Depending on the second argument, either draw the text object at pt without any clipping or wrapping, or draw the text object so that it is contained by bounds. | void |
ellipse | rect: Rect | Add an ellipse bounded by rect to the current path. | void |
fill | (none) | Fill the current path using the object set as the fillStyle property. | void |
fillLayer | color: Color | gradient: Gradient | pattern: Pattern | Fill the layer with the object specified in the arguments. | void |
fillRect | rect: Rect | Fill rect using the object set as the fillStyle property. | void |
fillStroke | (none) | Fill and stroke the current path based on the fillStyle and strokeStyle properties. | void |
lineTo | [x, y: float] | pt: Point | Add a line from the current path position to the point specified by the arguments. | void |
moveTo | [x, y: float] | pt: Point | Move the position of the current path to the point specified by the arguments. | void |
quadraticCurveTo | control, end: Point | Add a quadratic Bézier curve to the current path, specifying the control and end points. | void |
rect | [x, y, width, height: float] | rect: Rect | Add a rectangle to the current path as specified by the arguments. | void |
reflect | location: String [, alpha: float] | Reflect the contents of the layer specified by location (valid values: "top", "left", "right", and "bottom") over the contents in the opposite portion, using alpha (value: 1.0 if unspecified). | void |
restore | (none) | Restore the graphics state from a previous save() command. | void |
rotate | angle: float | Rotate the current graphics transform by angle radians, clockwise if positive, counter-clockwise if negative. Typically, this call is bracketed by save() and restore() calls. | void |
roundedRect | [x, y, width, height: float] | rect: Rect, radius: float | Add a rectangle with rounded corners to the current path. The radius may be adjusted so that the rectangle doesn't intersect itself. | void |
save | (none) | Save the graphics state (all the properties, any rotations or scaling, and the current clipping). | void |
scale | [x, y: float] | point: Point | Scale the current graphics transform by the specified arguments. Negative values will flip drawing coordinates. | void |
shadow | offset: Point, blur-radius: float, color: Color | (none) | Specify the offset, blur radius, and color for shadows. The shadow parameters will be applied to subsequent drawing operations. Pass no arguments to disable shadow drawing. | void |
stroke | (none) | Stroke the current path using the object set as the strokeStyle property. | void |
strokeRect | rect: Rect | Stroke rect using the object set as the strokeStyle property. | void |
translate | [x, y: float] | point: Point | Translate the current graphics transform by the specified arguments. | void |
wavyLineTo | end: Point, smoothness: float, randomizer: Randomizer | Add a line from the current drawing position to end, randomly displacing points perpendicularly from their expected position. A small smoothness value (closer to 0) will create a chaotic line, whereas larger values (approaching 1) will create a very smooth line. | void |
Name | Description | Type | Read/Write |
---|---|---|---|
bounds | The dimensions of the layer without any positioning details. Setting this value will clear the contents of the Layer. | Rect | Read/Write |
compositingMode | The mode to use when compositing to the Layer. See the discussion of the compositing mode for the Compositor object for more details. The default is "normal". | String | Write-only |
fillStyle | Specify the object to be used when filling a path in the Layer. | Color, Pattern, or Gradient | Write-only |
frame | The location and dimensions of the layer. Setting this value will clear the contents of the Layer. | Rect | Read/Write |
lineCap | Specifies how line ends are rendered. Valid values are: "butt" (default), "round", and "square". | String | Write-only |
lineDash | Specify an array of pairs of integer numbers representing On and Off drawing | Array | Write-only |
lineJoin | Specifies how connected line segments are joined. Valid values are: "miter" (default), "bevel", and "round". | String | Write-only |
lineWidth | The rendered width of the line (in pixels). | float | Write-only |
miterLimit | The maximum ratio between miter length and the line width when lineJoin is set to "miter". The default is 10. | float | Write-only |
strokeStyle | The color to be used when stroking a path. | Color | Write-only |
Arguments | Description |
---|---|
(none) | Create an empty L-System. |
Name | Arguments | Description | Returns |
---|---|---|---|
addRule | rule: String | Add the rule to the L-System | void |
drawInLayer | layer: Layer | Draw this L-System into the specified layer. The default behavior is to stroke any forward lines. See the drawFunction description on how to change the appearance. | void |
Name | Description | Type | Read/Write |
---|---|---|---|
angle | The angle (radians) to use when making a turn ("+" or "-" rule) | float | Read/Write |
depth | The current depth of the system. | float | Read-only |
drawFunction | Call this function instead of stroking the line. The L-System object will be passed as the single argument to the function. | Function | Read/Write |
lastRule | The last rule evaluated. | String | Read-only |
lastTurn | The last direction change evaluated. | String | Read-only |
length | The length (in pixels) to use when moving forward. | float | Read/Write |
lengthScale | The length will be multiplied by this factor for each iteration. The default is 1.0. | float | Read/Write |
root | The root rule of the L-System. | String | Read/Write |
Arguments | Description |
---|---|
width, height: float [, alpha: float [, grayscale: boolean] | Specify the width and height of the noise. An optional uniform alpha can be applied and the noise can also be constructed to only have grayscale values. |
Name | Arguments | Description | Returns |
---|---|---|---|
drawInLayer | layer: Layer | Draw this noise into the specified layer. | void |
Name | Description | Type | Read/Write |
---|---|---|---|
alpha | The uniform alpha. | float | Read/Write |
grayscale | If true, the image will be grayscale. Otherwise, colored | boolean | Read/Write |
height | The height of the noise. | integer | Read-only |
image | An image that contains the noise. | Image | Read-only |
width | The width of the noise. | integer | Read-only |
Arguments | Description |
---|---|
(none) | Creates an empty Palette object. |
color: Color[, color2: Color, ...] | Creates a Palette with the specified colors. |
Name | Arguments | Description | Returns |
---|---|---|---|
addColors | color: Color[, color2: Color, ...] | Add colors to the Palette. | void |
addKulerColors | "search", query: String, [, themeCount: Integer] | Perform a search for the query string. The query can be modified with additional tags -- see
Adobe's Documentation regarding the
definitions. Each kuler theme contains 5 colors. The default is to load 5 themes, for a total of 25 colors. Example: this line will search for themes with the term "beach" and load the Palette with the first 10 (or less) found themes, for a total of 50 colors: addKulerColors("search", "beach", 10);This requests this from Adobe's site: search:beach. |
void |
"popular" | "rating" | "recent" | "random":String [, themeCount: Integer] | Load the Palette with themes that match one of the allowed search types and limit to an optional number of themes. The default is to load 5 themes. | void | |
colorAtIndex | index: Integer | Return the Color object at the specified index, or null if there is no color at that index. | Color |
Name | Description | Type | Read/Write |
---|---|---|---|
count | The number of Color objects in the Palette | integer | Read-only |
colors | An Array containing all of the Colors in the Palette. | Array | Read-only |
randomColor | Returns a randomly chosen Color from the Palette | Color | Read-only |
Arguments | Description |
---|---|
(none) | Creates an empty Particles object. Particle colors and GravityPoints can be added. |
Name | Arguments | Description | Returns |
---|---|---|---|
addColor | color: Color | Add a color to be used when new particles are created. | void |
addGravityPoint | gravityPoint: GravityPoint | Add a GravityPoint object that will influence the motion of the particles. | void |
Name | Description | Type | Read/Write |
---|---|---|---|
alphaDelay | Specifies the delay (in steps) before the alphaDelta property will be applied to particles. | float | Read/Write |
alphaDelta | Specifies the change in alpha value for each step. | float | Read/Write |
accelerationXRandomizer | Specifies the Randomizer to be used for the x coordinate when creating new particles. | Randomizer | Read/Write |
accelerationYRandomizer | Specifies the Randomizer to be used for the y coordinate when creating new particles. | Randomizer | Read/Write |
gravity | Specifies the components of the gravity to apply to particles on each step. | Point | Read/Write |
location | Specifies the location of the Particle emissions. | Point | Read/Write |
maxAge | The maximum age (in steps) of a particle before its destruction. | integer | Read/Write |
maxParticles | The maximum number of active particles. | integer | Read/Write |
trailWidth | The width (in pixels) of the trail created by an active particle. | float | Read/Write |
velocityXRandomizer | Specifies the Randomizer to be used for the x velocity component when creating new particles. | Randomizer | Read/Write |
velocityYRandomizer | Specifies the Randomizer to be used for the y velocity component when creating new particles. | Randomizer | Read/Write |
Arguments | Description |
---|---|
image: Image | Creates a pattern with image. |
Name | Description | Type | Read/Write |
---|---|---|---|
image | The image used in the pattern. | Image | Read/Write |
offset | Specifies the offset between the image. The default value is the size of the image. Values less than that will cause overlap, and greater values will leave spacing between the images. | Point | Write-only |
Arguments | Description |
---|---|
(none) | Creates a Plasma object. The default is colored, non-opqaue, and with a variation of 0.5. |
Name | Description | Type | Read/Write |
---|---|---|---|
bottomLeft | The starting color used in the bottom left corner of the Plasma. | Color | Read/Write |
bottomRight | The starting color used in the bottom right corner of the Plasma. | Color | Read/Write |
grayscale | If true, the plasma will be grayscale rather than colored. | boolean | Read/Write |
opaque | If true, the plasma will be opaque rather than translucent. | boolean | Read/Write |
topLeft | The starting color used in the top left corner of the Plasma. | Color | Read/Write |
topRight | The starting color used in the top right corner of the Plasma. | Color | Read/Write |
topRight | Specifies the amount of variation from the starting corner colors. The range is (0, 1), with 0 being no variation, and 1 being a boatload of variation. The default is 0.5. | float | Read/Write |
Arguments | Description |
---|---|
(none) | A point with the coordinate value (0, 0). |
x, y: float | A point with the coordinate value (x, y). |
pt: Point | A point with the coordinate value (pt.x, pt.y). |
Name | Arguments | Description | Returns |
---|---|---|---|
add | pt: Point | Create a new Point with the summed coordinate values of the current point and pt. | Point |
distance | pt: Point | The scalar distance between the current point and pt. | float |
Name | Description | Type | Read/Write |
---|---|---|---|
x | The x axis coorinate value | float | Read/Write |
y | The y axis coorinate value | float | Read/Write |
Arguments | Description |
---|---|
(none) | A randomizer that will return values in the range of (0, 1). |
min, max: float | A randomizer that will return values in the range of (min, max). |
Name | Description | Type | Read/Write |
---|---|---|---|
boolValue / booleanValue | A random boolean value. | boolean | Read-only |
floatValue | A random floating point value | float | Read-only |
intValue / integerValue | A random integer value based on the rounded floating point value. | integer | Read-only |
Arguments | Description |
---|---|
(none) | A rectangle with the coordinate value (0, 0) and dimension (0, 0). |
x, y, width, height: float | A rectangle with the coordinate value (x, y) and dimension (width, height). |
rect: Rect | A rectangle with the same coordinate and dimension as rect. |
Name | Arguments | Description | Returns |
---|---|---|---|
point | point-type: string | Create a new Point with the coorinates based on the point-type specifed. Recognized values for point-type are: topleft, topcenter, topright, centerleft, center, centerright, bottomleft, bottomcenter, and bottomright. A value of random will use one of the aforementioned point-types. | Point |
inset | x-or-uniform: float [, y: float] | Create a new rectangle with the coorinates and dimensions either uniformly inset or inset by different amounts in the x and y axes. pt. | Rect |
intersect | rect: Rect | Create a new rectangle defined by the intersection of the current rectangle and rect. | Rect |
union | rect: Rect | Create a new rectangle defined by the union of the current rectangle with rect. | Rect |
Name | Description | Type | Read/Write |
---|---|---|---|
height | The height of the rectangle | float | Read/Write |
isEmpty | Returns true if the size of the rect is (0, 0) | boolean | Read-only |
midX | The midpoint of the x axis side of the rectangle. | float | Read-only |
midY | The midpoint of the y axis side of the rectangle. | float | Read-only |
width | The width of the rectangle | float | Read/Write |
x | The x axis coordinate value | float | Read/Write |
y | The y axis coordinate value | float | Read/Write |
Arguments | Description |
---|---|
(none) | An empty Simulator object. Add SimulatorObjects (e.g., Particles) using the addSimulatorObject() function. |
Name | Arguments | Description | Returns |
---|---|---|---|
addSimulatorObject | obj: SimulatorObject | Add a SimulatorObject to the simulator. | void |
runInLayer | layer: Layer, step-count: integer | Run the Simulator for step-count steps, rendering the output to layer. | void |
Name | Description | Type | Read/Write |
---|---|---|---|
timeStep | The amount of simulator time to pass with each step. The default value is 0.166. Large values may produce un-smooth results in the rendering | float | Read/Write |
~/Library/Application Support/Google/TopDraw/Storage
Arguments | Description |
---|---|
(none) | A Storage object which is associated with the name of the script file. |
identifier: String | A Storage object associated with identifier |
Name | Arguments | Description | Returns |
---|---|---|---|
setKeyValue | key: String, value: Number | String | Set the value for key. | void |
keyValue | key: String | Return the value for key. | Number | String |
Name | Description | Type | Read/Write |
---|---|---|---|
allKeys | An Array of all of the keys. | Array | Read-only |
allValues | An Array of all of the values. | Array | Read-only |
Arguments | Description |
---|---|
(none) | An empty Text object. |
string: String | A Text object with the inital string value set. |
Name | Arguments | Description | Returns |
---|---|---|---|
boundsForRect | rect: Rect | Given rect, return the bounds of the rendered string that will fit the width of rect, but (potentially) overflow out the bottom. | Rect |
Name | Description | Type | Read/Write |
---|---|---|---|
backgroundColor | The color to use for the text background. | Color | Read/Write |
bounds | The bounds of the string when rendered. | Rect | Read-only |
fontName | The name of the font. This is typically also known as the "family" name (e.g., Helvetica, Courier). To use a styled varient (e.g., bold), use the fontStyle property. | String | Read/Write |
fontSize | The point size of the font. | float | Read/Write |
fontStyle | The style of the font. Allowed values are: bold, italic, condensed, expanded. The values can be combined. If the font specified in the fontName does not exist with this style, the unstyled variant will be chosen | String | Write-only |
foregroundColor | The color to use for the text foreground. | Color | Read/Write |
Name | Description | Class | Read/Write |
---|---|---|---|
compositor | The Compositor object for all of the desktop. | Compositor | Read-only |
desktop | A Layer sized to covers all of the desktop. If there are multiple displays and they are arranged in a non-rectangular pattern, the desktop will be sized to be the smallest rectangle that covers all of them. The desktop is placed at the bottom of all other Layers in the global compositor. | Layer | Read-only |
log(str:String) | Display str in the Logging window | Function | n/a |
menubar | A Layer sized and positioned to be underneath the menubar. If nothing is drawn into this Layer, it will be transparent and will not affect the desktop image. Otherwise, the menubar will be placed on top of all other Layers in the global compositor. If your Desktop & Screen Saver System Preferences are set to use a Translucent Menu Bar, the color in this layer will show through and look really cool. | Layer | Read-only |
The most up-to-date versions can be found at Google's open source repository, as the Top Draw project.
The program is open source and written in Objective-C using Apple's Xcode IDE. It uses the JavaScriptCore, Quartz, and CoreImage frameworks.