3 Star 272 Fork 4

将军 / jscssgrind

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
main.aau 4.84 KB
一键复制 编辑 原始数据 按行查看 历史
jiangjun 提交于 2017-06-14 14:33 . Signed-off-by: jiangjun jtwo@local.host
import win.ui;
import fsys;
import fsys.dlg;
import process;
/*DSG{{*/
mainForm = ..win.form(text="简单的JS/CSS压缩器";right=567;bottom=431;border="dialog frame";max=false)
mainForm.add(
btn_compress_dir={cls="button";text="压缩路径…";left=448;top=120;right=544;bottom=152;font=LOGFONT( name='微软雅黑';h=-16 );z=4};
btn_compress_filter={cls="button";text="添加文件…";left=448;top=248;right=544;bottom=280;font=LOGFONT( name='微软雅黑';h=-16 );z=5};
btn_compress_generate={cls="button";text="生成合并";left=448;top=336;right=544;bottom=408;font=LOGFONT( name='微软雅黑';h=-16 );z=8};
btn_filter_dir={cls="button";text="路径";left=320;top=32;right=368;bottom=64;font=LOGFONT( name='微软雅黑';h=-16 );z=10};
btn_filter_postfix={cls="button";text="生成过滤";left=448;top=32;right=544;bottom=64;font=LOGFONT( name='微软雅黑';h=-16 );z=12};
chkbox_poll_generate={cls="checkbox";text="轮询处理";left=456;top=296;right=536;bottom=320;font=LOGFONT( name='微软雅黑';h=-14 );z=16};
combo_compress_config={cls="combobox";left=304;top=384;right=432;bottom=408;edge=1;font=LOGFONT( name='幼圆';h=-16 );items={};mode="dropdown";z=14};
combo_compress_flag={cls="combobox";left=448;top=192;right=544;bottom=212;edge=1;font=LOGFONT( name='微软雅黑';h=-16 );items={"忽略左边";"包含左边"};mode="dropdownlist";z=13};
edit_compress_dir={cls="edit";left=24;top=120;right=432;bottom=152;align="center";autohscroll=false;autovscroll=false;edge=1;font=LOGFONT( name='微软雅黑';h=-14 );hidesel=1;z=3};
edit_compress_filter={cls="edit";left=24;top=168;right=432;bottom=320;align="center";autohscroll=false;edge=1;font=LOGFONT( name='微软雅黑';h=-14 );hidesel=1;multiline=1;vscroll=1;z=6};
edit_compress_output={cls="edit";text="guessing.css";left=24;top=336;right=432;bottom=368;align="center";autohscroll=false;autovscroll=false;edge=1;font=LOGFONT( name='微软雅黑';h=-14 );hidesel=1;z=7};
edit_filter_dir={cls="edit";left=24;top=32;right=312;bottom=64;align="center";autohscroll=false;autovscroll=false;edge=1;font=LOGFONT( name='微软雅黑';h=-14 );hidesel=1;z=9};
edit_filter_postfix={cls="edit";text="*.png";left=376;top=32;right=432;bottom=64;align="center";autohscroll=false;autovscroll=false;edge=1;font=LOGFONT( name='微软雅黑';h=-16 );hidesel=1;z=11};
gb_compress={cls="groupbox";text="压缩目录下的JS/CSS并合并为单文件";left=8;top=88;right=560;bottom=424;edge=1;font=LOGFONT( name='微软雅黑';h=-14 );z=1};
gb_filter={cls="groupbox";text="显示目录下某类型的文件列表";left=8;top=8;right=560;bottom=80;edge=1;font=LOGFONT( name='微软雅黑';h=-14 );z=2};
static={cls="static";text="配置文件:config.txt;选择项目:";left=24;top=384;right=296;bottom=416;align="center";font=LOGFONT( name='微软雅黑';h=-16 );transparent=1;z=15}
)
/*}}*/
//建立同名目录,用于保存配置、压缩文件等
global.swapfolder = string.replace(io._exepath,"\.\w*$","")
if not( fsys.isDir(swapfolder) ){ fsys.createDir(swapfolder,true) }
//生成配置文件
if not(io.exist(swapfolder++"\config.txt")){
string.save(swapfolder++"\config.txt", string.load("\res\config.txt"))
}
//初始化配置文件
compress_config = eval( string.load(swapfolder++"\config.txt") )
mainForm.combo_compress_config.items = (function(){x={};for(k,v in compress_config){table.push(x,k)};table.sort(x);return x})() //取配置名称
comboCompressConfigChange = function(){
mainForm.combo_compress_config.selIndex := 1
var cfgname = mainForm.combo_compress_config.selText;
mainForm.combo_compress_flag.selIndex = tonumber(compress_config[cfgname]["filter_flag"]);
var tmptext = compress_config[cfgname]["compress_path"]
mainForm.edit_compress_dir.text = (type(tmptext)=="table"?table.tostring(tmptext):tmptext);
var tmptext = compress_config[cfgname]["output_script"];
mainForm.edit_compress_output.text = (type(tmptext)=="table"?table.tostring(tmptext):tmptext);
var tmptext = compress_config[cfgname]["filter_file"];
mainForm.edit_compress_filter.text = (type(tmptext)=="table"?table.tostring(tmptext):tmptext);
}
mainForm.combo_compress_config.oncommand = function(id,event){
if(event==0x1/*_CBN_SELCHANGE*/){ comboCompressConfigChange() } //刷新配置
}
import jscompressor; //JS压缩库
import csscompressor; //CSS压缩库
loadcode("/res/filter.aau")() //过滤文件的代码
loadcode("/res/compress.aau")() //压缩文件的代码
//程序控件配置(上次退出时的设置)
mainForm.combo_compress_flag.selIndex = 1 // 1忽略; 2包含
import config;
mainForm.bindConfig( config.widget,{
edit_filter_dir = "text";
edit_filter_postfix = "text";
edit_compress_dir = "text";
edit_compress_filter = "text";
edit_compress_output = "text";
combo_compress_flag = "selIndex";
combo_compress_config = "selIndex";
} );
mainForm.show()
win.loopMessage();
Ada
1
https://gitee.com/jtwo/jscssgrind.git
git@gitee.com:jtwo/jscssgrind.git
jtwo
jscssgrind
jscssgrind
master

搜索帮助