SELECT-RANGE-LOCK Geek Inspector Addons

4AI

(1)
$7
Publisher 4AI
File size 5.69MB
Number of files 71
Latest version 1
Latest release date 2021-02-17 03:30:18
First release date 2021-02-17 03:30:18
Supported Unity versions 2018.4.2 or higher

Have you ever wanted to select objects referenced by a range of elements in an array or list in the Unity Inspector? Now it's easy.


This Geek Inspector Addons bundle includes three families of commands described below: “SELECT”, “RANGE”, “LOCK” commands. You can access them in the 4AI Geek Context Menu appended to a standard Unity context menu related to array and list properties.


FULL SOURCE CODE included.


WEBSITE | DOC | GEEK ADDONS | SUPPORT FORUM | BUG REPORTS | FORUM


The bundle extends the Unity Editor and enables:

selecting game objects or any objects referenced by an array or list range
• setting and resizing the array or list element range,
• different operation modes such as a locked or unlocked element range mode.


The addons included in the bundle extend the Unity Editor as described below.


--------------------------------------------------

OTHER RELEASED 4AI GEEK ADDONS

--------------------------------------------------

Geek Tools
List & Array Toolbox
Editor List & Array Toolkit
Inspector List & Array Toolkit
MOVE-RANGE-LOCK Geek Inspector Addons
COPY-PASTE-RANGE Geek Inspector Addons
CUT-INSERT-RANGE Geek Inspector Addons
Visit the publisher page for the full list of productivity extensions.


------------------------------

DEMO SCENE

------------------------------

You can test this package with the free demo scene available in the Asset Store.
For testing, you can also use two MonoBehaviour scripts: ExampleArrays.cs and ExampleLists.cs that contain many different arrays and lists. Attach the scripts to any game objects, define array and list data and then, just right-click on array/list element names to display a context menu with appended 4AI Geek Context Menu.


------------------------------

BUNDLE COMMANDS

------------------------------


SELECT commands
--------------------
SELECT array GAME OBJECTS <a, b> (appears when the range is unlocked)
SELECT array GAME OBJECTS <START, END> LOCKED (appears when the range is locked)
SELECT array OBJECTS <a, b> (appears when the range is unlocked)
SELECT array OBJECTS <START, END> LOCKED (appears when the range is locked)

RANGE commands
--------------------
SET RANGE to R (submenus)
SET RANGE to R LOCKED (submenus)
RESIZE RANGE by R (submenus)
RESIZE RANGE by R LOCKED (submenus)
SET range START and LOCK
SET range END and LOCK

LOCK commands
--------------------
LOCK range (appears when the range is unlocked)
UNLOCK range (appears when the range is locked)
RELOCK range (appears when the range is locked)


------------------------------

HOW TO USE IT

------------------------------

For the purpose of this description the term “right-click” will be used as the operation opening a context menu.


You can open the 4AI Geek Context Menu as any context menu in the Unity Inspector by right-clicking on an array or list element name (not a value). In some versions of Unity it is also possible to right-click on the array/list name itself - in this case it assumes that the clicked element index is zero. 4AI Geek Context Menu is appended to the standard Unity context menu items. You can learn more details at:
https://4ai.io/geek-addons/


------------------------------

DEFINITIONS

------------------------------

Common terms and identifiers simplifying the descriptions:

• clickedINDEX – clicked array or list item index,
• START – current FIXED / LOCKED range start,
• END – current FIXED / LOCKED range end,
• R – current range size (equal to: END-START+1 in the LOCKED state or b-a+1 in the UNLOCKED state),
• <a, b> – a range where a = clickedINDEX and (b - a + 1) = R
• <START, END>, LOCKED range - a range locked to specific array or list elements that is modified if the position of elements change,
• FIXED range - a range that was usually LOCKED earlier and UNLOCKED later.


------------------------------

SINGLE COMMANDS

------------------------------

SET range START and LOCK
SET the array or list range START to clickedINDEX so that the final range is <clickedINDEX, END> and is LOCKED. See the LOCK range command for more information.

SET range END and LOCK
SET the array or list range END to clickedINDEX so that the final range is <START, clickedINDEX> and is LOCKED. See the LOCK range command for more information.

