LunarPresentation/Commands/ExpandAndCollapse.cs
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System.Collections.Generic;
using System.Windows;
using System.Windows.Controls;
using SHomeWorkshop.LunarPresentation.Interfaces;
namespace SHomeWorkshop.LunarPresentation.Commands
{
public partial class Command
{
public static void ExpandAndCollapse()
{
if (Globals.selectedEditor == null) return;
if (Globals.selectedEditor.SelectedExpression == null) return;
LunarPresentation.Expressions.Expression curEx
= Globals.selectedEditor.SelectedExpression;
if ((curEx is ICollapsed) == false)
{
MessageBox.Show("此类型公式不支持“展开/折叠”操作!", Globals.appName,
MessageBoxButton.OK, MessageBoxImage.Warning);
return;// 未实现这个接口,不支持。
}
if (curEx is Expressions.BaseText)
{
if (curEx.ParentPanel != null && curEx.ParentPanel.Direction == Orientation.Horizontal)
{
MessageBox.Show("水平子面板中的文本块不支持“展开/折叠”操作!",
Globals.appName, MessageBoxButton.OK, MessageBoxImage.Warning);
return;
}
Expressions.BaseText bt = curEx as Expressions.BaseText;
if (bt.IsHeaderText == false)
{
MessageBox.Show("当前文本块不是标题,不支持折叠!",
Globals.appName, MessageBoxButton.OK, MessageBoxImage.Warning);
return;
}
if (bt.Indent > 3)
{
MessageBox.Show("当前文本块缩进级别过大,折叠操作无意义!",
Globals.appName, MessageBoxButton.OK, MessageBoxImage.Warning);
return;
}
List<Expressions.Expression> subExs = bt.GetSubIndentExpressions();
if (subExs == null || subExs.Count <= 0)
{
MessageBox.Show("当前文本块没有“下级”公式,折叠操作无意义!",
Globals.appName, MessageBoxButton.OK, MessageBoxImage.Warning);
return;
}
}
Expressions.LeafPanel leaf = curEx as Expressions.LeafPanel;
if (leaf != null && leaf.LeafType == Expressions.LeafPanel.LeafPanelType.Root)
后面还有 26 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。