mirror of
https://github.com/xivdev/Penumbra.git
synced 2025-12-15 05:04:15 +01:00
Fix last group in selector not working correctly.
This commit is contained in:
parent
7a34bdabba
commit
071da49ba9
1 changed files with 15 additions and 3 deletions
|
|
@ -1,5 +1,6 @@
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using System.Drawing.Configuration;
|
||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Numerics;
|
using System.Numerics;
|
||||||
|
|
@ -406,7 +407,6 @@ namespace Penumbra.UI
|
||||||
|
|
||||||
if( !mod.Data.SortOrder.StartsWith( _currentModGroup ) )
|
if( !mod.Data.SortOrder.StartsWith( _currentModGroup ) )
|
||||||
{
|
{
|
||||||
var count = _currentModGroup.Length - 2;
|
|
||||||
var lastFolder = _currentModGroup.LastIndexOf( '/', _currentModGroup.Length - 2 );
|
var lastFolder = _currentModGroup.LastIndexOf( '/', _currentModGroup.Length - 2 );
|
||||||
_currentModGroup = lastFolder == -1 ? string.Empty : _currentModGroup.Substring( 0, lastFolder + 1 );
|
_currentModGroup = lastFolder == -1 ? string.Empty : _currentModGroup.Substring( 0, lastFolder + 1 );
|
||||||
ImGui.TreePop();
|
ImGui.TreePop();
|
||||||
|
|
@ -422,8 +422,9 @@ namespace Penumbra.UI
|
||||||
{
|
{
|
||||||
var mods = Mods!;
|
var mods = Mods!;
|
||||||
var folderLabel =
|
var folderLabel =
|
||||||
$"{mod.Data.SortOrder.Substring( _currentModGroup.Length, nextFolder - _currentModGroup.Length )}##{modIndex}_{_currentModGroup.Length}";
|
$"{mod.Data.SortOrder.Substring( _currentModGroup.Length, nextFolder - _currentModGroup.Length )}##{_currentModGroup}";
|
||||||
_currentModGroup = mod.Data.SortOrder.Substring( 0, nextFolder + 1 );
|
_currentModGroup = mod.Data.SortOrder.Substring( 0, nextFolder + 1 );
|
||||||
|
|
||||||
if( ImGui.TreeNodeEx( folderLabel ) )
|
if( ImGui.TreeNodeEx( folderLabel ) )
|
||||||
{
|
{
|
||||||
for( ; modIndex < mods.Count; ++modIndex )
|
for( ; modIndex < mods.Count; ++modIndex )
|
||||||
|
|
@ -450,6 +451,17 @@ namespace Penumbra.UI
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void CleanUpLastGroup()
|
||||||
|
{
|
||||||
|
var numFolders = _currentModGroup.Count( c => c == '/' );
|
||||||
|
while( numFolders-- > 0 )
|
||||||
|
{
|
||||||
|
ImGui.TreePop();
|
||||||
|
}
|
||||||
|
|
||||||
|
_currentModGroup = string.Empty;
|
||||||
|
}
|
||||||
|
|
||||||
public void Draw()
|
public void Draw()
|
||||||
{
|
{
|
||||||
if( Mods == null )
|
if( Mods == null )
|
||||||
|
|
@ -474,9 +486,9 @@ namespace Penumbra.UI
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CleanUpLastGroup();
|
||||||
ImGui.PopStyleVar();
|
ImGui.PopStyleVar();
|
||||||
|
|
||||||
|
|
||||||
ImGui.EndChild();
|
ImGui.EndChild();
|
||||||
|
|
||||||
DrawModsSelectorButtons();
|
DrawModsSelectorButtons();
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue