| @@ -0,0 +1,386 @@ | |||
| /*------------------------------------- | |||
| zTree Style using fontawesome instead of images | |||
| version: 1.1 | |||
| author: Mike King | |||
| email: mikkelking @ hotmail . com | |||
| website: http://code.google.com/p/jquerytree/ | |||
| -------------------------------------*/ | |||
| /* Definitions ----------------------*/ | |||
| /* End of Definitions ---------------*/ | |||
| /* Imports -------------------------*/ | |||
| /* End of Imports ------------------*/ | |||
| .ztree * { | |||
| padding: 0; | |||
| margin: 0; | |||
| font-size: 12px; | |||
| font-family: Verdana, Arial, Helvetica, AppleGothic, sans-serif; | |||
| background-color: #af0000; | |||
| } | |||
| .ztree { | |||
| margin: 0; | |||
| padding: 5px; | |||
| color: #ffffff; | |||
| background-color: #af0000; | |||
| } | |||
| .ztree li { | |||
| padding: 0; | |||
| margin: 0; | |||
| list-style: none; | |||
| line-height: 17px; | |||
| text-align: left; | |||
| white-space: nowrap; | |||
| outline: 0; | |||
| } | |||
| .ztree li ul { | |||
| margin: 0px; | |||
| padding: 0 0 0 18px; | |||
| } | |||
| .ztree li a { | |||
| padding-right: 3px; | |||
| margin: 0; | |||
| cursor: pointer; | |||
| height: 17px; | |||
| color: #ffffff; | |||
| background-color: transparent; | |||
| text-decoration: none; | |||
| vertical-align: top; | |||
| display: inline-block; | |||
| } | |||
| .ztree li a input.rename { | |||
| height: 14px; | |||
| width: 80px; | |||
| padding: 0; | |||
| margin: 0; | |||
| color: #af0000; | |||
| background-color: #ffffff; | |||
| font-size: 12px; | |||
| border: 1px #585956 solid; | |||
| *border: 0px; | |||
| } | |||
| .ztree li a:hover { | |||
| text-decoration: underline; | |||
| } | |||
| .ztree li a.curSelectedNode { | |||
| padding-top: 0px; | |||
| background-color: #af4040; | |||
| color: #ffff00; | |||
| height: 17px; | |||
| opacity: 0.8; | |||
| } | |||
| .ztree li a.curSelectedNode_Edit { | |||
| padding-top: 0px; | |||
| background-color: transparent; | |||
| color: #ffff00; | |||
| height: 17px; | |||
| border: 1px #666 solid; | |||
| opacity: 0.8; | |||
| } | |||
| .ztree li a.tmpTargetNode_inner { | |||
| padding-top: 0px; | |||
| background-color: #aaa; | |||
| color: #ffff00; | |||
| height: 17px; | |||
| border: 1px #666 solid; | |||
| opacity: 0.8; | |||
| filter: alpha(opacity=80); | |||
| } | |||
| .ztree li span { | |||
| line-height: 17px; | |||
| margin-right: 2px; | |||
| background-color: transparent; | |||
| } | |||
| .ztree li span.button { | |||
| line-height: 0; | |||
| margin: 0; | |||
| padding: 0; | |||
| width: 15px; | |||
| height: 17px; | |||
| display: inline-block; | |||
| vertical-align: top; | |||
| border: 0px solid; | |||
| cursor: pointer; | |||
| outline: none; | |||
| background-color: transparent; | |||
| background-repeat: no-repeat; | |||
| background-attachment: scroll; | |||
| } | |||
| .ztree li span.button::before { | |||
| color: #ffffff; | |||
| font-family: FontAwesome; | |||
| padding-top: 10px; | |||
| } | |||
| .ztree li span.button.chk { | |||
| margin: 0px; | |||
| cursor: auto; | |||
| width: 12px; | |||
| display: inline-block; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| } | |||
| .ztree li span.button.chk.checkbox_false_full::before { | |||
| content: "\f096"; | |||
| } | |||
| .ztree li span.button.chk.checkbox_false_full_focus::before { | |||
| content: "\f096"; | |||
| color: #ffff00; | |||
| } | |||
| .ztree li span.button.chk.checkbox_false_part::before { | |||
| content: "\f096"; | |||
| color: #aaaaaa; | |||
| } | |||
| .ztree li span.button.chk.checkbox_false_part_focus::before { | |||
| content: "\f096"; | |||
| color: #cad96c; | |||
| } | |||
| .ztree li span.button.chk.checkbox_false_disable::before { | |||
| content: "\f096"; | |||
| color: #808080; | |||
| } | |||
| .ztree li span.button.chk.checkbox_true_full::before { | |||
| content: "\f046"; | |||
| } | |||
| .ztree li span.button.chk.checkbox_true_full_focus::before { | |||
| content: "\f046"; | |||
| } | |||
| .ztree li span.button.chk.checkbox_true_part::before { | |||
| content: "\f14a"; | |||
| } | |||
| .ztree li span.button.chk.checkbox_true_part_focus::before { | |||
| content: "\f14a"; | |||
| color: #ffff00; | |||
| } | |||
| .ztree li span.button.chk.checkbox_true_full_focus::before { | |||
| content: "\f046"; | |||
| color: #ffff00; | |||
| } | |||
| .ztree li span.button.chk.checkbox_true_part::before { | |||
| content: "\f046"; | |||
| color: #aaaaaa; | |||
| } | |||
| .ztree li span.button.chk.checkbox_true_part_focus::before { | |||
| content: "\f046"; | |||
| color: #cad96c; | |||
| } | |||
| .ztree li span.button.chk.checkbox_true_disable::before { | |||
| content: "\f046"; | |||
| color: #808080; | |||
| } | |||
| .ztree li span.button.chk.radio_false_full::before { | |||
| content: "\f10c"; | |||
| } | |||
| .ztree li span.button.chk.radio_false_full_focus::before { | |||
| content: "\f10c"; | |||
| color: #ffff00; | |||
| } | |||
| .ztree li span.button.chk.radio_false_part::before { | |||
| content: "\f10c"; | |||
| color: #aaaaaa; | |||
| } | |||
| .ztree li span.button.chk.radio_false_part_focus::before { | |||
| content: "\f10c"; | |||
| color: #ffff00; | |||
| } | |||
| .ztree li span.button.chk.radio_false_disable::before { | |||
| content: "\f1db"; | |||
| color: #808080; | |||
| } | |||
| .ztree li span.button.chk.radio_true_full::before { | |||
| content: "\f192"; | |||
| } | |||
| .ztree li span.button.chk.radio_true_full_focus::before { | |||
| content: "\f192"; | |||
| color: #ffff00; | |||
| } | |||
| .ztree li span.button.chk.radio_true_part::before { | |||
| content: "\f192"; | |||
| color: #aaaaaa; | |||
| } | |||
| .ztree li span.button.chk.radio_true_part_focus::before { | |||
| content: "\f192"; | |||
| color: #aaaaaa; | |||
| } | |||
| .ztree li span.button.chk.radio_true_disable::before { | |||
| content: "\f1db"; | |||
| color: #808080; | |||
| } | |||
| .ztree li span.button.switch { | |||
| width: 15px; | |||
| height: 17px; | |||
| } | |||
| .ztree li span.button.root_open::before { | |||
| content: "\f078"; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| } | |||
| .ztree li span.button.root_close::before { | |||
| content: "\f054"; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| } | |||
| .ztree li span.button.roots_open::before { | |||
| content: "\f078"; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| } | |||
| .ztree li span.button.roots_close::before { | |||
| content: "\f054"; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| } | |||
| .ztree li span.button.center_open::before { | |||
| content: "\f078"; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| } | |||
| .ztree li span.button.center_close::before { | |||
| content: "\f054"; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| } | |||
| .ztree li span.button.bottom_open::before { | |||
| content: "\f078"; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| } | |||
| .ztree li span.button.bottom_close::before { | |||
| content: "\f054"; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| } | |||
| .ztree li span.button.root_docu { | |||
| background: none; | |||
| } | |||
| .ztree li span.button.roots_docu::before { | |||
| content: "\f022"; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| color: #ffffff; | |||
| } | |||
| .ztree li span.button.center_docu::before { | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| color: #ffffff; | |||
| } | |||
| .ztree li span.button.bottom_docu::before { | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| color: #ffffff; | |||
| } | |||
| .ztree li span.button.noline_docu { | |||
| background: none; | |||
| } | |||
| .ztree li span.button.ico_open::before { | |||
| content: "\f115"; | |||
| font-family: FontAwesome; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| color: #ffffff; | |||
| } | |||
| .ztree li span.button.ico_close::before { | |||
| content: "\f114"; | |||
| font-family: FontAwesome; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| color: #ffffff; | |||
| } | |||
| .ztree li span.button.ico_docu::before { | |||
| content: "\f022"; | |||
| font-family: FontAwesome; | |||
| padding-top: 10px; | |||
| padding-left: 2px; | |||
| display: inline-block; | |||
| color: #ffffff; | |||
| } | |||
| .ztree li span.button.edit { | |||
| margin-left: 4px; | |||
| margin-right: -1px; | |||
| vertical-align: top; | |||
| *vertical-align: middle; | |||
| padding-top: 10px; | |||
| } | |||
| .ztree li span.button.edit::before { | |||
| content: "\f044"; | |||
| font-family: FontAwesome; | |||
| } | |||
| .ztree li span.button.remove { | |||
| margin-left: 4px; | |||
| margin-right: -1px; | |||
| vertical-align: top; | |||
| *vertical-align: middle; | |||
| padding-top: 10px; | |||
| } | |||
| .ztree li span.button.remove::before { | |||
| content: "\f1f8"; | |||
| font-family: FontAwesome; | |||
| } | |||
| .ztree li span.button.add { | |||
| margin-left: 4px; | |||
| margin-right: -1px; | |||
| vertical-align: top; | |||
| *vertical-align: middle; | |||
| padding-top: 10px; | |||
| } | |||
| .ztree li span.button.add::before { | |||
| content: "\f067"; | |||
| font-family: FontAwesome; | |||
| } | |||
| .ztree li span.button.ico_loading { | |||
| margin-right: 2px; | |||
| background: url(./img/loading.gif) no-repeat scroll 0 0 transparent; | |||
| vertical-align: top; | |||
| *vertical-align: middle; | |||
| } | |||
| ul.tmpTargetzTree { | |||
| background-color: #FFE6B0; | |||
| opacity: 0.8; | |||
| filter: alpha(opacity=80); | |||
| } | |||
| span.tmpzTreeMove_arrow { | |||
| width: 16px; | |||
| height: 17px; | |||
| display: inline-block; | |||
| padding: 0; | |||
| margin: 2px 0 0 1px; | |||
| border: 0 none; | |||
| position: absolute; | |||
| background-color: transparent; | |||
| background-attachment: scroll; | |||
| } | |||
| span.tmpzTreeMove_arrow::before { | |||
| content: "\f04b"; | |||
| font-family: FontAwesome; | |||
| color: #ffff00; | |||
| } | |||
| ul.ztree.zTreeDragUL { | |||
| margin: 0; | |||
| padding: 0; | |||
| position: absolute; | |||
| width: auto; | |||
| height: auto; | |||
| overflow: hidden; | |||
| background-color: #cfcfcf; | |||
| border: 1px #ffff00 dotted; | |||
| opacity: 0.8; | |||
| filter: alpha(opacity=80); | |||
| } | |||
| .ztreeMask { | |||
| z-index: 10000; | |||
| background-color: #cfcfcf; | |||
| opacity: 0.0; | |||
| filter: alpha(opacity=0); | |||
| position: absolute; | |||
| } | |||
| @@ -0,0 +1,146 @@ | |||
| /*------------------------------------- | |||
| zTree Style using fontawesome instead of images | |||
| version: 1.1 | |||
| author: Mike King | |||
| email: mikkelking @ hotmail . com | |||
| website: http://code.google.com/p/jquerytree/ | |||
| -------------------------------------*/ | |||
| /* Definitions ----------------------*/ | |||
| @font-size: 12px; | |||
| // Regular icon and text color is white, which suits any medium -> dark background | |||
| @color-normal: white; | |||
| // Background color | |||
| @color-bg: #af0000; | |||
| // Highlight color | |||
| @color-highlight: yellow; | |||
| // Partially selected (checkboxes, radio buttons) | |||
| @color-partial: #aaaaaa; | |||
| // Partially selected and focused (checkboxes, radio buttons) | |||
| @color-partfocus: #cad96c; | |||
| // Disabled altogether | |||
| @color-disabled: #808080; | |||
| // Editing color | |||
| @color-edit: yellow; | |||
| @w: 15px; | |||
| @h: 17px; | |||
| @pad-left: 2px; | |||
| @pad-top: 10px; | |||
| /* End of Definitions ---------------*/ | |||
| /* Imports -------------------------*/ | |||
| @import "fa.less"; | |||
| /* End of Imports ------------------*/ | |||
| .ztree * {padding:0; margin:0; font-size:@font-size; font-family: Verdana, Arial, Helvetica, AppleGothic, sans-serif; background-color: @color-bg;} | |||
| .ztree { | |||
| margin:0; padding:5px; color:@color-normal; background-color: @color-bg; | |||
| li { | |||
| padding:0; margin:0; list-style:none; line-height:17px; text-align:left; white-space:nowrap; outline:0; | |||
| ul { | |||
| margin: 0px; padding:0 0 0 18px; | |||
| } | |||
| ul.line { } | |||
| a {padding-right:3px; margin:0; cursor:pointer; height:@h; color:@color-normal; background-color: transparent; | |||
| text-decoration:none; vertical-align:top; display: inline-block; | |||
| input.rename {height:14px; width:80px; padding:0; margin:0; | |||
| color: @color-bg; background-color: @color-normal; | |||
| font-size:@font-size; border:1px #585956 solid; *border:0px} | |||
| } | |||
| a:hover {text-decoration:underline} | |||
| a.curSelectedNode {padding-top:0px; background-color:#af4040; color:@color-highlight; height:@h; opacity:0.8;} | |||
| a.curSelectedNode_Edit {padding-top:0px; background-color:transparent; color:@color-highlight; height:@h; border:1px #666 solid; opacity:0.8;} | |||
| a.tmpTargetNode_inner {padding-top:0px; background-color:#aaa; color:@color-highlight; height:@h; border:1px #666 solid; | |||
| opacity:0.8; filter:alpha(opacity=80)} | |||
| a.tmpTargetNode_prev {} | |||
| a.tmpTargetNode_next {} | |||
| span {line-height:@h; margin-right:2px; background-color:transparent;} | |||
| span.button {line-height:0; margin:0; padding: 0; width:@w; height:@h; display: inline-block; vertical-align:top; | |||
| border:0px solid; cursor: pointer;outline:none; | |||
| background-color:transparent; background-repeat:no-repeat; background-attachment: scroll; | |||
| &::before{color: @color-normal; font-family: FontAwesome; padding-top:@pad-top;} | |||
| &.chk { margin:0px; cursor: auto; width: 12px; | |||
| display: inline-block;padding-top:@pad-top;padding-left:@pad-left; | |||
| &.checkbox_false_full::before {content: @fa-square-o;} | |||
| &.checkbox_false_full_focus::before {content: @fa-square-o; color:@color-highlight;} | |||
| &.checkbox_false_part::before {content: @fa-square-o;color: @color-partial;} | |||
| &.checkbox_false_part_focus::before {content: @fa-square-o; color:@color-partfocus;} | |||
| &.checkbox_false_disable::before {content: @fa-square-o; color:@color-disabled;} | |||
| &.checkbox_true_full::before {content: @fa-check-square-o;} | |||
| &.checkbox_true_full_focus::before {content: @fa-check-square-o;} | |||
| &.checkbox_true_part::before {content: @fa-check-square;} | |||
| &.checkbox_true_part_focus::before {content: @fa-check-square; color: @color-highlight} | |||
| &.checkbox_true_full_focus::before {content: @fa-check-square-o; color: @color-highlight} | |||
| &.checkbox_true_part::before {content: @fa-check-square-o;color: @color-partial} | |||
| &.checkbox_true_part_focus::before {content: @fa-check-square-o;color: @color-partfocus;} | |||
| &.checkbox_true_disable::before {content: @fa-check-square-o;color: @color-disabled} | |||
| &.radio_false_full::before {content: @fa-circle-o;} | |||
| &.radio_false_full_focus::before {content: @fa-circle-o;color: @color-highlight} | |||
| &.radio_false_part::before {content: @fa-circle-o;color: @color-partial} | |||
| &.radio_false_part_focus::before {content: @fa-circle-o;color: @color-highlight} | |||
| &.radio_false_disable::before {content: @fa-circle-thin;color: @color-disabled} | |||
| &.radio_true_full::before {content: @fa-dot-circle-o;} | |||
| &.radio_true_full_focus::before {content: @fa-dot-circle-o;color: @color-highlight} | |||
| &.radio_true_part::before {content: @fa-dot-circle-o;color: @color-partial} | |||
| &.radio_true_part_focus::before {content: @fa-dot-circle-o;color: @color-partial;} | |||
| &.radio_true_disable::before {content: @fa-circle-thin;color: @color-disabled} | |||
| } | |||
| &.switch {width:@w; height:@h} | |||
| &.root_open::before{content: @fa-chevron-down;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;} | |||
| &.root_close::before{content: @fa-chevron-right;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;} | |||
| &.roots_open::before{content: @fa-chevron-down;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;} | |||
| &.roots_close::before{content: @fa-chevron-right;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;} | |||
| &.center_open::before{content: @fa-chevron-down;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;} | |||
| &.center_close::before{content: @fa-chevron-right;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;} | |||
| &.bottom_open::before{content: @fa-chevron-down;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;} | |||
| &.bottom_close::before{content: @fa-chevron-right;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;} | |||
| &.noline_open{} | |||
| &.noline_close{} | |||
| &.root_docu{ background:none;} | |||
| &.roots_docu::before{content: @fa-list-alt;padding-left:@pad-left;display: inline-block;color:@color-normal;} | |||
| &.center_docu::before{padding-top:@pad-top;padding-left:@pad-left;display: inline-block;color:@color-normal;} | |||
| &.bottom_docu::before{padding-top:@pad-top;padding-left:@pad-left;display: inline-block;color:@color-normal;} | |||
| &.noline_docu{ background:none;} | |||
| &.ico_open::before {content: @fa-folder-open-o;font-family: FontAwesome;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;color:@color-normal;} | |||
| &.ico_close::before {content: @fa-folder-o;font-family: FontAwesome;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;color:@color-normal;} | |||
| &.ico_docu::before{content: @fa-list-alt;font-family: FontAwesome;padding-top:@pad-top;padding-left:@pad-left;display: inline-block;color:@color-normal;} | |||
| &.edit {margin-left:4px; margin-right: -1px; vertical-align:top; *vertical-align:middle;padding-top:@pad-top;} | |||
| &.edit::before{content: @fa-pencil-square-o;font-family: FontAwesome;} | |||
| &.remove {margin-left:4px; margin-right: -1px; vertical-align:top; *vertical-align:middle;padding-top:@pad-top;} | |||
| &.remove::before{content: @fa-trash;font-family: FontAwesome;} | |||
| &.add {margin-left:4px; margin-right: -1px; vertical-align:top; *vertical-align:middle;padding-top:@pad-top;} | |||
| &.add::before{content: @fa-plus;font-family: FontAwesome;} | |||
| &.ico_loading{margin-right:2px; background:url(./img/loading.gif) no-repeat scroll 0 0 transparent; vertical-align:top; *vertical-align:middle} | |||
| } | |||
| } | |||
| } | |||
| ul.tmpTargetzTree {background-color:#FFE6B0; opacity:0.8; filter:alpha(opacity=80)} | |||
| // this is the arrow that moves | |||
| span.tmpzTreeMove_arrow{width:16px; height:@h; display: inline-block; | |||
| padding:0; margin:2px 0 0 1px; border:0 none; position:absolute; | |||
| background-color:transparent; background-attachment: scroll; | |||
| } | |||
| span.tmpzTreeMove_arrow::before{content: @fa-play;font-family: FontAwesome;color: @color-highlight; | |||
| } | |||
| // outline | |||
| ul.ztree.zTreeDragUL {margin:0; padding:0; position:absolute; width:auto; height:auto;overflow:hidden; | |||
| background-color:#cfcfcf; border:1px @color-highlight dotted; opacity:0.8; filter:alpha(opacity=80)} | |||
| .ztreeMask {z-index:10000; background-color:#cfcfcf; opacity:0.0; filter:alpha(opacity=0); position:absolute} | |||
| @@ -0,0 +1,480 @@ | |||
| @fa-glass: "\f000"; | |||
| @fa-music: "\f001"; | |||
| @fa-search: "\f002"; | |||
| @fa-envelope-o: "\f003"; | |||
| @fa-heart: "\f004"; | |||
| @fa-star: "\f005"; | |||
| @fa-star-o: "\f006"; | |||
| @fa-user: "\f007"; | |||
| @fa-film: "\f008"; | |||
| @fa-th-large: "\f009"; | |||
| @fa-th: "\f00a"; | |||
| @fa-th-list: "\f00b"; | |||
| @fa-check: "\f00c"; | |||
| @fa-times: "\f00d"; | |||
| @fa-search-plus: "\f00e"; | |||
| @fa-search-minus: "\f010"; | |||
| @fa-power-off: "\f011"; | |||
| @fa-signal: "\f012"; | |||
| @fa-cog: "\f013"; | |||
| @fa-trash-o: "\f014"; | |||
| @fa-home: "\f015"; | |||
| @fa-file-o: "\f016"; | |||
| @fa-clock-o: "\f017"; | |||
| @fa-road: "\f018"; | |||
| @fa-download: "\f019"; | |||
| @fa-arrow-circle-o-down: "\f01a"; | |||
| @fa-arrow-circle-o-up: "\f01b"; | |||
| @fa-inbox: "\f01c"; | |||
| @fa-play-circle-o: "\f01d"; | |||
| @fa-repeat: "\f01e"; | |||
| @fa-refresh: "\f021"; | |||
| @fa-list-alt: "\f022"; | |||
| @fa-lock: "\f023"; | |||
| @fa-flag: "\f024"; | |||
| @fa-headphones: "\f025"; | |||
| @fa-volume-off: "\f026"; | |||
| @fa-volume-down: "\f027"; | |||
| @fa-volume-up: "\f028"; | |||
| @fa-qrcode: "\f029"; | |||
| @fa-barcode: "\f02a"; | |||
| @fa-tag: "\f02b"; | |||
| @fa-tags: "\f02c"; | |||
| @fa-book: "\f02d"; | |||
| @fa-bookmark: "\f02e"; | |||
| @fa-print: "\f02f"; | |||
| @fa-camera: "\f030"; | |||
| @fa-font: "\f031"; | |||
| @fa-bold: "\f032"; | |||
| @fa-italic: "\f033"; | |||
| @fa-text-height: "\f034"; | |||
| @fa-text-width: "\f035"; | |||
| @fa-align-left: "\f036"; | |||
| @fa-align-center: "\f037"; | |||
| @fa-align-right: "\f038"; | |||
| @fa-align-justify: "\f039"; | |||
| @fa-list: "\f03a"; | |||
| @fa-outdent: "\f03b"; | |||
| @fa-indent: "\f03c"; | |||
| @fa-video-camera: "\f03d"; | |||
| @fa-picture-o: "\f03e"; | |||
| @fa-pencil: "\f040"; | |||
| @fa-map-marker: "\f041"; | |||
| @fa-adjust: "\f042"; | |||
| @fa-tint: "\f043"; | |||
| @fa-pencil-square-o: "\f044"; | |||
| @fa-share-square-o: "\f045"; | |||
| @fa-check-square-o: "\f046"; | |||
| @fa-arrows: "\f047"; | |||
| @fa-step-backward: "\f048"; | |||
| @fa-fast-backward: "\f049"; | |||
| @fa-backward: "\f04a"; | |||
| @fa-play: "\f04b"; | |||
| @fa-pause: "\f04c"; | |||
| @fa-stop: "\f04d"; | |||
| @fa-forward: "\f04e"; | |||
| @fa-fast-forward: "\f050"; | |||
| @fa-step-forward: "\f051"; | |||
| @fa-eject: "\f052"; | |||
| @fa-chevron-left: "\f053"; | |||
| @fa-chevron-right: "\f054"; | |||
| @fa-plus-circle: "\f055"; | |||
| @fa-minus-circle: "\f056"; | |||
| @fa-times-circle: "\f057"; | |||
| @fa-check-circle: "\f058"; | |||
| @fa-question-circle: "\f059"; | |||
| @fa-info-circle: "\f05a"; | |||
| @fa-crosshairs: "\f05b"; | |||
| @fa-times-circle-o: "\f05c"; | |||
| @fa-check-circle-o: "\f05d"; | |||
| @fa-ban: "\f05e"; | |||
| @fa-arrow-left: "\f060"; | |||
| @fa-arrow-right: "\f061"; | |||
| @fa-arrow-up: "\f062"; | |||
| @fa-arrow-down: "\f063"; | |||
| @fa-share: "\f064"; | |||
| @fa-expand: "\f065"; | |||
| @fa-compress: "\f066"; | |||
| @fa-plus: "\f067"; | |||
| @fa-minus: "\f068"; | |||
| @fa-asterisk: "\f069"; | |||
| @fa-exclamation-circle: "\f06a"; | |||
| @fa-gift: "\f06b"; | |||
| @fa-leaf: "\f06c"; | |||
| @fa-fire: "\f06d"; | |||
| @fa-eye: "\f06e"; | |||
| @fa-eye-slash: "\f070"; | |||
| @fa-exclamation-triangle: "\f071"; | |||
| @fa-plane: "\f072"; | |||
| @fa-calendar: "\f073"; | |||
| @fa-random: "\f074"; | |||
| @fa-comment: "\f075"; | |||
| @fa-magnet: "\f076"; | |||
| @fa-chevron-up: "\f077"; | |||
| @fa-chevron-down: "\f078"; | |||
| @fa-retweet: "\f079"; | |||
| @fa-shopping-cart: "\f07a"; | |||
| @fa-folder: "\f07b"; | |||
| @fa-folder-open: "\f07c"; | |||
| @fa-arrows-v: "\f07d"; | |||
| @fa-arrows-h: "\f07e"; | |||
| @fa-bar-chart: "\f080"; | |||
| @fa-twitter-square: "\f081"; | |||
| @fa-facebook-square: "\f082"; | |||
| @fa-camera-retro: "\f083"; | |||
| @fa-key: "\f084"; | |||
| @fa-cogs: "\f085"; | |||
| @fa-comments: "\f086"; | |||
| @fa-thumbs-o-up: "\f087"; | |||
| @fa-thumbs-o-down: "\f088"; | |||
| @fa-star-half: "\f089"; | |||
| @fa-heart-o: "\f08a"; | |||
| @fa-sign-out: "\f08b"; | |||
| @fa-linkedin-square: "\f08c"; | |||
| @fa-thumb-tack: "\f08d"; | |||
| @fa-external-link: "\f08e"; | |||
| @fa-sign-in: "\f090"; | |||
| @fa-trophy: "\f091"; | |||
| @fa-github-square: "\f092"; | |||
| @fa-upload: "\f093"; | |||
| @fa-lemon-o: "\f094"; | |||
| @fa-phone: "\f095"; | |||
| @fa-square-o: "\f096"; | |||
| @fa-bookmark-o: "\f097"; | |||
| @fa-phone-square: "\f098"; | |||
| @fa-twitter: "\f099"; | |||
| @fa-facebook: "\f09a"; | |||
| @fa-github: "\f09b"; | |||
| @fa-unlock: "\f09c"; | |||
| @fa-credit-card: "\f09d"; | |||
| @fa-rss: "\f09e"; | |||
| @fa-hdd-o: "\f0a0"; | |||
| @fa-bullhorn: "\f0a1"; | |||
| @fa-bell: "\f0f3"; | |||
| @fa-certificate: "\f0a3"; | |||
| @fa-hand-o-right: "\f0a4"; | |||
| @fa-hand-o-left: "\f0a5"; | |||
| @fa-hand-o-up: "\f0a6"; | |||
| @fa-hand-o-down: "\f0a7"; | |||
| @fa-arrow-circle-left: "\f0a8"; | |||
| @fa-arrow-circle-right: "\f0a9"; | |||
| @fa-arrow-circle-up: "\f0aa"; | |||
| @fa-arrow-circle-down: "\f0ab"; | |||
| @fa-globe: "\f0ac"; | |||
| @fa-wrench: "\f0ad"; | |||
| @fa-tasks: "\f0ae"; | |||
| @fa-filter: "\f0b0"; | |||
| @fa-briefcase: "\f0b1"; | |||
| @fa-arrows-alt: "\f0b2"; | |||
| @fa-users: "\f0c0"; | |||
| @fa-link: "\f0c1"; | |||
| @fa-cloud: "\f0c2"; | |||
| @fa-flask: "\f0c3"; | |||
| @fa-scissors: "\f0c4"; | |||
| @fa-files-o: "\f0c5"; | |||
| @fa-paperclip: "\f0c6"; | |||
| @fa-floppy-o: "\f0c7"; | |||
| @fa-square: "\f0c8"; | |||
| @fa-bars: "\f0c9"; | |||
| @fa-list-ul: "\f0ca"; | |||
| @fa-list-ol: "\f0cb"; | |||
| @fa-strikethrough: "\f0cc"; | |||
| @fa-underline: "\f0cd"; | |||
| @fa-table: "\f0ce"; | |||
| @fa-magic: "\f0d0"; | |||
| @fa-truck: "\f0d1"; | |||
| @fa-pinterest: "\f0d2"; | |||
| @fa-pinterest-square: "\f0d3"; | |||
| @fa-google-plus-square: "\f0d4"; | |||
| @fa-google-plus: "\f0d5"; | |||
| @fa-money: "\f0d6"; | |||
| @fa-caret-down: "\f0d7"; | |||
| @fa-caret-up: "\f0d8"; | |||
| @fa-caret-left: "\f0d9"; | |||
| @fa-caret-right: "\f0da"; | |||
| @fa-columns: "\f0db"; | |||
| @fa-sort: "\f0dc"; | |||
| @fa-sort-desc: "\f0dd"; | |||
| @fa-sort-asc: "\f0de"; | |||
| @fa-envelope: "\f0e0"; | |||
| @fa-linkedin: "\f0e1"; | |||
| @fa-undo: "\f0e2"; | |||
| @fa-gavel: "\f0e3"; | |||
| @fa-tachometer: "\f0e4"; | |||
| @fa-comment-o: "\f0e5"; | |||
| @fa-comments-o: "\f0e6"; | |||
| @fa-bolt: "\f0e7"; | |||
| @fa-sitemap: "\f0e8"; | |||
| @fa-umbrella: "\f0e9"; | |||
| @fa-clipboard: "\f0ea"; | |||
| @fa-lightbulb-o: "\f0eb"; | |||
| @fa-exchange: "\f0ec"; | |||
| @fa-cloud-download: "\f0ed"; | |||
| @fa-cloud-upload: "\f0ee"; | |||
| @fa-user-md: "\f0f0"; | |||
| @fa-stethoscope: "\f0f1"; | |||
| @fa-suitcase: "\f0f2"; | |||
| @fa-bell-o: "\f0a2"; | |||
| @fa-coffee: "\f0f4"; | |||
| @fa-cutlery: "\f0f5"; | |||
| @fa-file-text-o: "\f0f6"; | |||
| @fa-building-o: "\f0f7"; | |||
| @fa-hospital-o: "\f0f8"; | |||
| @fa-ambulance: "\f0f9"; | |||
| @fa-medkit: "\f0fa"; | |||
| @fa-fighter-jet: "\f0fb"; | |||
| @fa-beer: "\f0fc"; | |||
| @fa-h-square: "\f0fd"; | |||
| @fa-plus-square: "\f0fe"; | |||
| @fa-angle-double-left: "\f100"; | |||
| @fa-angle-double-right: "\f101"; | |||
| @fa-angle-double-up: "\f102"; | |||
| @fa-angle-double-down: "\f103"; | |||
| @fa-angle-left: "\f104"; | |||
| @fa-angle-right: "\f105"; | |||
| @fa-angle-up: "\f106"; | |||
| @fa-angle-down: "\f107"; | |||
| @fa-desktop: "\f108"; | |||
| @fa-laptop: "\f109"; | |||
| @fa-tablet: "\f10a"; | |||
| @fa-mobile: "\f10b"; | |||
| @fa-circle-o: "\f10c"; | |||
| @fa-quote-left: "\f10d"; | |||
| @fa-quote-right: "\f10e"; | |||
| @fa-spinner: "\f110"; | |||
| @fa-circle: "\f111"; | |||
| @fa-reply: "\f112"; | |||
| @fa-github-alt: "\f113"; | |||
| @fa-folder-o: "\f114"; | |||
| @fa-folder-open-o: "\f115"; | |||
| @fa-smile-o: "\f118"; | |||
| @fa-frown-o: "\f119"; | |||
| @fa-meh-o: "\f11a"; | |||
| @fa-gamepad: "\f11b"; | |||
| @fa-keyboard-o: "\f11c"; | |||
| @fa-flag-o: "\f11d"; | |||
| @fa-flag-checkered: "\f11e"; | |||
| @fa-terminal: "\f120"; | |||
| @fa-code: "\f121"; | |||
| @fa-reply-all: "\f122"; | |||
| @fa-star-half-o: "\f123"; | |||
| @fa-location-arrow: "\f124"; | |||
| @fa-crop: "\f125"; | |||
| @fa-code-fork: "\f126"; | |||
| @fa-chain-broken: "\f127"; | |||
| @fa-question: "\f128"; | |||
| @fa-info: "\f129"; | |||
| @fa-exclamation: "\f12a"; | |||
| @fa-superscript: "\f12b"; | |||
| @fa-subscript: "\f12c"; | |||
| @fa-eraser: "\f12d"; | |||
| @fa-puzzle-piece: "\f12e"; | |||
| @fa-microphone: "\f130"; | |||
| @fa-microphone-slash: "\f131"; | |||
| @fa-shield: "\f132"; | |||
| @fa-calendar-o: "\f133"; | |||
| @fa-fire-extinguisher: "\f134"; | |||
| @fa-rocket: "\f135"; | |||
| @fa-maxcdn: "\f136"; | |||
| @fa-chevron-circle-left: "\f137"; | |||
| @fa-chevron-circle-right: "\f138"; | |||
| @fa-chevron-circle-up: "\f139"; | |||
| @fa-chevron-circle-down: "\f13a"; | |||
| @fa-html5: "\f13b"; | |||
| @fa-css3: "\f13c"; | |||
| @fa-anchor: "\f13d"; | |||
| @fa-unlock-alt: "\f13e"; | |||
| @fa-bullseye: "\f140"; | |||
| @fa-ellipsis-h: "\f141"; | |||
| @fa-ellipsis-v: "\f142"; | |||
| @fa-rss-square: "\f143"; | |||
| @fa-play-circle: "\f144"; | |||
| @fa-ticket: "\f145"; | |||
| @fa-minus-square: "\f146"; | |||
| @fa-minus-square-o: "\f147"; | |||
| @fa-level-up: "\f148"; | |||
| @fa-level-down: "\f149"; | |||
| @fa-check-square: "\f14a"; | |||
| @fa-pencil-square: "\f14b"; | |||
| @fa-external-link-square: "\f14c"; | |||
| @fa-share-square: "\f14d"; | |||
| @fa-compass: "\f14e"; | |||
| @fa-caret-square-o-down: "\f150"; | |||
| @fa-caret-square-o-up: "\f151"; | |||
| @fa-caret-square-o-right: "\f152"; | |||
| @fa-eur: "\f153"; | |||
| @fa-gbp: "\f154"; | |||
| @fa-usd: "\f155"; | |||
| @fa-inr: "\f156"; | |||
| @fa-jpy: "\f157"; | |||
| @fa-rub: "\f158"; | |||
| @fa-krw: "\f159"; | |||
| @fa-btc: "\f15a"; | |||
| @fa-file: "\f15b"; | |||
| @fa-file-text: "\f15c"; | |||
| @fa-sort-alpha-asc: "\f15d"; | |||
| @fa-sort-alpha-desc: "\f15e"; | |||
| @fa-sort-amount-asc: "\f160"; | |||
| @fa-sort-amount-desc: "\f161"; | |||
| @fa-sort-numeric-asc: "\f162"; | |||
| @fa-sort-numeric-desc: "\f163"; | |||
| @fa-thumbs-up: "\f164"; | |||
| @fa-thumbs-down: "\f165"; | |||
| @fa-youtube-square: "\f166"; | |||
| @fa-youtube: "\f167"; | |||
| @fa-xing: "\f168"; | |||
| @fa-xing-square: "\f169"; | |||
| @fa-youtube-play: "\f16a"; | |||
| @fa-dropbox: "\f16b"; | |||
| @fa-stack-overflow: "\f16c"; | |||
| @fa-instagram: "\f16d"; | |||
| @fa-flickr: "\f16e"; | |||
| @fa-adn: "\f170"; | |||
| @fa-bitbucket: "\f171"; | |||
| @fa-bitbucket-square: "\f172"; | |||
| @fa-tumblr: "\f173"; | |||
| @fa-tumblr-square: "\f174"; | |||
| @fa-long-arrow-down: "\f175"; | |||
| @fa-long-arrow-up: "\f176"; | |||
| @fa-long-arrow-left: "\f177"; | |||
| @fa-long-arrow-right: "\f178"; | |||
| @fa-apple: "\f179"; | |||
| @fa-windows: "\f17a"; | |||
| @fa-android: "\f17b"; | |||
| @fa-linux: "\f17c"; | |||
| @fa-dribbble: "\f17d"; | |||
| @fa-skype: "\f17e"; | |||
| @fa-foursquare: "\f180"; | |||
| @fa-trello: "\f181"; | |||
| @fa-female: "\f182"; | |||
| @fa-male: "\f183"; | |||
| @fa-gittip: "\f184"; | |||
| @fa-sun-o: "\f185"; | |||
| @fa-moon-o: "\f186"; | |||
| @fa-archive: "\f187"; | |||
| @fa-bug: "\f188"; | |||
| @fa-vk: "\f189"; | |||
| @fa-weibo: "\f18a"; | |||
| @fa-renren: "\f18b"; | |||
| @fa-pagelines: "\f18c"; | |||
| @fa-stack-exchange: "\f18d"; | |||
| @fa-arrow-circle-o-right: "\f18e"; | |||
| @fa-arrow-circle-o-left: "\f190"; | |||
| @fa-caret-square-o-left: "\f191"; | |||
| @fa-dot-circle-o: "\f192"; | |||
| @fa-wheelchair: "\f193"; | |||
| @fa-vimeo-square: "\f194"; | |||
| @fa-try: "\f195"; | |||
| @fa-plus-square-o: "\f196"; | |||
| @fa-space-shuttle: "\f197"; | |||
| @fa-slack: "\f198"; | |||
| @fa-envelope-square: "\f199"; | |||
| @fa-wordpress: "\f19a"; | |||
| @fa-openid: "\f19b"; | |||
| @fa-university: "\f19c"; | |||
| @fa-graduation-cap: "\f19d"; | |||
| @fa-yahoo: "\f19e"; | |||
| @fa-google: "\f1a0"; | |||
| @fa-reddit: "\f1a1"; | |||
| @fa-reddit-square: "\f1a2"; | |||
| @fa-stumbleupon-circle: "\f1a3"; | |||
| @fa-stumbleupon: "\f1a4"; | |||
| @fa-delicious: "\f1a5"; | |||
| @fa-digg: "\f1a6"; | |||
| @fa-pied-piper: "\f1a7"; | |||
| @fa-pied-piper-alt: "\f1a8"; | |||
| @fa-drupal: "\f1a9"; | |||
| @fa-joomla: "\f1aa"; | |||
| @fa-language: "\f1ab"; | |||
| @fa-fax: "\f1ac"; | |||
| @fa-building: "\f1ad"; | |||
| @fa-child: "\f1ae"; | |||
| @fa-paw: "\f1b0"; | |||
| @fa-spoon: "\f1b1"; | |||
| @fa-cube: "\f1b2"; | |||
| @fa-cubes: "\f1b3"; | |||
| @fa-behance: "\f1b4"; | |||
| @fa-behance-square: "\f1b5"; | |||
| @fa-steam: "\f1b6"; | |||
| @fa-steam-square: "\f1b7"; | |||
| @fa-recycle: "\f1b8"; | |||
| @fa-car: "\f1b9"; | |||
| @fa-taxi: "\f1ba"; | |||
| @fa-tree: "\f1bb"; | |||
| @fa-spotify: "\f1bc"; | |||
| @fa-deviantart: "\f1bd"; | |||
| @fa-soundcloud: "\f1be"; | |||
| @fa-database: "\f1c0"; | |||
| @fa-file-pdf-o: "\f1c1"; | |||
| @fa-file-word-o: "\f1c2"; | |||
| @fa-file-excel-o: "\f1c3"; | |||
| @fa-file-powerpoint-o: "\f1c4"; | |||
| @fa-file-image-o: "\f1c5"; | |||
| @fa-file-archive-o: "\f1c6"; | |||
| @fa-file-audio-o: "\f1c7"; | |||
| @fa-file-video-o: "\f1c8"; | |||
| @fa-file-code-o: "\f1c9"; | |||
| @fa-vine: "\f1ca"; | |||
| @fa-codepen: "\f1cb"; | |||
| @fa-jsfiddle: "\f1cc"; | |||
| @fa-life-ring: "\f1cd"; | |||
| @fa-circle-o-notch: "\f1ce"; | |||
| @fa-rebel: "\f1d0"; | |||
| @fa-empire: "\f1d1"; | |||
| @fa-git-square: "\f1d2"; | |||
| @fa-git: "\f1d3"; | |||
| @fa-hacker-news: "\f1d4"; | |||
| @fa-tencent-weibo: "\f1d5"; | |||
| @fa-qq: "\f1d6"; | |||
| @fa-weixin: "\f1d7"; | |||
| @fa-paper-plane: "\f1d8"; | |||
| @fa-paper-plane-o: "\f1d9"; | |||
| @fa-history: "\f1da"; | |||
| @fa-circle-thin: "\f1db"; | |||
| @fa-header: "\f1dc"; | |||
| @fa-paragraph: "\f1dd"; | |||
| @fa-sliders: "\f1de"; | |||
| @fa-share-alt: "\f1e0"; | |||
| @fa-share-alt-square: "\f1e1"; | |||
| @fa-bomb: "\f1e2"; | |||
| @fa-futbol-o: "\f1e3"; | |||
| @fa-tty: "\f1e4"; | |||
| @fa-binoculars: "\f1e5"; | |||
| @fa-plug: "\f1e6"; | |||
| @fa-slideshare: "\f1e7"; | |||
| @fa-twitch: "\f1e8"; | |||
| @fa-yelp: "\f1e9"; | |||
| @fa-newspaper-o: "\f1ea"; | |||
| @fa-wifi: "\f1eb"; | |||
| @fa-calculator: "\f1ec"; | |||
| @fa-paypal: "\f1ed"; | |||
| @fa-google-wallet: "\f1ee"; | |||
| @fa-cc-visa: "\f1f0"; | |||
| @fa-cc-mastercard: "\f1f1"; | |||
| @fa-cc-discover: "\f1f2"; | |||
| @fa-cc-amex: "\f1f3"; | |||
| @fa-cc-paypal: "\f1f4"; | |||
| @fa-cc-stripe: "\f1f5"; | |||
| @fa-bell-slash: "\f1f6"; | |||
| @fa-bell-slash-o: "\f1f7"; | |||
| @fa-trash: "\f1f8"; | |||
| @fa-copyright: "\f1f9"; | |||
| @fa-at: "\f1fa"; | |||
| @fa-eyedropper: "\f1fb"; | |||
| @fa-paint-brush: "\f1fc"; | |||
| @fa-birthday-cake: "\f1fd"; | |||
| @fa-area-chart: "\f1fe"; | |||
| @fa-pie-chart: "\f200"; | |||
| @fa-line-chart: "\f201"; | |||
| @fa-lastfm: "\f202"; | |||
| @fa-lastfm-square: "\f203"; | |||
| @fa-toggle-off: "\f204"; | |||
| @fa-toggle-on: "\f205"; | |||
| @fa-bicycle: "\f206"; | |||
| @fa-bus: "\f207"; | |||
| @fa-ioxhost: "\f208"; | |||
| @fa-angellist: "\f209"; | |||
| @fa-cc: "\f20a"; | |||
| @fa-ils: "\f20b"; | |||
| @fa-meanpath: "\f20c"; | |||
| @@ -0,0 +1,33 @@ | |||
| html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { | |||
| margin: 0;padding: 0;border: 0;outline: 0;font-weight: inherit;font-style: inherit;font-size: 100%;font-family: inherit;vertical-align: baseline;} | |||
| body {color: #2f332a;font: 15px/21px Arial, Helvetica, simsun, sans-serif;background: #f0f6e4 \9;} | |||
| h1, h2, h3, h4, h5, h6 {color: #2f332a;font-weight: bold;font-family: Helvetica, Arial, sans-serif;padding-bottom: 5px;} | |||
| h1 {font-size: 24px;line-height: 34px;text-align: center;} | |||
| h2 {font-size: 14px;line-height: 24px;padding-top: 5px;} | |||
| h6 {font-weight: normal;font-size: 12px;letter-spacing: 1px;line-height: 24px;text-align: center;} | |||
| a {color:#3C6E31;text-decoration: underline;} | |||
| a:hover {background-color:#3C6E31;color:white;} | |||
| input.radio {margin: 0 2px 0 8px;} | |||
| input.radio.first {margin-left:0;} | |||
| input.empty {color: lightgray;} | |||
| code {color: #2f332a;} | |||
| .highlight_red {color:#A60000;} | |||
| .highlight_green {color:#A7F43D;} | |||
| li {list-style: circle;font-size: 12px;} | |||
| li.title {list-style: none;} | |||
| ul.list {margin-left: 17px;} | |||
| div.content_wrap {width: 600px;height:380px;} | |||
| div.content_wrap div.left{float: left;width: 250px;} | |||
| div.content_wrap div.right{float: right;width: 340px;} | |||
| div.zTreeDemoBackground {width:250px;height:362px;text-align:left;} | |||
| ul.ztree {margin-top: 10px;border: 1px solid #617775;background: #f0f6e4;width:220px;height:360px;overflow-y:scroll;overflow-x:auto;} | |||
| ul.log {border: 1px solid #617775;background: #f0f6e4;width:300px;height:170px;overflow: hidden;} | |||
| ul.log.small {height:45px;} | |||
| ul.log li {color: #666666;list-style: none;padding-left: 10px;} | |||
| ul.log li.dark {background-color: #E3E3E3;} | |||
| /* ruler */ | |||
| div.ruler {height:20px; width:220px; background-color:#f0f6e4;border: 1px solid #333; margin-bottom: 5px; cursor: pointer} | |||
| div.ruler div.cursor {height:20px; width:30px; background-color:#3C6E31; color:white; text-align: right; padding-right: 5px; cursor: pointer} | |||
| @@ -0,0 +1,96 @@ | |||
| /*------------------------------------- | |||
| zTree Style | |||
| version: 3.4 | |||
| author: Hunter.z | |||
| email: hunter.z@263.net | |||
| website: http://code.google.com/p/jquerytree/ | |||
| -------------------------------------*/ | |||
| .ztree * {padding:0; margin:0; font-size:12px; font-family: Verdana, Arial, Helvetica, AppleGothic, sans-serif} | |||
| .ztree {margin:0; padding:5px; color:#333} | |||
| .ztree li{padding:0; margin:0; list-style:none; line-height:17px; text-align:left; white-space:nowrap; outline:0} | |||
| .ztree li ul{ margin:0; padding:0 0 0 18px} | |||
| .ztree li ul.line{ background:url(./img/line_conn.png) 0 0 repeat-y;} | |||
| .ztree li a {padding-right:3px; margin:0; cursor:pointer; height:21px; color:#333; background-color: transparent; text-decoration:none; vertical-align:top; display: inline-block} | |||
| .ztree li a:hover {text-decoration:underline} | |||
| .ztree li a.curSelectedNode {padding-top:0px; background-color:#e5e5e5; color:black; height:21px; opacity:0.8;} | |||
| .ztree li a.curSelectedNode_Edit {padding-top:0px; background-color:#e5e5e5; color:black; height:21px; border:1px #666 solid; opacity:0.8;} | |||
| .ztree li a.tmpTargetNode_inner {padding-top:0px; background-color:#aaa; color:white; height:21px; border:1px #666 solid; | |||
| opacity:0.8; filter:alpha(opacity=80)} | |||
| .ztree li a.tmpTargetNode_prev {} | |||
| .ztree li a.tmpTargetNode_next {} | |||
| .ztree li a input.rename {height:14px; width:80px; padding:0; margin:0; | |||
| font-size:12px; border:1px #585956 solid; *border:0px} | |||
| .ztree li span {line-height:21px; margin-right:2px} | |||
| .ztree li span.button {line-height:0; margin:0; padding: 0; width:21px; height:21px; display: inline-block; vertical-align:middle; | |||
| border:0 none; cursor: pointer;outline:none; | |||
| background-color:transparent; background-repeat:no-repeat; background-attachment: scroll; | |||
| background-image:url("./img/metro.png"); *background-image:url("./img/metro.gif")} | |||
| .ztree li span.button.chk {width:13px; height:13px; margin:0 2px; cursor: auto} | |||
| .ztree li span.button.chk.checkbox_false_full {background-position: -5px -5px;} | |||
| .ztree li span.button.chk.checkbox_false_full_focus {background-position: -5px -26px;} | |||
| .ztree li span.button.chk.checkbox_false_part {background-position: -5px -48px;} | |||
| .ztree li span.button.chk.checkbox_false_part_focus {background-position: -5px -68px;} | |||
| .ztree li span.button.chk.checkbox_false_disable {background-position: -5px -89px;} | |||
| .ztree li span.button.chk.checkbox_true_full {background-position: -26px -5px;} | |||
| .ztree li span.button.chk.checkbox_true_full_focus {background-position: -26px -26px;} | |||
| .ztree li span.button.chk.checkbox_true_part {background-position: -26px -48px;} | |||
| .ztree li span.button.chk.checkbox_true_part_focus {background-position: -26px -68px;} | |||
| .ztree li span.button.chk.checkbox_true_disable {background-position: -26px -89px;} | |||
| .ztree li span.button.chk.radio_false_full {background-position: -47px -5px;} | |||
| .ztree li span.button.chk.radio_false_full_focus {background-position: -47px -26px;} | |||
| .ztree li span.button.chk.radio_false_part {background-position: -47px -47px;} | |||
| .ztree li span.button.chk.radio_false_part_focus {background-position: -47px -68px;} | |||
| .ztree li span.button.chk.radio_false_disable {background-position: -47px -89px;} | |||
| .ztree li span.button.chk.radio_true_full {background-position: -68px -5px;} | |||
| .ztree li span.button.chk.radio_true_full_focus {background-position: -68px -26px;} | |||
| .ztree li span.button.chk.radio_true_part {background-position: -68px -47px;} | |||
| .ztree li span.button.chk.radio_true_part_focus {background-position: -68px -68px;} | |||
| .ztree li span.button.chk.radio_true_disable {background-position: -68px -89px;} | |||
| .ztree li span.button.switch {width:21px; height:21px} | |||
| .ztree li span.button.root_open{background-position:-105px -63px} | |||
| .ztree li span.button.root_close{background-position:-126px -63px} | |||
| .ztree li span.button.roots_open{background-position: -105px 0;} | |||
| .ztree li span.button.roots_close{background-position: -126px 0;} | |||
| .ztree li span.button.center_open{background-position: -105px -21px;} | |||
| .ztree li span.button.center_close{background-position: -126px -21px;} | |||
| .ztree li span.button.bottom_open{background-position: -105px -42px;} | |||
| .ztree li span.button.bottom_close{background-position: -126px -42px;} | |||
| .ztree li span.button.noline_open{background-position: -105px -84px;} | |||
| .ztree li span.button.noline_close{background-position: -126px -84px;} | |||
| .ztree li span.button.root_docu{ background:none;} | |||
| .ztree li span.button.roots_docu{background-position: -84px 0;} | |||
| .ztree li span.button.center_docu{background-position: -84px -21px;} | |||
| .ztree li span.button.bottom_docu{background-position: -84px -42px;} | |||
| .ztree li span.button.noline_docu{ background:none;} | |||
| .ztree li span.button.ico_open{margin-right:2px; background-position: -147px -21px; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.ico_close{margin-right:2px; margin-right:2px; background-position: -147px 0; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.ico_docu{margin-right:2px; background-position: -147px -42px; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.edit {margin-left:2px; margin-right: -1px; background-position: -189px -21px; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.edit:hover { | |||
| background-position: -168px -21px; | |||
| } | |||
| .ztree li span.button.remove {margin-left:2px; margin-right: -1px; background-position: -189px -42px; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.remove:hover { | |||
| background-position: -168px -42px; | |||
| } | |||
| .ztree li span.button.add {margin-left:2px; margin-right: -1px; background-position: -189px 0; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.add:hover { | |||
| background-position: -168px 0; | |||
| } | |||
| .ztree li span.button.ico_loading{margin-right:2px; background:url(./img/loading.gif) no-repeat scroll 0 0 transparent; vertical-align:top; *vertical-align:middle} | |||
| ul.tmpTargetzTree {background-color:#FFE6B0; opacity:0.8; filter:alpha(opacity=80)} | |||
| span.tmpzTreeMove_arrow {width:16px; height:21px; display: inline-block; padding:0; margin:2px 0 0 1px; border:0 none; position:absolute; | |||
| background-color:transparent; background-repeat:no-repeat; background-attachment: scroll; | |||
| background-position:-168px -84px; background-image:url("./img/metro.png"); *background-image:url("./img/metro.gif")} | |||
| ul.ztree.zTreeDragUL {margin:0; padding:0; position:absolute; width:auto; height:auto;overflow:hidden; background-color:#cfcfcf; border:1px #00B83F dotted; opacity:0.8; filter:alpha(opacity=80)} | |||
| .ztreeMask {z-index:10000; background-color:#cfcfcf; opacity:0.0; filter:alpha(opacity=0); position:absolute} | |||
| @@ -0,0 +1,97 @@ | |||
| /*------------------------------------- | |||
| zTree Style | |||
| version: 3.5.19 | |||
| author: Hunter.z | |||
| email: hunter.z@263.net | |||
| website: http://code.google.com/p/jquerytree/ | |||
| -------------------------------------*/ | |||
| .ztree * {padding:0; margin:0; font-size:12px; font-family: Verdana, Arial, Helvetica, AppleGothic, sans-serif} | |||
| .ztree {margin:0; padding:5px; color:#333} | |||
| .ztree li{padding:0; margin:0; list-style:none; line-height:14px; text-align:left; white-space:nowrap; outline:0} | |||
| .ztree li ul{ margin:0; padding:0 0 0 18px} | |||
| .ztree li ul.line{ background:url(./img/line_conn.gif) 0 0 repeat-y;} | |||
| .ztree li a {padding:1px 3px 0 0; margin:0; cursor:pointer; height:17px; color:#333; background-color: transparent; | |||
| text-decoration:none; vertical-align:top; display: inline-block} | |||
| .ztree li a:hover {text-decoration:underline} | |||
| .ztree li a.curSelectedNode {padding-top:0px; background-color:#FFE6B0; color:black; height:16px; border:1px #FFB951 solid; opacity:0.8;} | |||
| .ztree li a.curSelectedNode_Edit {padding-top:0px; background-color:#FFE6B0; color:black; height:16px; border:1px #FFB951 solid; opacity:0.8;} | |||
| .ztree li a.tmpTargetNode_inner {padding-top:0px; background-color:#316AC5; color:white; height:16px; border:1px #316AC5 solid; | |||
| opacity:0.8; filter:alpha(opacity=80)} | |||
| .ztree li a.tmpTargetNode_prev {} | |||
| .ztree li a.tmpTargetNode_next {} | |||
| .ztree li a input.rename {height:14px; width:80px; padding:0; margin:0; | |||
| font-size:12px; border:1px #7EC4CC solid; *border:0px} | |||
| .ztree li span {line-height:16px; margin-right:2px} | |||
| .ztree li span.button {line-height:0; margin:0; width:16px; height:16px; display: inline-block; vertical-align:middle; | |||
| border:0 none; cursor: pointer;outline:none; | |||
| background-color:transparent; background-repeat:no-repeat; background-attachment: scroll; | |||
| background-image:url("./img/zTreeStandard.png"); *background-image:url("./img/zTreeStandard.gif")} | |||
| .ztree li span.button.chk {width:13px; height:13px; margin:0 3px 0 0; cursor: auto} | |||
| .ztree li span.button.chk.checkbox_false_full {background-position:0 0} | |||
| .ztree li span.button.chk.checkbox_false_full_focus {background-position:0 -14px} | |||
| .ztree li span.button.chk.checkbox_false_part {background-position:0 -28px} | |||
| .ztree li span.button.chk.checkbox_false_part_focus {background-position:0 -42px} | |||
| .ztree li span.button.chk.checkbox_false_disable {background-position:0 -56px} | |||
| .ztree li span.button.chk.checkbox_true_full {background-position:-14px 0} | |||
| .ztree li span.button.chk.checkbox_true_full_focus {background-position:-14px -14px} | |||
| .ztree li span.button.chk.checkbox_true_part {background-position:-14px -28px} | |||
| .ztree li span.button.chk.checkbox_true_part_focus {background-position:-14px -42px} | |||
| .ztree li span.button.chk.checkbox_true_disable {background-position:-14px -56px} | |||
| .ztree li span.button.chk.radio_false_full {background-position:-28px 0} | |||
| .ztree li span.button.chk.radio_false_full_focus {background-position:-28px -14px} | |||
| .ztree li span.button.chk.radio_false_part {background-position:-28px -28px} | |||
| .ztree li span.button.chk.radio_false_part_focus {background-position:-28px -42px} | |||
| .ztree li span.button.chk.radio_false_disable {background-position:-28px -56px} | |||
| .ztree li span.button.chk.radio_true_full {background-position:-42px 0} | |||
| .ztree li span.button.chk.radio_true_full_focus {background-position:-42px -14px} | |||
| .ztree li span.button.chk.radio_true_part {background-position:-42px -28px} | |||
| .ztree li span.button.chk.radio_true_part_focus {background-position:-42px -42px} | |||
| .ztree li span.button.chk.radio_true_disable {background-position:-42px -56px} | |||
| .ztree li span.button.switch {width:18px; height:18px} | |||
| .ztree li span.button.root_open{background-position:-92px -54px} | |||
| .ztree li span.button.root_close{background-position:-74px -54px} | |||
| .ztree li span.button.roots_open{background-position:-92px 0} | |||
| .ztree li span.button.roots_close{background-position:-74px 0} | |||
| .ztree li span.button.center_open{background-position:-92px -18px} | |||
| .ztree li span.button.center_close{background-position:-74px -18px} | |||
| .ztree li span.button.bottom_open{background-position:-92px -36px} | |||
| .ztree li span.button.bottom_close{background-position:-74px -36px} | |||
| .ztree li span.button.noline_open{background-position:-92px -72px} | |||
| .ztree li span.button.noline_close{background-position:-74px -72px} | |||
| .ztree li span.button.root_docu{ background:none;} | |||
| .ztree li span.button.roots_docu{background-position:-56px 0} | |||
| .ztree li span.button.center_docu{background-position:-56px -18px} | |||
| .ztree li span.button.bottom_docu{background-position:-56px -36px} | |||
| .ztree li span.button.noline_docu{ background:none;} | |||
| .ztree li span.button.ico_open{margin-right:2px; background-position:-110px -16px; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.ico_close{margin-right:2px; background-position:-110px 0; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.ico_docu{margin-right:2px; background-position:-110px -32px; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.edit {margin-right:2px; background-position:-110px -48px; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.remove {margin-right:2px; background-position:-110px -64px; vertical-align:top; *vertical-align:middle} | |||
| .ztree li span.button.ico_loading{margin-right:2px; background:url(./img/loading.gif) no-repeat scroll 0 0 transparent; vertical-align:top; *vertical-align:middle} | |||
| ul.tmpTargetzTree {background-color:#FFE6B0; opacity:0.8; filter:alpha(opacity=80)} | |||
| span.tmpzTreeMove_arrow {width:16px; height:16px; display: inline-block; padding:0; margin:2px 0 0 1px; border:0 none; position:absolute; | |||
| background-color:transparent; background-repeat:no-repeat; background-attachment: scroll; | |||
| background-position:-110px -80px; background-image:url("./img/zTreeStandard.png"); *background-image:url("./img/zTreeStandard.gif")} | |||
| ul.ztree.zTreeDragUL {margin:0; padding:0; position:absolute; width:auto; height:auto;overflow:hidden; background-color:#cfcfcf; border:1px #00B83F dotted; opacity:0.8; filter:alpha(opacity=80)} | |||
| .zTreeMask {z-index:10000; background-color:#cfcfcf; opacity:0.0; filter:alpha(opacity=0); position:absolute} | |||
| /* level style*/ | |||
| /*.ztree li span.button.level0 { | |||
| display:none; | |||
| } | |||
| .ztree li ul.level0 { | |||
| padding:0; | |||
| background:none; | |||
| }*/ | |||
| @@ -0,0 +1,652 @@ | |||
| /* | |||
| * JQuery zTree excheck | |||
| * v3.5.48 | |||
| * http://treejs.cn/ | |||
| * | |||
| * Copyright (c) 2010 Hunter.z | |||
| * | |||
| * Licensed same as jquery - MIT License | |||
| * http://www.opensource.org/licenses/mit-license.php | |||
| * | |||
| * Date: 2020-11-21 | |||
| */ | |||
| (function ($) { | |||
| //default consts of excheck | |||
| var _consts = { | |||
| event: { | |||
| CHECK: "ztree_check" | |||
| }, | |||
| id: { | |||
| CHECK: "_check" | |||
| }, | |||
| checkbox: { | |||
| STYLE: "checkbox", | |||
| DEFAULT: "chk", | |||
| DISABLED: "disable", | |||
| FALSE: "false", | |||
| TRUE: "true", | |||
| FULL: "full", | |||
| PART: "part", | |||
| FOCUS: "focus" | |||
| }, | |||
| radio: { | |||
| STYLE: "radio", | |||
| TYPE_ALL: "all", | |||
| TYPE_LEVEL: "level" | |||
| } | |||
| }, | |||
| //default setting of excheck | |||
| _setting = { | |||
| check: { | |||
| enable: false, | |||
| autoCheckTrigger: false, | |||
| chkStyle: _consts.checkbox.STYLE, | |||
| nocheckInherit: false, | |||
| chkDisabledInherit: false, | |||
| radioType: _consts.radio.TYPE_LEVEL, | |||
| chkboxType: { | |||
| "Y": "ps", | |||
| "N": "ps" | |||
| } | |||
| }, | |||
| data: { | |||
| key: { | |||
| checked: "checked" | |||
| } | |||
| }, | |||
| callback: { | |||
| beforeCheck: null, | |||
| onCheck: null | |||
| } | |||
| }, | |||
| //default root of excheck | |||
| _initRoot = function (setting) { | |||
| var r = data.getRoot(setting); | |||
| r.radioCheckedList = []; | |||
| }, | |||
| //default cache of excheck | |||
| _initCache = function (treeId) { | |||
| }, | |||
| //default bind event of excheck | |||
| _bindEvent = function (setting) { | |||
| var o = setting.treeObj, | |||
| c = consts.event; | |||
| o.bind(c.CHECK, function (event, srcEvent, treeId, node) { | |||
| event.srcEvent = srcEvent; | |||
| tools.apply(setting.callback.onCheck, [event, treeId, node]); | |||
| }); | |||
| }, | |||
| _unbindEvent = function (setting) { | |||
| var o = setting.treeObj, | |||
| c = consts.event; | |||
| o.unbind(c.CHECK); | |||
| }, | |||
| //default event proxy of excheck | |||
| _eventProxy = function (e) { | |||
| var target = e.target, | |||
| setting = data.getSetting(e.data.treeId), | |||
| tId = "", node = null, | |||
| nodeEventType = "", treeEventType = "", | |||
| nodeEventCallback = null, treeEventCallback = null; | |||
| if (tools.eqs(e.type, "mouseover")) { | |||
| if (setting.check.enable && tools.eqs(target.tagName, "span") && target.getAttribute("treeNode" + consts.id.CHECK) !== null) { | |||
| tId = tools.getNodeMainDom(target).id; | |||
| nodeEventType = "mouseoverCheck"; | |||
| } | |||
| } else if (tools.eqs(e.type, "mouseout")) { | |||
| if (setting.check.enable && tools.eqs(target.tagName, "span") && target.getAttribute("treeNode" + consts.id.CHECK) !== null) { | |||
| tId = tools.getNodeMainDom(target).id; | |||
| nodeEventType = "mouseoutCheck"; | |||
| } | |||
| } else if (tools.eqs(e.type, "click")) { | |||
| if (setting.check.enable && tools.eqs(target.tagName, "span") && target.getAttribute("treeNode" + consts.id.CHECK) !== null) { | |||
| tId = tools.getNodeMainDom(target).id; | |||
| nodeEventType = "checkNode"; | |||
| } | |||
| } | |||
| if (tId.length > 0) { | |||
| node = data.getNodeCache(setting, tId); | |||
| switch (nodeEventType) { | |||
| case "checkNode" : | |||
| nodeEventCallback = _handler.onCheckNode; | |||
| break; | |||
| case "mouseoverCheck" : | |||
| nodeEventCallback = _handler.onMouseoverCheck; | |||
| break; | |||
| case "mouseoutCheck" : | |||
| nodeEventCallback = _handler.onMouseoutCheck; | |||
| break; | |||
| } | |||
| } | |||
| var proxyResult = { | |||
| stop: nodeEventType === "checkNode", | |||
| node: node, | |||
| nodeEventType: nodeEventType, | |||
| nodeEventCallback: nodeEventCallback, | |||
| treeEventType: treeEventType, | |||
| treeEventCallback: treeEventCallback | |||
| }; | |||
| return proxyResult | |||
| }, | |||
| //default init node of excheck | |||
| _initNode = function (setting, level, n, parentNode, isFirstNode, isLastNode, openFlag) { | |||
| if (!n) return; | |||
| var checked = data.nodeChecked(setting, n); | |||
| n.checkedOld = checked; | |||
| if (typeof n.nocheck == "string") n.nocheck = tools.eqs(n.nocheck, "true"); | |||
| n.nocheck = !!n.nocheck || (setting.check.nocheckInherit && parentNode && !!parentNode.nocheck); | |||
| if (typeof n.chkDisabled == "string") n.chkDisabled = tools.eqs(n.chkDisabled, "true"); | |||
| n.chkDisabled = !!n.chkDisabled || (setting.check.chkDisabledInherit && parentNode && !!parentNode.chkDisabled); | |||
| if (typeof n.halfCheck == "string") n.halfCheck = tools.eqs(n.halfCheck, "true"); | |||
| n.halfCheck = !!n.halfCheck; | |||
| n.check_Child_State = -1; | |||
| n.check_Focus = false; | |||
| n.getCheckStatus = function () { | |||
| return data.getCheckStatus(setting, n); | |||
| }; | |||
| if (setting.check.chkStyle == consts.radio.STYLE && setting.check.radioType == consts.radio.TYPE_ALL && checked) { | |||
| var r = data.getRoot(setting); | |||
| r.radioCheckedList.push(n); | |||
| } | |||
| }, | |||
| //add dom for check | |||
| _beforeA = function (setting, node, html) { | |||
| if (setting.check.enable) { | |||
| data.makeChkFlag(setting, node); | |||
| html.push("<span ID='", node.tId, consts.id.CHECK, "' class='", view.makeChkClass(setting, node), "' treeNode", consts.id.CHECK, (node.nocheck === true ? " style='display:none;'" : ""), "></span>"); | |||
| } | |||
| }, | |||
| //update zTreeObj, add method of check | |||
| _zTreeTools = function (setting, zTreeTools) { | |||
| zTreeTools.checkNode = function (node, checked, checkTypeFlag, callbackFlag) { | |||
| var nodeChecked = data.nodeChecked(setting, node); | |||
| if (node.chkDisabled === true) return; | |||
| if (checked !== true && checked !== false) { | |||
| checked = !nodeChecked; | |||
| } | |||
| callbackFlag = !!callbackFlag; | |||
| if (nodeChecked === checked && !checkTypeFlag) { | |||
| return; | |||
| } else if (callbackFlag && tools.apply(this.setting.callback.beforeCheck, [this.setting.treeId, node], true) == false) { | |||
| return; | |||
| } | |||
| if (tools.uCanDo(this.setting) && this.setting.check.enable && node.nocheck !== true) { | |||
| data.nodeChecked(setting, node, checked); | |||
| var checkObj = $$(node, consts.id.CHECK, this.setting); | |||
| if (checkTypeFlag || this.setting.check.chkStyle === consts.radio.STYLE) view.checkNodeRelation(this.setting, node); | |||
| view.setChkClass(this.setting, checkObj, node); | |||
| view.repairParentChkClassWithSelf(this.setting, node); | |||
| if (callbackFlag) { | |||
| this.setting.treeObj.trigger(consts.event.CHECK, [null, this.setting.treeId, node]); | |||
| } | |||
| } | |||
| } | |||
| zTreeTools.checkAllNodes = function (checked) { | |||
| view.repairAllChk(this.setting, !!checked); | |||
| } | |||
| zTreeTools.getCheckedNodes = function (checked) { | |||
| checked = (checked !== false); | |||
| var children = data.nodeChildren(setting, data.getRoot(this.setting)); | |||
| return data.getTreeCheckedNodes(this.setting, children, checked); | |||
| } | |||
| zTreeTools.getChangeCheckedNodes = function () { | |||
| var children = data.nodeChildren(setting, data.getRoot(this.setting)); | |||
| return data.getTreeChangeCheckedNodes(this.setting, children); | |||
| } | |||
| zTreeTools.setChkDisabled = function (node, disabled, inheritParent, inheritChildren) { | |||
| disabled = !!disabled; | |||
| inheritParent = !!inheritParent; | |||
| inheritChildren = !!inheritChildren; | |||
| view.repairSonChkDisabled(this.setting, node, disabled, inheritChildren); | |||
| view.repairParentChkDisabled(this.setting, node.getParentNode(), disabled, inheritParent); | |||
| } | |||
| var _updateNode = zTreeTools.updateNode; | |||
| zTreeTools.updateNode = function (node, checkTypeFlag) { | |||
| if (_updateNode) _updateNode.apply(zTreeTools, arguments); | |||
| if (!node || !this.setting.check.enable) return; | |||
| var nObj = $$(node, this.setting); | |||
| if (nObj.get(0) && tools.uCanDo(this.setting)) { | |||
| var checkObj = $$(node, consts.id.CHECK, this.setting); | |||
| if (checkTypeFlag == true || this.setting.check.chkStyle === consts.radio.STYLE) view.checkNodeRelation(this.setting, node); | |||
| view.setChkClass(this.setting, checkObj, node); | |||
| view.repairParentChkClassWithSelf(this.setting, node); | |||
| } | |||
| } | |||
| }, | |||
| //method of operate data | |||
| _data = { | |||
| getRadioCheckedList: function (setting) { | |||
| var checkedList = data.getRoot(setting).radioCheckedList; | |||
| for (var i = 0, j = checkedList.length; i < j; i++) { | |||
| if (!data.getNodeCache(setting, checkedList[i].tId)) { | |||
| checkedList.splice(i, 1); | |||
| i--; | |||
| j--; | |||
| } | |||
| } | |||
| return checkedList; | |||
| }, | |||
| getCheckStatus: function (setting, node) { | |||
| if (!setting.check.enable || node.nocheck || node.chkDisabled) return null; | |||
| var checked = data.nodeChecked(setting, node), | |||
| r = { | |||
| checked: checked, | |||
| half: node.halfCheck ? node.halfCheck : (setting.check.chkStyle == consts.radio.STYLE ? (node.check_Child_State === 2) : (checked ? (node.check_Child_State > -1 && node.check_Child_State < 2) : (node.check_Child_State > 0))) | |||
| }; | |||
| return r; | |||
| }, | |||
| getTreeCheckedNodes: function (setting, nodes, checked, results) { | |||
| if (!nodes) return []; | |||
| var onlyOne = (checked && setting.check.chkStyle == consts.radio.STYLE && setting.check.radioType == consts.radio.TYPE_ALL); | |||
| results = !results ? [] : results; | |||
| for (var i = 0, l = nodes.length; i < l; i++) { | |||
| var node = nodes[i]; | |||
| var children = data.nodeChildren(setting, node); | |||
| var nodeChecked = data.nodeChecked(setting, node); | |||
| if (node.nocheck !== true && node.chkDisabled !== true && nodeChecked == checked) { | |||
| results.push(node); | |||
| if (onlyOne) { | |||
| break; | |||
| } | |||
| } | |||
| data.getTreeCheckedNodes(setting, children, checked, results); | |||
| if (onlyOne && results.length > 0) { | |||
| break; | |||
| } | |||
| } | |||
| return results; | |||
| }, | |||
| getTreeChangeCheckedNodes: function (setting, nodes, results) { | |||
| if (!nodes) return []; | |||
| results = !results ? [] : results; | |||
| for (var i = 0, l = nodes.length; i < l; i++) { | |||
| var node = nodes[i]; | |||
| var children = data.nodeChildren(setting, node); | |||
| var nodeChecked = data.nodeChecked(setting, node); | |||
| if (node.nocheck !== true && node.chkDisabled !== true && nodeChecked != node.checkedOld) { | |||
| results.push(node); | |||
| } | |||
| data.getTreeChangeCheckedNodes(setting, children, results); | |||
| } | |||
| return results; | |||
| }, | |||
| makeChkFlag: function (setting, node) { | |||
| if (!node) return; | |||
| var chkFlag = -1; | |||
| var children = data.nodeChildren(setting, node); | |||
| if (children) { | |||
| for (var i = 0, l = children.length; i < l; i++) { | |||
| var cNode = children[i]; | |||
| var nodeChecked = data.nodeChecked(setting, cNode); | |||
| var tmp = -1; | |||
| if (setting.check.chkStyle == consts.radio.STYLE) { | |||
| if (cNode.nocheck === true || cNode.chkDisabled === true) { | |||
| tmp = cNode.check_Child_State; | |||
| } else if (cNode.halfCheck === true) { | |||
| tmp = 2; | |||
| } else if (nodeChecked) { | |||
| tmp = 2; | |||
| } else { | |||
| tmp = cNode.check_Child_State > 0 ? 2 : 0; | |||
| } | |||
| if (tmp == 2) { | |||
| chkFlag = 2; | |||
| break; | |||
| } else if (tmp == 0) { | |||
| chkFlag = 0; | |||
| } | |||
| } else if (setting.check.chkStyle == consts.checkbox.STYLE) { | |||
| if (cNode.nocheck === true || cNode.chkDisabled === true) { | |||
| tmp = cNode.check_Child_State; | |||
| } else if (cNode.halfCheck === true) { | |||
| tmp = 1; | |||
| } else if (nodeChecked) { | |||
| tmp = (cNode.check_Child_State === -1 || cNode.check_Child_State === 2) ? 2 : 1; | |||
| } else { | |||
| tmp = (cNode.check_Child_State > 0) ? 1 : 0; | |||
| } | |||
| if (tmp === 1) { | |||
| chkFlag = 1; | |||
| break; | |||
| } else if (tmp === 2 && chkFlag > -1 && i > 0 && tmp !== chkFlag) { | |||
| chkFlag = 1; | |||
| break; | |||
| } else if (chkFlag === 2 && tmp > -1 && tmp < 2) { | |||
| chkFlag = 1; | |||
| break; | |||
| } else if (tmp > -1) { | |||
| chkFlag = tmp; | |||
| } | |||
| } | |||
| } | |||
| } | |||
| node.check_Child_State = chkFlag; | |||
| } | |||
| }, | |||
| //method of event proxy | |||
| _event = {}, | |||
| //method of event handler | |||
| _handler = { | |||
| onCheckNode: function (event, node) { | |||
| if (node.chkDisabled === true) return false; | |||
| var setting = data.getSetting(event.data.treeId); | |||
| if (tools.apply(setting.callback.beforeCheck, [setting.treeId, node], true) == false) return true; | |||
| var nodeChecked = data.nodeChecked(setting, node); | |||
| data.nodeChecked(setting, node, !nodeChecked); | |||
| view.checkNodeRelation(setting, node); | |||
| var checkObj = $$(node, consts.id.CHECK, setting); | |||
| view.setChkClass(setting, checkObj, node); | |||
| view.repairParentChkClassWithSelf(setting, node); | |||
| setting.treeObj.trigger(consts.event.CHECK, [event, setting.treeId, node]); | |||
| return true; | |||
| }, | |||
| onMouseoverCheck: function (event, node) { | |||
| if (node.chkDisabled === true) return false; | |||
| var setting = data.getSetting(event.data.treeId), | |||
| checkObj = $$(node, consts.id.CHECK, setting); | |||
| node.check_Focus = true; | |||
| view.setChkClass(setting, checkObj, node); | |||
| return true; | |||
| }, | |||
| onMouseoutCheck: function (event, node) { | |||
| if (node.chkDisabled === true) return false; | |||
| var setting = data.getSetting(event.data.treeId), | |||
| checkObj = $$(node, consts.id.CHECK, setting); | |||
| node.check_Focus = false; | |||
| view.setChkClass(setting, checkObj, node); | |||
| return true; | |||
| } | |||
| }, | |||
| //method of tools for zTree | |||
| _tools = {}, | |||
| //method of operate ztree dom | |||
| _view = { | |||
| checkNodeRelation: function (setting, node) { | |||
| var pNode, i, l, | |||
| r = consts.radio; | |||
| var nodeChecked = data.nodeChecked(setting, node); | |||
| if (setting.check.chkStyle == r.STYLE) { | |||
| var checkedList = data.getRadioCheckedList(setting); | |||
| if (nodeChecked) { | |||
| if (setting.check.radioType == r.TYPE_ALL) { | |||
| for (i = checkedList.length - 1; i >= 0; i--) { | |||
| pNode = checkedList[i]; | |||
| var pNodeChecked = data.nodeChecked(setting, pNode); | |||
| if (pNodeChecked && pNode != node) { | |||
| data.nodeChecked(setting, pNode, false); | |||
| checkedList.splice(i, 1); | |||
| view.setChkClass(setting, $$(pNode, consts.id.CHECK, setting), pNode); | |||
| if (pNode.parentTId != node.parentTId) { | |||
| view.repairParentChkClassWithSelf(setting, pNode); | |||
| } | |||
| } | |||
| } | |||
| checkedList.push(node); | |||
| } else { | |||
| var parentNode = (node.parentTId) ? node.getParentNode() : data.getRoot(setting); | |||
| var children = data.nodeChildren(setting, parentNode); | |||
| for (i = 0, l = children.length; i < l; i++) { | |||
| pNode = children[i]; | |||
| var pNodeChecked = data.nodeChecked(setting, pNode); | |||
| if (pNodeChecked && pNode != node) { | |||
| data.nodeChecked(setting, pNode, false); | |||
| view.setChkClass(setting, $$(pNode, consts.id.CHECK, setting), pNode); | |||
| } | |||
| } | |||
| } | |||
| } else if (setting.check.radioType == r.TYPE_ALL) { | |||
| for (i = 0, l = checkedList.length; i < l; i++) { | |||
| if (node == checkedList[i]) { | |||
| checkedList.splice(i, 1); | |||
| break; | |||
| } | |||
| } | |||
| } | |||
| } else { | |||
| var children = data.nodeChildren(setting, node); | |||
| if (nodeChecked && (!children || children.length == 0 || setting.check.chkboxType.Y.indexOf("s") > -1)) { | |||
| view.setSonNodeCheckBox(setting, node, true); | |||
| } | |||
| if (!nodeChecked && (!children || children.length == 0 || setting.check.chkboxType.N.indexOf("s") > -1)) { | |||
| view.setSonNodeCheckBox(setting, node, false); | |||
| } | |||
| if (nodeChecked && setting.check.chkboxType.Y.indexOf("p") > -1) { | |||
| view.setParentNodeCheckBox(setting, node, true); | |||
| } | |||
| if (!nodeChecked && setting.check.chkboxType.N.indexOf("p") > -1) { | |||
| view.setParentNodeCheckBox(setting, node, false); | |||
| } | |||
| } | |||
| }, | |||
| makeChkClass: function (setting, node) { | |||
| var c = consts.checkbox, r = consts.radio, | |||
| fullStyle = ""; | |||
| var nodeChecked = data.nodeChecked(setting, node); | |||
| if (node.chkDisabled === true) { | |||
| fullStyle = c.DISABLED; | |||
| } else if (node.halfCheck) { | |||
| fullStyle = c.PART; | |||
| } else if (setting.check.chkStyle == r.STYLE) { | |||
| fullStyle = (node.check_Child_State < 1) ? c.FULL : c.PART; | |||
| } else { | |||
| fullStyle = nodeChecked ? ((node.check_Child_State === 2 || node.check_Child_State === -1) ? c.FULL : c.PART) : ((node.check_Child_State < 1) ? c.FULL : c.PART); | |||
| } | |||
| var chkName = setting.check.chkStyle + "_" + (nodeChecked ? c.TRUE : c.FALSE) + "_" + fullStyle; | |||
| chkName = (node.check_Focus && node.chkDisabled !== true) ? chkName + "_" + c.FOCUS : chkName; | |||
| return consts.className.BUTTON + " " + c.DEFAULT + " " + chkName; | |||
| }, | |||
| repairAllChk: function (setting, checked) { | |||
| if (setting.check.enable && setting.check.chkStyle === consts.checkbox.STYLE) { | |||
| var root = data.getRoot(setting); | |||
| var children = data.nodeChildren(setting, root); | |||
| for (var i = 0, l = children.length; i < l; i++) { | |||
| var node = children[i]; | |||
| if (node.nocheck !== true && node.chkDisabled !== true) { | |||
| data.nodeChecked(setting, node, checked); | |||
| } | |||
| view.setSonNodeCheckBox(setting, node, checked); | |||
| } | |||
| } | |||
| }, | |||
| repairChkClass: function (setting, node) { | |||
| if (!node) return; | |||
| data.makeChkFlag(setting, node); | |||
| if (node.nocheck !== true) { | |||
| var checkObj = $$(node, consts.id.CHECK, setting); | |||
| view.setChkClass(setting, checkObj, node); | |||
| } | |||
| }, | |||
| repairParentChkClass: function (setting, node) { | |||
| if (!node || !node.parentTId) return; | |||
| var pNode = node.getParentNode(); | |||
| view.repairChkClass(setting, pNode); | |||
| view.repairParentChkClass(setting, pNode); | |||
| }, | |||
| repairParentChkClassWithSelf: function (setting, node) { | |||
| if (!node) return; | |||
| var children = data.nodeChildren(setting, node); | |||
| if (children && children.length > 0) { | |||
| view.repairParentChkClass(setting, children[0]); | |||
| } else { | |||
| view.repairParentChkClass(setting, node); | |||
| } | |||
| }, | |||
| repairSonChkDisabled: function (setting, node, chkDisabled, inherit) { | |||
| if (!node) return; | |||
| if (node.chkDisabled != chkDisabled) { | |||
| node.chkDisabled = chkDisabled; | |||
| } | |||
| view.repairChkClass(setting, node); | |||
| var children = data.nodeChildren(setting, node); | |||
| if (children && inherit) { | |||
| for (var i = 0, l = children.length; i < l; i++) { | |||
| var sNode = children[i]; | |||
| view.repairSonChkDisabled(setting, sNode, chkDisabled, inherit); | |||
| } | |||
| } | |||
| }, | |||
| repairParentChkDisabled: function (setting, node, chkDisabled, inherit) { | |||
| if (!node) return; | |||
| if (node.chkDisabled != chkDisabled && inherit) { | |||
| node.chkDisabled = chkDisabled; | |||
| } | |||
| view.repairChkClass(setting, node); | |||
| view.repairParentChkDisabled(setting, node.getParentNode(), chkDisabled, inherit); | |||
| }, | |||
| setChkClass: function (setting, obj, node) { | |||
| if (!obj) return; | |||
| if (node.nocheck === true) { | |||
| obj.hide(); | |||
| } else { | |||
| obj.show(); | |||
| } | |||
| obj.attr('class', view.makeChkClass(setting, node)); | |||
| }, | |||
| setParentNodeCheckBox: function (setting, node, value, srcNode) { | |||
| var checkObj = $$(node, consts.id.CHECK, setting); | |||
| if (!srcNode) srcNode = node; | |||
| data.makeChkFlag(setting, node); | |||
| if (node.nocheck !== true && node.chkDisabled !== true) { | |||
| data.nodeChecked(setting, node, value); | |||
| view.setChkClass(setting, checkObj, node); | |||
| if (setting.check.autoCheckTrigger && node != srcNode) { | |||
| setting.treeObj.trigger(consts.event.CHECK, [null, setting.treeId, node]); | |||
| } | |||
| } | |||
| if (node.parentTId) { | |||
| var pSign = true; | |||
| if (!value) { | |||
| var pNodes = data.nodeChildren(setting, node.getParentNode()); | |||
| for (var i = 0, l = pNodes.length; i < l; i++) { | |||
| var pNode = pNodes[i]; | |||
| var nodeChecked = data.nodeChecked(setting, pNode); | |||
| if ((pNode.nocheck !== true && pNode.chkDisabled !== true && nodeChecked) | |||
| || ((pNode.nocheck === true || pNode.chkDisabled === true) && pNode.check_Child_State > 0)) { | |||
| pSign = false; | |||
| break; | |||
| } | |||
| } | |||
| } | |||
| if (pSign) { | |||
| view.setParentNodeCheckBox(setting, node.getParentNode(), value, srcNode); | |||
| } | |||
| } | |||
| }, | |||
| setSonNodeCheckBox: function (setting, node, value, srcNode) { | |||
| if (!node) return; | |||
| var checkObj = $$(node, consts.id.CHECK, setting); | |||
| if (!srcNode) srcNode = node; | |||
| var hasDisable = false; | |||
| var children = data.nodeChildren(setting, node); | |||
| if (children) { | |||
| for (var i = 0, l = children.length; i < l; i++) { | |||
| var sNode = children[i]; | |||
| view.setSonNodeCheckBox(setting, sNode, value, srcNode); | |||
| if (sNode.chkDisabled === true) hasDisable = true; | |||
| } | |||
| } | |||
| if (node != data.getRoot(setting) && node.chkDisabled !== true) { | |||
| if (hasDisable && node.nocheck !== true) { | |||
| data.makeChkFlag(setting, node); | |||
| } | |||
| if (node.nocheck !== true && node.chkDisabled !== true) { | |||
| data.nodeChecked(setting, node, value); | |||
| if (!hasDisable) node.check_Child_State = (children && children.length > 0) ? (value ? 2 : 0) : -1; | |||
| } else { | |||
| node.check_Child_State = -1; | |||
| } | |||
| view.setChkClass(setting, checkObj, node); | |||
| if (setting.check.autoCheckTrigger && node != srcNode && node.nocheck !== true && node.chkDisabled !== true) { | |||
| setting.treeObj.trigger(consts.event.CHECK, [null, setting.treeId, node]); | |||
| } | |||
| } | |||
| } | |||
| }, | |||
| _z = { | |||
| tools: _tools, | |||
| view: _view, | |||
| event: _event, | |||
| data: _data | |||
| }; | |||
| $.extend(true, $.fn.zTree.consts, _consts); | |||
| $.extend(true, $.fn.zTree._z, _z); | |||
| var zt = $.fn.zTree, | |||
| tools = zt._z.tools, | |||
| consts = zt.consts, | |||
| view = zt._z.view, | |||
| data = zt._z.data, | |||
| event = zt._z.event, | |||
| $$ = tools.$; | |||
| data.nodeChecked = function (setting, node, newChecked) { | |||
| if (!node) { | |||
| return false; | |||
| } | |||
| var key = setting.data.key.checked; | |||
| if (typeof newChecked !== 'undefined') { | |||
| if (typeof newChecked === "string") { | |||
| newChecked = tools.eqs(newChecked, "true"); | |||
| } | |||
| newChecked = !!newChecked; | |||
| node[key] = newChecked; | |||
| } else if (typeof node[key] == "string"){ | |||
| node[key] = tools.eqs(node[key], "true"); | |||
| } else { | |||
| node[key] = !!node[key]; | |||
| } | |||
| return node[key]; | |||
| }; | |||
| data.exSetting(_setting); | |||
| data.addInitBind(_bindEvent); | |||
| data.addInitUnBind(_unbindEvent); | |||
| data.addInitCache(_initCache); | |||
| data.addInitNode(_initNode); | |||
| data.addInitProxy(_eventProxy, true); | |||
| data.addInitRoot(_initRoot); | |||
| data.addBeforeA(_beforeA); | |||
| data.addZTreeTools(_zTreeTools); | |||
| var _createNodes = view.createNodes; | |||
| view.createNodes = function (setting, level, nodes, parentNode, index) { | |||
| if (_createNodes) _createNodes.apply(view, arguments); | |||
| if (!nodes) return; | |||
| view.repairParentChkClassWithSelf(setting, parentNode); | |||
| } | |||
| var _removeNode = view.removeNode; | |||
| view.removeNode = function (setting, node) { | |||
| var parentNode = node.getParentNode(); | |||
| if (_removeNode) _removeNode.apply(view, arguments); | |||
| if (!node || !parentNode) return; | |||
| view.repairChkClass(setting, parentNode); | |||
| view.repairParentChkClass(setting, parentNode); | |||
| } | |||
| var _appendNodes = view.appendNodes; | |||
| view.appendNodes = function (setting, level, nodes, parentNode, index, initFlag, openFlag) { | |||
| var html = ""; | |||
| if (_appendNodes) { | |||
| html = _appendNodes.apply(view, arguments); | |||
| } | |||
| if (parentNode) { | |||
| data.makeChkFlag(setting, parentNode); | |||
| } | |||
| return html; | |||
| } | |||
| })(jQuery); | |||
| @@ -0,0 +1,405 @@ | |||
| /* | |||
| * JQuery zTree exHideNodes | |||
| * v3.5.48 | |||
| * http://treejs.cn/ | |||
| * | |||
| * Copyright (c) 2010 Hunter.z | |||
| * | |||
| * Licensed same as jquery - MIT License | |||
| * http://www.opensource.org/licenses/mit-license.php | |||
| * | |||
| * Date: 2020-11-21 | |||
| */ | |||
| (function ($) { | |||
| var _setting = { | |||
| data: { | |||
| key: { | |||
| isHidden: "isHidden" | |||
| } | |||
| } | |||
| }; | |||
| //default init node of exLib | |||
| var _initNode = function (setting, level, n, parentNode, isFirstNode, isLastNode, openFlag) { | |||
| var isHidden = data.isHidden(setting, n); | |||
| data.isHidden(setting, n, isHidden); | |||
| data.initHideForExCheck(setting, n); | |||
| }, | |||
| //add dom for check | |||
| _beforeA = function (setting, node, html) { | |||
| }, | |||
| //update zTreeObj, add method of exLib | |||
| _zTreeTools = function (setting, zTreeTools) { | |||
| zTreeTools.showNodes = function (nodes, options) { | |||
| view.showNodes(setting, nodes, options); | |||
| } | |||
| zTreeTools.showNode = function (node, options) { | |||
| if (!node) { | |||
| return; | |||
| } | |||
| view.showNodes(setting, [node], options); | |||
| } | |||
| zTreeTools.hideNodes = function (nodes, options) { | |||
| view.hideNodes(setting, nodes, options); | |||
| } | |||
| zTreeTools.hideNode = function (node, options) { | |||
| if (!node) { | |||
| return; | |||
| } | |||
| view.hideNodes(setting, [node], options); | |||
| } | |||
| var _checkNode = zTreeTools.checkNode; | |||
| if (_checkNode) { | |||
| zTreeTools.checkNode = function (node, checked, checkTypeFlag, callbackFlag) { | |||
| if (!!node && !!data.isHidden(setting, node)) { | |||
| return; | |||
| } | |||
| _checkNode.apply(zTreeTools, arguments); | |||
| } | |||
| } | |||
| }, | |||
| //method of operate data | |||
| _data = { | |||
| initHideForExCheck: function (setting, n) { | |||
| var isHidden = data.isHidden(setting, n); | |||
| if (isHidden && setting.check && setting.check.enable) { | |||
| if (typeof n._nocheck == "undefined") { | |||
| n._nocheck = !!n.nocheck | |||
| n.nocheck = true; | |||
| } | |||
| n.check_Child_State = -1; | |||
| if (view.repairParentChkClassWithSelf) { | |||
| view.repairParentChkClassWithSelf(setting, n); | |||
| } | |||
| } | |||
| }, | |||
| initShowForExCheck: function (setting, n) { | |||
| var isHidden = data.isHidden(setting, n); | |||
| if (!isHidden && setting.check && setting.check.enable) { | |||
| if (typeof n._nocheck != "undefined") { | |||
| n.nocheck = n._nocheck; | |||
| delete n._nocheck; | |||
| } | |||
| if (view.setChkClass) { | |||
| var checkObj = $$(n, consts.id.CHECK, setting); | |||
| view.setChkClass(setting, checkObj, n); | |||
| } | |||
| if (view.repairParentChkClassWithSelf) { | |||
| view.repairParentChkClassWithSelf(setting, n); | |||
| } | |||
| } | |||
| } | |||
| }, | |||
| //method of operate ztree dom | |||
| _view = { | |||
| clearOldFirstNode: function (setting, node) { | |||
| var n = node.getNextNode(); | |||
| while (!!n) { | |||
| if (n.isFirstNode) { | |||
| n.isFirstNode = false; | |||
| view.setNodeLineIcos(setting, n); | |||
| break; | |||
| } | |||
| if (n.isLastNode) { | |||
| break; | |||
| } | |||
| n = n.getNextNode(); | |||
| } | |||
| }, | |||
| clearOldLastNode: function (setting, node, openFlag) { | |||
| var n = node.getPreNode(); | |||
| while (!!n) { | |||
| if (n.isLastNode) { | |||
| n.isLastNode = false; | |||
| if (openFlag) { | |||
| view.setNodeLineIcos(setting, n); | |||
| } | |||
| break; | |||
| } | |||
| if (n.isFirstNode) { | |||
| break; | |||
| } | |||
| n = n.getPreNode(); | |||
| } | |||
| }, | |||
| makeDOMNodeMainBefore: function (html, setting, node) { | |||
| var isHidden = data.isHidden(setting, node); | |||
| html.push("<li ", (isHidden ? "style='display:none;' " : ""), "id='", node.tId, "' class='", consts.className.LEVEL, node.level, "' tabindex='0' hidefocus='true' treenode>"); | |||
| }, | |||
| showNode: function (setting, node, options) { | |||
| data.isHidden(setting, node, false); | |||
| data.initShowForExCheck(setting, node); | |||
| $$(node, setting).show(); | |||
| }, | |||
| showNodes: function (setting, nodes, options) { | |||
| if (!nodes || nodes.length == 0) { | |||
| return; | |||
| } | |||
| var pList = {}, i, j; | |||
| for (i = 0, j = nodes.length; i < j; i++) { | |||
| var n = nodes[i]; | |||
| if (!pList[n.parentTId]) { | |||
| var pn = n.getParentNode(); | |||
| pList[n.parentTId] = (pn === null) ? data.getRoot(setting) : n.getParentNode(); | |||
| } | |||
| view.showNode(setting, n, options); | |||
| } | |||
| for (var tId in pList) { | |||
| var children = data.nodeChildren(setting, pList[tId]); | |||
| view.setFirstNodeForShow(setting, children); | |||
| view.setLastNodeForShow(setting, children); | |||
| } | |||
| }, | |||
| hideNode: function (setting, node, options) { | |||
| data.isHidden(setting, node, true); | |||
| node.isFirstNode = false; | |||
| node.isLastNode = false; | |||
| data.initHideForExCheck(setting, node); | |||
| view.cancelPreSelectedNode(setting, node); | |||
| $$(node, setting).hide(); | |||
| }, | |||
| hideNodes: function (setting, nodes, options) { | |||
| if (!nodes || nodes.length == 0) { | |||
| return; | |||
| } | |||
| var pList = {}, i, j; | |||
| for (i = 0, j = nodes.length; i < j; i++) { | |||
| var n = nodes[i]; | |||
| if ((n.isFirstNode || n.isLastNode) && !pList[n.parentTId]) { | |||
| var pn = n.getParentNode(); | |||
| pList[n.parentTId] = (pn === null) ? data.getRoot(setting) : n.getParentNode(); | |||
| } | |||
| view.hideNode(setting, n, options); | |||
| } | |||
| for (var tId in pList) { | |||
| var children = data.nodeChildren(setting, pList[tId]); | |||
| view.setFirstNodeForHide(setting, children); | |||
| view.setLastNodeForHide(setting, children); | |||
| } | |||
| }, | |||
| setFirstNode: function (setting, parentNode) { | |||
| var children = data.nodeChildren(setting, parentNode); | |||
| var isHidden = data.isHidden(setting, children[0], false); | |||
| if (children.length > 0 && !isHidden) { | |||
| children[0].isFirstNode = true; | |||
| } else if (children.length > 0) { | |||
| view.setFirstNodeForHide(setting, children); | |||
| } | |||
| }, | |||
| setLastNode: function (setting, parentNode) { | |||
| var children = data.nodeChildren(setting, parentNode); | |||
| var isHidden = data.isHidden(setting, children[0]); | |||
| if (children.length > 0 && !isHidden) { | |||
| children[children.length - 1].isLastNode = true; | |||
| } else if (children.length > 0) { | |||
| view.setLastNodeForHide(setting, children); | |||
| } | |||
| }, | |||
| setFirstNodeForHide: function (setting, nodes) { | |||
| var n, i, j; | |||
| for (i = 0, j = nodes.length; i < j; i++) { | |||
| n = nodes[i]; | |||
| if (n.isFirstNode) { | |||
| break; | |||
| } | |||
| var isHidden = data.isHidden(setting, n); | |||
| if (!isHidden && !n.isFirstNode) { | |||
| n.isFirstNode = true; | |||
| view.setNodeLineIcos(setting, n); | |||
| break; | |||
| } else { | |||
| n = null; | |||
| } | |||
| } | |||
| return n; | |||
| }, | |||
| setFirstNodeForShow: function (setting, nodes) { | |||
| var n, i, j, first, old; | |||
| for (i = 0, j = nodes.length; i < j; i++) { | |||
| n = nodes[i]; | |||
| var isHidden = data.isHidden(setting, n); | |||
| if (!first && !isHidden && n.isFirstNode) { | |||
| first = n; | |||
| break; | |||
| } else if (!first && !isHidden && !n.isFirstNode) { | |||
| n.isFirstNode = true; | |||
| first = n; | |||
| view.setNodeLineIcos(setting, n); | |||
| } else if (first && n.isFirstNode) { | |||
| n.isFirstNode = false; | |||
| old = n; | |||
| view.setNodeLineIcos(setting, n); | |||
| break; | |||
| } else { | |||
| n = null; | |||
| } | |||
| } | |||
| return {"new": first, "old": old}; | |||
| }, | |||
| setLastNodeForHide: function (setting, nodes) { | |||
| var n, i; | |||
| for (i = nodes.length - 1; i >= 0; i--) { | |||
| n = nodes[i]; | |||
| if (n.isLastNode) { | |||
| break; | |||
| } | |||
| var isHidden = data.isHidden(setting, n); | |||
| if (!isHidden && !n.isLastNode) { | |||
| n.isLastNode = true; | |||
| view.setNodeLineIcos(setting, n); | |||
| break; | |||
| } else { | |||
| n = null; | |||
| } | |||
| } | |||
| return n; | |||
| }, | |||
| setLastNodeForShow: function (setting, nodes) { | |||
| var n, i, j, last, old; | |||
| for (i = nodes.length - 1; i >= 0; i--) { | |||
| n = nodes[i]; | |||
| var isHidden = data.isHidden(setting, n); | |||
| if (!last && !isHidden && n.isLastNode) { | |||
| last = n; | |||
| break; | |||
| } else if (!last && !isHidden && !n.isLastNode) { | |||
| n.isLastNode = true; | |||
| last = n; | |||
| view.setNodeLineIcos(setting, n); | |||
| } else if (last && n.isLastNode) { | |||
| n.isLastNode = false; | |||
| old = n; | |||
| view.setNodeLineIcos(setting, n); | |||
| break; | |||
| } else { | |||
| n = null; | |||
| } | |||
| } | |||
| return {"new": last, "old": old}; | |||
| } | |||
| }, | |||
| _z = { | |||
| view: _view, | |||
| data: _data | |||
| }; | |||
| $.extend(true, $.fn.zTree._z, _z); | |||
| var zt = $.fn.zTree, | |||
| tools = zt._z.tools, | |||
| consts = zt.consts, | |||
| view = zt._z.view, | |||
| data = zt._z.data, | |||
| event = zt._z.event, | |||
| $$ = tools.$; | |||
| data.isHidden = function (setting, node, newIsHidden) { | |||
| if (!node) { | |||
| return false; | |||
| } | |||
| var key = setting.data.key.isHidden; | |||
| if (typeof newIsHidden !== 'undefined') { | |||
| if (typeof newIsHidden === "string") { | |||
| newIsHidden = tools.eqs(newIsHidden, "true"); | |||
| } | |||
| newIsHidden = !!newIsHidden; | |||
| node[key] = newIsHidden; | |||
| } else if (typeof node[key] == "string"){ | |||
| node[key] = tools.eqs(node[key], "true"); | |||
| } else { | |||
| node[key] = !!node[key]; | |||
| } | |||
| return node[key]; | |||
| }; | |||
| data.exSetting(_setting); | |||
| data.addInitNode(_initNode); | |||
| data.addBeforeA(_beforeA); | |||
| data.addZTreeTools(_zTreeTools); | |||
| // Override method in core | |||
| var _dInitNode = data.initNode; | |||
| data.initNode = function (setting, level, node, parentNode, isFirstNode, isLastNode, openFlag) { | |||
| var tmpPNode = (parentNode) ? parentNode : data.getRoot(setting), | |||
| children = tmpPNode[setting.data.key.children]; | |||
| data.tmpHideFirstNode = view.setFirstNodeForHide(setting, children); | |||
| data.tmpHideLastNode = view.setLastNodeForHide(setting, children); | |||
| if (openFlag) { | |||
| view.setNodeLineIcos(setting, data.tmpHideFirstNode); | |||
| view.setNodeLineIcos(setting, data.tmpHideLastNode); | |||
| } | |||
| isFirstNode = (data.tmpHideFirstNode === node); | |||
| isLastNode = (data.tmpHideLastNode === node); | |||
| if (_dInitNode) _dInitNode.apply(data, arguments); | |||
| if (openFlag && isLastNode) { | |||
| view.clearOldLastNode(setting, node, openFlag); | |||
| } | |||
| }; | |||
| var _makeChkFlag = data.makeChkFlag; | |||
| if (!!_makeChkFlag) { | |||
| data.makeChkFlag = function (setting, node) { | |||
| if (!!node && !!data.isHidden(setting, node)) { | |||
| return; | |||
| } | |||
| _makeChkFlag.apply(data, arguments); | |||
| } | |||
| } | |||
| var _getTreeCheckedNodes = data.getTreeCheckedNodes; | |||
| if (!!_getTreeCheckedNodes) { | |||
| data.getTreeCheckedNodes = function (setting, nodes, checked, results) { | |||
| if (!!nodes && nodes.length > 0) { | |||
| var p = nodes[0].getParentNode(); | |||
| if (!!p && !!data.isHidden(setting, p)) { | |||
| return []; | |||
| } | |||
| } | |||
| return _getTreeCheckedNodes.apply(data, arguments); | |||
| } | |||
| } | |||
| var _getTreeChangeCheckedNodes = data.getTreeChangeCheckedNodes; | |||
| if (!!_getTreeChangeCheckedNodes) { | |||
| data.getTreeChangeCheckedNodes = function (setting, nodes, results) { | |||
| if (!!nodes && nodes.length > 0) { | |||
| var p = nodes[0].getParentNode(); | |||
| if (!!p && !!data.isHidden(setting, p)) { | |||
| return []; | |||
| } | |||
| } | |||
| return _getTreeChangeCheckedNodes.apply(data, arguments); | |||
| } | |||
| } | |||
| var _expandCollapseSonNode = view.expandCollapseSonNode; | |||
| if (!!_expandCollapseSonNode) { | |||
| view.expandCollapseSonNode = function (setting, node, expandFlag, animateFlag, callback) { | |||
| if (!!node && !!data.isHidden(setting, node)) { | |||
| return; | |||
| } | |||
| _expandCollapseSonNode.apply(view, arguments); | |||
| } | |||
| } | |||
| var _setSonNodeCheckBox = view.setSonNodeCheckBox; | |||
| if (!!_setSonNodeCheckBox) { | |||
| view.setSonNodeCheckBox = function (setting, node, value, srcNode) { | |||
| if (!!node && !!data.isHidden(setting, node)) { | |||
| return; | |||
| } | |||
| _setSonNodeCheckBox.apply(view, arguments); | |||
| } | |||
| } | |||
| var _repairParentChkClassWithSelf = view.repairParentChkClassWithSelf; | |||
| if (!!_repairParentChkClassWithSelf) { | |||
| view.repairParentChkClassWithSelf = function (setting, node) { | |||
| if (!!node && !!data.isHidden(setting, node)) { | |||
| return; | |||
| } | |||
| _repairParentChkClassWithSelf.apply(view, arguments); | |||
| } | |||
| } | |||
| })(jQuery); | |||
| @@ -5,6 +5,11 @@ | |||
| color: rgba(0, 0, 0, .87) !important | |||
| } | |||
| </style> | |||
| <link rel="stylesheet" href="/self/ztree/css/demo.css" type="text/css"> | |||
| <link rel="stylesheet" href="/self/ztree/css/zTreeStyle/zTreeStyle.css" type="text/css"> | |||
| <script type="text/javascript" src="/self/ztree/js/jquery.ztree.core.js"></script> | |||
| <script type="text/javascript" src="/self/ztree/js/jquery.ztree.excheck.js"></script> | |||
| <!-- 弹窗 --> | |||
| <div id="mask"> | |||
| <div id="loadingPage"> | |||
| @@ -160,28 +165,7 @@ | |||
| <div class="unite min_title inline field required"> | |||
| <label>模型文件</label> | |||
| <div class="ui dropdown multiple normal selection search width70" id="choice_file"> | |||
| <input type="hidden" id="ModelFile" name="ModelFile" required> | |||
| <div class="default text">选择模型文件</div> | |||
| <i class="dropdown icon"></i> | |||
| <div class="menu" id="model-file"> | |||
| <div class="item" data-value="test.pth"><input type="checkbox" name="size" value="large">test.pth</div> | |||
| <div class="item" data-value="0001"> <input type="checkbox" name="size" value="large">0001</div> | |||
| <div class="item" data-value="0002_2.pth"> | |||
| <span> </span> <input type="checkbox" name="size" value="large">0002_2.pth | |||
| </div> | |||
| <div class="item" data-value="0001_1.pth"> | |||
| <span> </span> <input type="checkbox" name="size" value="large">0001_1.pth | |||
| </div> | |||
| <div class="item" data-value="0003_1.pth"> | |||
| <span> </span> <input type="checkbox" name="size" value="large">0003_1.pth | |||
| </div> | |||
| </div> | |||
| <div class="item" data-value="test2.pth"><input type="checkbox" name="size" value="large">test2.pth</div> | |||
| </div> | |||
| </div> | |||
| <input style="width: 83%;" id="modelfile" name="modelfile" > | |||
| </div> | |||
| <div class="inline field"> | |||