mirror of
https://gitcode.com/shufeng2012/ohos-xournalpp.git
synced 2026-11-06 12:41:11 +08:00
908 lines
27 KiB
Plaintext
908 lines
27 KiB
Plaintext
import { SymbolGlyphModifier } from "@kit.ArkUI";
|
|
|
|
@ComponentV2
|
|
|
|
|
|
struct FileMenu {
|
|
@Builder
|
|
buildMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "新建", labelInfo: "Ctrl+N" });
|
|
MenuItem({ content: "打开", labelInfo: "Ctrl+O" });
|
|
MenuItem({ content: "最近文档", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')) });
|
|
MenuItem({ content: "标注PDF" });
|
|
MenuItem({ content: "保存", labelInfo: "Ctrl+S" });
|
|
MenuItem({ content: "另存为", labelInfo: "Shift+Ctrl+S" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "导出为PDF" });
|
|
MenuItem({ content: "导出为...", labelInfo: "Ctrl+E" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "打印", labelInfo: "Ctrl+P" });
|
|
MenuItem({ content: "退出", labelInfo: "Ctrl+Q" });
|
|
}
|
|
}
|
|
}
|
|
|
|
build() {
|
|
Text("文件")
|
|
.margin('12vp')
|
|
.bindMenu(this.buildMenu());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@ComponentV2
|
|
|
|
|
|
struct EditMenu {
|
|
@Local condition: boolean[] = [true, true];
|
|
|
|
@Builder
|
|
buildArrangeMenu() {
|
|
Menu() {
|
|
MenuItem({ content: "移到最前" });
|
|
MenuItem({ content: "上移一层" });
|
|
MenuItem({ content: "下移一层" });
|
|
MenuItem({ content: "移到最后" });
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildToolMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "管理" });
|
|
MenuItem({ content: "设置" });
|
|
}
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "撤销", labelInfo: "Ctrl+Z" });
|
|
MenuItem({ content: "重复", labelInfo: "Shift+Ctrl+Z" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "剪切", labelInfo: "Ctrl+X" });
|
|
MenuItem({ content: "拷贝", labelInfo: "Ctrl+C" });
|
|
MenuItem({ content: "粘贴", labelInfo: "Ctrl+V" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "全选", labelInfo: "Ctrl+A" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "查找", labelInfo: "Ctrl+F" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "删除", labelInfo: "Delete" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "排列选择", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildArrangeMenu.bind(this) });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "上移选区图层" });
|
|
MenuItem({ content: "下移选区图层" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "旋转吸附" })
|
|
.selected(this.condition[0])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.condition[0] = isSelected;
|
|
});
|
|
MenuItem({ content: "网格吸附" })
|
|
.selected(this.condition[1])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.condition[1] = isSelected;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "首选项" });
|
|
MenuItem({ content: "工具栏", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildToolMenu.bind(this) });
|
|
}
|
|
}
|
|
}
|
|
|
|
build() {
|
|
Text("编辑")
|
|
.margin('12vp')
|
|
.bindMenu(this.buildMenu());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@ComponentV2
|
|
|
|
|
|
struct ViewMenu {
|
|
@Local menu1: boolean[] = [false, false, false];
|
|
@Local menu2: boolean[] = [true, true, false];
|
|
@Local condition: boolean = true;
|
|
@Local layout1: number = 1;
|
|
@Local layout2: number = 1;
|
|
@Local layout3: number = 1;
|
|
@Local row_col: number = 1;
|
|
|
|
@Builder
|
|
buildLayoutMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "水平" })
|
|
.selected(this.layout1 === 1)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.layout1 = 1;
|
|
})
|
|
MenuItem({ content: "垂直" })
|
|
.selected(this.layout1 === 2)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.layout1 = 2;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "水平" })
|
|
.selected(this.layout1 === 1)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.layout1 = 1;
|
|
})
|
|
MenuItem({ content: "垂直" })
|
|
.selected(this.layout1 === 2)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.layout1 = 2;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "从左到右" })
|
|
.selected(this.layout2 === 1)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.layout2 = 1;
|
|
})
|
|
MenuItem({ content: "从右到左" })
|
|
.selected(this.layout2 === 2)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.layout2 = 2;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "从上到下" })
|
|
.selected(this.layout3 === 1)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.layout3 = 1;
|
|
})
|
|
MenuItem({ content: "从下到上" })
|
|
.selected(this.layout3 === 2)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.layout3 = 2;
|
|
});
|
|
}
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildColMenu() {
|
|
Menu() {
|
|
MenuItem({ content: "1列" })
|
|
.selected(this.row_col === 1)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 1;
|
|
});
|
|
MenuItem({ content: "2列" })
|
|
.selected(this.row_col === 2)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 2;
|
|
});
|
|
MenuItem({ content: "3列" })
|
|
.selected(this.row_col === 3)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 3;
|
|
});
|
|
MenuItem({ content: "4列" })
|
|
.selected(this.row_col === 4)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 4;
|
|
});
|
|
MenuItem({ content: "5列" })
|
|
.selected(this.row_col === 5)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 5;
|
|
});
|
|
MenuItem({ content: "6列" })
|
|
.selected(this.row_col === 6)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 6;
|
|
});
|
|
MenuItem({ content: "7列" })
|
|
.selected(this.row_col === 7)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 7;
|
|
});
|
|
MenuItem({ content: "8列" })
|
|
.selected(this.row_col === 8)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 8;
|
|
});
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildRowMenu() {
|
|
Menu() {
|
|
MenuItem({ content: "1行" })
|
|
.selected(this.row_col === 9)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 9;
|
|
});
|
|
MenuItem({ content: "2行" })
|
|
.selected(this.row_col === 10)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 10;
|
|
});
|
|
MenuItem({ content: "3行" })
|
|
.selected(this.row_col === 11)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 11;
|
|
});
|
|
MenuItem({ content: "4行" })
|
|
.selected(this.row_col === 12)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 12;
|
|
});
|
|
MenuItem({ content: "5行" })
|
|
.selected(this.row_col === 13)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 13;
|
|
});
|
|
MenuItem({ content: "6行" })
|
|
.selected(this.row_col === 14)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 14;
|
|
});
|
|
MenuItem({ content: "7行" })
|
|
.selected(this.row_col === 15)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 15;
|
|
});
|
|
MenuItem({ content: "8行" })
|
|
.selected(this.row_col === 16)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.row_col = 16;
|
|
});
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildColRowMenu() {
|
|
Menu() {
|
|
MenuItem({ content: "设置列", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildColMenu.bind(this) });
|
|
MenuItem({ content: "设置行", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildRowMenu.bind(this) });
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "双页模式" })
|
|
.selected(this.menu1[0])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.menu1[0] = isSelected;
|
|
});
|
|
MenuItem({ content: "演讲模式", labelInfo: "F5" })
|
|
.selected(this.menu1[1])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.menu1[1] = isSelected;
|
|
});
|
|
MenuItem({ content: "全屏", labelInfo: "F11" })
|
|
.selected(this.menu1[2])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.menu1[2] = isSelected;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "显示工具栏", labelInfo: "F9" })
|
|
.selected(this.menu2[0])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.menu2[0] = isSelected;
|
|
});
|
|
MenuItem({ content: "显示菜单", labelInfo: "F10" })
|
|
.selected(this.menu2[1])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.menu2[1] = isSelected;
|
|
});
|
|
MenuItem({ content: "显示侧边栏", labelInfo: "F12" })
|
|
.selected(this.menu2[2])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.menu2[2] = isSelected;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "布局", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildLayoutMenu.bind(this) });
|
|
MenuItem({ content: "列/行", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildColRowMenu.bind(this) });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "放大", labelInfo: "Ctrl++" });
|
|
MenuItem({ content: "缩小", labelInfo: "Ctrl+-" });
|
|
MenuItem({ content: "正常大小" });
|
|
MenuItem({ content: "缩放至适合大小" })
|
|
.selected(this.condition)
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.condition = isSelected;
|
|
});
|
|
}
|
|
}
|
|
}
|
|
|
|
build() {
|
|
Text("视图")
|
|
.margin('12vp')
|
|
.bindMenu(this.buildMenu());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@ComponentV2
|
|
|
|
|
|
struct NavigationMenu {
|
|
@Builder
|
|
buildMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "首页", labelInfo: "Ctrl+Home" });
|
|
MenuItem({ content: "前一页", labelInfo: "Ctrl+Page Up" });
|
|
MenuItem({ content: "转到页面", labelInfo: "Ctrl+G" });
|
|
MenuItem({ content: "下一页", labelInfo: "Ctrl+Page Down" });
|
|
MenuItem({ content: "末页", labelInfo: "Ctrl+End" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "上一个图层", labelInfo: "Shift+Page Down" });
|
|
MenuItem({ content: "下一个图层", labelInfo: "Shift+Page Up" });
|
|
MenuItem({ content: "顶层" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "下一个标注页面", labelInfo: "Shift+Ctrl+Page Down" });
|
|
MenuItem({ content: "上一个标注页面", labelInfo: "Shift+Ctrl+Page Up" });
|
|
}
|
|
}
|
|
}
|
|
|
|
build() {
|
|
Text("导航")
|
|
.margin('12vp')
|
|
.bindMenu(this.buildMenu());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@ComponentV2
|
|
|
|
|
|
struct PageMenu {
|
|
@Builder
|
|
buildMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "新建前页" });
|
|
MenuItem({ content: "新建后页", labelInfo: "Ctrl+D" });
|
|
MenuItem({ content: "新建尾页" });
|
|
MenuItem({ content: "复制页面" });
|
|
MenuItem({ content: "添加新的PDF页面" });
|
|
MenuItem({ content: "配置页模板" });
|
|
MenuItem({ content: "删除页面", labelInfo: "Shift+Ctrl+Delete" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "在活动图层上方添加一个图层", labelInfo: "Ctrl+L" });
|
|
MenuItem({ content: "在活动图层下方添加一个图层" });
|
|
MenuItem({ content: "删除图层", labelInfo: "Shift+Ctrl+L" });
|
|
MenuItem({ content: "向下合并图层", labelInfo: "Ctrl+M" });
|
|
MenuItem({ content: "重命名图层", labelInfo: "Ctrl+R" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "纸张样式" });
|
|
MenuItem({ content: "纸张颜色" });
|
|
MenuItem({ content: "纸张背景", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')) });
|
|
}
|
|
}
|
|
}
|
|
|
|
build() {
|
|
Text("页面")
|
|
.margin('12vp')
|
|
.bindMenu(this.buildMenu());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@ComponentV2
|
|
|
|
|
|
struct ToolMenu {
|
|
@Local menu1: number = 1;
|
|
@Local draw_type: boolean[] = [false, false, false, false, false, false, false, false];
|
|
@Local set_square: boolean = false;
|
|
@Local compass: boolean = false;
|
|
@Local is_record: boolean = false;
|
|
@Local is_pause: boolean = false;
|
|
@Local pen_weight: number = 2;
|
|
@Local eraser_weight: number = 3;
|
|
@Local highlight_weight: number = 3;
|
|
@Local pen_style: number = 1;
|
|
@Local pen_fill: boolean = false;
|
|
@Local highlight_fill: boolean = false;
|
|
|
|
@Builder
|
|
buildDrawTypeMenu() {
|
|
Menu() {
|
|
MenuItem({ content: "形状识别", labelInfo: "Ctrl+1" })
|
|
.selected(this.draw_type[0])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.draw_type[0] = isSelected;
|
|
});
|
|
MenuItem({ content: "绘制矩形", labelInfo: "Ctrl+2" })
|
|
.selected(this.draw_type[1])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.draw_type[1] = isSelected;
|
|
});
|
|
MenuItem({ content: "绘制椭圆", labelInfo: "Ctrl+3" })
|
|
.selected(this.draw_type[2])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.draw_type[2] = isSelected;
|
|
});
|
|
MenuItem({ content: "绘制箭头", labelInfo: "Ctrl+4" })
|
|
.selected(this.draw_type[3])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.draw_type[3] = isSelected;
|
|
});
|
|
MenuItem({ content: "绘制双箭头", labelInfo: "Ctrl+5" })
|
|
.selected(this.draw_type[4])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.draw_type[4] = isSelected;
|
|
});
|
|
MenuItem({ content: "绘制坐标系统", labelInfo: "Ctrl+6" })
|
|
.selected(this.draw_type[5])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.draw_type[5] = isSelected;
|
|
});
|
|
MenuItem({ content: "绘制直线", labelInfo: "Ctrl+7" })
|
|
.selected(this.draw_type[6])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.draw_type[6] = isSelected;
|
|
});
|
|
MenuItem({ content: "绘制样条曲线", labelInfo: "Ctrl+8" })
|
|
.selected(this.draw_type[7])
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.draw_type[7] = isSelected;
|
|
});
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildPenMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "极细" })
|
|
.selected(this.pen_weight == 1)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.pen_weight = 1;
|
|
});
|
|
MenuItem({ content: "细" })
|
|
.selected(this.pen_weight == 2)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.pen_weight = 2;
|
|
});
|
|
MenuItem({ content: "中" })
|
|
.selected(this.pen_weight == 3)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.pen_weight = 3;
|
|
});
|
|
MenuItem({ content: "粗" })
|
|
.selected(this.pen_weight == 4)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.pen_weight = 4;
|
|
});
|
|
MenuItem({ content: "极粗" })
|
|
.selected(this.pen_weight == 5)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.pen_weight = 5;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "标准" })
|
|
.selected(this.pen_style == 1)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.pen_style = 1;
|
|
});
|
|
MenuItem({ content: "横虚线" })
|
|
.selected(this.pen_style == 2)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.pen_style = 2;
|
|
});
|
|
MenuItem({ content: "点划线" })
|
|
.selected(this.pen_style == 3)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.pen_style = 3;
|
|
});
|
|
MenuItem({ content: "点虚线" })
|
|
.selected(this.pen_style == 4)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.pen_style = 4;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "填充" })
|
|
.selected(this.pen_fill)
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.pen_fill = isSelected;
|
|
});
|
|
MenuItem({ content: "填充不透明度" });
|
|
}
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildEraserMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "极细" })
|
|
.selected(this.eraser_weight == 1)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.eraser_weight = 1;
|
|
});
|
|
MenuItem({ content: "细" })
|
|
.selected(this.eraser_weight == 2)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.eraser_weight = 2;
|
|
});
|
|
MenuItem({ content: "中" })
|
|
.selected(this.eraser_weight == 3)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.eraser_weight = 3;
|
|
});
|
|
MenuItem({ content: "粗" })
|
|
.selected(this.eraser_weight == 4)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.eraser_weight = 4;
|
|
});
|
|
MenuItem({ content: "极粗" })
|
|
.selected(this.eraser_weight == 5)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.eraser_weight = 5;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "标准" });
|
|
MenuItem({ content: "涂白" });
|
|
MenuItem({ content: "删除笔划" });
|
|
}
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildHighLightMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "极细" })
|
|
.selected(this.highlight_weight == 1)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.highlight_weight = 1;
|
|
});
|
|
MenuItem({ content: "细" })
|
|
.selected(this.highlight_weight == 2)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.highlight_weight = 2;
|
|
});
|
|
MenuItem({ content: "中" })
|
|
.selected(this.highlight_weight == 3)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.highlight_weight = 3;
|
|
});
|
|
MenuItem({ content: "粗" })
|
|
.selected(this.highlight_weight == 4)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.highlight_weight = 4;
|
|
});
|
|
MenuItem({ content: "极粗" })
|
|
.selected(this.highlight_weight == 5)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.highlight_weight = 5;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "填充" })
|
|
.selected(this.highlight_fill)
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.highlight_fill = isSelected;
|
|
});
|
|
MenuItem({ content: "填充不透明度" });
|
|
}
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildPDFMenu() {
|
|
Menu() {
|
|
MenuItem({ content: "标记不透明度" });
|
|
}
|
|
}
|
|
|
|
@Builder
|
|
buildMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "画笔", labelInfo: "Shift+Ctrl+P" })
|
|
.selected(this.menu1 == 1)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 1;
|
|
});
|
|
MenuItem({ content: "橡皮", labelInfo: "Shift+Ctrl+E" })
|
|
.selected(this.menu1 == 2)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 2;
|
|
});
|
|
MenuItem({ content: "选择连续文本", labelInfo: "Shift+Ctrl+W" })
|
|
.selected(this.menu1 == 3)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 3;
|
|
});
|
|
MenuItem({ content: "在矩形中选择文本", labelInfo: "Shift+Ctrl+Y" })
|
|
.selected(this.menu1 == 4)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 4;
|
|
});
|
|
MenuItem({ content: "荧光笔", labelInfo: "Shift+Ctrl+H" })
|
|
.selected(this.menu1 == 5)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 5;
|
|
});
|
|
MenuItem({ content: "文本", labelInfo: "Shift+Ctrl+T" })
|
|
.selected(this.menu1 == 6)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 6;
|
|
});
|
|
MenuItem({ content: "图像", labelInfo: "Shift+Ctrl+I" })
|
|
.selected(this.menu1 == 7)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 7;
|
|
});
|
|
MenuItem({ content: "默认工具", labelInfo: "Shift+Ctrl+D" });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "绘制类型", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildDrawTypeMenu.bind(this) });
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "选择矩形", labelInfo: "Shift+Ctrl+R" })
|
|
.selected(this.menu1 == 8)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 8;
|
|
});
|
|
MenuItem({ content: "选择区域", labelInfo: "Shift+Ctrl+G" })
|
|
.selected(this.menu1 == 9)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 9;
|
|
});
|
|
MenuItem({ content: "选择多层矩形" })
|
|
.selected(this.menu1 == 10)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 10;
|
|
});
|
|
MenuItem({ content: "选择多层区域" })
|
|
.selected(this.menu1 == 11)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 11;
|
|
});
|
|
MenuItem({ content: "选择对象", labelInfo: "Shift+Ctrl+O" })
|
|
.selected(this.menu1 == 12)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 12;
|
|
});
|
|
MenuItem({ content: "垂直间距", labelInfo: "Shift+Ctrl+V" })
|
|
.selected(this.menu1 == 13)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 13;
|
|
});
|
|
MenuItem({ content: "播放对象" })
|
|
.selected(this.menu1 == 14)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 14;
|
|
});
|
|
MenuItem({ content: "手形工具", labelInfo: "Shift+Ctrl+A" })
|
|
.selected(this.menu1 == 15)
|
|
.selectIcon(true)
|
|
.onChange(() => {
|
|
this.menu1 = 15;
|
|
});
|
|
MenuItem({ content: "三角板" })
|
|
.selected(this.set_square)
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.set_square = isSelected;
|
|
});
|
|
MenuItem({ content: "圆规" })
|
|
.selected(this.compass)
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.compass = isSelected;
|
|
});
|
|
}
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "画笔选项", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildPenMenu.bind(this) });
|
|
MenuItem({ content: "橡皮选项", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildEraserMenu.bind(this) });
|
|
MenuItem({ content: "高亮选项", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildHighLightMenu.bind(this) });
|
|
MenuItem({ content: "选择PDF文件选项", symbolEndIcon: new SymbolGlyphModifier($r('sys.symbol.chevron_right')), builder: this.buildPDFMenu.bind(this) });
|
|
MenuItem({ content: "文本字体" });
|
|
MenuItem({ content: "录制/停止" })
|
|
.selected(this.is_record)
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.is_record = isSelected;
|
|
});
|
|
MenuItem({ content: "暂停" })
|
|
.selected(this.is_pause)
|
|
.selectIcon(true)
|
|
.onChange((isSelected: boolean) => {
|
|
this.is_pause = isSelected;
|
|
});
|
|
MenuItem({ content: "停止" });
|
|
MenuItem({ content: "下一步" });
|
|
MenuItem({ content: "后退" });
|
|
MenuItem({ content: "插入/编辑TeX", labelInfo: "Shift+Ctrl+X" });
|
|
}
|
|
}
|
|
}
|
|
|
|
build() {
|
|
Text("工具")
|
|
.margin('12vp')
|
|
.bindMenu(this.buildMenu());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@ComponentV2
|
|
|
|
|
|
struct PluginsMenu {
|
|
@Builder
|
|
buildMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "插件管理器" });
|
|
}
|
|
}
|
|
}
|
|
|
|
build() {
|
|
Text("插件")
|
|
.margin('12vp')
|
|
.bindMenu(this.buildMenu)
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@ComponentV2
|
|
|
|
|
|
struct HelpMenu {
|
|
@Builder
|
|
buildMenu() {
|
|
Menu() {
|
|
MenuItemGroup() {
|
|
MenuItem({ content: "帮助" });
|
|
MenuItem({ content: "关于" });
|
|
}
|
|
}
|
|
}
|
|
|
|
build() {
|
|
Text("帮助")
|
|
.margin('12vp')
|
|
.bindMenu(this.buildMenu());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@ComponentV2
|
|
|
|
|
|
export struct Menubar {
|
|
build() {
|
|
Row() {
|
|
FileMenu();
|
|
EditMenu();
|
|
ViewMenu();
|
|
NavigationMenu();
|
|
PageMenu();
|
|
ToolMenu();
|
|
PluginsMenu();
|
|
HelpMenu();
|
|
}
|
|
}
|
|
} |