Deprecated: Return type of ResultWrapper::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/vhosts/rave.gatech.edu/httpdocs/help/includes/db/DatabaseUtility.php on line 174

Deprecated: Return type of ResultWrapper::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/vhosts/rave.gatech.edu/httpdocs/help/includes/db/DatabaseUtility.php on line 192

Deprecated: Return type of ResultWrapper::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/vhosts/rave.gatech.edu/httpdocs/help/includes/db/DatabaseUtility.php on line 185

Deprecated: Return type of ResultWrapper::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/vhosts/rave.gatech.edu/httpdocs/help/includes/db/DatabaseUtility.php on line 202

Deprecated: Return type of ResultWrapper::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/vhosts/rave.gatech.edu/httpdocs/help/includes/db/DatabaseUtility.php on line 163

Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /var/www/vhosts/rave.gatech.edu/httpdocs/help/languages/Language.php on line 2104

Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /var/www/vhosts/rave.gatech.edu/httpdocs/help/languages/Language.php on line 2104

Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /var/www/vhosts/rave.gatech.edu/httpdocs/help/languages/Language.php on line 2104

Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /var/www/vhosts/rave.gatech.edu/httpdocs/help/languages/Language.php on line 2104

Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /var/www/vhosts/rave.gatech.edu/httpdocs/help/languages/Language.php on line 2104

Deprecated: explode(): Passing null to parameter #2 ($string) of type string is deprecated in /var/www/vhosts/rave.gatech.edu/httpdocs/help/languages/Language.php on line 2104
 
==Introduction==
 
==Introduction==
This page lists the "events" that are defined in Rave that cause some object(s) on the workspace or data sets to need to be updated. If you are using Rave, you generally don't need to worry about these... they will be happening in the background whenever you interact with your data. If you are coding Rave plugins, you need to understand when to alert other objects that an event has occurred.
+
This page lists the "events" that are defined in Rave that cause some object(s) on [[the workspace]] or [[data sets]] to need to be updated. If you are using Rave, you generally don't need to worry about these... they will be happening in the background whenever you interact with your data. If you are coding Rave plugins, you need to understand when to alert other objects that an event has occurred.
      −
In the lists below, events are named according to their Rave keywords, which correspond to the information being updated (for analysis updates) or the way in which the data set has changed (for data set updates).
+
In the lists below, events are named according to their Rave keywords, which correspond to the information being updated (for analysis updates) or the way in which the [[data set]] has changed (for [[data set]] updates).
    
==Analysis Events==
 
==Analysis Events==
 
*'''rowcolors''' - A change to the row colors.
 
*'''rowcolors''' - A change to the row colors.
 
*'''xdials''' - A change to a variable's current value. This event can take an optional parameter defining which variable's value has changed.
 
*'''xdials''' - A change to a variable's current value. This event can take an optional parameter defining which variable's value has changed.
*'''isfitlered''' - A change to the filter values.  
+
*'''isfiltered''' - A change to the filter values.
*'''preferences''' - A change to the preferences.
+
*'''constraints''' - A change to an existing constraint.
    
==Data Set Events==
 
==Data Set Events==
 
*'''targets''' - A change to the targets.
 
*'''targets''' - A change to the targets.
*'''addrows''' - Rows have been added to the data set.
+
*'''addrows''' - Rows have been added to the [[data set]].
*'''replaceall''' - The data set has been replaced completely, or otherwise changed so drastically that it should be treated as entirely new.
+
*'''replaceall''' - The [[data set]] has been replaced completely, or otherwise changed so drastically that it should be treated as entirely new.
 
*'''datachanged''' - Data values have changed, but the number of rows (and their "identity") has not changed.  
 
*'''datachanged''' - Data values have changed, but the number of rows (and their "identity") has not changed.  
*'''removerows''' - Rows have been removed from the data set.
+
*'''removerows''' - Rows have been removed from the [[data set]].
 +
*'''[[preferences]]''' - A change to the [[preferences]]. NOTE: This event should only be used by objects that need to update in response to changes in the preference values themselves, NOT to changes in the data that result from a change in [[preferences]]. Use datachanged in that case. (Generally changing [[preferences]] will trigger both a [[preferences]] and a data changed event.)
 +
 
    
==Coding Events in a Workspace Object==
 
==Coding Events in a Workspace Object==
      −
*'''raveupdateanalysis'''
+
*'''[[raveupdateanalysis]]'''
 +
*'''[[raveupdatedataset]]'''
 +
*'''[[raveupdateexploremethods]]'''
 +
*'''[[raveduplicatedataset]]''' - makes a copy of a [[data set]]. Note that [[[data set links]]] do NOT get copied, so if you want them to copy you must code that after you call this function. The duplicated [[data set]] also will not be linked back to the original [[data set]]'s source file and will have its data source type recorded as "raveoriginated".
 +
*'''[[raveduplicatevariable]]'''
 +
*'''[[raveappendrows]]''' - appends one or more rows to a dataset, and then calls raveupdatedataset.
      −
*'''raveupdatedataset'''
+
==Coding Update Functions==
 +
This is important. Update functions (anything whose filename starts with "raveupdate") should NEVER call guidata(handles.fig,handles). Instead they must pass the updated handles as an output of the function back to whatever called the update function (presumably either [[raveupdateanalysis]] or raveupdatedataset or raveupdateexploremethod, but could be something else).
  
Fatal error: Uncaught TypeError: MWExceptionHandler::handleException(): Argument #1 ($e) must be of type Exception, Error given in /var/www/vhosts/rave.gatech.edu/httpdocs/help/includes/exception/MWExceptionHandler.php:153 Stack trace: #0 [internal function]: MWExceptionHandler::handleException() #1 {main} thrown in /var/www/vhosts/rave.gatech.edu/httpdocs/help/includes/exception/MWExceptionHandler.php on line 153