import GitHubMolecule from 'canvas-template/src/js/molecules/githubmolecule.js'
Constructor Summary
Public Constructor | ||
public |
constructor(values: object) The constructor function. |
Member Summary
Public Members | ||
public |
This atom's type |
|
public |
The color for the whole in the center of the drawing...probably doesn't need to be in this scope |
|
public |
A description of this atom |
|
public |
This atom's name |
|
public |
A flag to signal if this node is the top level node |
Method Summary
Public Methods | ||
public |
beginPropagation(force: boolean) Starts propagation from this atom if it is not waiting for anything up stream. |
|
public |
async loadProjectByID(id: number): * Loads a project into this GitHub molecule from github based on the passed github ID. |
|
public |
Reload this github molecule from github |
|
public |
serialize(): * Save the project information to be loaded. |
|
public |
Updates sidebar with buttons for user in runMode |
Inherited Summary
From class Atom | ||
public |
[key]: * Assign each of the values in values as this.value |
|
public |
A warning message displayed next to the atom. |
|
public |
A function which can be called to cancel the processing being done for this atom. |
|
public |
This atom's current color |
|
public |
This atom's default color (ie when not selected or processing) |
|
public |
A description of this atom |
|
public |
inputs: array An array of all of the input attachment points connected to this atom |
|
public |
A flag to indicate if this atom is currently being dragged on the screen. |
|
public |
This atom's name |
|
public |
This atom's output attachment point if it has one |
|
public |
This atom's parent, usually the molecule which contains this atom |
|
public |
The path which contains the geometry represented by this atom |
|
public |
A flag to indicate if the atom is currently computing a new output. |
|
public |
This atom's radius as displayed on the screen is 1/72 width |
|
public |
A flag to indicate if this atom is currently selected |
|
public |
This atom's color when selected |
|
public |
A flag to indicate if we are hovering over this atom. |
|
public |
The color currently used for strokes |
|
public |
This atom's unique ID. Often overwritten later when loading |
|
public |
This atom's value...Is can this be done away with? Are we basically storing the value in the output now? |
|
public |
The X cordinate of this atom |
|
public |
The Y cordinate of this atom |
|
public |
Adds a new attachment point to this atom |
|
public |
basicThreadValueProcessing(toAsk: *) Calls a worker thread to compute the atom's value. |
|
public |
Starts propagation placeholder. |
|
public |
Returns an array of length two indicating that this is one atom and if it is waiting to be computed |
|
public |
Clears the alert message attached to this atom. |
|
public |
Set the atom's response to a mouse click. This usually means selecting the atom and displaying it's contents in 3D |
|
public |
Set the atom's response to a mouse click and drag. Moves the atom around the screen. |
|
public |
Set the atom's response to a mouse click up. If the atom is moving this makes it stop moving. |
|
public |
createButton(list: object, parent: object, buttonText: string, functionToCall: object) Creates button. |
|
public |
createCheckbox(list: object, buttonText: string, -: boolean, functionToCall: object) Creates button. |
|
public |
createDropDown(list: object, parent: object, options: array, selectedOption: number, description: string, Callback: object) Creates dropdown with multiple options to select. |
|
public |
createEditableValueListItem(list: object, object: object, key: string, label: string, resultShouldBeNumber: boolean, callBack: object) Creates an editable HTML item to set the value of an object element. |
|
public |
createFileUpload(list: object, parent: object, buttonText: string, functionToCall: object) Creates file upload button. |
|
public |
createMarkdownListItem(list: object, texxt: string) Creates a html representation of the passed text. |
|
public |
createNonEditableValueListItem(list: object, object: object, key: string, label: string) Creates an non-editable HTML item to set the value of an object element. |
|
public |
Set's the output value and shows the atom output on the 3D view. |
|
public |
deleteNode(backgroundClickAfter: boolean, deletePath: boolean, silent: boolean) Delete this atom. |
|
public |
Displays the atom in 3D and sets the output. |
|
public |
doubleClick(x: number, y: number): * Set the atom's response to a mouse double click. By default this isn't to do anything other than mark the double click as handled. |
|
public |
draw(drawType: *) Draws the atom on the screen |
|
public |
findIOValue(ioName: string): * Find the value of an input for with a given name. |
|
public |
Generates the path for this atom from it's location in the graph |
|
public |
initializeSideBar(): * Initialized the sidebar with a title and create the HTML object. |
|
public |
Set the atom's response to a key press. Is used to delete the atom if it is selected. |
|
public |
loadTree(): * Sets all the input and output values to match their associated atoms. |
|
public |
Removes an attachment point from an atom. |
|
public |
requestReadme(): *[] Return any contribution from this atom to the README file |
|
public |
selectBox(x: *, y: *, xEnd: *, yEnd: *) Delineates bounds for selection box. |
|
public |
Send the value of this atom to the 3D display. |
|
public |
Create an object containing the information about this atom that we want to save. |
|
public |
Set an alert to display next to the atom. |
|
public |
Applies each of the passed values to this as this.x |
|
public |
update() Runs with each frame to draw the atom. |
|
public |
updateSidebar(): * Updates the side bar to display information about the atom. |
|
public |
Token update value function to give each atom one by default |
|
public |
Sets the atom to wait on coming information. |
|
public |
walkBackForConstants(callback: *) Used to walk back out the tree generating a list of constants...used for evolve |
From class Molecule | ||
public |
This atom's type |
|
public |
A flag to indicate if this molecule was waiting propagation. |
|
public |
The color for the middle dot in the molecule |
|
public |
A description of this atom |
|
public |
inputs: array An array of the molecules inputs. |
|
public |
This atom's type |
|
public |
nodesOnTheScreen: array A list of all of the atoms within this Molecule which should be drawn on the screen as objects. |
|
public |
A flag to indicate if this molecule is currently processing. |
|
public |
runModeSidebarAdditions: array A list of things which should be displayed on the the top level sideBar when in toplevel mode. |
|
public |
Deselects Atom |
|
public |
A flag to indicate if this molecule should simplify it's output. |
|
public |
threshold: float The threshold for simplification. |
|
public |
toProcess: integer The total number of atoms contained in this molecule which are waiting to process |
|
public |
A flag to indicate if this molecule is the top level molecule. |
|
public |
totalAtomCount: integer The total number of atoms contained in this molecule |
|
public |
A list of available units. |
|
public |
|
|
public |
Handle a background click (a click which doesn't land on one of the contained molecules) by deselected everything and displaying a 3D rendering of this molecules output. |
|
public |
beginPropagation(force: boolean) Walks through each of the atoms in this molecule and begins Propagation from them if they have no inputs to wait for |
|
public |
Walks through each of the atoms in this molecule and takes a census of how many there are and how many are currently waiting to be processed. |
|
public |
changeUnits(newUnitsIndex: *) |
|
public |
Set the atom's response to a mouse click up. If the atom is moving this makes it stop moving. |
|
public |
copy() Pushes serialized atoms into array if selected |
|
public |
Gives this molecule inputs with the same names as all of it's parent's inputs |
|
public |
createSegmentSlider(valueList: *) Creates segment length slider and passes value to Global Variables |
|
public |
deleteNode(backgroundClickAfter: boolean, deletePath: boolean, silent: boolean) Delete this molecule and everything in it. |
|
public |
deselect() Unselect this molecule |
|
public |
deserialize(json: object, values: object): * Load the children of this from a JSON representation |
|
public |
displaySidebarReadme(list: object) Creates markdown version of the readme content for this atom in the sidebar |
|
public |
displaySimpleBOM(list: object) Creates a simple BOM list which cannot be edited. |
|
public |
doubleClick(x: number, y: number): * Handle double clicks by replacing the molecule currently on the screen with this one, esentially diving into it. |
|
public |
draw() Add the center dot to the molecule |
|
public |
Replace the currently displayed molecule with the parent of this molecule...moves the user up one level. |
|
public |
loadTree(): * Triggers the loadTree process from this molecules output |
|
public |
Places a new atom inside the molecule |
|
public |
placeConnector(connectorObj: object) Places a new connector within the molecule |
|
public |
Called when this molecules value changes |
|
public |
Called when this molecules value changes |
|
public |
readOutputAtomPath(): * Reads the path of this molecule's output atom |
|
public |
Used to trigger all of the circle atoms within a molecule and all of the molecules within it to update their value. |
|
public |
requestReadme(): * Check to see if any of this molecules children have contributions to make to the README file. |
|
public |
Sends the output of this molecule to be displayed in the 3D view. |
|
public |
Generates and returns a object representation of this molecule and all of its children. |
|
public |
setSimplifyFlag(anEvent: *) Called when the simplify check box is checked or unchecked. |
|
public |
updateSidebar(): * Updates the side bar to display options like 'go to parent' and 'load a different project'. |
|
public |
updateValue(targetName: *) Grab values from the inputs and push them out to the input atoms. |
|
public |
waitOnComingInformation(inputName: *) Sets the atom to wait on coming information. |
Public Constructors
public constructor(values: object) source
The constructor function.
Override:
Molecule#constructorParams:
Name | Type | Attribute | Description |
values | object | An array of values passed in which will be assigned to the class as this.x |
Public Members
public centerColor: string source
The color for the whole in the center of the drawing...probably doesn't need to be in this scope
Override:
Molecule#centerColorpublic topLevel: boolean source
A flag to signal if this node is the top level node
Override:
Molecule#topLevelPublic Methods
public beginPropagation(force: boolean) source
Starts propagation from this atom if it is not waiting for anything up stream.
Override:
Molecule#beginPropagationParams:
Name | Type | Attribute | Description |
force | boolean |
|
public async loadProjectByID(id: number): * source
Loads a project into this GitHub molecule from github based on the passed github ID. This function is async and execution time depends on project complexity, and network speed.
Params:
Name | Type | Attribute | Description |
id | number | The GitHub project ID for the project to be loaded. |
Return:
* |
public serialize(): * source
Save the project information to be loaded. This should use super.serialize() to maintain a connection with Molecule, but it doesn't...should be fixed
Override:
Molecule#serializeReturn:
* |
public updateSidebar() source
Updates sidebar with buttons for user in runMode