LOCK range
LOCK the range <clickedINDEX, R>. If you execute a command such as MOVE range by N or SHIFT range by N on a LOCKED range, the whole range will be moved or shifted by N too. When you have a LOCKED range, you can click on any array / list item and it will not have any effect on the range a given command will use. The range will be equal to <START, END>.

UNLOCK range
Unlocks the range, which means that the current range will be recalculated based on the current clickedINDEX and current range size R. If you click at a different array or list element, the range will start at that element. The related context menu item is available when the range is LOCKED.

RELOCK range
UNLOCK the range <START, END> and LOCK the range <clickedINDEX, clickedINDEX+R-1>, so that the new range size is unchanged, but the START is equal to clickedINDEX. The related context menu item is available when the range is LOCKED.


SELECT array GAME OBJECTS <a, b>

SELECT array GAME OBJECTS referenced directly or indirectly by elements in the range <clickedINDEX, clickedINDEX+R-1>.

The final range and the range end must fit in the array or list. The related context menu item is available when the range is UNLOCKED and element values are Unity game object or component references.


SELECT array GAME OBJECTS <START, END> LOCKED

SELECT array GAME OBJECTS referenced directly or indirectly by elements in the range <START, END>.

The final range and the range end must fit in the array or list. The related context menu item is available when the range is LOCKED and element values are Unity game object or component references.


SELECT array OBJECTS <a, b>

SELECT array OBJECTS referenced by elements in the range <clickedINDEX, clickedINDEX+R-1>.

The final range and the range end must fit in the array or list. The related context menu item is available when the range is UNLOCKED.


SELECT array OBJECTS <START, END> LOCKED

SELECT array OBJECTS referenced by elements in the range <START, END>.

The final range and the range end must fit in the array or list. The related context menu item is available when the range is LOCKED.


------------------------------

SUBMENUS

------------------------------

SET RANGE to R (submenus)

SET range to <clickedINDEX, clickedINDEX+R-1> so that the range size equals R. R is chosen by one of the command submenu items.


SET RANGE to R LOCKED (submenus)

SET range to <START, START+R-1> so that the range size equals R. R is chosen by one of the command submenu items. Next, update the LOCKED range. The related context menu item is available when the range is LOCKED. See the LOCK range command for more information.


RESIZE RANGE by R (submenus)

RESIZE the range <clickedINDEX, clickedINDEX+currentR-1> by R, so that the final range is <clickedINDEX, clickedINDEX+currentR+R-1>, where currentR is the range size before the operation. R is chosen by one of the command submenu items.


RESIZE RANGE by R LOCKED (submenus)

RESIZE the range <START, END> by R, so that the final range is <START, END+R>, where currentR is the range size before the operation. R is chosen by one of the command submenu items. Next, update the LOCKED range. The related context menu item is available when the range is LOCKED. See the LOCK range command for more information.


------------------------------

EXTENSIONS

------------------------------

Some extensions for the Geek Inspector Addons framework are planned to be released in the Unity Asset Store, for example:

• Geek Context Menu style configuration (e.g. it will be possible to change some indentations, prefixes and suffixes),
• Geek Context Menu items visibility and priority (order).

Check the Unity Asset Store for availability.


------------------------------

LINKS

------------------------------

Links related to Geek Addons:

PLUGIN WEBSITE & DOCUMENTATION
Free Demo Scene - Geek Addons Demo
Geek Addons page
Geek Inspector Addons page
Forum
Support Forum
Bug Reports Forum
Unity forum thread related to Geek Inspector Addons (Works in Progress)
Unity forum thread related to SELECT-RANGE-LOCK Geek Inspector Addons release
Contact


--------------------------------------------------

OTHER RELEASED 4AI GEEK ADDONS

--------------------------------------------------

Geek Tools
List & Array Toolbox
Editor List & Array Toolkit
Inspector List & Array Toolkit
MOVE-RANGE-LOCK Geek Inspector Addons
COPY-PASTE-RANGE Geek Inspector Addons
CUT-INSERT-RANGE Geek Inspector Addons
Visit the publisher page for the full list of productivity extensions.


------------------------------------

SOCIAL PAGES

------------------------------------

4AI on Facebook
4AI on Twitter
4AI on Linkedin


FULL SOURCE CODE included.


WEBSITE | DOC | GEEK ADDONS | SUPPORT FORUM | BUG REPORTS | FORUM

Top Publisher Assets