From f049177e20a276049c61edbad631c1b2bbdd5706 Mon Sep 17 00:00:00 2001 From: chai Date: Thu, 15 Oct 2020 19:05:22 +0800 Subject: -advanced inspector +odin --- .../Editor/AdvancedInspector/AdvancedInspector.XML | 1630 -------------------- 1 file changed, 1630 deletions(-) delete mode 100644 Assets/Plugins/Editor/AdvancedInspector/AdvancedInspector.XML (limited to 'Assets/Plugins/Editor/AdvancedInspector/AdvancedInspector.XML') diff --git a/Assets/Plugins/Editor/AdvancedInspector/AdvancedInspector.XML b/Assets/Plugins/Editor/AdvancedInspector/AdvancedInspector.XML deleted file mode 100644 index a2386fed..00000000 --- a/Assets/Plugins/Editor/AdvancedInspector/AdvancedInspector.XML +++ /dev/null @@ -1,1630 +0,0 @@ - - - - AdvancedInspector - - - - - A collection of static method made to handle the drawing of the Advanced Inspector. - In most cases, you won't have to deal with this class. - - - - - This EditorWindow can recieve and send Toolbox inputs. - - - - - Called when the Toolbox shortcut is pressed. - The implementation should call CreateToolbox if the condition are right. - - - - - Called when the associated toolbox is closed. - Only called when Ok/Cancel or Enter/Escape is pressed. - There's no reliable way of trapping the "click outside the popup" event. - - - - - IModal Implementation. - - - - - IModal Implementation. - - - - - Called by an Editor to have a collection of InspectorField to be displayed. - Uniformized entry point of inspector drawing. - - - - - Called by an Editor to have a collection of InspectorField to be displayed. - Uniformized entry point of inspector drawing. - - - - - Called by an Editor to have a collection of InspectorField to be displayed. - Uniformized entry point of inspector drawing. - - - - - Entry point of the inspection of a Property based editor. - - - - - Unity doesn't always properly init it's array/list if a serialization reload didn't occur. - - - - - Draw the arrow icon that allow to browse sub-object property. - - - - - Draw the control of an sortable list. - Return true if a list has been modified and requires a redraw. - - - - - Draw the - button for a Dictionary - - - - - Draw the "Restricted" enum, which is a runtime list provide by a method. - - - - - Draw the +/- icon to control the creation and deletion of user created object. - - - - - Draw the + icon of a List - - - - - Draw the + icon of a Dictionary - - - - - Draw the left side of a field, the label. - - - - - Width of the label part. - - - - - Draw the help box bellow the field. - - - - - Help box at the top or bottom of the whole inspector. - - - - - This method is invoked to build a list of proper delegate to invoke. - - - - - Get the list of valid derivaton from a specific type. - Used to create derived object, should always be from ComponentMonoBehaviour but is not enforced. - - - - - Group box style - - - - - When complex operation are performed, the Inspector blocks repaint. - - - - - Current complexity level. - - - - - How the fields are sorted. - - - - - Raised if the inspector needs a redraw. - - - - - Used for internal callback from a modal windows. - - - - - Used for internal callback from a modal windows. - - - - - Field sorting enum. - - - - - No sorting, using the order found in code. - - - - - Alphabethic sorting A, B, C... - - - - - Anti-alphabethic sorting, C, B, A... - - - - - When a specific type is encounter by the Inspector, we check if someone defined an field editor for it. - When it occurs, all the field drawing is left to the custom editor. - - - - - Minimum field height - - - - - Button Height - - - - - Standard float-in-vector label width - - - - - The draw call from the Inspector. - - - - - Called after the label is drawn. - Useful to add dragging modifier. - - - - - Event raised when someone click a label. - - - - - Event raised when someone double click a label. - - - - - Fired when someone click and drag the label with modified key (control/shift/alt) pressed. - A normal drag performs a copy/paste. - - - - - Event raised when someone right-click a label. - The GenenicMenu is empty and can add new items in it. - - - - - Get the value of a field. - Flag "Show Mixed Value" automaticly and return null if a multi-selection has different values. - - - - - Override if you want to prevent a type from being expandable at any time. - Override the Expandable attributes. - - - - - If true and no fieldeditor is found for a specific type, this fieldeditor is used for the derived type. - - - - - List of type this FieldEditor edit. - - - - - Base class of BehaviourEditor, ScriptableEditor and ExternalEditor. - - - - - Preview is handled internally and is turned on and off using IPreview interface. - - - - - In case of value type, we need to know the parent. - - - - - List of fields held by this inspector. - - - - - When a value changed internally, this forces the fields to be refreshed. - - - - - Unity's OnEnable. - - - - - Unity's OnDisable - - - - - Start the Scene View picking tool. - Type can define the component we seek on a GameObject. - - - - - Stop the picking tool before it has resolved. - - - - - Preview Draw - - - - - Override this method if you want to draw on the scene view. - Don't forget to call the base. - - - - - Preview Settings - - - - - Data Changed, repaint. - - - - - Unity's Default Margins. False if running in Advanced Inspector. - - - - - Default Inspector entry point. - - - - - Similar to "DrawDefaultInspector", except this is the Advanced one. - - - - - Force this field to rebuild the list of its children. - If you implement an editor specific to a type, you should only need to override this method. - Consider clearing existing fields before adding new one. - - - - - Is the Inspector currently in picking mode? - - - - - Return true if this editor is using advanced features. - - - - - We use our own targets list because we can draw object not deriving from UnityEngine.Object. - - - - - List of fields held by this inspector. - - - - - Override this if you implement your own inspector and doesn't want it to be expandable. - - - - - If true, will test if the type of in the inspector object has "AdvancedInspector" attributes. - Default; false; - - - - - Behaviour Editor is the entry point for all MonoBehaviour in Advanced Inspector. - - - - - Unity's OnEnable. - - - - - Should we check for the [AdvancedInspectorAttribute]? - - - - - Similar to a standard PropertyInspector, but can be called from outside the scope of a Inspector. - Useful to build your own EditorWindow with an integrated inspector. - Call the method Draw with a Rect of the region to draw on. - - - - - Define a control that can be drawn in an EditorWindow. - - - - - Draw the control. Return if the parent EditorWindow should repaint the window. - - - - - In the event an internal process of the Control want a repaint of the window outside the Drawing scope. - - - - - IControl implementation - - - - - If false, the Inspector won't draw the expander and won't reserve space on the left of the labels. - - - - - Can the separator be dragged around? - - - - - Where is the separator? - In PerPixel, the value is in pixel from the top or the left. - Otherwise, it's in %. - - - - - IControl implementation - - - - - Scriptable Editor is the entry point for all ScriptableObject in Advanced Inspector. - - - - - Unity's OnEnable. - - - - - Should we check for the [AdvancedInspectorAttribute]? - - - - - Pooled information about a PropertyInfo and translated for the Inspector. - - - - - This constructor is used as a duplication. - Note that this field is free and not parented to anything. - Use with great care! - - - - - Entry point for a generic manually created field. - - - - - Entry point for a generic manually created field. - - - - - Entry point for a generic indexed serialized created field. - - - - - Entry point for a generic serialized created field. - - - - - Entry point for an empty field with no editor. - - - - - Entry point of a group. - - - - - Entry point of a toolbar. - - - - - Entry point for a indexed field. - You should not create this manually. - - - - - Entry point of a Dictionary item. - - - - - Entry point for a non-member related field. - Useful to draw a single FieldEditor. - - - - - Script entry point. - - - - - Entry point for a Field created from a path and Object ids. - - - - - Entry point for a method field. (Button) - - - - - Entry point for a method field. (Button) - - - - - Entry point for a standard field. - - - - - Entry point for a standard field. - - - - - Entry point for a standard field. - - - - - Entry point for a standard property. - - - - - Entry point for a standard property. - - - - - Entry point for a standard property. - - - - - Compares if two InspectorField contains the same data. - - - - - Compares if two InspectorField contains the same data. - - - - - Compares if two InspectorField contains the same data. - - - - - HashCode - - - - - - IComparable implementation - - - - - IComparable implementation - - - - - Force a new attribute to be added a runtime. - - - - - Get an attribute by type that was applied to the original item. - - - - - Get an attribute by type that was applied to the original item. - - - - - Get all the attributes by type that were applied to the original item. - - - - - Get all the attributes by type that were applied to the original item. - - - - - Return true if the memberinfo of this field is sporting that specific attribute type. - - - - - Return true if the memberinfo of this field is sporting that specific attribute type. - - - - - Add this field to the watch list, which is displayed on the Watch window. - - - - - Force the selection of the serialized instances of this field. - - - - - Attempt to save this field value in play mode the next time it is stopped. - - - - - Apply this field modification to its prefab parent. - - - - - Revert any modification of this field and retreived the original value of its prefab parent. - - - - - Record the object state for undo purpose. - - - - - Copy the current value of this field to the clipboard. - - - - - Return true if the passed value can be copied over this field. - - - - - Paste the clipboard data to this field. - Careful, you should do a type test before. - - - - - The current value of this field. - If not a field, returns null. - If multi object, return null if all the value aren't the same. - - - - - The current value of this field. - If not a field, returns null. - If multi object, return null if all the value aren't the same. - - - - - The value of this field, based on a specific object instance. - - - - - The value of this field, based on a specific object instance. - - - - - Get all instances value. - - - - - Get all instances value. - - - - - Reset this field to its default value. - Object = null - Value Type = default(T) - - - - - Set the value of this field. - Support undo. When calling this, assume undo will be "Set Value MyField" - - - - - Set the value of this field, based on a specific object instance. - Does not support undo, should be recorded before calling. - - - - - Flags the related serialized instance as dirty. - - - - - Reparse the internal sub-fields of this field. - Useful when a list or an object changed. - - - - - Sort all children fields. - - - - - Get a MemberInfo from a serializable path. - The "Path" property from a InspectorField is a valid path. - - - - - Get a value from a serializable path. - The "Path" property from a InspectorField is a valid path. - - - - - Set a value by a serializable path. - The "Path" property from a InspectorField is a valid path. - - - - - Return a list of indexed field. Work with List and Array. - - - - - Return a list of keyed field. Work with IDictionary. - - - - - Get fields from an object. - - - - - Get fields from an object. - - - - - Get fields from an object. Bypass ignore Inspect and Expandable attributes. - - - - - The object owning this specific field. - - - - - The serialized object owning this specific field. - May not be the same as the instance, or even the currently Selected item in the Inspector. - - - - - The prefab parent to this object. - - - - - The member info of this field. - PropertyInfo, FieldInfo or MethodInfo. Otherwise null. - - - - - The attributes of this field, manually and by reflection. - - - - - Used only for the Script object reference at the top, or hidden Unity property. - - - - - Get the parents GameObjects in cases of components. Useful for undoes. - - - - - The parent field in case of nesting. - Null if directly at the top. - - - - - Subfields, such as field in an expandable object, or a list. - - - - - Fields used for edition, are not drawn by the Inspector automaticly. - - - - - Indentation depth of this field. - - - - - Is this field a method, field, property or a group? - - - - - External editor are sometimes used to browse non-Unity object. - Sadly, undo only works on valid Unity objects. - Also return false if one of the serializable parent became null or none. - - - - - The type of this field. - In most case, would return the FieldInfo.FieldType or PropertyInfo.PropertyType - In case of a group, it returns null. - If this field is flagged as Runtime-Resolved, it returns the type of the current value. - - - - - In case of a collection, returns the base type. - Ex.: int[] or List(int), base type if int. - In a dictionary, return the value type. - - - - - In case of a dictionary, returns the key type. - Return null otherwise. - - - - - The Inspect Attribute that made this field visible. - - - - - The Override Editor assigned to this field. - No field can be drawn without one. - - - - - A restrictor turns any field into a drop down list of specific choices. - - - - - Is this field part of a group? - - - - - Is this field part of a toolbar? - - - - - Is this field visibility controlled by a tab? - - - - - In cases of tabs, this is the currently selected tab enum value. - - - - - The Descriptor assigned to this field. Name, tooltip, icon, etc. - In case of multi-objects, there is no runtime invokation and the descriptor returned is the one on the member. - - - - - Returns true if the item inspected is static. - - - - - Readonly field cannot be edited. - In case of multi-objects, if any is readonly, all are. - - - - - Is this field animated. Only works for fields, not property. - - - - - The Help data being drawn after the field. - Does not work in multi-object edition. - - - - - This field is a bypass field, and sub-field automaticly recieve that flag. - - - - - Can this field be expanded? - It display the arrow button. - - - - - Is this field open and displaying internal fields? - - - - - Was this field erased? - - - - - Is this object display as being part of the parent? - - - - - Can this object field display the "+" sign to create a derived object from the base type? - - - - - Name of the label of that field. - Can be modified by Descriptor. - - - - - The color of the editable field. - - - - - The color of the background (ex.: Expandable box) - - - - - Priority of a field, used when sorting. - - - - - The order at which this field was found in the code. - If an indexed field, return the index. - - - - - If false, this field does not draw its label. - Useful for toolbar. - - - - - The specific style this field is draw with. - - - - - Internal path to this specific field. - Used to keep persistant data across selection. - - - - - Many thing can prevent a field from being drawn. Ex.: InspectAttribute can hide it. - If internal data from Unity return an exception on read, we skip it. - - - - - Return false is any of the serialized parent have the hide flag "Not Editable". - - - - - Return true if the item is different from it's prefab parent. - Always return false if it's a non-value type and not a ref (UnityEngine.Object). - - - - - Return true when editing multiple object that doesn't have the same value. - Always return true if they are objects and not the same instance. - - - - - Return true if all instances are of the same type. - Which mean they are expandable even in multi-objects edition - - - - - Index of the field in a list or array. - Return -1 if not part of a collection. - - - - - Is this a collection? (array or list) - - - - - When in a dictionary, the key of this value. - - - - - Is this a dictionary? (UDictionary) - - - - - Returns the current number of children. - In case of list, returns the number of items in it. - In case of multiples list, return -1 if all list doesn't have the same number of items. - - - - - Test if the current type overload ToString properly. - - - - - Type of InspectorField. - - - - - Empty unset field - - - - - Field containing a FieldInfo - - - - - Field containing a PropertyInfo - - - - - Field containing a MethodInfo - - - - - The InspectorField is only a wrapper around a SerializedProperty object. - To use in case of hidden property in the Unity API. - - - - - Field that is a group of other field. - - - - - Field that is drawn as a toolbar. (horizontal group) - - - - - Unlinked field just stores a value internally and is not bound to an object. - - - - - The top field, the reference towards the original script. - - - - - Handles the Advanced Inspector preferences. - - - - - Returns true if the control is valid in the current Event context. - - - - - Returns true if the control is valid in the current Event context. - - - - - The style collection used for the different element. - - - - - If true, all classes that do not have a Custom Editor are drawn by Advanced Inspector. - - - - - The control for scrolling numbers. - - - - - The control to copy-paste by drag. - - - - - The control modifier used when clicking on an expansion arrow. Expand/Collapse sub-nodes. - - - - - Usually to open the contextual menu, you do Right-Click. - In some cases, people may not have access to a proper right-click, so they can do CTRL+Click for example. - - - - - Extra indentation applied to boxes. - - - - - The maximum number of displayed item in a collection. Trigger the large collection arrow display beyond that. - - - - - The accepted control that involves dragging. - - - - - The control is turned off. - - - - - Single drag. - - - - - Alt+Drag - - - - - Control+Drag - - - - - Shift+Drag - - - - - The modifier keys involded in non-dragging action. - - - - - Alt Key - - - - - Control Key - - - - - Shift Key - - - - - This class handles the rendering and input of the Preview zone. - - - - - Object to be previewed - Supported type; - GameObject - Mesh - Material - Texture - - - - - The different internal style. - - - - - No boxes, no nothing. Clean, similar to Unity default. - - - - - Round boxes. - - - - - Unity flat style - - - - - A wrapper recongnized by the internal inspector so that non-UnityEngine.Object can be inspected. - - - - - Force Unity's "Selection" to use a non-unity object. - - - - - Is this object selected by Unity's Selection? - - - - - Get currenty Unity's Selection - - - - - Object to Inspector - - - - - A copy/paste buffer. - Does not use the System buffer, as it's limited to a string and Unity does not provide a uniformed string serialization. - - - - - Create an instance of type - Works with values, list, array, scriptableObject, string - Components are ignored. - - - - - Create an instance of type - Works with values, list, array, scriptableObject, string - Components are ignored. - - The owner MonoBeahviour is used in case of the creation of a ComponentMonoBehaviour for its internal binding. - - - - - Perform a deep copy if an object. - Does not perform copies of Components or GameObject - Values are returned as is (ex.: 14) - strings are cloned. - List/Array are enumerated and copied. - Everything else is deep copied by fields. - - - - - Test if the current clipboard data can be converted into a specific type. - Ex.: int to string - - - - - Test if the current clipboard data can be converted into a specific type. - Ex.: int to string - - - - - Return true if an object is convertable to a type. - - - - - In case of any normal object, returns deep copy of that object. - In case of a Component, returns the original so you can apply it on a GameObject yourself (sorry) - In case of a UnityEngine.Object, create a new one and perforce a Serialization Copy. - - - - - Type of the current data in the clipboard. - - - - - A separator holds two control side by side and divide them with a draggable line. - It can be horizontal or vertical. - - - - - Draw the whole region holding the two control and the separator. - The separator pass down the proper region to Draw of the sub-controls. - Returns true if the window needs to be repainted. - - - - - Targeted object - - - - - Is on top of the target - - - - - Selecttion dragged - - - - - Extends Enum with some bitfields related method. - - - - - Add a value to a bitfield. - - - - - Remove a value from a bitfield. - - - - - Test if a bitfield has a value. - - - - - Gets an attribute on an enum field value - - The type of the attribute you want to retrieve - The enum value - The attribute of type T that exists on the enum value - - - - Extends Enum with some bitfields related method. - - - - - Returns the nearest parent class that is generic. - - - - - The DateTime dialog is a date picker that is day/week accurate. - - - - - Define a popup window that return a result. - Base class for IModal implementation. - - - - - Top title bar height - - - - - The object that invoked this modal. - - - - - Internal modal result. - - - - - Default constructor. - - - - - Invoked by Unity when the user click outside the window. - - - - - Called when pressing Escape or Cancel. - - - - - Called when pressing Enter or Ok. - - - - - Does this specific modal type exist? - - - - - Usually you should not override this. - - - - - Implement your draw items here. - - - - - Result of this modal window. - - - - - Height of dialog - - - - - Width of dialog - - - - - Create this dialog. - - - - - Draw the dialog region. - - - - - Modified DateTime if Result is Ok - - - - - The toolbox is a generic way of display a selection to the user. - Any EditorWindow that implement IToolbox will call it when CTRL+Q is request it. - It is up to the window to fill the content of the Toolbox. - - - - - Add an item to the toolbox list. - - - - - Create a toolbox for this IModal. - - - - - Create a toolbox for this IModal. - - - - - IControl implementation - - - - - List of items visible by this toolbox. - - - - - The current selection. - - - - - The search term entered in the search field. - - - - - Result returned by a Modal Window - - - - - No result, no action taken - - - - - Ok or Enter - - - - - Cancel or Escape - - - - - An error occured - - - - - User clicked outside the modal - - - - - A control that is a list of item that can be nested. - Support drag and drop, editing and sorting. - - - - - Refresh the list of visible item when the items list has changed. - - - - - Refresh the list of visible item when the items list has changed. - - - - - Current selected tags. - - - - - Number of visible nodes. - - - - -- cgit v1.1-26-g67d0