Ludiq.Core.Editor Represents an open connection to a SQLite database. Constructs a new SQLiteConnection and opens a SQLite database specified by databasePath. Specifies the path to the database file. Specifies whether to store DateTime properties as ticks (true) or strings (false). You absolutely do want to store them as Ticks in all new projects. The default of false is only here for backwards compatibility. There is a *significant* speed advantage, with no down sides, when setting storeDateTimeAsTicks = true. Constructs a new SQLiteConnection and opens a SQLite database specified by databasePath. Specifies the path to the database file. Specifies whether to store DateTime properties as ticks (true) or strings (false). You absolutely do want to store them as Ticks in all new projects. The default of false is only here for backwards compatibility. There is a *significant* speed advantage, with no down sides, when setting storeDateTimeAsTicks = true. Gets the synchronous object, to be lock the database file for updating. The sync object. Used to list some code that we want the MonoTouch linker to see, but that we never want to actually execute. Sets a busy handler to sleep the specified amount of time when a table is locked. The handler will sleep multiple times until a total time of has accumulated. Returns the mappings from types to tables that the connection currently understands. Retrieves the mapping that is automatically generated for the given type. The type whose mapping to the database is returned. Optional flags allowing implicit PK and indexes based on naming conventions The mapping represents the schema of the columns of the database and contains methods to set and get properties of objects. Retrieves the mapping that is automatically generated for the given type. The mapping represents the schema of the columns of the database and contains methods to set and get properties of objects. Executes a "drop table" on the database. This is non-recoverable. Executes a "create table if not exists" on the database. It also creates any specified indexes on the columns of the table. It uses a schema automatically generated from the specified type. You can later access this schema by calling GetMapping. The number of entries added to the database schema. Executes a "create table if not exists" on the database. It also creates any specified indexes on the columns of the table. It uses a schema automatically generated from the specified type. You can later access this schema by calling GetMapping. Type to reflect to a database table. Optional flags allowing implicit PK and indexes based on naming conventions. The number of entries added to the database schema. Creates an index for the specified table and columns. Name of the index to create Name of the database table An array of column names to index Whether the index should be unique Creates an index for the specified table and column. Name of the index to create Name of the database table Name of the column to index Whether the index should be unique Creates an index for the specified table and column. Name of the database table Name of the column to index Whether the index should be unique Creates an index for the specified table and columns. Name of the database table An array of column names to index Whether the index should be unique Creates a new SQLiteCommand. Can be overridden to provide a sub-class. Creates a new SQLiteCommand given the command text with arguments. Place a '?' in the command text for each of the arguments. The fully escaped SQL. Arguments to substitute for the occurences of '?' in the command text. A Creates a SQLiteCommand given the command text (SQL) with arguments. Place a '?' in the command text for each of the arguments and then executes that command. Use this method instead of Query when you don't expect rows back. Such cases include INSERTs, UPDATEs, and DELETEs. You can set the Trace or TimeExecution properties of the connection to profile execution. The fully escaped SQL. Arguments to substitute for the occurences of '?' in the query. The number of rows modified in the database as a result of this execution. Creates a SQLiteCommand given the command text (SQL) with arguments. Place a '?' in the command text for each of the arguments and then executes that command. It returns each row of the result using the mapping automatically generated for the given type. The fully escaped SQL. Arguments to substitute for the occurences of '?' in the query. An enumerable with one result for each row returned by the query. Creates a SQLiteCommand given the command text (SQL) with arguments. Place a '?' in the command text for each of the arguments and then executes that command. It returns each row of the result using the mapping automatically generated for the given type. The fully escaped SQL. Arguments to substitute for the occurences of '?' in the query. An enumerable with one result for each row returned by the query. The enumerator will call sqlite3_step on each call to MoveNext, so the database connection must remain open for the lifetime of the enumerator. Creates a SQLiteCommand given the command text (SQL) with arguments. Place a '?' in the command text for each of the arguments and then executes that command. It returns each row of the result using the specified mapping. This function is only used by libraries in order to query the database via introspection. It is normally not used. A to use to convert the resulting rows into objects. The fully escaped SQL. Arguments to substitute for the occurences of '?' in the query. An enumerable with one result for each row returned by the query. Creates a SQLiteCommand given the command text (SQL) with arguments. Place a '?' in the command text for each of the arguments and then executes that command. It returns each row of the result using the specified mapping. This function is only used by libraries in order to query the database via introspection. It is normally not used. A to use to convert the resulting rows into objects. The fully escaped SQL. Arguments to substitute for the occurences of '?' in the query. An enumerable with one result for each row returned by the query. The enumerator will call sqlite3_step on each call to MoveNext, so the database connection must remain open for the lifetime of the enumerator. Returns a queryable interface to the table represented by the given type. A queryable object that is able to translate Where, OrderBy, and Take queries into native SQL. Attempts to retrieve an object with the given primary key from the table associated with the specified type. Use of this method requires that the given type have a designated PrimaryKey (using the PrimaryKeyAttribute). The primary key. The object with the given primary key. Throws a not found exception if the object is not found. Attempts to retrieve the first object that matches the predicate from the table associated with the specified type. A predicate for which object to find. The object that matches the given predicate. Throws a not found exception if the object is not found. Attempts to retrieve an object with the given primary key from the table associated with the specified type. Use of this method requires that the given type have a designated PrimaryKey (using the PrimaryKeyAttribute). The primary key. The object with the given primary key or null if the object is not found. Attempts to retrieve an object with the given primary key from the table associated with the specified type. Use of this method requires that the given type have a designated PrimaryKey (using the PrimaryKeyAttribute). The primary key. The TableMapping used to identify the object type. The object with the given primary key or null if the object is not found. Attempts to retrieve the first object that matches the predicate from the table associated with the specified type. A predicate for which object to find. The object that matches the given predicate or null if the object is not found. Whether has been called and the database is waiting for a . Begins a new transaction. Call to end the transaction. Throws if a transaction has already begun. Creates a savepoint in the database at the current point in the transaction timeline. Begins a new transaction if one is not in progress. Call to undo transactions since the returned savepoint. Call to commit transactions after the savepoint returned here. Call to end the transaction, committing all changes. A string naming the savepoint. Rolls back the transaction that was begun by or . Rolls back the savepoint created by or SaveTransactionPoint. The name of the savepoint to roll back to, as returned by . If savepoint is null or empty, this method is equivalent to a call to Rolls back the transaction that was begun by . true to avoid throwing exceptions, false otherwise Releases a savepoint returned from . Releasing a savepoint makes changes since that savepoint permanent if the savepoint began the transaction, or otherwise the changes are permanent pending a call to . The RELEASE command is like a COMMIT for a SAVEPOINT. The name of the savepoint to release. The string should be the result of a call to Commits the transaction that was begun by . Inserts all specified objects. An of the objects to insert. The number of rows added to the table. Inserts all specified objects. An of the objects to insert. Literal SQL code that gets placed into the command. INSERT {extra} INTO ... The number of rows added to the table. Inserts all specified objects. An of the objects to insert. The type of object to insert. The number of rows added to the table. Inserts the given object and retrieves its auto incremented primary key if it has one. The object to insert. The number of rows added to the table. Inserts the given object and retrieves its auto incremented primary key if it has one. If a UNIQUE constraint violation occurs with some pre-existing object, this function deletes the old object. The object to insert. The number of rows modified. Inserts the given object and retrieves its auto incremented primary key if it has one. The object to insert. The type of object to insert. The number of rows added to the table. Inserts the given object and retrieves its auto incremented primary key if it has one. If a UNIQUE constraint violation occurs with some pre-existing object, this function deletes the old object. The object to insert. The type of object to insert. The number of rows modified. Inserts the given object and retrieves its auto incremented primary key if it has one. The object to insert. Literal SQL code that gets placed into the command. INSERT {extra} INTO ... The number of rows added to the table. Inserts the given object and retrieves its auto incremented primary key if it has one. The object to insert. Literal SQL code that gets placed into the command. INSERT {extra} INTO ... The type of object to insert. The number of rows added to the table. Updates all of the columns of a table using the specified object except for its primary key. The object is required to have a primary key. The object to update. It must have a primary key designated using the PrimaryKeyAttribute. The number of rows updated. Updates all of the columns of a table using the specified object except for its primary key. The object is required to have a primary key. The object to update. It must have a primary key designated using the PrimaryKeyAttribute. The type of object to insert. The number of rows updated. Updates all specified objects. An of the objects to insert. The number of rows modified. Deletes the given object from the database using its primary key. The object to delete. It must have a primary key designated using the PrimaryKeyAttribute. The number of rows deleted. Deletes the object with the specified primary key. The primary key of the object to delete. The number of objects deleted. The type of object. Deletes all the objects from the specified table. WARNING WARNING: Let me repeat. It deletes ALL the objects from the specified table. Do you really want to do that? The number of objects deleted. The type of objects to delete. Represents a parsed connection string. Invoked every time an instance is loaded from the database. The newly created object. This can be overridden in combination with the method to hook into the life-cycle of objects. Type safety is not possible because MonoTouch does not support virtual generic methods. Since the insert never changed, we only need to prepare once. Compiles a BinaryExpression where one of the parameters is null. The non-null parameter The ID of the script in the source file. The GUID of the source file (script or DLL). Whether the plugin was properly setup. Whether the plugin was properly setup. The last version to which the plugin successfully upgraded. Factory methods that create instances that can then be used to build element adder menus. The following example demonstrates how to build and display a menu which allows the user to add elements to a given context object upon clicking a button: { public ShoppingListElementAdder(ShoppingList shoppingList) { Object = shoppingList; } public ShoppingList Object { get; private set; } public bool CanAddElement(Type type) { return true; } public object AddElement(Type type) { var instance = Activator.CreateInstance(type); shoppingList.Add((ShoppingItem)instance); return instance; } } private void DrawAddMenuButton(ShoppingList shoppingList) { var content = new GUIContent("Add Menu"); Rect position = GUILayoutUtility.GetRect(content, GUI.skin.button); if (GUI.Button(position, content)) { var builder = ElementAdderMenuBuilder.For(ShoppingItem); builder.SetElementAdder(new ShoppingListElementAdder(shoppingList)); var menu = builder.GetMenu(); menu.DropDown(buttonPosition); } } ]]> { var _object:ShoppingList; function ShoppingListElementAdder(shoppingList:ShoppingList) { Object = shoppingList; } function get Object():ShoppingList { return _object; } function CanAddElement(type:Type):boolean { return true; } function AddElement(type:Type):System.Object { var instance = Activator.CreateInstance(type); shoppingList.Add((ShoppingItem)instance); return instance; } } function DrawAddMenuButton(shoppingList:ShoppingList) { var content = new GUIContent('Add Menu'); var position = GUILayoutUtility.GetRect(content, GUI.skin.button); if (GUI.Button(position, content)) { var builder = ElementAdderMenuBuilder.For.(ShoppingItem); builder.SetElementAdder(new ShoppingListElementAdder(shoppingList)); var menu = builder.GetMenu(); menu.DropDown(buttonPosition); } } ]]> Gets a to build an element adder menu for a context object of the type . Type of the context object that elements can be added to. A new instance. Gets a to build an element adder menu for a context object of the type . Type of the context object that elements can be added to. Contract type of addable elements. A new instance. Annotate implementations with a to associate it with the contract type of addable elements. The following source code demonstrates how to add a helper menu command to the add element menu of a shopping list: { public AddFavoriteShoppingItemsCommand() { Content = new GUIContent("Add Favorite Items"); } public GUIContent Content { get; private set; } public bool CanExecute(IElementAdder elementAdder) { return true; } public void Execute(IElementAdder elementAdder) { // xTODO: Add favorite items to the shopping list! } } ]]> { var _content:GUIContent = new GUIContent('Add Favorite Items'); function get Content():GUIContent { return _content; } function CanExecute(elementAdder:IElementAdder.):boolean { return true; } function Execute(elementAdder:IElementAdder.) { // xTODO: Add favorite items to the shopping list! } } ]]> Initializes a new instance of the class. Contract type of addable elements. Gets the contract type of addable elements. Provides meta information which is useful when creating new implementations of the interface. Gets an array of the types that are associated with the specified . Type of the context object that elements can be added to. Contract type of addable elements. An array containing zero or more . If is null. Gets an array of instances that are associated with the specified . Type of the context object that elements can be added to. Contract type of addable elements. An array containing zero or more instances. If is null. Gets a filtered array of the concrete element types that implement the specified . A type is excluded from the resulting array when one or more of the specified returns a value of false. Contract type of addable elements. An array of zero or more filters. An array of zero or more concrete element types. If is null. Gets an array of all the concrete element types that implement the specified . Contract type of addable elements. An array of zero or more concrete element types. If is null. Interface for an object which adds elements to a context object of the type . Type of the context object that elements can be added to. Gets the context object. Determines whether a new element of the specified can be added to the associated context object. Type of element to add. A value of true if an element of the specified type can be added; otherwise, a value of false. Adds an element of the specified to the associated context object. Type of element to add. The new element. Interface for a menu interface. Gets a value indicating whether the menu contains any items. true if the menu contains one or more items; otherwise, false. Displays the drop-down menu inside an editor GUI. This method should only be used during OnGUI and OnSceneGUI events; for instance, inside an editor window, a custom inspector or scene view. Position of menu button in the GUI. Interface for building an . Type of the context object that elements can be added to. Sets contract type of the elements that can be included in the . Only non-abstract class types that are assignable from the will be included in the built menu. Contract type of addable elements. Set the implementation which is used when adding new elements to the context object. Specify a value of null for to prevent the selection of any types. Element adder. Set the function that formats the display of type names in the user interface. Specify a value of null for to assume the default formatting function. Function that formats display name of type; or null. Adds a filter function which determines whether types can be included or whether they need to be excluded. If a filter function returns a value of false then that type will not be included in the menu interface. Filter function. If is null. Adds a custom command to the menu. The custom command. If is null. Builds and returns a new instance. A new instance each time the method is invoked. Interface for a menu command that can be included in an either by annotating an implementation of the interface with or directly by calling . Type of the context object that elements can be added to. Gets the content of the menu command. Determines whether the command can be executed. The associated element adder provides access to the instance. A value of true if the command can execute; otherwise, false. Executes the command. The associated element adder provides access to the instance. Reorderable list adaptor for generic list. This adaptor can be subclassed to add special logic to item height calculation. You may want to implement a custom adaptor class where specialised functionality is needed. List elements which implement the interface are cloned using that interface upon duplication; otherwise the item value or reference is simply copied. Type of list element. Initializes a new instance of . The list which can be reordered. Callback to draw list item. Height of list item in pixels. Fixed height of each list item. Gets element from list. Zero-based index of element. The element. Gets the underlying list data structure. Utility functions to assist with GUIs. Gets visible rectangle within GUI. VisibleRect = TopmostRect + scrollViewOffsets Focus control and text editor where applicable. Draw texture using to workaround bug in Unity where flickers when embedded inside a property drawer. Position of which to draw texture in space of GUI. Texture. Resources to assist with reorderable list control. Resource assets for light skin. Resource assets are PNG images which have been encoded using a base-64 string so that actual asset files are not necessary. Resource assets for dark skin. Resource assets are PNG images which have been encoded using a base-64 string so that actual asset files are not necessary. Gets light or dark version of the specified texture. Generate special textures. Create 1x1 pixel texture of specified color. Name for texture object. Pixel color. The new Texture2D instance. Read textures from base-64 encoded strings. Automatically selects assets based upon whether the light or dark (pro) skin is active. Read width and height if PNG file in pixels. PNG image data. Width of image in pixels. Height of image in pixels. Utility functionality for implementations. Reset the value of a property. Serialized property for a serialized property. Copies value of into . Destination property. Source property. Adaptor allowing reorderable list control to interface with list data. Gets count of elements in list. Determines whether an item can be reordered by dragging mouse. This should be a light-weight method since it will be used to determine whether grab handle should be included for each item in a reorderable list. Please note that returning a value of false does not prevent movement on list item since other draggable items can be moved around it. Zero-based index for list element. A value of true if item can be dragged; otherwise false. Determines whether an item can be removed from list. This should be a light-weight method since it will be used to determine whether remove button should be included for each item in list. This is redundant when is specified. Zero-based index for list element. A value of true if item can be removed; otherwise false. Add new element at end of list. Insert new element at specified index. Zero-based index for list element. Duplicate existing element. Consider using the interface to duplicate list elements where appropriate. Zero-based index of list element. Remove element at specified index. Zero-based index of list element. Move element from source index to destination index. Zero-based index of source element. Zero-based index of destination element. Clear all elements from list. Occurs before any list items are drawn. This method is only used to handle GUI repaint events. Occurs after all list items have been drawn. This method is only used to handle GUI repaint events. Draws background of a list item. This method is only used to handle GUI repaint events. Background of list item spans a slightly larger area than the main interface that is drawn by since it is drawn behind the grab handle. Total position of list element in GUI. Zero-based index of array element. Draws main interface for a list item. This method is used to handle all GUI events. Position in GUI. Zero-based index of array element. Gets height of list item in pixels. Zero-based index of array element. Measurement in pixels. Can be implemented along with when drop insertion or ordering is desired. This type of "drop" functionality can occur when the "drag" phase of the drag and drop operation was initiated elsewhere. For example, a custom could insert entirely new items by dragging and dropping from the Unity "Project" window. Determines whether an item is being dragged and that it can be inserted or moved by dropping somewhere into the reorderable list control. This method is always called whilst drawing an editor GUI. Zero-based index of insertion. A value of true if item can be dropped; otherwise false. Processes the current drop insertion operation when returns a value of true to process, accept or cancel. This method is always called whilst drawing an editor GUI. This method is only called when returns a value of true. Zero-based index of insertion. Base class for custom reorderable list control. Invoked to draw content for empty list. Callback should make use of GUILayout to present controls. The following listing displays a label for empty list control: _list; private void OnEnable() { _list = new List(); } private void OnGUI() { ReorderableListGUI.ListField(_list, ReorderableListGUI.TextFieldItemDrawer, DrawEmptyMessage); } private string DrawEmptyMessage() { GUILayout.Label("List is empty!", EditorStyles.miniLabel); } } ]]> ; function OnEnable() { _list = new List.(); } function OnGUI() { ReorderableListGUI.ListField(_list, ReorderableListGUI.TextFieldItemDrawer, DrawEmptyMessage); } function DrawEmptyMessage() { GUILayout.Label('List is empty!', EditorStyles.miniLabel); } } ]]> Invoked to draw content for empty list with absolute positioning. Position of empty content. Invoked to draw list item. GUI controls must be positioned absolutely within the given rectangle since list items must be sized consistently. The following listing presents a text field for each list item: wishlist = new List(); private void OnGUI() { ReorderableListGUI.ListField(wishlist, DrawListItem); } private string DrawListItem(Rect position, string value) { // Text fields do not like `null` values! if (value == null) value = ""; return EditorGUI.TextField(position, value); } } ]]> ; function OnGUI() { ReorderableListGUI.ListField(wishlist, DrawListItem); } function DrawListItem(position:Rect, value:String):String { // Text fields do not like `null` values! if (value == null) value = ''; return EditorGUI.TextField(position, value); } } ]]> Type of item list. Position of list item. The list item. The modified value. Position of mouse upon anchoring item for drag. Zero-based index of anchored list item. Zero-based index of target list item for reordering. Unique ID of list control which should be automatically focused. A value of zero indicates that no control is to be focused. Zero-based index of item which should be focused. Represents the current stack of nested reorderable list control positions. Represents the current stack of nested reorderable list items. Gets the control ID of the list that is currently being drawn. Gets the position of the list control that is currently being drawn. The value of this property should be ignored for type events when using reorderable list controls with automatic layout. Gets the zero-based index of the list item that is currently being drawn; or a value of -1 if no item is currently being drawn. Use instead. Gets the total position of the list item that is currently being drawn. The value of this property should be ignored for type events when using reorderable list controls with automatic layout. Background color of anchor list item. Background color of target slot when dragging list item. Style for right-aligned label for element number prefix. Generate and draw control from state object. Reorderable list adaptor. Delegate for drawing empty list. Optional flags to pass into list field. Generate and draw control from state object. Position of control. Reorderable list adaptor. Delegate for drawing empty list. Optional flags to pass into list field. Gets or sets flags which affect behavior of control. Gets a value indicating whether any footer controls are shown. Gets a value indicating whether the size field is shown. Gets a value indicating whether add button is shown. Gets a value indicating whether add menu button is shown. Gets a value indicating whether remove buttons are shown. Gets or sets the vertical spacing below the reorderable list control. Gets or sets style used to draw background of list control. Gets or sets style used to draw footer buttons. Gets or sets style used to draw list item buttons (like the remove button). Gets or sets the color of the horizontal lines that appear between list items. Gets or sets a boolean value indicating whether a horizontal line should be shown above the first list item at the start of the list control. Horizontal line is not drawn for an empty list regardless of the value of this property. Gets or sets a boolean value indicating whether a horizontal line should be shown below the last list item at the end of the list control. Horizontal line is not drawn for an empty list regardless of the value of this property. Occurs when add menu button is clicked. Add menu button is only shown when there is at least one subscriber to this event. Raises event when add menu button is clicked. Event arguments. Occurs after list item is inserted or duplicated. Raises event after list item is inserted or duplicated. Event arguments. Occurs before list item is removed and allowing for remove operation to be cancelled. Raises event before list item is removed and provides oppertunity to cancel. Event arguments. Occurs immediately before list item is moved allowing for move operation to be cancelled. Raises event immediately before list item is moved and provides oppertunity to cancel. Event arguments. Occurs after list item has been moved. Raises event after list item has been moved. Event arguments. Initializes a new instance of . Initializes a new instance of . Optional flags which affect behavior of control. Unique Id of control. Visible rectangle of control. Width of index label in pixels (zero indicates no label). Indicates whether item is currently being dragged within control. Indicates if reordering is allowed. A boolean value indicating whether drop insertion is allowed. Zero-based index for drop insertion when applicable; othewise, a value of -1. Position of drop insertion on Y-axis in GUI space. New size input value. Prepare initial state for list control. Unique ID of list control. Reorderable list adaptor. Indicate that first control of list item should be automatically focused if possible. Unique ID of list control. Zero-based index of list item. Draw remove button. Position of button. Indicates if control is visible within GUI. A value of true if clicked; otherwise false. Begin tracking drag and drop within list. Unique ID of list control. Zero-based index of item which is going to be dragged. Stop tracking drag and drop. Gets a value indicating whether item in current list is currently being tracked. Unique ID of list control. A value of true if item is being tracked; otherwise false. Accept reordering. Reorderable list adaptor. Draw list container and items. Position of list control in GUI. Reorderable list adaptor. Draws drop insertion indicator. This method is only ever called during repaint events. Position if the drop indicator. Checks to see if list control needs to be automatically focused. Draw additional controls below list control and highlight drop target. Position of list control in GUI. Reorderable list adaptor. Cache of container heights mapped by control ID. Do layout version of list field. Reorderable list adaptor. Padding in pixels. Position of list container area in GUI (excludes footer area). Draw content for empty list (layout version). Reorderable list adaptor. Callback to draw empty content. Position of list container area in GUI (excludes footer area). Draw content for empty list (layout version). Position of list control in GUI. Callback to draw empty content. Correct if for some reason one or more styles are missing! Draw layout version of list control. Unique ID of list control. Reorderable list adaptor. Delegate for drawing empty list. Draw list control with absolute positioning. Position of list control in GUI. Unique ID of list control. Reorderable list adaptor. Delegate for drawing empty list. Draw list control with absolute positioning. Position of list control in GUI. Reorderable list adaptor. Delegate for drawing empty list. Draw list size field with absolute positioning and a custom prefix label. Specify a value of GUIContent.none for argument to omit prefix label from the drawn control. Position of list control in GUI. Prefix label for the control. Reorderable list adaptor. Draw list size field with absolute positioning and a custom prefix label. Position of list control in GUI. Prefix label for the control. Reorderable list adaptor. Draw list size field with absolute positioning with the default prefix label. Position of list control in GUI. Reorderable list adaptor. Draw list size field with automatic layout and a custom prefix label. Specify a value of GUIContent.none for argument to omit prefix label from the drawn control. Prefix label for the control. Reorderable list adaptor. Draw list size field with automatic layout and a custom prefix label. Prefix label for the control. Reorderable list adaptor. Draw list size field with automatic layout and the default prefix label. Reorderable list adaptor. Content for "Move to Top" command. Content for "Move to Bottom" command. Content for "Insert Above" command. Content for "Insert Below" command. Content for "Duplicate" command. Content for "Remove" command. Content for "Clear All" command. Default functionality to handle context command. Can be used when adding custom items to the context menu: Invoked to generate context menu for list item. Menu which can be populated. Zero-based index of item which was right-clicked. Reorderable list adaptor. Invoked to handle context command. It is important to set the value of GUI.changed to true if any changes are made by command handler. Default command handling functionality can be inherited: Name of command. This is the text shown in the context menu. Zero-based index of item which was right-clicked. Reorderable list adaptor. A value of true if command was known; otherwise false. Call to manually perform command. Warning message is logged to console if attempted to execute unknown command. Name of command. This is the text shown in the context menu. Zero-based index of item which was right-clicked. Reorderable list adaptor. A value of true if command was known; otherwise false. Call to manually perform command. Warning message is logged to console if attempted to execute unknown command. Content representing command. Zero-based index of item which was right-clicked. Reorderable list adaptor. A value of true if command was known; otherwise false. Calculate height of list control in pixels. Reorderable list adaptor. Required list height in pixels. Calculate height of list control in pixels. Count of items in list. Fixed height of list item. Required list height in pixels. Move item from source index to destination index. Reorderable list adaptor. Zero-based index of source item. Zero-based index of destination index. Add item at end of list and raises the event . Reorderable list adaptor. Insert item at specified index and raises the event . Reorderable list adaptor. Zero-based index of item. Duplicate specified item and raises the event . Reorderable list adaptor. Zero-based index of item. Remove specified item. The event is raised prior to removing item and allows removal to be cancelled. Reorderable list adaptor. Zero-based index of item. Returns a value of false if operation was cancelled. Remove all items from list. The event is raised for each item prior to clearing array and allows entire operation to be cancelled. Reorderable list adaptor. Returns a value of false if operation was cancelled. Set count of items in list by adding or removing items. Reorderable list adaptor. New count of items. Returns a value of false if operation was cancelled. Arguments which are passed to . Initializes a new instance of . Reorderable list adaptor. Position of the add menu button. Gets adaptor to reorderable list container. Gets position of the add menu button. An event handler which is invoked when the "Add Menu" button is clicked. Object which raised event. Event arguments. Arguments which are passed to . Initializes a new instance of . Reorderable list adaptor. Zero-based index of item. Indicates if inserted item was duplicated from another item. Gets adaptor to reorderable list container which contains element. Gets zero-based index of item which was inserted. Indicates if inserted item was duplicated from another item. An event handler which is invoked after new list item is inserted. Object which raised event. Event arguments. Arguments which are passed to . Initializes a new instance of . Reorderable list adaptor. Zero-based index of item. Gets adaptor to reorderable list container which contains element. Gets zero-based index of item which is being removed. An event handler which is invoked before a list item is removed. Item removal can be cancelled by setting to true. Object which raised event. Event arguments. Arguments which are passed to . Initializes a new instance of . Reorderable list adaptor. Zero-based index of item. Xero-based index of item destination. Gets adaptor to reorderable list container which contains element. Gets current zero-based index of item which is going to be moved. Gets the new candidate zero-based index for the item. Gets zero-based index of item after it has been moved. An event handler which is invoked before a list item is moved. Moving of item can be cancelled by setting to true. Object which raised event. Event arguments. Arguments which are passed to . Initializes a new instance of . Reorderable list adaptor. Old zero-based index of item. New zero-based index of item. Gets adaptor to reorderable list container which contains element. Gets old zero-based index of the item which was moved. Gets new zero-based index of the item which was moved. An event handler which is invoked after a list item is moved. Object which raised event. Event arguments. Additional flags which can be passed into reorderable list field. Multiple flags can be specified if desired: Hide grab handles and disable reordering of list items. Hide add button at base of control. Hide remove buttons from list items. Do not display context menu upon right-clicking grab handle. Hide "Duplicate" option from context menu. Do not automatically focus first control of newly added items. Show zero-based index of array elements. Do not attempt to automatically scroll when list is inside a scroll view and the mouse pointer is dragged outside of the visible portion of the list. Show "Size" field at base of list control. Utility class for drawing reorderable lists. Default list item height is 18 pixels. Gets or sets the zero-based index of the last item that was changed. A value of -1 indicates that no item was changed by list. This property should not be set when items are added or removed. Gets the control ID of the list that is currently being drawn. Gets the position of the list control that is currently being drawn. The value of this property should be ignored for type events when using reorderable list controls with automatic layout. Gets the zero-based index of the list item that is currently being drawn; or a value of -1 if no item is currently being drawn. Gets the total position of the list item that is currently being drawn. The value of this property should be ignored for type events when using reorderable list controls with automatic layout. Gets the default list control implementation. Default list item drawer implementation. Always presents the label "Item drawer not implemented.". Position to draw list item control(s). Value of list item. Unmodified value of list item. Type of list item. Draws text field allowing list items to be edited. Null values are automatically changed to empty strings since null values cannot be edited using a text field. Value of GUI.changed is set to true if value of item is modified. Position to draw list item control(s). Value of list item. Modified value of list item. Draw title control for list field. When needed, should be shown immediately before list field. Content for title control. Draw title control for list field. When needed, should be shown immediately before list field. Text for title control. Draw title control for list field with absolute positioning. Position of control. Content for title control. Draw title control for list field with absolute positioning. Position of control. Text for title control. Draw list field control. The list which can be reordered. Callback to draw list item. Callback to draw custom content for empty list (optional). Height of a single list item. Optional flags to pass into list field. Type of list item. Draw list field control with absolute positioning. Position of control. The list which can be reordered. Callback to draw list item. Callback to draw custom content for empty list (optional). Height of a single list item. Optional flags to pass into list field. Type of list item. Calculate height of list field for absolute positioning. Count of items in list. Fixed height of list item. Optional flags to pass into list field. Required list height in pixels. Draw list field control for serializable property array. Serializable property. Use fixed height for items rather than . Callback to draw custom content for empty list (optional). Optional flags to pass into list field. Draw list field control for serializable property array. Position of control. Serializable property. Use fixed height for items rather than . Callback to draw custom content for empty list (optional). Optional flags to pass into list field. Calculate height of list field for absolute positioning. Serializable property. Optional flags to pass into list field. Required list height in pixels. Draw list field control for adapted collection. Reorderable list adaptor. Callback to draw custom content for empty list (optional). Optional flags to pass into list field. Draw list field control for adapted collection. Position of control. Reorderable list adaptor. Callback to draw custom content for empty list (optional). Optional flags to pass into list field. Calculate height of list field for adapted collection. Reorderable list adaptor. Optional flags to pass into list field. Required list height in pixels. Styles for the . Gets style for title header. Gets style for the background of list control. Gets an alternative style for the background of list control. Gets style for footer button. Gets an alternative style for footer button. Gets style for remove item button. Gets style for the background of a selected item. Gets color for the horizontal lines that appear between list items. Gets color of background for a selected list item. Reorderable list adaptor for serialized array property. This adaptor can be subclassed to add special logic to item height calculation. You may want to implement a custom adaptor class where specialised functionality is needed. List elements are not cloned using the interface when using a to manipulate lists. Fixed height of each list item. Non-zero value overrides property drawer height calculation which is more efficient. Gets element from list. Zero-based index of element. Serialized property wrapper for array element. Gets the underlying serialized array property. Initializes a new instance of . Serialized property for entire array. Non-zero height overrides property drawer height calculation. Initializes a new instance of . Serialized property for entire array. Whether programming names should be converted into a more human-readable format. The maximum amount of search results to display. Whether inherited below should be grouped at the bottom of the options list. The skin to use for language related (C# / VB) icons. Whether the height of the fuzzy finder should be limited to the main editor window height. This is meant to fix Y offset issues on OSX, but will cut the fuzzy finder if this window is not maximized to the screen size. Enables additional options and logging for debugging purposes. Whether the log should track metadata state. Whether additional helpers should be shown in the inspector for debugging and profiling. Whether some types, including generics, should be filtered out when targetting AOT platforms. The assemblies available for reflection. The list of types available in the inspector.