The Project class provides methods and properties to access many of the objects contained in an Origin project file. The Project class includes collections of all different page types and collections of loose datasets (datasets not in a worksheet column) and of all datasets in the Origin Project file. Several methods to get active objects in the Origin project file (such as ActiveCurve, ActiveLayer, and ActiveFolder) and a RootFolder property are also available.

An Origin C Project object is a wrapper object that is a reference to an internal Origin project object. Origin C wrapper objects do not actually exist in Origin and merely refer to the internal Origin object. Only one project file at a time can be open in Origin consequently all Origin C Project objects refer to the same currently open project file.




int Project_ex1()
    // Count the number of layers in all graphs in project
    int nCount = 0;
    foreach(GraphPage gp in Project.GraphPages)
        foreach(GraphLayer gl in gp.Layers)
    out_int("Number of GraphLayers = ", nCount);
    out_str(""); // Another blank line 
    return 0;

Header to Include




Name Brief Example
ActivateFolder Set the project's active folder. Specified path can be relative or absolute and is not case sensitive. Examples
ActiveCurve Get the active Curve which is in the active layer of the active page(window). Examples
ActiveCurveBase The Active CurveBase in the active layer of the active page(window) Examples
ActiveFolder Gets the active folder in the project. Examples
ActiveLayer It returns the active Layer object. The active Layer object corresponds to the

active layer in the active window (graph, worksheet, matrix, or layout).

AddDataRange Add a datarange object to project that can be stored for later usage Examples
AddTree Adds a Tree Object to a serializable Internal Tree Manager Examples
AttachFile Attaches a file to the Project folder in Origin-C workspace. These files eventually gets saved with the project (.opj) file. Examples
ClearModified Mark the active project as not modified. This is usually done before exiting

or before loading another project in order to avoid the prompt asking the user to save it.

Compile Compile a source file Examples
CreateClass Create an object of a registered type class Examples
DeleteOperation Remove an operation from project Examples
DeleteTree Deletes the tree referred to by name, lpcszName Examples
FindClass Find an object of a registered type class [in the specified file and compile and link it as needed]

[and can optionally compile and link dependent file] Consecutive calls made to FindClass returns a reference to the same object

FindFunction Find a function in the specified file and compile and link it as needed. Examples
FindPage Find a Page object by name, can be short name or long name. Examples
GetAttachedFileNames Gets a list of file names that is attached to the Project folder in Origin-C workspace. Examples
GetCommonColumns It provides all the columns (by names or prefixes) that are common between the worksheets whose names are supplied.

If only one worksheet is supplied, all its columns are returned.

GetDataObject Creates a DataObject& from DataObject name.

Can be used to get a DateObject& from related DataObject name(Example2).

GetDataRange Get a datarange that has been added to project Examples
GetDatasetInfo Get Dataset information Examples
GetDatasetMasks Get dataset mask info Examples
GetDatasetPlotList find all the graphing layers where the named dataset is used to construct a plot Examples
GetDragDropInfo Get Drag-and-Drop information for the last dropped file.. Examples
GetFolderWithPage Find the folder that contains the page with the given name, and return the folder. Examples
GetLTStrVars It retrieves the list of all string LabTalk variables. Examples
GetLTVars It retrieves the list of all numeric LabTalk variables. Examples
GetName Gets the name of the project. Examples
GetObject Retrieves Origin object given the object unique ID Examples
GetOperationObject Get operation object from specified object Examples
GetPath Gets the path of the file corresponding to the project. If the project has never been saved

before, the path will be empty.

GetPlotDesignations Given a plot type, like IDM_PLOT_LINE, return an array of integers containing all possible column plot designations. Examples
GetPlotTypeInfo Given a plot id, like ID_PLOT_DOUBLEY, return the internal plot type like IDM_PLOT_LINE. Examples
GetProfileData Get internal profiling info Examples
GetReportTree Find the report tree in the project given its corresponding UID Examples
GetStorage Access storage areas. Examples
GetStorageNames Get names of storage class objects
GetTree Get the Tree if available in the manager Examples
GetTreeNames Retrieves the names of the Trees in the manager Examples
IsModified Test if the active project has been modified since the last saving or loading. Examples
IsVisible Check a control window to see if it is currently shown.

Origin's control windows are those that you can access from the View menu, like Project Explorer, Script Window etc.

NewOperation Create a new operation will specified class name Examples
Open Open a new project, or append a project. Current project will be closed and replace with the new one if successful Examples
OutStringToResultsLog It appends the string to the Results Log. Examples
Project Default constructor. Examples
RegisterUpdates Turns on or off the registration of updates made to the document Examples

RemoveAllAttachedFiles Removes all the files from the Project folder in Origin-C workspace. Examples

RemoveAttachedFile Removes a file from the Project folder in Origin-C workspace. Examples

RemoveDataRange Remove one datarange from project with specified name or the object Examples
Reset Loop over all wks and matrix and call its Reset method. Examples
Run Do the same as LabTalk: run -p au; wait for autoupdate to finish Examples
Save Save the active project. Examples
SetDatasetMasks Set dataset mask info Examples
ShowWindow Show/Hide the sepcified control window. Examples
Undo Undo the last block. Examples
UndoBlockBegin Begin undo block. After this call any undoable action belongs to the same block.

Do not call it directly, use UndoBlock class instead.

UndoBlockEnd End undo block.

Do not call it directly, use UndoBlock class instead.

UndoBlockId Gets current undo block identifier (ID). Examples
UndoBlockNameId Undo the block identified by specified ID. Examples


Name Brief Example
DatasetNames Collection of names of all Origin datasets. Examples
GraphPages Collection of all the graph pages in the project. Examples
LayoutPages Collection of all the layout pages in the project. Examples
LooseDatasetNames Collection of names of all loose Origin datasets. Examples
MatrixPages Collection of all the matrix pages in the project. Examples
Notes Collection of all the note pages in the project. Examples
Operations Collection of all the operations in the project. Examples
Pages Collection of all the pages in the project. Examples
RootFolder the root folder of the project. Examples
WorksheetPages Collection of all the worksheet pages in the project. Examples