diff --git a/Core/CapslockX-Config.ahk b/Core/CapslockX-Config.ahk index 1204e344..48963559 100644 --- a/Core/CapslockX-Config.ahk +++ b/Core/CapslockX-Config.ahk @@ -1,10 +1,11 @@ ; 保存为 save with UTF8 with DOM -; 用户创建 -便携版配置目录 = ./User +; 用户创建目录 +便携版配置目录 = ./User 用户目录配置目录 = %USERPROFILE%/.CapsLockX APPDATA配置目录 = %APPDATA%/CapsLockX +; 默认值 启动配置目录 := APPDATA配置目录 if ( InStr(FileExist(APPDATA配置目录), "D")) { @@ -26,9 +27,9 @@ CapsLockX_ConfigInit() ; return 这里还不能 return CapsLockX_ConfigInit(){ - - if (!CapsLockX_配置路径) + if (!CapsLockX_配置路径){ Return + } ; 配置文件编码清洗 清洗为_UTF16_WITH_BOM_型编码(CapsLockX_配置路径) CapsLockX_Config("_NOTICE_", "ENCODING_USING", "UTF16_LE", "") @@ -53,10 +54,6 @@ CapsLockX_ConfigInit(){ CapsLockX_ConfigSet(field, varName, setValue, comment := ""){ global CapsLockX_ConfigChangedTickCount CapsLockX_ConfigChangedTickCount := A_TickCount - if(!CapsLockX_配置路径){ - MsgBox, 配置文件目录设定异常,请检查模块静态变量是否使用配置,并尝试将其延迟赋值。 - return - } content := setValue ; 不对配置自动重新排序 if(comment){ @@ -70,10 +67,6 @@ CapsLockX_ConfigSet(field, varName, setValue, comment := ""){ CapsLockX_ConfigGet(field, varName, defaultValue){ global CapsLockX_ConfigChangedTickCount CapsLockX_ConfigChangedTickCount := A_TickCount - if(!CapsLockX_配置路径){ - MsgBox, 配置文件目录设定异常,请检查模块静态变量是否使用配置,并尝试将其延迟赋值。 - return - } IniRead, %varName%, %CapsLockX_配置路径%, %field%, %varName%, %defaultValue% content := %varName% ; 千层套路XD return content @@ -81,14 +74,10 @@ CapsLockX_ConfigGet(field, varName, defaultValue){ CapsLockX_Config(field, varName, defaultValue, comment := ""){ global CapsLockX_ConfigChangedTickCount CapsLockX_ConfigChangedTickCount := A_TickCount - if(!CapsLockX_配置路径){ - MsgBox, 配置文件目录设定异常,请检查模块静态变量是否使用配置,并尝试将其延迟赋值。 - return - } IniRead, %varName%, %CapsLockX_配置路径%, %field%, %varName%, %defaultValue% content := %varName% ; 千层套路XD ; 对配置自动重新排序 - if(comment){ + if (comment){ IniDelete, %CapsLockX_配置路径%, %field%, %varName%#注释 IniWrite, %comment%, %CapsLockX_配置路径%, %field%, %varName%#注释 } diff --git a/Modules/BlenderEnhanced.ahk b/Modules/BlenderEnhanced.ahk index 1caca3ec..87120972 100644 --- a/Modules/BlenderEnhanced.ahk +++ b/Modules/BlenderEnhanced.ahk @@ -16,7 +16,8 @@ global 平移精度 := 0.1 global 平移精度控制 := new AccModel2D(Func("平移精度控制"), 0.1, 10) global S缩放 := new AccModel2D(Func("S缩放"), 0.1, TMouse_DPIRatio * 360 * TMouse_MouseSpeedRatio) global S旋转 := new AccModel2D(Func("S旋转"), 0.1, TMouse_DPIRatio * 360 * TMouse_MouseSpeedRatio) - +global 平移导航 := new AccModel2D(Func("平移导航"), 0.1, TMouse_DPIRatio * 120 * TMouse_MouseSpeedRatio) +global 旋转导航 := new AccModel2D(Func("旋转导航"), 0.1, TMouse_DPIRatio * 120 * TMouse_MouseSpeedRatio) BlenderEnhanced_SendInput_MouseMoveR32(x, y) { VarSetCapacity(sendData, 28, 0) @@ -53,6 +54,33 @@ Blender视图运动(启动键, dx, dy, 状态) BlenderEnhanced_SendInput_MouseMoveR32(dx, dy) } +平移导航(dx, dy, 状态){ + if (状态=="启动"){ + Send {ShiftDown}{MButton Down} + return + } + if (状态=="止动"){ + Send {MButton Up}{ShiftUp} + } + if (状态!=="移动"){ + return + } + BlenderEnhanced_SendInput_MouseMoveR32(-dx, -dy) +} +旋转导航(dx, dy, 状态){ + if (状态=="启动"){ + Send {MButton Down} + return + } + if (状态=="止动"){ + Send {MButton Up} + } + if (状态!=="移动"){ + return + } + BlenderEnhanced_SendInput_MouseMoveR32(-dx, -dy) +} + Blender物件数值调整(lg, operation, dimention, delta){ global Blender物件调整中 Blender物件调整[lg][operation][dimention] += delta @@ -152,6 +180,14 @@ Blender窗口内(){ global Blender增强模式 := !Blender增强模式 tooltip Blender增强模式 %Blender增强模式% return +\ & a:: 平移导航.左按("a") +\ & d:: 平移导航.右按("d") +\ & w:: 平移导航.上按("w") +\ & s:: 平移导航.下按("s") +\ & q:: 旋转导航.左按("q") +\ & e:: 旋转导航.右按("e") +\ & r:: 旋转导航.上按("r") +\ & f:: 旋转导航.下按("f") #if Blender窗口内() && Blender增强模式 diff --git "a/Modules/\346\217\222\344\273\266-\346\226\260\346\211\213\346\225\231\347\250\213.ahk" "b/Modules/\346\217\222\344\273\266-\346\226\260\346\211\213\346\225\231\347\250\213.ahk" index ed9ad849..dfaf7c3b 100644 --- "a/Modules/\346\217\222\344\273\266-\346\226\260\346\211\213\346\225\231\347\250\213.ahk" +++ "b/Modules/\346\217\222\344\273\266-\346\226\260\346\211\213\346\225\231\347\250\213.ahk" @@ -6,12 +6,6 @@ ; 版本:v0.0.1 ; ========== CapsLockX ========== - -global T_XKeyAsCapsLock -global T_XKeyAsSpace -global T_AskRunAsAdmin -global CLX_CONFIG_ONSTARTUP - global CapsLockX_FIRST_LAUNCH := CapsLockX_Config("_NOTICE_", "FIRST_LAUNCH", 1, "首次启动?若想重新进入首次使用教学,请改为 1 并保存,然后使用 Ctrl+Alt+\ 重载 CapsLockX。") global CLX_CONFIG_ONSTARTUP := CapsLockX_Config("Core", "CLX_CONFIG_ONSTARTUP", 1, "启动时显示配置窗口") @@ -34,26 +28,33 @@ CapsLockX_首次使用配置(){ CLX_CONFIG_ONSTARTUP := 0 Gui, Add, Text, , CapsLockX_配置目录:%CapsLockX_配置目录% - if(T_XKeyAsCapsLock){ + global T_XKeyAsCapsLock + if (T_XKeyAsCapsLock){ Gui, Add, CheckBox, gCapsLockX_配置刷新 vT_XKeyAsCapsLock Checked, 使用 CapsLock 作为引导键(默认启用) }else{ Gui, Add, CheckBox, gCapsLockX_配置刷新 vT_XKeyAsCapsLock, 使用 CapsLock 作为引导键(默认启用) } - if(T_XKeyAsSpace){ + global T_XKeyAsSpace + if (T_XKeyAsSpace){ Gui, Add, CheckBox, gCapsLockX_配置刷新 vT_XKeyAsSpace Checked, 使用 Space 作为引导键(默认启用) }else{ Gui, Add, CheckBox, gCapsLockX_配置刷新 vT_XKeyAsSpace, 使用 Space 作为引导键(默认启用) } - if(T_AskRunAsAdmin){ + global T_AskRunAsAdmin + if (T_AskRunAsAdmin){ Gui, Add, CheckBox, gCapsLockX_配置刷新 vT_AskRunAsAdmin Checked, 请求管理员权限(权限受限时,鼠标模拟等功能无法正常运行,如果不需要管理权限下的功能,可以改为0) }else{ Gui, Add, CheckBox, gCapsLockX_配置刷新 vT_AskRunAsAdmin, 请求管理员权限(权限受限时,鼠标模拟等功能无法正常运行,如果不需要管理权限下的功能,可以改为0) } - Gui, Add, CheckBox, gCapsLockX_配置刷新 vCLX_CONFIG_ONSTARTUP, 启动时显示配置窗口 - ; Gui, Add, CheckBox, FIRST_LAUNCH, 启动时显示配置选项 - Gui, Add, Button, w80, 配置文件编辑 (进阶) + global vCLX_CONFIG_ONSTARTUP + if (vCLX_CONFIG_ONSTARTUP){ + Gui, Add, CheckBox, gCapsLockX_配置刷新 vCLX_CONFIG_ONSTARTUP Checked, 启动时显示配置窗口 + }else{ + Gui, Add, CheckBox, gCapsLockX_配置刷新 vCLX_CONFIG_ONSTARTUP, 启动时显示配置窗口 + } + Gui, Add, Button, w80, 配置文件编辑 Gui, Add, Button, Default w80, 确认 Gui, Show } @@ -67,6 +68,7 @@ CapsLockX_配置刷新: return Button确认: gui, destroy + return Button配置文件编辑: 配置文件编辑() Return