SAO Utils – SAO风格启动菜单开发日志<二期>(完结)

SAO Utils 开发进度
当前版本 原型2 迭代 1 代码编写
目标平台 Windows(Windows2000, XP, Vista, Win7, Win8, Win⑨)
当前体积 19M (Programs:8M + Fonts:9M + Images + Sounds)
开发进度
100%
2013-03-09
SAO Utils 开发日志
- alpha beta
原型1 原型2 0.1 0.2
2013-03-06 1.使用测试.
2.加入附带图标.
3.原型2开发完毕.
2013-03-06 1.新的配置架构.
2.完成所有选项页面.
3.加入两个附带插件.
2013-03-01 1.加入消息对话框.
2.功能微调.
2013-02-25 1.加入右键菜单.
2013-02-22 1.编译首个win32版本.
2013-02-19 1.实现过渡动画.
2.邮件通知/HP状况插件设计.
2013-02-04 1.添加首个扩展工具.
2013-01-25 1.实现启动功能.
2013-01-24 1.加入鼠标拖拽支持.
2.加入鼠标滚轮支持.
2013-01-21 1.实现菜单编辑模式.
2.基本完成界面交互.
3.实现图标设置.
2013-01-06 1.实现用户菜单存取.
2.开始制作图标.
2012-12-31 1.加入设置面板.
2.加入本地化支持.
3.加入/调整外观元素.
2012-12-28 1.加入音效.
2.修复菜单交互逻辑.
2012-12-26 1.基本完成交互.
2.计划加入特效选项.
2012-12-23 1.性能评估.
2.确定加入音效.
2012-12-21 1.末日更新XD.
2.基本还原原型1外观.
3.微调设计.
4.加入字体管理.
5.加入位图管理.
6.加入热键管理.
2012-12-09 1.加入日志记录.
2.加入异常处理/诊断模式.
2012-12-02 1.第三方图标转换设计.
2012-11-26 1.实现右键滑动呼出菜单.
2012-11-24 1.添加系统托盘图标及程序图标.
2012-11-22 1.设计编辑模式.
2012-11-20 1.完成基本图标基础功能.
2012-11-15 1.正式开始 原型2 的代码编写.

开发笔记

2013-03-09: 这是本篇日志最后一次更新了,如大家所愿SAO Utils原型2开发完毕.
之后会进行Alpha1的开发,如果以后一直有喜欢这款软件的话,还会继续完善下去的.
抛弃本开发日志并归档.
2013-03-06: 一直都没能抽空时间更新日志,本来是6号的更新要今天才来得及写.
如大家所见,原型2的开发接近尾声了.如无意外,开发进入alpha1以后就可以释出试用下载了.基于各种原因(主要是时间紧迫,毕业设计/考证/找工作之类你懂得的T_T),还有感谢大家一路以来的支持和关注,决定不抽取内测名额直接开放给关注及喜欢SAO Utils的各位下载.

