Appearance: folders for outfits (organise My Outfits as a folder tree) #289

Closed
opened 2026-10-04 07:57:01 +00:00 by sky_line · 0 comments
Owner

Let people organise outfits into a tree of folders (e.g. Casual > Summer, Events > Formal, RP > Fantasy) instead of one long flat list.

Current behaviour

  • Outfits live in the My Outfits system folder. Each outfit is a category of type FT_OUTFIT holding links to the worn items.
  • The Appearance floater's My Outfits tab (LLOutfitsList / LLOutfitGallery, lloutfitslist.cpp, lloutfitgallery.cpp) only lists the direct children of My Outfits, as a flat accordion or a gallery. People with hundreds of outfits scroll forever or rely on naming prefixes.

Proposal

  • Allow plain folders (FT_NONE) inside My Outfits, nested to any depth, containing outfit folders (FT_OUTFIT) and further subfolders. This uses standard inventory types: no server changes, and it's safe for other viewers.
  • My Outfits tab:
    • List view: a collapsible folder tree, where outfits are leaves with the existing wear/add/edit actions.
    • Gallery view: a breadcrumb + folder tiles to drill down (or a sidebar tree).
    • The filter/search matches outfit names across all folders and shows the path.
  • Actions:
    • New Folder / Rename / Delete (only when empty, or with a confirmation that moves contents up).
    • Drag outfits and folders between folders.
    • "Save outfit as..." gets a destination folder picker, defaulting to the current folder.
  • Compatibility:
    • Outfits saved into subfolders must still work everywhere: wearing, the Current Outfit, "Replace outfit" from inventory, and RLV @attach/shared folders, which are separate from #RLV but need a sanity check.
    • Other viewers that only scan direct children won't list nested outfits in their outfit tab. That's expected; the items stay intact in inventory, and the ticket should document it.
    • Make sure the outfit-thumbnail / gallery snapshot logic and LLAppearanceMgr (e.g. findDescendentCategoryIDByName, getCategoryChildren assumptions, "My Outfits" lookups) handle nesting. Watch for code that iterates only one level, and anything that creates or wears outfits by category, such as wearInventoryCategory and the COF.
  • Optional: "Move outfits into folders by prefix": a one-time helper that groups Casual - Summer style names into folders.

Done when

  • A user can create nested folders in My Outfits from the Appearance floater, move outfits into them, find and wear any outfit from either view and via search, and save new outfits into a chosen folder, with no regressions for flat setups.
Let people organise outfits into a **tree of folders** (e.g. *Casual > Summer*, *Events > Formal*, *RP > Fantasy*) instead of one long flat list. ### Current behaviour - Outfits live in the **My Outfits** system folder. Each outfit is a category of type `FT_OUTFIT` holding links to the worn items. - The Appearance floater's **My Outfits** tab (`LLOutfitsList` / `LLOutfitGallery`, `lloutfitslist.cpp`, `lloutfitgallery.cpp`) only lists the **direct children** of My Outfits, as a flat accordion or a gallery. People with hundreds of outfits scroll forever or rely on naming prefixes. ### Proposal - Allow **plain folders** (`FT_NONE`) inside My Outfits, nested to any depth, containing outfit folders (`FT_OUTFIT`) and further subfolders. This uses standard inventory types: **no server changes**, and it's safe for other viewers. - **My Outfits tab:** - **List view:** a collapsible folder tree, where outfits are leaves with the existing wear/add/edit actions. - **Gallery view:** a breadcrumb + folder tiles to drill down (or a sidebar tree). - The filter/search matches outfit names across all folders and shows the path. - **Actions:** - New Folder / Rename / Delete (only when empty, or with a confirmation that moves contents up). - Drag outfits and folders between folders. - "Save outfit as..." gets a destination folder picker, defaulting to the current folder. - **Compatibility:** - Outfits saved into subfolders must still work everywhere: wearing, the Current Outfit, "Replace outfit" from inventory, and RLV `@attach`/shared folders, which are separate from #RLV but need a sanity check. - Other viewers that only scan direct children won't list nested outfits in their outfit tab. That's expected; the items stay intact in inventory, and the ticket should document it. - Make sure the outfit-thumbnail / gallery snapshot logic and `LLAppearanceMgr` (e.g. `findDescendentCategoryIDByName`, `getCategoryChildren` assumptions, "My Outfits" lookups) handle nesting. Watch for code that iterates only one level, and anything that creates or wears outfits by category, such as `wearInventoryCategory` and the COF. - **Optional:** "Move outfits into folders by prefix": a one-time helper that groups `Casual - Summer` style names into folders. ### Done when - A user can create nested folders in My Outfits from the Appearance floater, move outfits into them, find and wear any outfit from either view and via search, and save new outfits into a chosen folder, with no regressions for flat setups.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
sky_line/Slipstream#289
No description provided.