本次更新主要重构了原来有重大bug的配置架构和配置页面之外,还完成了预定的HP电量插件.Alpha1的HP插件目前只支持电量显示,且不能添加子状态显示.这个会在以后的版本慢慢完善啦~除此之外还加入了一个静态图片的小挂件,可以根据自己喜好添加图片挂饰.
接下来的工作还剩下整体微调和附带图标的制作,具体发布时间请留意近期更新XD
2013-03-01: 一觉醒来发现我的2月就这样远去了…然后据说3月3号就开学了orz (这个学期打算翘掉一个月好了…
这次更新主要是添加了3种信息提示:
1.禁止操作提示
2.消息提示
3.确认提示
虽然功能都十分简单,只是为了提醒用户,但是为了加入特效却花了不少时间.

然后是为信息面板添加了挂载图片功能,过大的图片会自动缩放到适合大小.目前仅支持PNG格式的图像,用户可以自行选择图片.
最后最近有不少询问什么时候能发布的,明确时间我也不能确定,只能列举一下剩余要完成的工作吧:
1.系统配置的读取与保存. 本来用wx库的ini读取的,但是有重大bug,只好自己重新写一个吧.
2.用户配置界面. 上次截图的配置界面还剩4页要制作.
3.HP插件. 另外还有一个邮件检查插件,暂时不在alpha1中支持.
4.随软件发布的自带图标(Alpha1).
5.使用测试(Alpha1).
2013-02-25: 细化工作意想不到地繁琐,在添加完善功能的同时居然又揪出了一些意料之外的问题.使用的库居然在读取ini配置上出现重大bug,基本无法使用,看来在程序配置上需要重新设计了.
好消息是”同时按住左右键后拖拽”的呼出手势终于实现了,而且比单一的按住左键/右键/中间效果要好,而且不会出现右键菜单/拖动窗口的不良副作用,但是缺点是必须先按左键,再按住右键,然后拖动.

最后回归到本次的更新,右键任务栏图标弹出的菜单.左键单击图标可以直接呼出菜单.
呼出菜单的位置有4个可选方式:
1.靠左
2.居中
3.靠右
4.跟随鼠标
个人比较偏好第四种方式,详细可由用户自己设定,应该放在”常规”配置页面吧.
2013-02-22: 开始要为发布做准备了,一直开发的是win64版本,测试也是在win64版本下进行的,为了确保win32版本和win64版本运行一致,还是先提前编译一下win32版本看看效果.于是重新编译了几个库,连接,运行…崩溃!
追踪了一下发现是无符号整数的隐式转换问题,mingw32-64的编译器默认提升为long long,而mingw32却不然.显示转换后修正,暂时没有发现新问题了.
评论有关于初级菜单的显示动画问题,这里想说一下构思.
其一是运动的顺序,因为原型1是参考ALO的菜单,而原型则是回归到SAO样式的,所以按照尊重原作的原则,显示顺序变更为从下到上.
其二是滚动效果(项目越界后消失),因为演示的gif初级菜单只有3个项目,不满足最少滚动项目数(5个以上),所以是没有滚动效果的.当初级菜单项目数大于5时才会有滚动效果.
2013-02-19: 终于渡过了每年最忙的时候:农历新年了~ 从年28到初7,每天都有不同的目的地.虽然每年就这么几天有机会和父母一起去逛街拜年,但是对于死宅来说,这种事情渐渐变得艰难和厌倦了…
好吧,言归正传,本次更新的是原以为最麻烦的过渡动画部分,到现在为止我觉得最复杂的还是用户界面接口的部分,很容易因为设计不当导致程序奔溃.


呼出启动器时动画

编辑菜单时动画

如动画所示,全部为实际效果截图.对比 原型1 的Flash版本,实际运行的动画效果几乎完全还原,而且在CPU占用上也较flash版本更低一些.如果有可能把SAO Utils维护到一定版本号的话,打算加入OpenGL,这样的话不仅是性能提升还是3D模式显示都是可以完美实现的,但是这需要重写的代码量将会十分庞大.

接下来是设计随alpha1发布的第二个插件–Mail Box, 正如名字所示,是一个邮件检查器.本来在过年的时候已经可以进行代码实现的,但无奈在SSL协议通信实现上遇到了问题,试了好几天仍然链接失败,只好暂时先着手过渡动画部分了.邮件检查器会在用户设定的时间间隔检查指定的邮箱,如果检查到有新邮件,将会显示左上方的邮件提示,点击提示按钮将显示邮件全文.
最后说一下第三个插件–HP Bar吧,有人提议设定成电量诸如此类的…这里我说一下目前的基本构思:
*1.用户可可指定主HP状态为系统某种信息.
2.点击左侧”+”按钮可添加更多子系统信息状态.
3.长按”+”按钮可删除子系统信息
*可选信息尚未确定,可能包含电量/内存用量/硬盘用量…
最后还是要感谢支持SAO Utils至今的各位~ (话说今年红包各种缩水T_T
2013-02-04: 这几天几乎只有上午的时候有时间投入在这个SAO Utils工程上了,本次更新主要是加入了一个新的功能–桌面挂件.挂件功能在以后的更新中会作为插件发布,alpha1的话是作为SAO Utils的一部分分发的.这次写的挂件是系统信息监控,包括CPU使用率和内存使用,中间的圆圈会随CPU用量变化;随alpha1分发的另外一个挂件功能在原型1演示也出现过,是HP时钟及电量状况(暂未撰写,呵呵=_,=)

过渡动画部分仍在撰写中,尚未到达测试阶段.年后时间变得充裕的话更新速度可能会快些吧.
最后感谢一直支持的各位,有任何意见还可以继续提出だぜ☆
2013-01-25: 由于编辑模式与11月份的编辑模式设计有所改动,所以这次接着21号的更新,说明一下编辑模式:
1.长按任何按钮编辑当前按钮
2.点击弹出的’Modify’按钮可打开按钮编辑窗口
3.长按’Modify’按钮可增删按钮/修改当前按钮位置
4.列表式菜单(末级菜单)可直接长按编辑/增删按钮
*编辑模式可在设置面板禁用,防止误按


普通菜单快速编辑

列表菜单快速编辑

由于菜单编辑是属于用户模块的,所以截图就写上中文,顺便测试一下中文外观效果吧~

然后是SAO-Utils本身的实际功能的实现–启动器,目前支持3种模式:启动程序/打开文件,执行命令,打开链接.可能有人会发现那个灰色的’Plugin’选项了,那个其实是预留给以后扩展功能使用的插件功能.关于插件,SAO-Utils会不断加入插件以增加各种功能.
临近年末了,要忙的事情渐渐多起来了,可能无办法经常更新,现在这里预祝各位新年快乐吧^^
2013-01-24: 小更新一下,考虑到触屏设备使用问题,临时加入了鼠标拖拽滚动菜单的功能.虽然没有可供测试的触屏设备,但是目测手势操作也不成问题了.
2013-01-21: 哟是!终于把大学生涯最后一科考完了,这次更新可以说是间隔历时最久的一次更新吧,不仅仅是BUG等瓶颈问题,更是代码量大大超出预期的原因.目前尚未加入过渡动画的实现就已经7000+行了,比alpha1预计的5000-6000行已经早早超越了.

截图为编辑菜单中编辑单个按钮时的图标以及相关设置,不同的按钮会有不同的设置面板.为了开发方便,原生语言使用英文开发,所以大部分截图都基本是英文的.在评论里面也有说到关于汉化问题,这里明确说一下,肯定有中文版本的,并且会按照操作系统的默认语言使用相应的语言界面.
这次更新主要还原了原型1演示的操作,还加入了编辑菜单模式,对任何按钮进行长按即可呼出编辑按钮,毕竟这是SAO游戏里面没有的功能,详细会在alpha或者beta版本发布说明用法.
接下来要马不停蹄地实现过渡动画,目前基本已经有实现的构思,完成之后是最后的收尾工作,用户界面的调整,还有附带图标之类的.
啊~对了,前几天博客的服务器玩坏了,由于服务器主人不在家无法及时修复,所以一直挂了几天,造成恐慌(囧么可能会有!)请各位谅解,我们将会在各大银行发放慰问金,领取方法是对银行工作人员大喊我们的领取口号:”抢劫!”,届时请遵照工作人员指示领取. (喂!
2013-01-06: 忙里偷闲更新一下,这次主要完成了自定义菜单的创建和保存的功能.用户的菜单会保存在一个xml文件里面,虽然可以手动修改,但是最好还是靠软件自身的”编辑模式”增删修改菜单会更安全.
然后是软件的配置文件,使用ini格式保存,也是人类可阅读的格式,但是同样还是最好不要手动修改.本来想使用注册表方式保存系统配置的,但是考虑到软件的分发/再配置问题,还是绿色地保存在一个文件里面更好.

最后是一直在做的–图标制作,这次半手动转换了一套比较适合SAO风格的图标,一共200多个吧,截图是适用于一级菜单使用风格的一部分图标,适用于下级菜单风格的图标目测需要全手动制作…(200多个啊喂~~~~orz

【展开更多】

资源链接

下载地址:
原型1 (目前没有实际用途,不提供下载)
原型2 (已发布ALpha1,不提供下载)
> 资源图标 v0.1 sao_utils_icons.zip(不断更新并增加中,样式可能会有少许变动)

视频说明:
【SAO】这样的启动菜单,不来一发么? 点击观看



return top