├── .editorconfig
├── .eslintignore
├── .eslintrc.yaml
├── .gitattributes
├── .github
├── CODEOWNERS
├── CONTRIBUTING.md
├── FUNDING.yml
├── ISSUE_TEMPLATE.md
└── workflows
│ ├── codeql.yml
│ └── stale.yml
├── .gitignore
├── .prettierrc
├── .project
├── .travis.yml
├── .vscode
└── launch.json
├── 3rd-party
└── extensions
│ ├── contextmenu
│ ├── contextmenu.html
│ └── js
│ │ └── jquery.fancytree.contextMenu.js
│ └── hotkeys
│ ├── hotkeys.html
│ └── js
│ ├── jquery.fancytree.hotkeys.js
│ └── jquery.hotkeys.js
├── CHANGELOG.md
├── Gruntfile.coffee
├── LICENSE.txt
├── README.md
├── bin
└── jsdoc3-moogle
│ ├── README.md
│ ├── publish.js
│ ├── static
│ ├── fonts
│ │ ├── OpenSans-Bold-webfont.eot
│ │ ├── OpenSans-Bold-webfont.svg
│ │ ├── OpenSans-Bold-webfont.woff
│ │ ├── OpenSans-BoldItalic-webfont.eot
│ │ ├── OpenSans-BoldItalic-webfont.svg
│ │ ├── OpenSans-BoldItalic-webfont.woff
│ │ ├── OpenSans-Italic-webfont.eot
│ │ ├── OpenSans-Italic-webfont.svg
│ │ ├── OpenSans-Italic-webfont.woff
│ │ ├── OpenSans-Light-webfont.eot
│ │ ├── OpenSans-Light-webfont.svg
│ │ ├── OpenSans-Light-webfont.woff
│ │ ├── OpenSans-LightItalic-webfont.eot
│ │ ├── OpenSans-LightItalic-webfont.svg
│ │ ├── OpenSans-LightItalic-webfont.woff
│ │ ├── OpenSans-Regular-webfont.eot
│ │ ├── OpenSans-Regular-webfont.svg
│ │ └── OpenSans-Regular-webfont.woff
│ ├── scripts
│ │ ├── linenumber.js
│ │ └── prettify
│ │ │ ├── Apache-License-2.0.txt
│ │ │ ├── lang-css.js
│ │ │ └── prettify.js
│ └── styles
│ │ ├── jsdoc-default.css
│ │ ├── prettify-jsdoc.css
│ │ └── prettify-tomorrow.css
│ └── tmpl
│ ├── augments.tmpl
│ ├── container.tmpl
│ ├── details.tmpl
│ ├── example.tmpl
│ ├── examples.tmpl
│ ├── exceptions.tmpl
│ ├── layout.tmpl
│ ├── mainpage.tmpl
│ ├── members.tmpl
│ ├── method.tmpl
│ ├── methods_overview.tmpl
│ ├── params.tmpl
│ ├── properties.tmpl
│ ├── returns.tmpl
│ ├── source.tmpl
│ ├── tutorial.tmpl
│ └── type.tmpl
├── bower.json
├── demo
├── ajax-empty.json
├── ajax-parse-error.json
├── ajax-pws-error.json
├── ajax-pws-ok.json
├── ajax-sub.xml
├── ajax-sub2.json
├── ajax-tree-decide.json
├── ajax-tree-dom.json
├── ajax-tree-fs.json
├── ajax-tree-instruments.json
├── ajax-tree-local.json
├── ajax-tree-mass-data.json
├── ajax-tree-plain.json
├── ajax-tree-products.json
├── ajax-tree-products2.json
├── ajax-tree-taxonomy.json
├── ajax-tree.json
├── ajax-tree.xml
├── fancytree-server.js
├── index.html
├── nav.html
├── nav_bg.png
├── sample-3rd-confirm.html
├── sample-3rd-contextmenu-abs.html
├── sample-3rd-grid-scrollbar.html
├── sample-3rd-jQuery-contextMenu.html
├── sample-3rd-ui-contextmenu.html
├── sample-accordion.html
├── sample-api.html
├── sample-aria-treegrid-old.html
├── sample-aria-treegrid.html
├── sample-aria.html
├── sample-configurator.html
├── sample-default.html
├── sample-events.html
├── sample-ext-childcounter.html
├── sample-ext-clones.html
├── sample-ext-columnview.html
├── sample-ext-dnd.html
├── sample-ext-dnd5.html
├── sample-ext-edit.html
├── sample-ext-filter.html
├── sample-ext-fixed.html
├── sample-ext-glyph-awesome3.html
├── sample-ext-glyph-awesome4.html
├── sample-ext-glyph-awesome5.html
├── sample-ext-glyph-bootstrap3.html
├── sample-ext-glyph-material.html
├── sample-ext-glyph-svg.html
├── sample-ext-grid.html
├── sample-ext-logger.html
├── sample-ext-menu-deprecated.html
├── sample-ext-menu.html
├── sample-ext-multi.html
├── sample-ext-persist.html
├── sample-ext-table.html
├── sample-ext-themeroller.html
├── sample-ext-wide.html
├── sample-form.html
├── sample-iframe-1.html
├── sample-iframe.html
├── sample-json.html
├── sample-keyboard.html
├── sample-load-errors.html
├── sample-load-errors2.html
├── sample-load-xml.html
├── sample-multi-dnd.html
├── sample-multi-dnd5.html
├── sample-multi-ext.html
├── sample-multiline.html
├── sample-playground.html
├── sample-rtl.html
├── sample-scroll.html
├── sample-select.html
├── sample-source.html
├── sample-theming.html
├── sample-tooltip.html
├── sample-types.html
├── sample-webservice.html
├── sample-xxl.html
├── sample.css
├── sample.js
├── skin-custom
│ ├── accept.png
│ ├── arrow_right.png
│ ├── bug.png
│ ├── cancel.png
│ ├── custom.css
│ ├── customDoc1.gif
│ ├── customDoc2.gif
│ ├── customFolder1.gif
│ ├── doc_with_children.gif
│ ├── emoticon_smile.png
│ ├── emoticon_unhappy.png
│ ├── error.png
│ ├── exclamation.png
│ ├── eye.png
│ ├── flag_red.png
│ ├── folder_bug.png
│ ├── folder_docs.gif
│ ├── folder_images.gif
│ ├── folder_page.gif
│ ├── help.png
│ ├── key.png
│ ├── new.png
│ ├── note.png
│ ├── page_white_lightning.png
│ └── page_white_star.png
├── taxonomy-browser
│ ├── LICENSE.txt
│ ├── README.md
│ ├── TODO.md
│ ├── busy_bg_eee.png
│ ├── busy_bg_fff.png
│ ├── details.tmpl.html
│ ├── details_itis.tmpl
│ ├── header.tmpl.html
│ ├── index.html
│ ├── index_itis.html
│ ├── info-pane.tmpl.html
│ ├── media.tmpl.html
│ ├── style.css
│ ├── taxonomy-browser-itis.js
│ ├── taxonomy-browser.js
│ ├── test_gbif_ws.html
│ └── test_itis_ws.html
├── top.html
└── welcome.html
├── dist
├── LICENSE.txt
├── jquery.fancytree-all-deps.js
├── jquery.fancytree-all-deps.min.js
├── jquery.fancytree-all-deps.min.js.map
├── jquery.fancytree-all.js
├── jquery.fancytree-all.min.js
├── jquery.fancytree.min.js
├── modules
│ ├── jquery.fancytree.ariagrid.js
│ ├── jquery.fancytree.childcounter.js
│ ├── jquery.fancytree.clones.js
│ ├── jquery.fancytree.columnview.js
│ ├── jquery.fancytree.dnd.js
│ ├── jquery.fancytree.dnd5.js
│ ├── jquery.fancytree.edit.js
│ ├── jquery.fancytree.filter.js
│ ├── jquery.fancytree.fixed.js
│ ├── jquery.fancytree.glyph.js
│ ├── jquery.fancytree.grid.js
│ ├── jquery.fancytree.gridnav.js
│ ├── jquery.fancytree.js
│ ├── jquery.fancytree.logger.js
│ ├── jquery.fancytree.menu.js
│ ├── jquery.fancytree.multi.js
│ ├── jquery.fancytree.persist.js
│ ├── jquery.fancytree.table.js
│ ├── jquery.fancytree.themeroller.js
│ ├── jquery.fancytree.ui-deps.js
│ └── jquery.fancytree.wide.js
├── skin-awesome
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-bootstrap-n
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-bootstrap
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-common.less
├── skin-custom-1
│ └── README.md
├── skin-lion
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-material
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-themeroller
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-vista
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-win7
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-win8-n
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-win8-xxl
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-win8
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
└── skin-xp
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── ui.fancytree.min.css
│ ├── vline-rtl.gif
│ └── vline.gif
├── doc
├── README.md
├── annotated-src
│ └── .folder
├── fancytree_benchmarks.txt
├── iconInfo_32x32.png
├── icons_layout.ods
├── index.html
├── jsdoc.conf.json
├── jsdoctest.js
├── logo.png
├── spec
│ └── SpecFocus.md
├── teaser.pdn
├── teaser1.png
├── teaser2.png
└── tutorials
│ └── howto-events.md
├── favicon.ico
├── index.html
├── jsconfig.json
├── lib
├── Super-Theme-Switcher
│ ├── README.md
│ ├── images
│ │ ├── buttonbg.png
│ │ ├── icon_color_arrow.gif
│ │ ├── menuhoverbg.png
│ │ ├── theme_90_base.png
│ │ ├── theme_90_black_matte.png
│ │ ├── theme_90_black_tie.png
│ │ ├── theme_90_blitzer.png
│ │ ├── theme_90_cupertino.png
│ │ ├── theme_90_dark_hive.png
│ │ ├── theme_90_dot_luv.png
│ │ ├── theme_90_eggplant.png
│ │ ├── theme_90_excite_bike.png
│ │ ├── theme_90_flick.png
│ │ ├── theme_90_hot_sneaks.png
│ │ ├── theme_90_humanity.png
│ │ ├── theme_90_le_frog.png
│ │ ├── theme_90_mint_choco.png
│ │ ├── theme_90_overcast.png
│ │ ├── theme_90_pepper_grinder.png
│ │ ├── theme_90_smoothness.png
│ │ ├── theme_90_south_street.png
│ │ ├── theme_90_start_menu.png
│ │ ├── theme_90_sunny.png
│ │ ├── theme_90_swanky_purse.png
│ │ ├── theme_90_trontastic.png
│ │ ├── theme_90_ui_dark.png
│ │ ├── theme_90_ui_light.png
│ │ └── theme_90_windoze.png
│ ├── jquery.themeswitcher.js
│ ├── jquery.themeswitcher.min.js
│ └── sample.htm
├── amd-intro-require-jquery.js
├── amd-intro-require-local-ui.js
├── amd-intro-require-native-ui.js
├── amd-outro.js
├── contextmenu-abs
│ ├── images
│ │ ├── cut.png
│ │ ├── door.png
│ │ ├── page_white_copy.png
│ │ ├── page_white_delete.png
│ │ ├── page_white_edit.png
│ │ └── page_white_paste.png
│ ├── jquery.contextMenu-custom.js
│ └── jquery.contextMenu.css
├── jquery-ui.custom.js
├── jquery.configurator.js
├── jquery.cookie.js
├── jquery.js
├── jquery.jsconsole.js
├── jquery.planize.js
├── jquery.popup.js
├── jquery.simulate.js
├── jquery.skinswitcher.js
├── jquery.tmpl.min.js
├── prettify.css
├── prettify.js
├── qunit-composite.css
├── qunit-composite.js
├── qunit.css
└── qunit.js
├── package-lock.json
├── package.json
├── pyftpsync.yaml
├── src
├── jquery-ui-dependencies
│ ├── AUTHORS.txt
│ ├── LICENSE.txt
│ ├── README-Fancytree.md
│ ├── jquery-ui-iife.js
│ ├── jquery-ui.js
│ ├── jquery-ui.min.js
│ ├── jquery.fancytree.ui-deps.js
│ └── package.json
├── jquery.fancytree.ariagrid.js
├── jquery.fancytree.childcounter.js
├── jquery.fancytree.clones.js
├── jquery.fancytree.columnview.js
├── jquery.fancytree.dnd.js
├── jquery.fancytree.dnd5.js
├── jquery.fancytree.edit.js
├── jquery.fancytree.filter.js
├── jquery.fancytree.fixed.js
├── jquery.fancytree.glyph.js
├── jquery.fancytree.grid.js
├── jquery.fancytree.gridnav.js
├── jquery.fancytree.js
├── jquery.fancytree.logger.js
├── jquery.fancytree.menu.js
├── jquery.fancytree.multi.js
├── jquery.fancytree.persist.js
├── jquery.fancytree.table.js
├── jquery.fancytree.themeroller.js
├── jquery.fancytree.wide.js
├── jsdoc-globals.js
├── skin-awesome
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-bootstrap-n
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-bootstrap
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-common.less
├── skin-custom-1
│ └── README.md
├── skin-lion
│ ├── icons-lion.psp
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-material
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-themeroller
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-vista
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vista_colors.txt
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-win7
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-win8-n
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-win8-xxl
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
├── skin-win8
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
└── skin-xp
│ ├── icons-rtl.gif
│ ├── icons.gif
│ ├── loading.gif
│ ├── ui.fancytree.css
│ ├── ui.fancytree.less
│ ├── vline-rtl.gif
│ └── vline.gif
└── test
├── ajax10k_nodes.json
├── doctypes
├── doctype-html4-loose.html
├── doctype-html4-strict.html
├── doctype-html5.html
├── doctype-none.html
├── doctype-xml-strict.html
├── doctype-xml-transitional.html
└── index.html
├── ft_fixtures.py
├── test-build-no-ui.html
├── test-css.html
├── test-ext-dnd.html
├── test-ext-grid.html
├── test-ext-keyboard.html
├── test-ext-table.html
├── test-extensions.html
├── test-fastrender-10k-nodes.html
├── text-ext-filter.html
├── triage
├── test-form.html
├── test-issue-NNN-description.html
├── test-issue-NNN-misc_filter.html
└── test-issue-NNN-table-description.html
└── unit
├── ajax-empty.json
├── ajax-sub2.json
├── ajax-tree-plain.json
├── ajax-tree.json
├── custom_icon.png
├── server.js
├── test-bench-issues.html
├── test-bench-issues.js
├── test-bench.html
├── test-bench.js
├── test-core-build.html
├── test-core-dist.html
├── test-core.html
├── test-core.js
├── test-ext-filter.html
├── test-ext-filter.js
├── test-ext-misc.html
├── test-ext-misc.js
├── test-ext-table.html
├── test-ext-table.js
├── test-jQuery-10.html
├── test-jQuery-20.html
├── test-jQuery-30.html
├── test-jQuery-latest.html
├── test-jQuery-legacy.html
├── test-jQuery110-ui110.html
├── test-jQuery111-ui111.html
├── test-jQuery18-ui18.html
├── test-jQuery18-ui19.html
├── test-jQuery19-ui19.html
├── test-jQuery1x-mig-ui1x.html
├── test-leaks.html
├── test-leaks.js
├── test-regression.html
├── test-regression.js
├── test-suite.html
└── test-tools.js
/.editorconfig:
--------------------------------------------------------------------------------
1 | # This file is for unifying the coding style for different editors and IDEs
2 | # editorconfig.org
3 |
4 | root = true
5 |
6 | [*]
7 | indent_style = space
8 | indent_size = 2
9 | end_of_line = lf
10 | charset = utf-8
11 | trim_trailing_whitespace = true
12 | insert_final_newline = true
13 |
14 | [*.{json,html,css}]
15 | indent_style = space
16 | indent_size = 2
17 |
18 | [*.js]
19 | # indent_style = space
20 | # indent_size = 2
21 | indent_style = tab
22 | indent_size = 4
23 |
24 | [*.coffee]
25 | indent_style = space
26 | indent_size = 2
27 |
28 | [*.md]
29 | indent_style = space
30 |
31 | [*.py]
32 | indent_style = space
33 |
--------------------------------------------------------------------------------
/.eslintignore:
--------------------------------------------------------------------------------
1 | bin
2 | doc
3 | lib
4 | node_modules
5 | test/**
6 | !test/unit/**/*.js
7 | *.min.js
8 | build/**
9 | dist/**
10 | !dist/jquery.js
11 |
--------------------------------------------------------------------------------
/.gitattributes:
--------------------------------------------------------------------------------
1 | # Set the default behavior, in case people don't have core.autocrlf set.
2 | * text=auto
3 |
4 | *.css text eol=lf
5 | *.js text eol=lf
6 | *.html text eol=lf
7 | *.md text eol=lf
8 | *.py text eol=lf
9 |
10 | # Explicitly declare text files you want to always be normalized and converted
11 | # to native line endings on checkout.
12 | #*.c text
13 | #*.h text
14 |
15 | # Declare files that will always have CRLF line endings on checkout.
16 | #*.sln text eol=crlf
17 |
18 | # Denote all files that are truly binary and should not be modified.
19 | *.png binary
20 | *.jpg binary
21 |
--------------------------------------------------------------------------------
/.github/CODEOWNERS:
--------------------------------------------------------------------------------
1 | # This is a comment.
2 | # Each line is a file pattern followed by one or more owners.
3 |
4 | # ext-grid, scrollbar extension
5 | # /demo/sample-3rd-grid-scrollbar.html @ewya
6 |
7 | # ext-fixed
8 | # /src/jquery.fancytree.fixed.js @Mats0
9 | # /demo/sample-ext-fixed.html @Mats0
10 |
--------------------------------------------------------------------------------
/.github/CONTRIBUTING.md:
--------------------------------------------------------------------------------
1 | Thanks for contributing :-)
2 |
3 | Please have a look at the
4 | [Contributing Guidelines](https://github.com/mar10/fancytree/wiki/HowtoContribute#report-issues).
5 |
--------------------------------------------------------------------------------
/.github/FUNDING.yml:
--------------------------------------------------------------------------------
1 | # These are supported funding model platforms
2 |
3 | github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
4 | patreon: # Replace with a single Patreon username
5 | open_collective: # Replace with a single Open Collective username
6 | ko_fi: # Replace with a single Ko-fi username
7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
9 | liberapay: # Replace with a single Liberapay username
10 | issuehunt: # Replace with a single IssueHunt username
11 | otechie: # Replace with a single Otechie username
12 | lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
13 | # custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
14 | custom: ['https://www.paypal.com/donate/?hosted_button_id=RA6G29AZRUD44']
15 |
--------------------------------------------------------------------------------
/.github/ISSUE_TEMPLATE.md:
--------------------------------------------------------------------------------
1 | Thanks for contributing :-)
2 |
3 | Please also read the hints:
4 | https://github.com/mar10/fancytree/wiki/HowtoContribute#report-issues
5 | then remove all unneeded lines from this issue report.
6 |
7 | If you are going to ask a question, please use Stackoverflow instead:
8 |
9 | http://stackoverflow.com/questions/tagged/fancytree
10 |
11 |
12 | ### Expected and Actual Behavior
13 |
14 | ... (Maybe even a screenshot? Any hints on the browser's debug console?)
15 |
16 |
17 | ### Steps to Reproduce the Problem
18 |
19 | 1. ...
20 | 2. ...
21 |
22 | Could you set up a jsFiddle (http://jsfiddle.net/mar10/KcxRd/),
23 | CodePen (https://codepen.io/mar10/pen/WMWrbq), or
24 | Plunker (http://plnkr.co/edit/8sdy3r?p=preview) ?
25 |
26 |
27 | ### Environment
28 |
29 | - Browser type and version:
30 | - jQuery and jQuery UI versions:
31 | - Fancytree version:
32 | enabled/affected extensions:
33 |
--------------------------------------------------------------------------------
/.github/workflows/stale.yml:
--------------------------------------------------------------------------------
1 | # This workflow warns and then closes issues and PRs that have had no activity for a specified amount of time.
2 | #
3 | # You can adjust the behavior by modifying this file.
4 | # For more information, see:
5 | # https://github.com/actions/stale
6 | name: Mark stale issues and pull requests
7 |
8 | on:
9 | schedule:
10 | - cron: '31 14 * * *'
11 |
12 | jobs:
13 | stale:
14 |
15 | runs-on: ubuntu-latest
16 | permissions:
17 | issues: write
18 | pull-requests: write
19 |
20 | steps:
21 | - uses: actions/stale@v5
22 | with:
23 | repo-token: ${{ secrets.GITHUB_TOKEN }}
24 |
25 | days-before-stale: 90
26 | days-before-close: 14
27 | exempt-all-milestones: true
28 | operations-per-run: 5
29 |
30 | stale-issue-label: 'no-issue-activity'
31 | exempt-issue-labels: 'pinned,security'
32 | stale-issue-message: |
33 | This issue has been automatically marked as stale because it has not had
34 | recent activity. It will be closed if no further activity occurs.
35 | Thank you for your contributions.
36 | close-issue-reason: 'not_planned'
37 |
38 | stale-pr-label: 'no-pr-activity'
39 | exempt-pr-labels: 'pinned,security'
40 | stale-pr-message: |
41 | This pull request has been automatically marked as stale because it has not had
42 | recent activity. It will be closed if no further activity occurs.
43 | Thank you for your contributions.
44 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /.settings
2 | /archive
3 | /build
4 | /test/triage
5 | /doc/annotated-src
6 | /doc/jsdoc
7 | /doc/jsdoc_new
8 | /doc/jsdoc_old
9 | /node_modules
10 | /doc/screenshots
11 | /src/skin-custom-*
12 | *.log
13 | sauce_connect.*
14 | .pyftpsync-meta.json
15 | .DS_Store
16 | test/ajax_101k.json
17 |
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | # Style guide rationale:
2 | # Width 80 is default (and explicitly recommended) by prettier
3 | # - 2 space indentation and trailing semicolons seem to be most popular
4 | # https://hackernoon.com/what-javascript-code-style-is-the-most-popular-5a3f5bec1f6f
5 | # It is also the prettier's default
6 | # - Double quotes are default in prettier and mandatory in Black
7 | # - Trailing comma produces smaller diffs
8 | # BUT:
9 | # As a first step, we keep the current whitespace setting:
10 | # - use tabs
11 | # - tabWitdh 4
12 |
13 | printWidth: 80
14 | useTabs: true
15 | tabWidth: 4
16 | # useTabs: false
17 | # tabWidth: 2
18 | semi: true
19 | singleQuote: false
20 | trailingComma: "es5"
21 | bracketSpacing: true # because it's prettier's default
22 | #requirePragma: true
23 |
24 | #overrides:
25 | # - files: "*.test.js"
26 | # options:
27 | # semi: true
28 |
--------------------------------------------------------------------------------
/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | fancytree
4 |
5 |
6 | fancytree_wiki
7 | fancytree.wiki
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | 1373147473034
16 |
17 | 10
18 |
19 | org.eclipse.ui.ide.multiFilter
20 | 1.0-name-matches-false-false-node_modules
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | sudo: false
3 | node_js:
4 | - "10"
5 |
6 | before_script:
7 | - npm install -g grunt-cli
8 |
9 | addons:
10 | hosts:
11 | - travis.dev
12 | - localhost
13 |
14 | matrix:
15 | include:
16 | - env: GRUNT_TASK=travis
17 | # - env: GRUNT_TASK=travis-optional
18 | # allow_failures:
19 | # - env: GRUNT_TASK=travis-optional
20 |
21 | script: grunt $GRUNT_TASK --verbose
22 |
23 | env:
24 | global:
25 | - secure: VmlzKmxE+V+QZpvDuj5W41u2HTu2uTvW0aUi2p+2yhCHd7J5TFdOoECwIhTa/4VDEpnZwjLJXPd2q9kEn3+G0HpEqRMtKVTP/sM8y0JKUkprSCWV/y+pVX+0B9jQBAhEcjtkLDEGI3xVI8n+WV0Fig4kWecSCcSSUN5Mlbq5glQ=
26 | - secure: ITp8qeoTyowtRqqFKPSjKq1tenmjt5ezNG/8ybEJQzxAMVGJ8bnyRPV1Aep0HB0ULP+GcYzDzGj5UeKM3hfWAJEfx+z1/HiHIMpJjEuGBz1JPfHx0lKcB7QfbhsRY3r8DVYptxdK9SyMisdIfCKApNMDW90RGDuALUdkLNPPXhI=
27 |
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | // Use IntelliSense to learn about possible attributes.
3 | // Hover to view descriptions of existing attributes.
4 | // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
5 | "version": "0.2.0",
6 | "configurations": [
7 | {
8 | "type": "chrome",
9 | "request": "launch",
10 | "name": "Launch Chrome against localhost",
11 | "url": "http://localhost:8080",
12 | "webRoot": "${workspaceFolder}"
13 | }
14 | ]
15 | }
--------------------------------------------------------------------------------
/3rd-party/extensions/contextmenu/js/jquery.fancytree.contextMenu.js:
--------------------------------------------------------------------------------
1 | /**!
2 | * jquery.fancytree.contextmenu.js
3 | *
4 | * Integrate the 'jQuery contextMenu' plugin as Fancytree extension:
5 | * https://github.com/swisnl/jQuery-contextMenu
6 | *
7 | * Copyright (c) 2008-2018, Martin Wendt (https://wwWendt.de)
8 | * Released under the MIT license
9 | * https://github.com/mar10/fancytree/wiki/LicenseInfo
10 | */
11 | (function ($, document) {
12 | "use strict";
13 |
14 | var initContextMenu = function (tree, selector, menu, actions) {
15 | tree.$container.on("mousedown.contextMenu", function (event) {
16 | var node = $.ui.fancytree.getNode(event);
17 |
18 | if (node) {
19 | $.contextMenu("destroy", "." + selector);
20 |
21 | // node.setFocus(true);
22 | node.setActive(true);
23 |
24 | $.contextMenu({
25 | selector: "." + selector,
26 | events: {
27 | show: function (options) {
28 | options.prevKeyboard = tree.options.keyboard;
29 | tree.options.keyboard = false;
30 | },
31 | hide: function (options) {
32 | tree.options.keyboard = options.prevKeyboard;
33 | node.setFocus(true);
34 | },
35 | },
36 | build: function ($trigger, e) {
37 | node = $.ui.fancytree.getNode($trigger);
38 |
39 | var menuItems = {};
40 | if ($.isFunction(menu)) {
41 | menuItems = menu(node);
42 | } else if ($.isPlainObject(menu)) {
43 | menuItems = menu;
44 | }
45 |
46 | return {
47 | callback: function (action, options) {
48 | if ($.isFunction(actions)) {
49 | actions(node, action, options);
50 | } else if ($.isPlainObject(actions)) {
51 | if (
52 | Object.prototype.hasOwnProperty.call(
53 | actions,
54 | action
55 | ) &&
56 | $.isFunction(actions[action])
57 | ) {
58 | actions[action](node, options);
59 | }
60 | }
61 | },
62 | items: menuItems,
63 | };
64 | },
65 | });
66 | }
67 | });
68 | };
69 |
70 | $.ui.fancytree.registerExtension({
71 | name: "contextMenu",
72 | version: "@VERSION",
73 | contextMenu: {
74 | selector: "fancytree-title",
75 | menu: {},
76 | actions: {},
77 | },
78 | treeInit: function (ctx) {
79 | this._superApply(arguments);
80 | initContextMenu(
81 | ctx.tree,
82 | ctx.options.contextMenu.selector || "fancytree-title",
83 | ctx.options.contextMenu.menu,
84 | ctx.options.contextMenu.actions
85 | );
86 | },
87 | });
88 | })(jQuery, document);
89 |
--------------------------------------------------------------------------------
/3rd-party/extensions/hotkeys/js/jquery.fancytree.hotkeys.js:
--------------------------------------------------------------------------------
1 | /**!
2 | * jquery.fancytree.hotkeys.js
3 | *
4 | * Integrate the 'jQuery.Hotkeys' plugin as Fancytree extension:
5 | * https://github.com/jeresig/jquery.hotkeys/
6 | *
7 | * Copyright (c) 2008-2018, Martin Wendt (https://wwWendt.de)
8 | * Released under the MIT license
9 | * https://github.com/mar10/fancytree/wiki/LicenseInfo
10 | */
11 | (function ($, document) {
12 | "use strict";
13 |
14 | var initHotkeys = function (tree, data) {
15 | $.each(data, function (event, keys) {
16 | $.each(keys, function (key, handler) {
17 | $(tree.$container).on(event, null, key, function (evt) {
18 | var node = tree.getActiveNode();
19 | return handler(node, evt);
20 | // return false from the handler will stop default handling.
21 | });
22 | });
23 | });
24 | };
25 |
26 | $.ui.fancytree.registerExtension({
27 | name: "hotkeys",
28 | version: "@VERSION",
29 | hotkeys: {},
30 | treeInit: function (ctx) {
31 | this._superApply(arguments);
32 | initHotkeys(this, ctx.options.hotkeys);
33 | },
34 | });
35 | })(jQuery, document);
36 |
--------------------------------------------------------------------------------
/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright 2008-2023 Martin Wendt,
2 | https://wwWendt.de/
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining
5 | a copy of this software and associated documentation files (the
6 | "Software"), to deal in the Software without restriction, including
7 | without limitation the rights to use, copy, modify, merge, publish,
8 | distribute, sublicense, and/or sell copies of the Software, and to
9 | permit persons to whom the Software is furnished to do so, subject to
10 | the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be
13 | included in all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/README.md:
--------------------------------------------------------------------------------
1 | The default template for JSDoc 3 uses: [the Taffy Database library](http://taffydb.com/) and the [Underscore Template library](http://underscorejs.org/).
2 |
3 | ## Customized
4 |
5 | Modified by Martin Wendt in 2017-08.
6 |
7 | Changes are marked with `` or `// --- Start MOOGLE Changes`
8 |
9 | * Add a 'Methods:' section for class views, between 'Properties:' and 'Methods details'
10 | * Add google analytics hooks
11 | * Add a 'Fork me on Github'
12 |
13 |
14 | ## Generating Typeface Fonts
15 |
16 | The default template uses the [OpenSans](https://www.google.com/fonts/specimen/Open+Sans) typeface. The font files can be regenerated as follows:
17 |
18 | 1. Open the [OpenSans page at Font Squirrel]().
19 | 2. Click on the 'Webfont Kit' tab.
20 | 3. Either leave the subset drop-down as 'Western Latin (Default)', or, if we decide we need more glyphs, than change it to 'No Subsetting'.
21 | 4. Click the 'DOWNLOAD @FONT-FACE KIT' button.
22 | 5. For each typeface variant we plan to use, copy the 'eot', 'svg' and 'woff' files into the 'templates/default/static/fonts' directory.
23 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-Bold-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-Bold-webfont.eot
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-Bold-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-Bold-webfont.woff
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-BoldItalic-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-BoldItalic-webfont.eot
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-BoldItalic-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-BoldItalic-webfont.woff
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-Italic-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-Italic-webfont.eot
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-Italic-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-Italic-webfont.woff
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-Light-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-Light-webfont.eot
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-Light-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-Light-webfont.woff
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-LightItalic-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-LightItalic-webfont.eot
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-LightItalic-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-LightItalic-webfont.woff
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-Regular-webfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-Regular-webfont.eot
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/fonts/OpenSans-Regular-webfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/bin/jsdoc3-moogle/static/fonts/OpenSans-Regular-webfont.woff
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/scripts/linenumber.js:
--------------------------------------------------------------------------------
1 | /*global document */
2 | (function() {
3 | var source = document.getElementsByClassName('prettyprint source linenums');
4 | var i = 0;
5 | var lineNumber = 0;
6 | var lineId;
7 | var lines;
8 | var totalLines;
9 | var anchorHash;
10 |
11 | if (source && source[0]) {
12 | anchorHash = document.location.hash.substring(1);
13 | lines = source[0].getElementsByTagName('li');
14 | totalLines = lines.length;
15 |
16 | for (; i < totalLines; i++) {
17 | lineNumber++;
18 | lineId = 'line' + lineNumber;
19 | lines[i].id = lineId;
20 | if (lineId === anchorHash) {
21 | lines[i].className += ' selected';
22 | }
23 | }
24 | }
25 | })();
26 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/scripts/prettify/lang-css.js:
--------------------------------------------------------------------------------
1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\f\r ]+/,null," \t\r\n"]],[["str",/^"(?:[^\n\f\r"\\]|\\(?:\r\n?|\n|\f)|\\[\S\s])*"/,null],["str",/^'(?:[^\n\f\r'\\]|\\(?:\r\n?|\n|\f)|\\[\S\s])*'/,null],["lang-css-str",/^url\(([^"')]*)\)/i],["kwd",/^(?:url|rgb|!important|@import|@page|@media|@charset|inherit)(?=[^\w-]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*)\s*:/i],["com",/^\/\*[^*]*\*+(?:[^*/][^*]*\*+)*\//],["com",
2 | /^(?:<\!--|--\>)/],["lit",/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],["lit",/^#[\da-f]{3,6}/i],["pln",/^-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*/i],["pun",/^[^\s\w"']+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[["kwd",/^-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[["str",/^[^"')]+/]]),["css-str"]);
3 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/styles/prettify-jsdoc.css:
--------------------------------------------------------------------------------
1 | /* JSDoc prettify.js theme */
2 |
3 | /* plain text */
4 | .pln {
5 | color: #000000;
6 | font-weight: normal;
7 | font-style: normal;
8 | }
9 |
10 | /* string content */
11 | .str {
12 | color: #006400;
13 | font-weight: normal;
14 | font-style: normal;
15 | }
16 |
17 | /* a keyword */
18 | .kwd {
19 | color: #000000;
20 | font-weight: bold;
21 | font-style: normal;
22 | }
23 |
24 | /* a comment */
25 | .com {
26 | font-weight: normal;
27 | font-style: italic;
28 | }
29 |
30 | /* a type name */
31 | .typ {
32 | color: #000000;
33 | font-weight: normal;
34 | font-style: normal;
35 | }
36 |
37 | /* a literal value */
38 | .lit {
39 | color: #006400;
40 | font-weight: normal;
41 | font-style: normal;
42 | }
43 |
44 | /* punctuation */
45 | .pun {
46 | color: #000000;
47 | font-weight: bold;
48 | font-style: normal;
49 | }
50 |
51 | /* lisp open bracket */
52 | .opn {
53 | color: #000000;
54 | font-weight: bold;
55 | font-style: normal;
56 | }
57 |
58 | /* lisp close bracket */
59 | .clo {
60 | color: #000000;
61 | font-weight: bold;
62 | font-style: normal;
63 | }
64 |
65 | /* a markup tag name */
66 | .tag {
67 | color: #006400;
68 | font-weight: normal;
69 | font-style: normal;
70 | }
71 |
72 | /* a markup attribute name */
73 | .atn {
74 | color: #006400;
75 | font-weight: normal;
76 | font-style: normal;
77 | }
78 |
79 | /* a markup attribute value */
80 | .atv {
81 | color: #006400;
82 | font-weight: normal;
83 | font-style: normal;
84 | }
85 |
86 | /* a declaration */
87 | .dec {
88 | color: #000000;
89 | font-weight: bold;
90 | font-style: normal;
91 | }
92 |
93 | /* a variable name */
94 | .var {
95 | color: #000000;
96 | font-weight: normal;
97 | font-style: normal;
98 | }
99 |
100 | /* a function name */
101 | .fun {
102 | color: #000000;
103 | font-weight: bold;
104 | font-style: normal;
105 | }
106 |
107 | /* Specify class=linenums on a pre to get line numbering */
108 | ol.linenums {
109 | margin-top: 0;
110 | margin-bottom: 0;
111 | }
112 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/static/styles/prettify-tomorrow.css:
--------------------------------------------------------------------------------
1 | /* Tomorrow Theme */
2 | /* Original theme - https://github.com/chriskempson/tomorrow-theme */
3 | /* Pretty printing styles. Used with prettify.js. */
4 | /* SPAN elements with the classes below are added by prettyprint. */
5 | /* plain text */
6 | .pln {
7 | color: #4d4d4c; }
8 |
9 | @media screen {
10 | /* string content */
11 | .str {
12 | color: #718c00; }
13 |
14 | /* a keyword */
15 | .kwd {
16 | color: #8959a8; }
17 |
18 | /* a comment */
19 | .com {
20 | color: #8e908c; }
21 |
22 | /* a type name */
23 | .typ {
24 | color: #4271ae; }
25 |
26 | /* a literal value */
27 | .lit {
28 | color: #f5871f; }
29 |
30 | /* punctuation */
31 | .pun {
32 | color: #4d4d4c; }
33 |
34 | /* lisp open bracket */
35 | .opn {
36 | color: #4d4d4c; }
37 |
38 | /* lisp close bracket */
39 | .clo {
40 | color: #4d4d4c; }
41 |
42 | /* a markup tag name */
43 | .tag {
44 | color: #c82829; }
45 |
46 | /* a markup attribute name */
47 | .atn {
48 | color: #f5871f; }
49 |
50 | /* a markup attribute value */
51 | .atv {
52 | color: #3e999f; }
53 |
54 | /* a declaration */
55 | .dec {
56 | color: #f5871f; }
57 |
58 | /* a variable name */
59 | .var {
60 | color: #c82829; }
61 |
62 | /* a function name */
63 | .fun {
64 | color: #4271ae; } }
65 | /* Use higher contrast and text-weight for printable form. */
66 | @media print, projection {
67 | .str {
68 | color: #060; }
69 |
70 | .kwd {
71 | color: #006;
72 | font-weight: bold; }
73 |
74 | .com {
75 | color: #600;
76 | font-style: italic; }
77 |
78 | .typ {
79 | color: #404;
80 | font-weight: bold; }
81 |
82 | .lit {
83 | color: #044; }
84 |
85 | .pun, .opn, .clo {
86 | color: #440; }
87 |
88 | .tag {
89 | color: #006;
90 | font-weight: bold; }
91 |
92 | .atn {
93 | color: #404; }
94 |
95 | .atv {
96 | color: #060; } }
97 | /* Style */
98 | /*
99 | pre.prettyprint {
100 | background: white;
101 | font-family: Consolas, Monaco, 'Andale Mono', monospace;
102 | font-size: 12px;
103 | line-height: 1.5;
104 | border: 1px solid #ccc;
105 | padding: 10px; }
106 | */
107 |
108 | /* Specify class=linenums on a pre to get line numbering */
109 | ol.linenums {
110 | margin-top: 0;
111 | margin-bottom: 0; }
112 |
113 | /* IE indents via margin-left */
114 | li.L0,
115 | li.L1,
116 | li.L2,
117 | li.L3,
118 | li.L4,
119 | li.L5,
120 | li.L6,
121 | li.L7,
122 | li.L8,
123 | li.L9 {
124 | /* */ }
125 |
126 | /* Alternate shading for lines */
127 | li.L1,
128 | li.L3,
129 | li.L5,
130 | li.L7,
131 | li.L9 {
132 | /* */ }
133 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/augments.tmpl:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/example.tmpl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/examples.tmpl:
--------------------------------------------------------------------------------
1 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/exceptions.tmpl:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | Type
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/mainpage.tmpl:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
14 |
15 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/members.tmpl:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | Type:
19 |
24 |
25 |
26 |
27 |
28 |
29 | Fires:
30 |
33 |
34 |
35 |
36 | Example 1? 's':'' ?>
37 |
38 |
39 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/methods_overview.tmpl:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
9 |
10 |
11 | Return Type
12 | Name and Arguments
13 | Details
14 |
15 |
16 |
17 |
18 | " + name + "";
44 | }
45 | if (typeof param.defaultvalue !== 'undefined') {
46 | name = name + "=" + param.defaultvalue + " ";
47 | }
48 | args.push(name);
49 | });
50 | args = "(" + args.join(", ") + ")";
51 | }
52 |
53 | ?>
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 | " + m.description + "") : "") ?>
62 |
63 |
64 | Details
65 |
66 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/returns.tmpl:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 | Type
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/source.tmpl:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/tutorial.tmpl:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | 0) { ?>
5 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/bin/jsdoc3-moogle/tmpl/type.tmpl:
--------------------------------------------------------------------------------
1 |
5 |
6 | |
7 |
--------------------------------------------------------------------------------
/bower.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jquery.fancytree",
3 | "description": "JavaScript tree view / tree grid plugin with support for keyboard, inline editing, filtering, checkboxes, drag'n'drop, and lazy loading",
4 | "version": "2.38.6-0",
5 | "main": [
6 | "dist/jquery.fancytree-all-deps.min.js"
7 | ],
8 | "moduleType": "globals",
9 | "license": "MIT",
10 | "ignore": [
11 | "**/.*",
12 | "/3rd-party",
13 | "/archive",
14 | "/bin",
15 | "/build",
16 | "/demo",
17 | "/doc",
18 | "/lib",
19 | "/src",
20 | "/test",
21 | "CONTRIBUTING.md",
22 | "fancytree.jquery.json",
23 | "Gruntfile.coffee",
24 | "index.html"
25 | ],
26 | "keywords": [
27 | "ajax",
28 | "jquery-plugin",
29 | "lazy",
30 | "table",
31 | "tabletree",
32 | "tree",
33 | "treegrid"
34 | ],
35 | "authors": [
36 | {
37 | "name": "Martin Wendt",
38 | "homepage": "https://wwWendt.de"
39 | }
40 | ],
41 | "repository": {
42 | "type": "git",
43 | "url": "git://github.com/mar10/fancytree.git"
44 | },
45 | "dependencies": {
46 | "jquery": ">=1.7",
47 | "jquery-ui": ">=1.8.6"
48 | },
49 | "devDependencies": {}
50 | }
--------------------------------------------------------------------------------
/demo/ajax-empty.json:
--------------------------------------------------------------------------------
1 | []
2 |
--------------------------------------------------------------------------------
/demo/ajax-parse-error.json:
--------------------------------------------------------------------------------
1 | [
2 | {'title': "sub 1"},
3 | {"title": "sub 2"}
4 | ]
--------------------------------------------------------------------------------
/demo/ajax-pws-error.json:
--------------------------------------------------------------------------------
1 | {
2 | "status": "fault",
3 | "faultMsg": "uh-oh",
4 | "faultCode": -1,
5 | "faulDetails": "..."
6 | }
7 |
--------------------------------------------------------------------------------
/demo/ajax-pws-ok.json:
--------------------------------------------------------------------------------
1 | {
2 | "status": "ok",
3 | "result": [
4 | {"title": "sub 1"},
5 | {"title": "sub 2"}
6 | ]
7 | }
--------------------------------------------------------------------------------
/demo/ajax-sub.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | SubNode 1 (lazy)
4 |
5 |
6 | SubNode 1 (lazy)
7 |
8 |
9 |
--------------------------------------------------------------------------------
/demo/ajax-sub2.json:
--------------------------------------------------------------------------------
1 | [ {"title": "Sub item", "lazy": true }, {"title": "Sub folder", "folder": true, "lazy": true } ]
2 |
--------------------------------------------------------------------------------
/demo/ajax-tree-decide.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "ATX PC Computer Power Supply Troubleshooting", "expanded": true, "folder": true, "children": [
3 | {"title": "Power comes on", "extraClasses": "yes", "children": [
4 | {"title": "Live screen", "extraClasses": "yes", "children": [
5 | {"title": "New build", "extraClasses": "yes", "children": [
6 | {"title": "Check power requirement vs. rating.", "extraClasses": "answer"}
7 | ]},
8 | {"title": "No new build", "extraClasses": "no", "children": [
9 | {"title": "Need two tries to boot", "extraClasses": "yes", "children": [
10 | {"title": "Premature power_good signal. Try different power supply.", "extraClasses": "answer"}
11 | ]},
12 | {"title": "Does not need two tries to boot", "extraClasses": "no", "children": [
13 |
14 | ]}
15 | ]}
16 | ]},
17 | {"title": "No live screen", "extraClasses": "no", "children": [
18 | {"title": "Proceed to Video Failure Chart", "extraClasses": "link"}
19 | ]}
20 | ]},
21 | {"title": "Power comes not on", "extraClasses": "no", "children": [
22 | {"title": "AC power source tested?", "extraClasses": "yes", "children": [
23 | ]},
24 | {"title": "AC poower source not tested", "extraClasses": "no", "children": [
25 | {"title": "Connect to known good outlet.", "extraClasses": "answer"}
26 | ]}
27 | ]}
28 | ]}
29 | ]
30 |
--------------------------------------------------------------------------------
/demo/ajax-tree-dom.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "html", "expanded": true, "folder": true, "children": [
3 | {"title": "head", "folder": true, "children": [
4 | {"title": "meta"},
5 | {"title": "title"}
6 | ]},
7 | {"title": "body", "expanded": true, "folder": true, "children": [
8 | {"title": "ul", "expanded": true, "children": [
9 | {"title": "li"},
10 | {"title": "li"}
11 | ]},
12 | {"title": "h1"},
13 | {"title": "h2", "expanded": true, "children": [
14 | {"title": "a"}
15 | ]}
16 | ]}
17 | ]}
18 | ]
19 |
--------------------------------------------------------------------------------
/demo/ajax-tree-fs.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "/", "expanded": true, "folder": true, "children": [
3 | {"title": "dev", "folder": true},
4 | {"title": "etc", "folder": true, "children": [
5 | {"title": "cups"},
6 | {"title": "httpd"},
7 | {"title": "init.d"}
8 | ]},
9 | {"title": "sbin", "folder": true},
10 | {"title": "tmp", "folder": true},
11 | {"title": "Users", "expanded": true, "folder": true, "children": [
12 | {"title": "jdoe", "folder": true},
13 | {"title": "jmiller", "folder": true},
14 | {"title": "mysql", "folder": true}
15 | ]},
16 | {"title": "usr", "expanded": true, "folder": true, "children": [
17 | {"title": "bin", "folder": true},
18 | {"title": "lib", "folder": true},
19 | {"title": "local", "folder": true}
20 | ]},
21 | {"title": "var", "expanded": true, "folder": true, "children": [
22 | {"title": "log", "folder": true},
23 | {"title": "spool", "folder": true},
24 | {"title": "yp", "folder": true}
25 | ]}
26 | ]}
27 | ]
28 |
--------------------------------------------------------------------------------
/demo/ajax-tree-instruments.json:
--------------------------------------------------------------------------------
1 |
2 | http://jameskennedymonash.files.wordpress.com/2012/05/musical-instruments.jpg
3 | http://yamltojson.com/
4 |
5 | "Musical Instruments":
6 | - "Aerophones":
7 | - "Free aerophones":
8 | - "aa"
9 | - "bb"
10 | - "Pipe aerophones"
11 |
--------------------------------------------------------------------------------
/demo/ajax-tree-local.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "simple node (no explicit id, so a default key is generated)" },
3 | {"key": "2", "title": "item1 with key and tooltip", "tooltip": "Look, a tool tip!" },
4 | {"key": "3", "title": "item2 with html inside a span tag " },
5 | {"key": "4", "title": "node 4" },
6 | {"key": "5", "title": "using href", "href": "https://wwWendt.de/" },
7 | {"key": "6", "title": "node with some extra classes (will be added to the generated markup)", "extraClasses": "my-extra-class" },
8 | {"key": "10", "title": "Folder 1", "folder": true, "children": [
9 | {"key": "10_1", "title": "Sub-item 1.1", "children": [
10 | {"key": "10_1_1", "title": "Sub-item 1.1.1"},
11 | {"key": "10_1_2", "title": "Sub-item 1.1.2 r"}
12 | ]},
13 | {"key": "10_2", "title": "Sub-item 1.2", "children": [
14 | {"key": "10_2_1", "title": "Sub-item 1.2.1"},
15 | {"key": "10_2_2", "title": "Sub-item 1.2.2"}
16 | ]}
17 | ]},
18 | {"key": "20", "title": "Simple node with active children (expand)", "expanded": true, "children": [
19 | {"key": "20_1", "title": "Sub-item 2.1", "children": [
20 | {"key": "20_1_1", "title": "Sub-item 2.1.1"},
21 | {"key": "20_1_2", "title": "Sub-item 2.1.2"}
22 | ]},
23 | {"key": "20_2", "title": "Sub-item 2.2", "children": [
24 | {"key": "20_2_1", "title": "Sub-item 2.2.1"},
25 | {"key": "20_2_2", "title": "Sub-item 2.2.2"}
26 | ]}
27 | ]}
28 | ]
29 |
--------------------------------------------------------------------------------
/demo/ajax-tree-plain.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "simple node (no explicit id, so a default key is generated)" },
3 | {"key": "2", "title": "item1 with key and tooltip", "tooltip": "Look, a tool tip!" },
4 | {"key": "3", "title": "item2 with html inside a span tag " },
5 | {"key": "4", "title": "node 4" },
6 | {"key": "5", "title": "using href", "href": "https://wwWendt.de/" },
7 | {"key": "6", "title": "node with some extra classes (will be added to the generated markup)", "extraClasses": "my-extra-class" },
8 | {"key": "10", "title": "Folder 1", "folder": true, "children": [
9 | {"key": "10_1", "title": "Sub-item 1.1", "children": [
10 | {"key": "10_1_1", "title": "Sub-item 1.1.1"},
11 | {"key": "10_1_2", "title": "Sub-item 1.1.2"}
12 | ]},
13 | {"key": "10_2", "title": "Sub-item 1.2", "children": [
14 | {"key": "10_2_1", "title": "Sub-item 1.2.1"},
15 | {"key": "10_2_2", "title": "Sub-item 1.2.2"}
16 | ]}
17 | ]},
18 | {"key": "20", "title": "Simple node with active children (expand)", "expanded": true, "children": [
19 | {"key": "20_1", "title": "Sub-item 2.1", "children": [
20 | {"key": "20_1_1", "title": "Sub-item 2.1.1", "children": [
21 | {"key": "20_1_1_1", "title": "Sub-item 2.1.1.1"}
22 | ]},
23 | {"key": "20_1_2", "title": "Sub-item 2.1.2"}
24 | ]},
25 | {"key": "20_2", "title": "Sub-item 2.2", "children": [
26 | {"key": "20_2_1", "title": "Sub-item 2.2.1"},
27 | {"key": "20_2_2", "title": "Sub-item 2.2.2"}
28 | ]}
29 | ]},
30 | {"key": "30", "title": "Lazy folder", "folder": true, "lazy": true },
31 | {"key": "31", "title": "Lazy folder 2", "folder": true, "lazy": true },
32 | {"key": "32", "title": "Lazy folder 3", "folder": true, "lazy": true }
33 | ]
34 |
--------------------------------------------------------------------------------
/demo/ajax-tree-products.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "Books", "expanded": true, "folder": true, "children": [
3 | {"title": "Art of War", "type": "book", "author": "Sun Tzu", "year": -500, "qty": 21, "price": 5.95},
4 | {"title": "The Hobbit", "type": "book", "author": "J.R.R. Tolkien", "year": 1937, "qty": 32, "price": 8.97},
5 | {"title": "The Little Prince", "type": "book", "author": "Antoine de Saint-Exupery", "year": 1943, "qty": 2946, "price": 6.82},
6 | {"title": "Don Quixote", "type": "book", "author": "Miguel de Cervantes", "year": 1615, "qty": 932, "price": 15.99}
7 | ]},
8 | {"title": "Music", "folder": true, "children": [
9 | {"title": "Nevermind", "type": "music", "author": "Nirvana", "year": 1991, "qty": 916, "price": 15.95},
10 | {"title": "Autobahn", "type": "music", "author": "Kraftwerk", "year": 1974, "qty": 2261, "price": 23.98},
11 | {"title": "Kind of Blue", "type": "music", "author": "Miles Davis", "year": 1959, "qty": 9735, "price": 21.90},
12 | {"title": "Back in Black", "type": "music", "author": "AC/DC", "year": 1980, "qty": 3895, "price": 17.99},
13 | {"title": "The Dark Side of the Moon", "type": "music", "author": "Pink Floyd", "year": 1973, "qty": 263, "price": 17.99},
14 | {"title": "Sgt. Pepper's Lonely Hearts Club Band", "type": "music", "author": "The Beatles", "year": 1967, "qty": 521, "price": 13.98}
15 | ]},
16 | {"title": "Electronics & Computers", "expanded": true, "folder": true, "children": [
17 | {"title": "Cell Phones", "folder": true, "children": [
18 | {"title": "Moto G", "type": "phone", "author": "Motorola", "year": 2014, "qty": 332, "price": 224.99},
19 | {"title": "Galaxy S8", "type": "phone", "author": "Samsung", "year": 2016, "qty": 952, "price": 509.99},
20 | {"title": "iPhone SE", "type": "phone", "author": "Apple", "year": 2016, "qty": 444, "price": 282.75},
21 | {"title": "G6", "type": "phone", "author": "LG", "year": 2017, "qty": 951, "price": 309.99},
22 | {"title": "Lumia", "type": "phone", "author": "Microsoft", "year": 2014, "qty": 32, "price": 205.95},
23 | {"title": "Xperia", "type": "phone", "author": "Sony", "year": 2014, "qty": 77, "price": 195.95},
24 | {"title": "3210", "type": "phone", "author": "Nokia", "year": 1999, "qty": 3, "price": 85.99}
25 | ]},
26 | {"title": "Computers", "folder": true, "children": [
27 | {"title": "ThinkPad", "type": "computer", "author": "IBM", "year": 1992, "qty": 16, "price": 749.90},
28 | {"title": "C64", "type": "computer", "author": "Commodore", "year": 1982, "qty": 83, "price": 595.00},
29 | {"title": "MacBook Pro", "type": "computer", "author": "Apple", "year": 2006, "qty": 482, "price": 1949.95},
30 | {"title": "Sinclair ZX Spectrum", "type": "computer", "author": "Sinclair Research", "year": 1982, "qty": 1, "price": 529},
31 | {"title": "Apple II", "type": "computer", "author": "Apple", "year": 1977, "qty": 17, "price": 1298},
32 | {"title": "PC AT", "type": "computer", "author": "IBM", "year": 1984, "qty": 3, "price": 1235.00}
33 | ]}
34 | ]},
35 | {"title": "More...", "folder": true, "lazy": true}
36 | ]
37 |
--------------------------------------------------------------------------------
/demo/ajax-tree-products2.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "Books & Audible", "expanded": true, "folder": true, "children": [
3 | {"title": "Books", "expanded": true, "folder": true, "children": [
4 | {"title": "General Books"},
5 | {"title": "Kindle Books"},
6 | {"title": "Books For Study"},
7 | {"title": "Audiobooks"}
8 | ]},
9 | {"title": "Movies, TV, Music, Games", "folder": true, "children": [
10 | {"title": "Music"},
11 | {"title": "MP3 Downloads"},
12 | {"title": "Musical Instruments & DJ"},
13 | {"title": "Film & TV"},
14 | {"title": "Blue-ray"},
15 | {"title": "PC & Video Games"}
16 | ]},
17 | {"title": "Electronics & Computers", "expanded": true, "folder": true, "children": [
18 | {"title": "Electronics", "folder": true, "children": [
19 | {"title": "Camera & Photo"},
20 | {"title": "TV & Home Cinema"},
21 | {"title": "Audio & HiFi"},
22 | {"title": "Sat Nav & Car Electronics"},
23 | {"title": "Phones"},
24 | {"title": "Electronic Accessories"}
25 | ]},
26 | {"title": "Computers", "folder": true, "children": [
27 | {"title": "Laptops"},
28 | {"title": "Tablets"},
29 | {"title": "Computer & Accessories"},
30 | {"title": "Computer Components"},
31 | {"title": "Software"},
32 | {"title": "Printers & Ink"}
33 | ]}
34 | ]}
35 | ]}
36 | ]
37 |
--------------------------------------------------------------------------------
/demo/ajax-tree-taxonomy.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "Animalia", "expanded": true, "folder": true, "children": [
3 | {"title": "Chordate", "folder": true, "children": [
4 | {"title": "Mammal", "children": [
5 | {"title": "Primate", "children": [
6 | {"title": "Primate", "children": [
7 | ]},
8 | {"title": "Carnivora", "children": [
9 | ]}
10 | ]},
11 | {"title": "Carnivora", "children": [
12 | {"title": "Felidae", "lazy": true}
13 | ]}
14 | ]}
15 | ]},
16 | {"title": "Arthropoda", "expanded": true, "folder": true, "children": [
17 | {"title": "Insect", "children": [
18 | {"title": "Diptera", "lazy": true}
19 | ]}
20 | ]}
21 | ]}
22 | ]
23 |
--------------------------------------------------------------------------------
/demo/ajax-tree.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "simple node (no explicit id, so a default key is generated)" },
3 | {"key": "2", "title": "item1 with key and tooltip", "tooltip": "Look, a tool tip!" },
4 | {"key": "3", "title": "item2 with html inside a span tag " },
5 | {"key": "4", "title": "this nodes uses 'nolink', so no <a> tag is generated", "nolink": true},
6 | {"key": "5", "title": "using href", "href": "https://wwWendt.de/" },
7 | {"key": "6", "title": "node with some extra classes (will be added to the generated markup)", "extraClasses": "my-extra-class" },
8 | {"key": "10", "title": "Folder 1", "folder": true, "children": [
9 | {"key": "10_1", "title": "Sub-item 1.1", "children": [
10 | {"key": "10_1_1", "title": "Sub-item 1.1.1"},
11 | {"key": "10_1_2", "title": "Sub-item 1.1.2"}
12 | ]},
13 | {"key": "10_2", "title": "Sub-item 1.2", "children": [
14 | {"key": "10_2_1", "title": "Sub-item 1.2.1"},
15 | {"key": "10_2_2", "title": "Sub-item 1.2.2"}
16 | ]}
17 | ]},
18 | {"key": "20", "title": "Simple node with active children (expand)", "expanded": true, "children": [
19 | {"key": "20_1", "title": "Sub-item 2.1", "children": [
20 | {"key": "20_1_1", "title": "Sub-item 2.1.1"},
21 | {"key": "20_1_2", "title": "Sub-item 2.1.2"}
22 | ]},
23 | {"key": "20_2", "title": "Sub-item 2.2", "children": [
24 | {"key": "20_2_1", "title": "Sub-item 2.2.1"},
25 | {"key": "20_2_2", "title": "Sub-item 2.2.2"}
26 | ]}
27 | ]},
28 | {"key": "30", "title": "Lazy folder", "folder": true, "lazy": true },
29 | {"key": "31", "title": "Lazy folder (preload)", "folder": true, "lazy": true, "preload": true },
30 | {"key": "32", "title": "Lazy folder (expand on load)", "folder": true, "lazy": true, "expanded": true }
31 | ]
32 |
--------------------------------------------------------------------------------
/demo/ajax-tree.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Node 1
4 |
5 |
6 | Node 2 (expanded folder)
7 |
8 |
9 | Node 2.1
10 |
11 |
12 | Node 2.2
13 |
14 |
15 |
16 |
17 | Node 3 (collapsed folder)
18 |
19 |
20 | Node 3.1
21 |
22 |
23 | Node 3.2
24 |
25 |
26 |
27 |
28 | Node 4 (lazy)
29 |
30 |
31 |
--------------------------------------------------------------------------------
/demo/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | Fancytree - Example Browser
9 |
10 |
11 |
13 |
14 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | This page requires frames.
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/demo/nav_bg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/nav_bg.png
--------------------------------------------------------------------------------
/demo/sample-aria.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree - WAI-ARIA Tree View
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
22 |
23 |
46 |
47 |
48 |
49 | Example: WAI-ARIA Tree View
50 |
63 |
64 |
72 |
73 |
74 |
75 |
76 | jquery.fancytree.js project home
77 | Link to this page
78 | Example Browser
79 | View source code
80 |
81 |
82 |
83 |
84 |
85 |
--------------------------------------------------------------------------------
/demo/sample-default.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree - Example
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
26 |
27 |
28 |
29 | Example: Default
30 |
31 | This tree uses default options.
32 | It is initialized from a hidden <ul> element on this page.
33 |
34 |
35 | Skin:
36 |
37 |
38 |
39 | item1 with key and tooltip
40 | item2
41 | Folder with some children
42 |
43 | Sub-item 3.1
44 |
45 | Sub-item 3.1.1
46 | Sub-item 3.1.2
47 | Sub-item 3.1.3
48 |
49 | Sub-item 3.2
50 |
51 | Sub-item 3.2.1
52 | Sub-item 3.2.2
53 |
54 |
55 | Document with some children (expanded on init)
56 |
57 | Sub-item 4.1 (active and focus on init)
58 |
59 | Sub-item 4.1.1
60 | Sub-item 4.1.2
61 |
62 | Sub-item 4.2
63 |
64 | Sub-item 4.2.1
65 | Sub-item 4.2.2
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 | jquery.fancytree.js project home
75 | Link to this page
76 | Example Browser
77 | View source code
78 |
79 |
80 |
81 |
82 |
83 |
--------------------------------------------------------------------------------
/demo/sample-ext-childcounter.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree - Example: childcounter
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
24 |
25 |
26 |
48 |
49 |
50 |
51 | Example: 'childcounter' extension
52 |
53 |
54 | Display count of children at parent node.
55 |
56 |
57 | The main puropse of this extension is to serve as an example for
58 | Fanytree's the general extension concept:
59 |
60 | See the
61 | annotated source
62 | to learn how to write a Fancytree extension.
63 | Click the [View source code] link below, to see how an extension is used.
64 |
65 |
66 | Status : beta
67 |
68 |
69 |
70 |
71 | Skin:
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 | jquery.fancytree.js project home
81 | Link to this page
82 | Example Browser
83 | View source code
84 |
85 |
86 |
87 |
88 |
89 |
--------------------------------------------------------------------------------
/demo/sample-ext-menu.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree - Example: Menu
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
20 |
21 |
22 | Example: 'menu' extension
23 |
24 |
25 | Fancytree does not include a native context menu extension.
26 | A context menu is typically used for multiple elements of a web
27 | application and the appearance should be consistent everywhere.
28 |
29 | However, using an existing context menu plugin is easy.
30 | It normally only requires to call $.ui.fancytree.getNode(element)
31 | in the respective callback handler and then trigger the desired
32 | operation.
33 |
34 | Examples of existing third party context menus include:
35 |
36 | jQuery contextMenu
37 | A popular, free context menu and polyfil
38 | (project site ).
39 | See here for a Fancytree demo .
40 |
41 | jQuery contextMenu (using a Fancytree extension)
42 | The ext-contextMenu
extension is a thin wrapper that
43 | integrates the above plugin into Fancytree (
44 | demo ).
45 |
46 | jquery.ui-contextmenu
47 | A free jQuery plugin that turns a jQuery UI Menu
48 | widget into a context menu
49 | (project site ).
50 | See here for a Fancytree demo .
51 |
52 | Plenty of other menus …
53 | JeeGooContext and
54 | more …
55 |
56 |
57 |
58 |
59 |
60 |
61 |
--------------------------------------------------------------------------------
/demo/sample-iframe-1.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Fancytree - Example
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
29 |
30 |
31 |
32 |
33 | This page lives inside an iframe
34 | Click a link in the tree to load some content here.
35 |
36 | This button demonstrates, ho to access a tree in another frame:
37 | Toggle tree
38 |
39 | View the source of this iframe content ,
40 | to see how it can be done.
41 |
42 |
43 |
44 |
--------------------------------------------------------------------------------
/demo/sample-playground.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree - Example
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | Example: Playground
21 |
22 |
23 | This tree is initialized from a data structure.
24 |
25 |
26 |
28 |
29 | See the Pen Fancytree Demo
30 | by Martin Wendt (@mar10 )
31 | on CodePen .
32 |
33 |
34 |
40 |
41 |
52 |
59 |
60 |
61 |
62 |
--------------------------------------------------------------------------------
/demo/sample-rtl.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree - Example: RTL
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
22 |
56 |
57 |
58 |
59 | Example: RTL
60 |
61 | This tree uses some extra styles to provide RTL support (experimental).
62 |
63 |
64 | Skin:
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 | jquery.fancytree.js project home
74 | Link to this page
75 | Example Browser
76 | View source code
77 |
78 |
79 |
80 |
81 |
82 |
--------------------------------------------------------------------------------
/demo/sample-types.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree - Example: Types
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
40 |
41 |
61 |
62 |
63 |
64 |
65 | Example: Node Types
66 |
67 | Used shared configuration per node type.
68 |
69 | See the
Node Type Tutorial
71 | for details.
72 |
73 |
74 | Skin:
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 | Fancytree project home
87 | Link to this page
88 | Example Browser
89 | View source code
90 |
91 |
92 |
93 |
94 |
95 |
--------------------------------------------------------------------------------
/demo/sample-xxl.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree - Example
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
32 |
33 |
34 |
35 | Example: Default
36 |
37 | This tree uses default options.
38 | It is initialized from a hidden <ul> element on this page.
39 |
40 |
41 | Skin:
42 |
43 |
44 |
45 | item1 with key and tooltip
46 | item2
47 | Folder with some children
48 |
49 | Sub-item 3.1
50 |
51 | Sub-item 3.1.1
52 | Sub-item 3.1.2
53 |
54 | Sub-item 3.2
55 |
56 | Sub-item 3.2.1
57 | Sub-item 3.2.2
58 |
59 |
60 | Document with some children (expanded on init)
61 |
62 | Sub-item 4.1 (active and focus on init)
63 |
64 | Sub-item 4.1.1
65 | Sub-item 4.1.2
66 |
67 | Sub-item 4.2
68 |
69 | Sub-item 4.2.1
70 | Sub-item 4.2.2
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 | jquery.fancytree.js project home
80 | Link to this page
81 | Example Browser
82 | View source code
83 |
84 |
85 |
86 |
87 |
88 |
--------------------------------------------------------------------------------
/demo/skin-custom/accept.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/accept.png
--------------------------------------------------------------------------------
/demo/skin-custom/arrow_right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/arrow_right.png
--------------------------------------------------------------------------------
/demo/skin-custom/bug.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/bug.png
--------------------------------------------------------------------------------
/demo/skin-custom/cancel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/cancel.png
--------------------------------------------------------------------------------
/demo/skin-custom/custom.css:
--------------------------------------------------------------------------------
1 | /*******************************************************************************
2 | * Sample for a Dynatree custom stylesheet.
3 | * This is expected to be included after the standard ui.dynatree.css, thus
4 | * overridung the defaults.
5 | */
6 | .dynatree-has-children span.dynatree-icon
7 | {
8 | background-position: 0 0;
9 | background-image: url("doc_with_children.gif");
10 | }
11 |
12 | .dynatree-ico-cf span.dynatree-icon /* Collapsed Folder */
13 | {
14 | background-image: url("folder_docs.gif");
15 | }
16 |
17 | .dynatree-ico-ef span.dynatree-icon /* Expanded Folder */
18 | {
19 | background-image: url("folder_images.gif");
20 | }
21 |
22 |
23 | /*******************************************************************************
24 | * Node titles
25 | */
26 |
27 | span.dynatree-has-children a
28 | {
29 | font-style: oblique;
30 | }
31 |
32 | span.dynatree-selected a
33 | {
34 | color: green;
35 | font-style: italic;
36 | }
37 |
38 | span.dynatree-active a,
39 | span.dynatree-active a:hover
40 | {
41 | border: 1px solid maroon;
42 | background-color: #FAD8F0 !important; /* reddish */
43 | }
44 |
45 |
46 | /*******************************************************************************
47 | * Custom node classes (sample)
48 | */
49 |
50 | span.custom1 a
51 | {
52 | background-color: #ffffbb;
53 | color: maroon;
54 | }
55 | span.custom1 span.dynatree-icon
56 | {
57 | background-position: 0 0;
58 | background-image: url("customDoc2.gif");
59 | }
60 |
61 | span.custom2 a
62 | {
63 | font-weight: bold;
64 | background-color: silver;
65 | color: navy;
66 | }
67 | span.custom2 span.dynatree-icon
68 | {
69 | background-position: 0 0;
70 | background-image: url("folder_page.gif");
71 | }
72 |
--------------------------------------------------------------------------------
/demo/skin-custom/customDoc1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/customDoc1.gif
--------------------------------------------------------------------------------
/demo/skin-custom/customDoc2.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/customDoc2.gif
--------------------------------------------------------------------------------
/demo/skin-custom/customFolder1.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/customFolder1.gif
--------------------------------------------------------------------------------
/demo/skin-custom/doc_with_children.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/doc_with_children.gif
--------------------------------------------------------------------------------
/demo/skin-custom/emoticon_smile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/emoticon_smile.png
--------------------------------------------------------------------------------
/demo/skin-custom/emoticon_unhappy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/emoticon_unhappy.png
--------------------------------------------------------------------------------
/demo/skin-custom/error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/error.png
--------------------------------------------------------------------------------
/demo/skin-custom/exclamation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/exclamation.png
--------------------------------------------------------------------------------
/demo/skin-custom/eye.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/eye.png
--------------------------------------------------------------------------------
/demo/skin-custom/flag_red.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/flag_red.png
--------------------------------------------------------------------------------
/demo/skin-custom/folder_bug.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/folder_bug.png
--------------------------------------------------------------------------------
/demo/skin-custom/folder_docs.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/folder_docs.gif
--------------------------------------------------------------------------------
/demo/skin-custom/folder_images.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/folder_images.gif
--------------------------------------------------------------------------------
/demo/skin-custom/folder_page.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/folder_page.gif
--------------------------------------------------------------------------------
/demo/skin-custom/help.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/help.png
--------------------------------------------------------------------------------
/demo/skin-custom/key.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/key.png
--------------------------------------------------------------------------------
/demo/skin-custom/new.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/new.png
--------------------------------------------------------------------------------
/demo/skin-custom/note.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/note.png
--------------------------------------------------------------------------------
/demo/skin-custom/page_white_lightning.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/page_white_lightning.png
--------------------------------------------------------------------------------
/demo/skin-custom/page_white_star.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/skin-custom/page_white_star.png
--------------------------------------------------------------------------------
/demo/taxonomy-browser/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright 2015 Martin Wendt,
2 | https://wwWendt.de/
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining
5 | a copy of this software and associated documentation files (the
6 | "Software"), to deal in the Software without restriction, including
7 | without limitation the rights to use, copy, modify, merge, publish,
8 | distribute, sublicense, and/or sell copies of the Software, and to
9 | permit persons to whom the Software is furnished to do so, subject to
10 | the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be
13 | included in all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/demo/taxonomy-browser/README.md:
--------------------------------------------------------------------------------
1 | Taxonomy Browser
2 |
3 | Created as a demo for [Fancytree](https://github.com/mar10/fancytree/).
4 | Uses
5 | - jQuery
6 | - Bootstrap.js
7 | - Handlebars.js
8 | - Fancytree
9 |
--------------------------------------------------------------------------------
/demo/taxonomy-browser/TODO.md:
--------------------------------------------------------------------------------
1 | # Taxonomy Browser TODOs
2 | ## Fancytree
3 |
4 | - bootstrap theme 'jumps' just before expand animation ends
5 |
6 | - ext-wide: broken selecton bar when depth > 20
7 |
8 | - smart expand mode
9 | The tree gets way too large
10 |
11 | - Search could be improved.
12 | - restrict search row height to 1 em
13 | - DOWN key in search box should focus first result entry
14 | - After clicking a link, we should jump to the details?
15 | - Result should be collapsibel without dismissing the query?
16 |
17 | - concept: 'sparse tree': `node.partload = true`.
18 | only shows the parent paths, but knows that those parents may have more children,
19 | that need to be reloaded later.
20 | -> use to load Path to target species without reqursive loadPath requests.
21 |
22 | - Table:
23 | Support re-definition of colum templates (i.e. adding removing columns)
24 | - https://github.com/mar10/fancytree/issues/436
25 |
26 |
27 | ## GUI
28 |
29 | - Marine / Extinct / Terrestrial may have multiple values
30 | - Print mode
31 |
--------------------------------------------------------------------------------
/demo/taxonomy-browser/busy_bg_eee.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/taxonomy-browser/busy_bg_eee.png
--------------------------------------------------------------------------------
/demo/taxonomy-browser/busy_bg_fff.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/demo/taxonomy-browser/busy_bg_fff.png
--------------------------------------------------------------------------------
/demo/taxonomy-browser/header.tmpl.html:
--------------------------------------------------------------------------------
1 | {{#if vernacularName}} {{vernacularName}} {{else}} {{canonicalName}} {{/if}}
2 | {{#if profile.extinct}} Extinct {{/if}}
3 | {{rank}}
4 |
--------------------------------------------------------------------------------
/demo/taxonomy-browser/info-pane.tmpl.html:
--------------------------------------------------------------------------------
1 |
2 |
3 | {{#if vernacularName}} {{vernacularName}} {{else}} {{canonicalName}} {{/if}}
4 | {{#if profile.extinct}} Extinct {{/if}}
5 | {{rank}}
6 |
7 |
8 |
21 |
22 |
23 |
24 | {{> tmplDetails}}
25 |
26 |
27 | {{> tmplMedia}}
28 |
29 |
30 |
31 |
32 | Accessed via GBIF Secretariat: GBIF Backbone Taxonomy on {{now}}.
33 | Open Authorative Information on GBIF .
34 |
35 |
--------------------------------------------------------------------------------
/demo/taxonomy-browser/media.tmpl.html:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/demo/taxonomy-browser/style.css:
--------------------------------------------------------------------------------
1 | body {
2 | padding: 0 1em;
3 | }
4 |
5 | /* Style distinct search result columns */
6 | /*
7 | #searchResultTree th:nth-child(1),
8 | #searchResultTree td:nth-child(1) {
9 | }
10 | */
11 |
12 | /* Style tree container */
13 | #taxonTree {
14 | padding-bottom: 20px;
15 | }
16 | #taxonTree .fancytree-container {
17 | border: 1px solid #ccc;
18 | border-radius: 3px;
19 | max-height: 600px;
20 | overflow: auto;
21 | }
22 |
23 | #searchResultTree td > div.truncate {
24 | max-height: 3em;
25 | /*max-width: 100%;*/
26 | overflow: hidden;
27 | text-overflow: ellipsis;
28 | /*white-space: nowrap;*/
29 | /*color: red;*/
30 | }
31 |
32 | /* Set to different containers while requests are pending:; */
33 | .busy {
34 | color: gray;
35 | background-image: url("busy_bg_fff.png");
36 | background-repeat: repeat;
37 | }
38 |
39 | /* Improve connection lines for bootstrap pane tabs */
40 | div.panel[role=tabpanel] {
41 | border-top-width: 0;
42 | border-top-right-radius: 0;
43 | border-top-left-radius: 0;
44 | padding: 3px;
45 | }
46 |
47 | /* Fix alignment for bootstrap media list */
48 | .media-left {
49 | display: inline-block;
50 | vertical-align: top;
51 | }
52 | .media-body {
53 | display: inline-block;
54 | }
55 |
56 | /* Fix bootstrap media thumbnails */
57 | a.thumbnail {
58 | overflow: hidden;
59 | }
60 | a.thumbnail:hover,
61 | a.thumbnail:active {
62 | text-decoration: none;
63 | }
64 |
65 | /* Fix bootstrap media carousel */
66 | div.carousel-inner >.item >img {
67 | max-height: 40em;
68 | /*height: 50em;*/
69 | }
70 | img.media-object {
71 | max-height: 64px;
72 | max-width: 64px;
73 | }
74 |
--------------------------------------------------------------------------------
/demo/taxonomy-browser/test_gbif_ws.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Test GBIF Webservice
6 |
7 |
8 |
28 |
29 |
30 |
31 |
34 | JSON getHierarchyDownFromTSN
35 | JSONP getHierarchyDownFromTSN
36 | JSON searchForAnyMatchPaged
37 | JSONP searchForAnyMatchPaged
38 |
39 |
40 |
--------------------------------------------------------------------------------
/demo/taxonomy-browser/test_itis_ws.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Test ITIS Webservice
6 |
7 |
8 |
77 |
78 |
79 |
80 |
83 | JSON getHierarchyDownFromTSN
84 | JSONP getHierarchyDownFromTSN
85 | JSON searchForAnyMatchPaged
86 | JSONP searchForAnyMatchPaged
87 |
88 |
89 |
--------------------------------------------------------------------------------
/demo/top.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Fancytree - Example Browser
7 |
8 |
30 |
31 |
32 |
33 |
40 |
41 |
42 |
--------------------------------------------------------------------------------
/demo/welcome.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree - Example
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 | Fancytree - Examples
15 |
16 | Fancytree is a JavaScript tree view / tree grid plugin with support for keyboard,
17 | inline editing, filtering, checkboxes, drag'n'drop, and lazy loading.
18 |
19 |
20 | This site presents some live examples for Fancytree.
21 |
22 | Select a topic on the navigator to the left and click 'View source code'
23 | at the bottom of the sample frame for details.
24 |
25 | More documentation and infos can be found at the
26 | Documentation Wiki .
27 |
28 | Have fun :-)
29 |
30 |
31 |
32 |
33 |
36 |
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/dist/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright 2008-2023 Martin Wendt,
2 | https://wwWendt.de/
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining
5 | a copy of this software and associated documentation files (the
6 | "Software"), to deal in the Software without restriction, including
7 | without limitation the rights to use, copy, modify, merge, publish,
8 | distribute, sublicense, and/or sell copies of the Software, and to
9 | permit persons to whom the Software is furnished to do so, subject to
10 | the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be
13 | included in all copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
16 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
17 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
18 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
19 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
20 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
21 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22 |
--------------------------------------------------------------------------------
/dist/skin-awesome/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-awesome/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-awesome/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-awesome/vline.gif
--------------------------------------------------------------------------------
/dist/skin-bootstrap-n/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-bootstrap-n/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-bootstrap-n/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-bootstrap-n/vline.gif
--------------------------------------------------------------------------------
/dist/skin-bootstrap/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-bootstrap/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-bootstrap/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-bootstrap/vline.gif
--------------------------------------------------------------------------------
/dist/skin-custom-1/README.md:
--------------------------------------------------------------------------------
1 | ### Creating Custom Skins
2 |
3 | 1. Create a folder like this (recommended name: 'src/skin-custom-...')
4 | 2. For a start, copy files from one of the existing skin folders (src/skin-...)
5 | to the custom folder:
6 | - ui.fancytree.less (required)
7 | - icons.gif (if needed)
8 | - loading.gif (if needed)
9 | 3. cd to your fancytree folder and run `grunt dev` from the console.
10 | Note: NPM and Grunt are required.
11 | Read [how to install the toolset](https://github.com/mar10/fancytree/wiki/HowtoContribute#install-the-source-code-and-tools-for-debugging-and-contributing).
12 | 4. Edit and save your ui.fancytree.less file.
13 | The `ui.fancytree.css` will be generated and updated automatically from
14 | the LESS file.
15 |
--------------------------------------------------------------------------------
/dist/skin-lion/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-lion/icons-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-lion/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-lion/icons.gif
--------------------------------------------------------------------------------
/dist/skin-lion/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-lion/loading.gif
--------------------------------------------------------------------------------
/dist/skin-lion/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-lion/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-lion/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-lion/vline.gif
--------------------------------------------------------------------------------
/dist/skin-material/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-material/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-material/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-material/vline.gif
--------------------------------------------------------------------------------
/dist/skin-themeroller/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-themeroller/icons-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-themeroller/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-themeroller/icons.gif
--------------------------------------------------------------------------------
/dist/skin-themeroller/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-themeroller/loading.gif
--------------------------------------------------------------------------------
/dist/skin-themeroller/ui.fancytree.less:
--------------------------------------------------------------------------------
1 | /*!
2 | * Fancytree "ThemeRoller" skin.
3 | * This file should be included after a jQuery Themeroller style sheet.
4 | * It is meant to be used together with the ext-themeroller extension.
5 | *
6 | * DON'T EDIT THE CSS FILE DIRECTLY, since it is automatically generated from
7 | * the LESS templates.
8 | */
9 |
10 | // Import common styles
11 | @import "../skin-common.less";
12 |
13 |
14 | /*******************************************************************************
15 | * Styles specific to this skin.
16 | *
17 | * This section is automatically generated from the `ui-fancytree.less` template.
18 | ******************************************************************************/
19 |
20 |
21 | // Override the variable after the import.
22 | // NOTE: Variables are always resolved as the last definition, even if it is
23 | // after where it is used.
24 | @fancy-use-sprites: true; // false: suppress all background images (i.e. icons)
25 |
26 | @fancy-line-height: 20px; // height of a nodes selection bar including borders
27 | @fancy-node-v-spacing: 0px; // gap between two node borders
28 | @fancy-icon-width: 16px;
29 | @fancy-icon-height: 16px;
30 | @fancy-icon-spacing: 3px; // margin between icon/icon or icon/title
31 | @fancy-icon-ofs-top: 2px; // extra vertical offset for expander, checkbox and icon
32 | @fancy-title-ofs-top: 0px; // extra vertical offset for title
33 | @fancy-node-border-width: 1px;
34 | @fancy-node-border-radius: 0px;
35 | @fancy-node-outline-width: 1px;
36 |
37 |
38 | // We need to define this variable here (not in skin-common.less) to make it
39 | // work with grunt and webpack:
40 | @fancy-image-prefix: "./skin-themeroller/";
41 |
42 | // Use 'data-uri(...)' to embed the image into CSS instead of linking to 'loading.gif':
43 | // @fancy-loading-url: data-uri("@{fancy-image-prefix}loading.gif");
44 | // Set to `true` to use `data-uri(...)` which will embed icons.gif into CSS
45 | // instead of linking to that file:
46 | // @fancy-inline-sprites: true;
47 |
48 | /*******************************************************************************
49 | * Node titles
50 | */
51 | .fancytree-plain {
52 | span.fancytree-node {
53 | border: @fancy-node-border-width solid transparent; // avoid jumping, when a border is added on hover
54 | }
55 | }
56 |
57 | /*******************************************************************************
58 | * 'table' extension
59 | */
60 | table.fancytree-ext-table tbody {
61 | tr td {
62 | border: 1px solid transparent;
63 | }
64 | }
65 |
--------------------------------------------------------------------------------
/dist/skin-themeroller/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-themeroller/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-themeroller/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-themeroller/vline.gif
--------------------------------------------------------------------------------
/dist/skin-vista/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-vista/icons-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-vista/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-vista/icons.gif
--------------------------------------------------------------------------------
/dist/skin-vista/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-vista/loading.gif
--------------------------------------------------------------------------------
/dist/skin-vista/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-vista/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-vista/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-vista/vline.gif
--------------------------------------------------------------------------------
/dist/skin-win7/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win7/icons-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-win7/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win7/icons.gif
--------------------------------------------------------------------------------
/dist/skin-win7/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win7/loading.gif
--------------------------------------------------------------------------------
/dist/skin-win7/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win7/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-win7/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win7/vline.gif
--------------------------------------------------------------------------------
/dist/skin-win8-n/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8-n/icons-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-win8-n/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8-n/icons.gif
--------------------------------------------------------------------------------
/dist/skin-win8-n/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8-n/loading.gif
--------------------------------------------------------------------------------
/dist/skin-win8-n/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8-n/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-win8-n/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8-n/vline.gif
--------------------------------------------------------------------------------
/dist/skin-win8-xxl/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8-xxl/icons-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-win8-xxl/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8-xxl/icons.gif
--------------------------------------------------------------------------------
/dist/skin-win8-xxl/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8-xxl/loading.gif
--------------------------------------------------------------------------------
/dist/skin-win8-xxl/ui.fancytree.less:
--------------------------------------------------------------------------------
1 | /*!
2 | * Fancytree "Win8" 32x32 skin.
3 | *
4 | * DON'T EDIT THE CSS FILE DIRECTLY, since it is automatically generated from
5 | * the LESS templates.
6 | */
7 |
8 | // Import common styles
9 | @import "../skin-common.less";
10 |
11 | // Import standard win8
12 | @import "../skin-win8/ui.fancytree.less";
13 |
14 |
15 | // Override the variable after the import.
16 | // NOTE: Variables are always resolved as the last definition, even if it is
17 | // after where it is used.
18 | @fancy-use-sprites: true; // false: suppress all background images (i.e. icons)
19 |
20 | @fancy-level-indent: 32px;
21 | @fancy-line-height: 32px; // height of a nodes selection bar including borders
22 | @fancy-node-v-spacing: 1px; // gap between two node borders
23 | @fancy-icon-width: 32px;
24 | @fancy-icon-height: 32px;
25 | @fancy-icon-spacing: 6px; // margin between icon/icon or icon/title
26 | @fancy-icon-ofs-top: 0px; // extra vertical offset for expander, checkbox and icon
27 | @fancy-title-ofs-top: 0px; // extra vertical offset for title
28 | @fancy-node-border-width: 1px;
29 | @fancy-node-border-radius: 0px;
30 | @fancy-node-outline-width: 1px;
31 |
32 | // We need to define this variable here (not in skin-common.less) to make it
33 | // work with grunt and webpack:
34 | @fancy-image-prefix: "./skin-win8-xxl/";
35 |
36 | ul.fancytree-container {
37 | // font-family: tahoma, arial, helvetica;
38 | font-size: 20pt;
39 | padding: 6px;
40 | }
41 |
--------------------------------------------------------------------------------
/dist/skin-win8-xxl/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8-xxl/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-win8-xxl/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8-xxl/vline.gif
--------------------------------------------------------------------------------
/dist/skin-win8/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8/icons-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-win8/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8/icons.gif
--------------------------------------------------------------------------------
/dist/skin-win8/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8/loading.gif
--------------------------------------------------------------------------------
/dist/skin-win8/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-win8/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-win8/vline.gif
--------------------------------------------------------------------------------
/dist/skin-xp/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-xp/icons-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-xp/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-xp/icons.gif
--------------------------------------------------------------------------------
/dist/skin-xp/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-xp/loading.gif
--------------------------------------------------------------------------------
/dist/skin-xp/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-xp/vline-rtl.gif
--------------------------------------------------------------------------------
/dist/skin-xp/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/dist/skin-xp/vline.gif
--------------------------------------------------------------------------------
/doc/README.md:
--------------------------------------------------------------------------------
1 | *Class API Reference for the [Fancytree JavaScript tree view / tree grid](https://github.com/mar10/fancytree/).*
2 |
3 | See also the [Fancytree Documentation Wiki](https://github.com/mar10/fancytree/wiki/).
4 |
--------------------------------------------------------------------------------
/doc/annotated-src/.folder:
--------------------------------------------------------------------------------
1 | # Folder content is generated by build process
2 |
--------------------------------------------------------------------------------
/doc/fancytree_benchmarks.txt:
--------------------------------------------------------------------------------
1 | # Fancytree benchmarks
2 |
3 | Results for
4 | http://localhost:8080/test/unit/test-bench.html
5 |
6 | ## MacBook Pro early 2011, i5, 2,3GHz, 4GB
7 | Safari 10.0.3
8 | - 2017-02-14: jQuery 3.1.1, jQuery UI 1.12.1,
9 | use _super instead of _superApply: 2220 ms
10 | 1440
11 | - 2017-02-14: jQuery 3.1.1, jQuery UI 1.12.1: 2180 ms
12 | 1413
13 | - 2017-02-14: jQuery 1.12.1, jQuery UI 1.11.4: 2440 ms
14 |
15 | ## MacBook Pro 2016, i5, 2,9GHz, 8GB
16 | Safari 11.1
17 | - 2018-05-12: jQuery 3.1.1, jQuery UI 1.12.1: 2220 ms
18 | cumulated:680
19 |
--------------------------------------------------------------------------------
/doc/iconInfo_32x32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/doc/iconInfo_32x32.png
--------------------------------------------------------------------------------
/doc/icons_layout.ods:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/doc/icons_layout.ods
--------------------------------------------------------------------------------
/doc/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree Documentation
6 |
7 |
8 |
9 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | Fancytree Documentation
23 |
24 | Has moved to the Documentation Wiki .
25 |
26 |
27 |
--------------------------------------------------------------------------------
/doc/jsdoc.conf.json:
--------------------------------------------------------------------------------
1 | {
2 | "tags" : {
3 | "allowUnknownTags" : true
4 | },
5 | "plugins" : ["plugins/markdown"],
6 | "templates" : {
7 | "cleverLinks" : false,
8 | "monospaceLinks" : false,
9 | "default" : {
10 | "includeDate": true,
11 | "outputSourceFiles" : true
12 | },
13 | "moogle" : {
14 | "analytics" : { "ua": "UA-316028-1", "domain": "auto" },
15 | "ghForkMe" : { "url": "https://github.com/mar10/fancytree/" },
16 | "footer" : "",
17 | "copyright" : "Fancytree Copyright © 2008-2021 Martin Wendt and contributors."
18 | }
19 | },
20 | "markdown" : {
21 | "parser" : "gfm",
22 | "hardwrap" : true
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/doc/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/doc/logo.png
--------------------------------------------------------------------------------
/doc/teaser.pdn:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/doc/teaser.pdn
--------------------------------------------------------------------------------
/doc/teaser1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/doc/teaser1.png
--------------------------------------------------------------------------------
/doc/teaser2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/doc/teaser2.png
--------------------------------------------------------------------------------
/doc/tutorials/howto-events.md:
--------------------------------------------------------------------------------
1 | #Howto write events
2 |
3 | TODO
4 |
--------------------------------------------------------------------------------
/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/favicon.ico
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree
6 |
7 |
8 |
9 | fancytree.js
10 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "ES6"
4 | },
5 | "exclude": [
6 | "build",
7 | "dist",
8 | "node_modules",
9 | "**/node_modules/*"
10 | ]
11 | }
12 |
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/README.md:
--------------------------------------------------------------------------------
1 | Super Theme Switcher is a jQuery plugin based on the original jQuery theme switcher that is no longer hosted or supported by the jQuery UI project.
2 |
3 | ### Example:
4 | $('#switcher').themeswitcher({
5 | imgpath: "images/",
6 | loadTheme: "dot-luv"
7 | });
8 |
9 | But since all parameters are optional you can just use it like this:
10 | $('#switcher').themeswitcher();
11 |
12 | ### Options
13 |
14 | * **imgPath**: String, path to image directory where theme icons are located
15 | * **rounded**: Boolean, rounded corners on themeswitcher link and dropdown
16 | * **themes**: An array of theme objects that will override the default themes.
17 | [{title:"My theme",name:"my-theme",icon:"my-icon.png",url:"http://url-to-my-css-file.css"}]
18 | * **additionalThemes**: An array of theme objects that will be INCLUDED along with the default themes.
19 | [{title:"My theme",name:"my-theme",icon:"my-icon.png",url:"http://url-to-my-css-file.css"}]
20 | * **jqueryUiVersion**: String, jQuery UI version of themes (Default themes are linked from Google CDN)
21 | * **themePath**: String, Base path to where the jQuery UI CSS themes are located (Default is Google CDN)
22 |
23 | Demo located [here](http://dl.dropbox.com/u/188460/themeswitcher/sample.htm).
24 |
25 | This plugin includes the awesome jQuery cookie plugin by Klaus Hartl found [here](https://github.com/carhartl/jquery-cookie)
26 |
27 | Contact
28 | ----
29 | [@davehoff](http://www.twitter.com/davehoff)
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/buttonbg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/buttonbg.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/icon_color_arrow.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/icon_color_arrow.gif
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/menuhoverbg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/menuhoverbg.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_base.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_base.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_black_matte.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_black_matte.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_black_tie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_black_tie.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_blitzer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_blitzer.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_cupertino.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_cupertino.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_dark_hive.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_dark_hive.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_dot_luv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_dot_luv.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_eggplant.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_eggplant.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_excite_bike.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_excite_bike.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_flick.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_flick.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_hot_sneaks.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_hot_sneaks.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_humanity.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_humanity.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_le_frog.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_le_frog.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_mint_choco.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_mint_choco.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_overcast.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_overcast.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_pepper_grinder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_pepper_grinder.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_smoothness.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_smoothness.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_south_street.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_south_street.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_start_menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_start_menu.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_sunny.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_sunny.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_swanky_purse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_swanky_purse.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_trontastic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_trontastic.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_ui_dark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_ui_dark.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_ui_light.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_ui_light.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/images/theme_90_windoze.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/Super-Theme-Switcher/images/theme_90_windoze.png
--------------------------------------------------------------------------------
/lib/Super-Theme-Switcher/sample.htm:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Theme Switcher
5 |
6 |
7 |
8 |
9 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 | A button element
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
--------------------------------------------------------------------------------
/lib/amd-intro-require-jquery.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | // AMD. Register as an anonymous module.
4 | define( [ "jquery" ], factory );
5 | } else if ( typeof module === "object" && module.exports ) {
6 | // Node/CommonJS
7 | module.exports = factory(require("jquery"));
8 | } else {
9 | // Browser globals
10 | factory( jQuery );
11 | }
12 | }(function( $ ) {
13 |
--------------------------------------------------------------------------------
/lib/amd-intro-require-local-ui.js:
--------------------------------------------------------------------------------
1 | // UMD wrapper for the Fancytree core module
2 | (function( factory ) {
3 | if ( typeof define === "function" && define.amd ) {
4 | // AMD. Register as an anonymous module.
5 | define( [ "jquery", "./jquery.fancytree.ui-deps" ], factory );
6 | } else if ( typeof module === "object" && module.exports ) {
7 | // Node/CommonJS
8 | require("jquery.fancytree.ui-deps")
9 | module.exports = factory(require("jquery"));
10 | } else {
11 | // Browser globals
12 | factory( jQuery );
13 | }
14 | }(function( $ ) {
15 |
--------------------------------------------------------------------------------
/lib/amd-intro-require-native-ui.js:
--------------------------------------------------------------------------------
1 | (function( factory ) {
2 | if ( typeof define === "function" && define.amd ) {
3 | // AMD. Register as an anonymous module.
4 | define( [
5 | "jquery",
6 | "jquery-ui/ui/widgets/mouse",
7 | "jquery-ui/ui/widgets/draggable",
8 | "jquery-ui/ui/widgets/droppable",
9 | "jquery-ui/ui/effects/effect-blind",
10 | "jquery-ui/ui/data",
11 | "jquery-ui/ui/effect",
12 | "jquery-ui/ui/focusable",
13 | "jquery-ui/ui/keycode",
14 | "jquery-ui/ui/position",
15 | "jquery-ui/ui/scroll-parent",
16 | "jquery-ui/ui/tabbable",
17 | "jquery-ui/ui/unique-id",
18 | "jquery-ui/ui/widget"
19 | ], factory );
20 | } else if ( typeof module === "object" && module.exports ) {
21 | // Node/CommonJS
22 | module.exports = factory(require("jquery"));
23 | } else {
24 | // Browser globals
25 | factory( jQuery );
26 | }
27 | }(function( $ ) {
28 |
--------------------------------------------------------------------------------
/lib/amd-outro.js:
--------------------------------------------------------------------------------
1 | // Value returned by `require('jquery.fancytree')`
2 | return $.ui.fancytree;
3 | })); // End of closure
4 |
--------------------------------------------------------------------------------
/lib/contextmenu-abs/images/cut.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/contextmenu-abs/images/cut.png
--------------------------------------------------------------------------------
/lib/contextmenu-abs/images/door.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/contextmenu-abs/images/door.png
--------------------------------------------------------------------------------
/lib/contextmenu-abs/images/page_white_copy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/contextmenu-abs/images/page_white_copy.png
--------------------------------------------------------------------------------
/lib/contextmenu-abs/images/page_white_delete.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/contextmenu-abs/images/page_white_delete.png
--------------------------------------------------------------------------------
/lib/contextmenu-abs/images/page_white_edit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/contextmenu-abs/images/page_white_edit.png
--------------------------------------------------------------------------------
/lib/contextmenu-abs/images/page_white_paste.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/lib/contextmenu-abs/images/page_white_paste.png
--------------------------------------------------------------------------------
/lib/contextmenu-abs/jquery.contextMenu.css:
--------------------------------------------------------------------------------
1 | /* Generic context menu styles */
2 | .contextMenu {
3 | position: absolute;
4 | width: 120px;
5 | z-index: 99999;
6 | border: solid 1px #CCC;
7 | background: #EEE;
8 | padding: 0px;
9 | margin: 0px;
10 | display: none;
11 | }
12 |
13 | .contextMenu LI {
14 | list-style: none;
15 | padding: 0px;
16 | margin: 0px;
17 | }
18 |
19 | .contextMenu A {
20 | color: #333;
21 | text-decoration: none;
22 | display: block;
23 | line-height: 20px;
24 | height: 20px;
25 | background-position: 6px center;
26 | background-repeat: no-repeat;
27 | outline: none;
28 | padding: 1px 5px;
29 | padding-left: 28px;
30 | }
31 |
32 | .contextMenu LI.hover A {
33 | color: #FFF;
34 | background-color: #3399FF;
35 | }
36 |
37 | .contextMenu LI.disabled A {
38 | color: #AAA;
39 | cursor: default;
40 | }
41 |
42 | .contextMenu LI.hover.disabled A {
43 | background-color: transparent;
44 | }
45 |
46 | .contextMenu LI.separator {
47 | border-top: solid 1px #CCC;
48 | }
49 |
50 | /*
51 | Adding Icons
52 |
53 | You can add icons to the context menu by adding
54 | classes to the respective LI element(s)
55 | */
56 |
57 | .contextMenu LI.edit A { background-image: url(images/page_white_edit.png); }
58 | .contextMenu LI.cut A { background-image: url(images/cut.png); }
59 | .contextMenu LI.copy A { background-image: url(images/page_white_copy.png); }
60 | .contextMenu LI.paste A { background-image: url(images/page_white_paste.png); }
61 | .contextMenu LI.delete A { background-image: url(images/page_white_delete.png); }
62 | .contextMenu LI.quit A { background-image: url(images/door.png); }
63 |
--------------------------------------------------------------------------------
/lib/jquery.cookie.js:
--------------------------------------------------------------------------------
1 | /*!
2 | * jQuery Cookie Plugin v1.3.1
3 | * https://github.com/carhartl/jquery-cookie
4 | *
5 | * Copyright 2013 Klaus Hartl
6 | * Released under the MIT license
7 | */
8 | (function (factory) {
9 | if (typeof define === 'function' && define.amd) {
10 | // AMD. Register as anonymous module.
11 | define(['jquery'], factory);
12 | } else {
13 | // Browser globals.
14 | factory(jQuery);
15 | }
16 | }(function ($) {
17 |
18 | var pluses = /\+/g;
19 |
20 | function raw(s) {
21 | return s;
22 | }
23 |
24 | function decoded(s) {
25 | return decodeURIComponent(s.replace(pluses, ' '));
26 | }
27 |
28 | function converted(s) {
29 | if (s.indexOf('"') === 0) {
30 | // This is a quoted cookie as according to RFC2068, unescape
31 | s = s.slice(1, -1).replace(/\\"/g, '"').replace(/\\\\/g, '\\');
32 | }
33 | try {
34 | return config.json ? JSON.parse(s) : s;
35 | } catch(er) {}
36 | }
37 |
38 | var config = $.cookie = function (key, value, options) {
39 |
40 | // write
41 | if (value !== undefined) {
42 | options = $.extend({}, config.defaults, options);
43 |
44 | if (typeof options.expires === 'number') {
45 | var days = options.expires, t = options.expires = new Date();
46 | t.setDate(t.getDate() + days);
47 | }
48 |
49 | value = config.json ? JSON.stringify(value) : String(value);
50 |
51 | return (document.cookie = [
52 | config.raw ? key : encodeURIComponent(key),
53 | '=',
54 | config.raw ? value : encodeURIComponent(value),
55 | options.expires ? '; expires=' + options.expires.toUTCString() : '', // use expires attribute, max-age is not supported by IE
56 | options.path ? '; path=' + options.path : '',
57 | options.domain ? '; domain=' + options.domain : '',
58 | options.secure ? '; secure' : ''
59 | ].join(''));
60 | }
61 |
62 | // read
63 | var decode = config.raw ? raw : decoded;
64 | var cookies = document.cookie.split('; ');
65 | var result = key ? undefined : {};
66 | for (var i = 0, l = cookies.length; i < l; i++) {
67 | var parts = cookies[i].split('=');
68 | var name = decode(parts.shift());
69 | var cookie = decode(parts.join('='));
70 |
71 | if (key && key === name) {
72 | result = converted(cookie);
73 | break;
74 | }
75 |
76 | if (!key) {
77 | result[name] = converted(cookie);
78 | }
79 | }
80 |
81 | return result;
82 | };
83 |
84 | config.defaults = {};
85 |
86 | $.removeCookie = function (key, options) {
87 | if ($.cookie(key) !== undefined) {
88 | $.cookie(key, '', $.extend(options, { expires: -1 }));
89 | return true;
90 | }
91 | return false;
92 | };
93 |
94 | }));
95 |
--------------------------------------------------------------------------------
/lib/jquery.skinswitcher.js:
--------------------------------------------------------------------------------
1 | /*******************************************************************************
2 | * jQuery.skinswitcher plugin.
3 | *
4 | * Change CSS include when combobox selection changes.
5 | * Copyright (c) 2012 Martin Wendt
6 | *
7 | * Usage:
8 | $("select#skinswitcher").skinswitcher({
9 | base: "../src/",
10 | choices: [{name: "XP", value: "xp", href: "skin/ui.dynatree.css"},
11 | {name: "Vista", value: "vista", href: "skin-vista/ui.dynatree.css"},
12 | {name: "Lion", value: "lion", href: "skin-lion/ui.dynatree.css"}
13 | ],
14 | init: "lion"
15 | });
16 | */
17 |
18 | (function( $ ) {
19 | var PLUGIN_NAME = "skinswitcher",
20 | defaultOptions = {
21 | /**RegEx that returns prefix, tag, and suffix of the CSS href.*/
22 | skinPattern: "^(\W/skin-)().css$",
23 | mode: "combo", // {String} mode 'combo' or 'radio'
24 | base: "",
25 | choices: []
26 | },
27 | methods = {
28 | init: function(options) {
29 | var opts = $.extend({}, defaultOptions, options),
30 | hrefs = [],
31 | $link = null,
32 | initialChoice = undefined;
33 | // Find tag, figure out current setting and mark for
34 | // later access
35 | $.each(opts.choices, function(){
36 | hrefs.push(this.href.toLowerCase());
37 | });
38 | $("head link").each(function(){
39 | for(var i=0; i= 0){
41 | $link = $(this);
42 | $link.addClass(PLUGIN_NAME);
43 | initialChoice = opts.choices[i];
44 | }
45 | }
46 | });
47 | return this.each(function() {
48 | // Add options to dropdown list
49 | var $combo = $(this);
50 | $combo.empty();
51 | $.each(opts.choices, function(i, choice){
52 | var $opt = $("", {
53 | text: choice.name,
54 | value: choice.value
55 | }).data("choice", choice);
56 | $combo.append($opt);
57 | });
58 | // Switch include
59 | $combo.change(function(){
60 | var choice = $(":selected", this).data("choice");
61 | $("link.skinswitcher").attr("href", opts.base + choice.href);
62 | });
63 | if(opts.init){
64 | $combo.val(opts.init).change();
65 | }else{
66 | // select combobox value to match current tag
67 | $combo.val(initialChoice.value);
68 | }
69 | });
70 | },
71 | change: function(href) {
72 | this.val("");
73 | },
74 | reset: function() {
75 | this.val("");
76 | }
77 | };
78 |
79 | $.fn[PLUGIN_NAME] = function(method) {
80 | // Method calling logic
81 | if ( methods[method] ) {
82 | return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
83 | } else if ( typeof method === "object" || ! method ) {
84 | return methods.init.apply(this, arguments);
85 | } else {
86 | $.error("Method " + method + " does not exist on jQuery." + PLUGIN_NAME);
87 | }
88 | };
89 | })( jQuery );
90 |
--------------------------------------------------------------------------------
/lib/prettify.css:
--------------------------------------------------------------------------------
1 | /* Pretty printing styles. Used with prettify.js. */
2 |
3 | .str { color: #080; }
4 | .kwd { color: #008; }
5 | .com { color: #800; }
6 | .typ { color: #606; }
7 | .lit { color: #066; }
8 | .pun { color: #660; }
9 | .pln { color: #000; }
10 | .tag { color: #008; }
11 | .atn { color: #606; }
12 | .atv { color: #080; }
13 | .dec { color: #606; }
14 | /*pre.prettyprint { padding: 2px; border: 1px solid #888 }*/
15 | pre.prettyprint {
16 | padding: 2px;
17 | border: 1px dashed #888;
18 | /* margin-left: 30px;
19 | margin-right: 10px;
20 | background-color: #f0f0f0;*/
21 | overflow: auto;
22 | }
23 |
24 | /* Specify class=linenums on a pre to get line numbering */
25 | ol.linenums { margin-top: 0; margin-bottom: 0 } /* IE indents via margin-left */
26 | li.L0,
27 | li.L1,
28 | li.L2,
29 | li.L3,
30 | li.L5,
31 | li.L6,
32 | li.L7,
33 | li.L8 { list-style-type: none }
34 | /* Alternate shading for lines */
35 | li.L1,
36 | li.L3,
37 | li.L5,
38 | li.L7,
39 | li.L9 { background: #eee }
40 |
41 | @media print {
42 | .str { color: #060; }
43 | .kwd { color: #006; font-weight: bold; }
44 | .com { color: #600; font-style: italic; }
45 | .typ { color: #404; font-weight: bold; }
46 | .lit { color: #044; }
47 | .pun { color: #440; }
48 | .pln { color: #000; }
49 | .tag { color: #006; font-weight: bold; }
50 | .atn { color: #404; }
51 | .atv { color: #060; }
52 | }
53 |
--------------------------------------------------------------------------------
/lib/qunit-composite.css:
--------------------------------------------------------------------------------
1 | .qunit-composite-suite {
2 | position: fixed;
3 | bottom: 0;
4 | left: 0;
5 |
6 | margin: 0;
7 | padding: 0;
8 | border-width: 1px 0 0;
9 | height: 45%;
10 | width: 100%;
11 |
12 | background: #fff;
13 | }
14 |
15 | #qunit-testsuites {
16 | margin: 0;
17 | padding: 0.5em 1.0em;
18 | font-family: "Helvetica Neue Light","HelveticaNeue-Light","Helvetica Neue",Calibri,Helvetica,Arial,sans-serif;
19 | font-size: small;
20 | background-color: #d2e0e6;
21 | border-bottom: 1px solid #fff;
22 | }
23 |
24 | #qunit-testsuites a {
25 | color: #00c;
26 | text-decoration: none;
27 | }
28 |
29 | #qunit-testsuites a:hover {
30 | text-decoration: underline;
31 | }
32 |
33 | #qunit-testsuites > li {
34 | display: inline-block;
35 | }
36 |
37 | #qunit-testsuites > li:first-child::before {
38 | content: "Suites: ";
39 | }
40 |
41 | #qunit-testsuites > li + li::before {
42 | content: "|\a0";
43 | }
44 |
45 | #qunit-testsuites > li::after {
46 | content: "\a0";
47 | }
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jquery.fancytree",
3 | "title": "jQuery Fancytree Plugin",
4 | "description": "JavaScript tree view / tree grid plugin with support for keyboard, inline editing, filtering, checkboxes, drag'n'drop, and lazy loading",
5 | "version": "2.38.6-0",
6 | "homepage": "https://github.com/mar10/fancytree",
7 | "author": {
8 | "name": "Martin Wendt",
9 | "url": "https://wwWendt.de"
10 | },
11 | "repository": {
12 | "type": "git",
13 | "url": "https://github.com/mar10/fancytree"
14 | },
15 | "bugs": {
16 | "url": "https://github.com/mar10/fancytree/issues"
17 | },
18 | "license": "MIT",
19 | "licenses": [
20 | {
21 | "type": "MIT",
22 | "url": "https://raw.githubusercontent.com/mar10/fancytree/master/LICENSE.txt"
23 | }
24 | ],
25 | "main": "./dist/modules/jquery.fancytree.js",
26 | "files": [
27 | "dist/"
28 | ],
29 | "directories": {},
30 | "keywords": [
31 | "ajax",
32 | "ecosystem:jquery",
33 | "jquery-plugin",
34 | "lazy",
35 | "table",
36 | "tabletree",
37 | "tree",
38 | "treegrid"
39 | ],
40 | "devDependencies": {
41 | "coffeescript": "^2.5.1",
42 | "eslint": "^7.8.1",
43 | "eslint-config-jquery": "^3.0.0",
44 | "eslint-config-prettier": "^8.0.0",
45 | "eslint-plugin-prettier": "^3.1.4",
46 | "grunt": "^1.6.1",
47 | "grunt-contrib-clean": "^2.0.0",
48 | "grunt-contrib-compress": "^2.0.0",
49 | "grunt-contrib-concat": "^1.0.0",
50 | "grunt-contrib-connect": "^3.0.0",
51 | "grunt-contrib-copy": "^1.0.0",
52 | "grunt-contrib-cssmin": "^4.0.0",
53 | "grunt-contrib-less": "^3.0.0",
54 | "grunt-contrib-qunit": "^6.0.0",
55 | "grunt-contrib-uglify": "^5.0.0",
56 | "grunt-contrib-watch": "^1.1.0",
57 | "grunt-docco": "^0.5.0",
58 | "grunt-eslint": "^23.0.0",
59 | "grunt-exec": "^3.0.0",
60 | "grunt-jsdoc": "^2.4.1",
61 | "grunt-text-replace": "^0.4.0",
62 | "grunt-yabs": "^1.3.0",
63 | "jsdoc": "^3.6.7",
64 | "marked": "^3.0.8 <4.0",
65 | "prettier": "^2.8.4",
66 | "puppeteer": "^22.11.2",
67 | "qunit": "^2.18.1"
68 | },
69 | "peerDependencies": {
70 | "jquery": ">=1.9"
71 | },
72 | "scripts": {
73 | "test": "grunt ci --verbose"
74 | }
75 | }
--------------------------------------------------------------------------------
/pyftpsync.yaml:
--------------------------------------------------------------------------------
1 | # Configuration for `pyftpsync run ...` command line tool.
2 | # See https://pyftpsync.readthedocs.io/ for details.
3 |
4 | # This task is used by `pyftpsync run` if no task is passed as argument:
5 | default_task: deploy
6 |
7 | # Default settings shared by all tasks:
8 | common_config:
9 | exclude: archive,build,node_modules,.*,_*
10 | progress: true
11 | remote: sftp://ssh.strato.de/tech/fancytree
12 | # Make --root default (can be overridden by --here):
13 | root: true
14 | # verbose: 4
15 |
16 | # List of task definitions:
17 | tasks:
18 | # sync_all:
19 | # command: sync
20 | # remote: ftp://wwwendt.de/tech/fancytree
21 |
22 | deploy:
23 | command: upload
24 | delete_unmatched: true
25 |
26 | deploy_force:
27 | command: upload
28 | delete_unmatched: true
29 | delete: true
30 | resolve: local
31 | force: true
32 |
--------------------------------------------------------------------------------
/src/jquery-ui-dependencies/LICENSE.txt:
--------------------------------------------------------------------------------
1 | Copyright jQuery Foundation and other contributors, https://jquery.org/
2 |
3 | This software consists of voluntary contributions made by many
4 | individuals. For exact contribution history, see the revision history
5 | available at https://github.com/jquery/jquery-ui
6 |
7 | The following license applies to all parts of this software except as
8 | documented below:
9 |
10 | ====
11 |
12 | Permission is hereby granted, free of charge, to any person obtaining
13 | a copy of this software and associated documentation files (the
14 | "Software"), to deal in the Software without restriction, including
15 | without limitation the rights to use, copy, modify, merge, publish,
16 | distribute, sublicense, and/or sell copies of the Software, and to
17 | permit persons to whom the Software is furnished to do so, subject to
18 | the following conditions:
19 |
20 | The above copyright notice and this permission notice shall be
21 | included in all copies or substantial portions of the Software.
22 |
23 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
24 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
25 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
26 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
27 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
28 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
29 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30 |
31 | ====
32 |
33 | Copyright and related rights for sample code are waived via CC0. Sample
34 | code is defined as all source code contained within the demos directory.
35 |
36 | CC0: http://creativecommons.org/publicdomain/zero/1.0/
37 |
38 | ====
39 |
40 | All files located in the node_modules and external directories are
41 | externally maintained libraries used by this software which have their
42 | own licenses; we recommend you read them, as their terms may differ from
43 | the terms above.
44 |
--------------------------------------------------------------------------------
/src/jquery-ui-dependencies/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "jquery-ui",
3 | "title": "jQuery UI",
4 | "description": "A curated set of user interface interactions, effects, widgets, and themes built on top of the jQuery JavaScript Library.",
5 | "version": "1.14.1",
6 | "homepage": "http://jqueryui.com",
7 | "author": {
8 | "name": "jQuery Foundation and other contributors",
9 | "url": "https://github.com/jquery/jquery-ui/blob/1.14.1/AUTHORS.txt"
10 | },
11 | "main": "ui/widget.js",
12 | "maintainers": [
13 | {
14 | "name": "Jörn Zaefferer",
15 | "email": "joern.zaefferer@gmail.com",
16 | "url": "http://bassistance.de"
17 | },
18 | {
19 | "name": "Mike Sherov",
20 | "email": "mike.sherov@gmail.com",
21 | "url": "http://mike.sherov.com"
22 | },
23 | {
24 | "name": "TJ VanToll",
25 | "email": "tj.vantoll@gmail.com",
26 | "url": "http://tjvantoll.com"
27 | },
28 | {
29 | "name": "Felix Nagel",
30 | "email": "info@felixnagel.com",
31 | "url": "http://www.felixnagel.com"
32 | },
33 | {
34 | "name": "Alex Schmitz",
35 | "email": "arschmitz@gmail.com",
36 | "url": "https://github.com/arschmitz"
37 | }
38 | ],
39 | "repository": {
40 | "type": "git",
41 | "url": "git://github.com/jquery/jquery-ui.git"
42 | },
43 | "bugs": {
44 | "url": "https://github.com/jquery/jquery-ui/issues"
45 | },
46 | "license": "MIT",
47 | "scripts": {
48 | "test": "grunt"
49 | },
50 | "dependencies": {
51 | "jquery": ">=1.8.0 <4.0.0"
52 | },
53 | "devDependencies": {
54 | "commitplease": "3.2.0",
55 | "eslint-config-jquery": "3.0.0",
56 | "glob": "7.2.0",
57 | "grunt": "1.5.3",
58 | "grunt-bowercopy": "1.2.5",
59 | "grunt-cli": "1.4.3",
60 | "grunt-compare-size": "0.4.2",
61 | "grunt-contrib-concat": "1.0.1",
62 | "grunt-contrib-csslint": "2.0.0",
63 | "grunt-contrib-qunit": "5.1.1",
64 | "grunt-contrib-requirejs": "1.0.0",
65 | "grunt-contrib-uglify": "5.0.1",
66 | "grunt-eslint": "23.0.0",
67 | "grunt-git-authors": "3.2.0",
68 | "grunt-html": "14.5.0",
69 | "load-grunt-tasks": "5.1.0",
70 | "rimraf": "3.0.2",
71 | "testswarm": "1.1.2"
72 | },
73 | "keywords": []
74 | }
75 |
--------------------------------------------------------------------------------
/src/skin-awesome/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-awesome/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-awesome/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-awesome/vline.gif
--------------------------------------------------------------------------------
/src/skin-bootstrap-n/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-bootstrap-n/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-bootstrap-n/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-bootstrap-n/vline.gif
--------------------------------------------------------------------------------
/src/skin-bootstrap/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-bootstrap/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-bootstrap/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-bootstrap/vline.gif
--------------------------------------------------------------------------------
/src/skin-custom-1/README.md:
--------------------------------------------------------------------------------
1 | ### Creating Custom Skins
2 |
3 | 1. Create a folder like this (recommended name: 'src/skin-custom-...')
4 | 2. For a start, copy files from one of the existing skin folders (src/skin-...)
5 | to the custom folder:
6 | - ui.fancytree.less (required)
7 | - icons.gif (if needed)
8 | - loading.gif (if needed)
9 | 3. cd to your fancytree folder and run `grunt dev` from the console.
10 | Note: NPM and Grunt are required.
11 | Read [how to install the toolset](https://github.com/mar10/fancytree/wiki/HowtoContribute#install-the-source-code-and-tools-for-debugging-and-contributing).
12 | 4. Edit and save your ui.fancytree.less file.
13 | The `ui.fancytree.css` will be generated and updated automatically from
14 | the LESS file.
15 |
--------------------------------------------------------------------------------
/src/skin-lion/icons-lion.psp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-lion/icons-lion.psp
--------------------------------------------------------------------------------
/src/skin-lion/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-lion/icons-rtl.gif
--------------------------------------------------------------------------------
/src/skin-lion/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-lion/icons.gif
--------------------------------------------------------------------------------
/src/skin-lion/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-lion/loading.gif
--------------------------------------------------------------------------------
/src/skin-lion/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-lion/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-lion/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-lion/vline.gif
--------------------------------------------------------------------------------
/src/skin-material/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-material/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-material/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-material/vline.gif
--------------------------------------------------------------------------------
/src/skin-themeroller/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-themeroller/icons-rtl.gif
--------------------------------------------------------------------------------
/src/skin-themeroller/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-themeroller/icons.gif
--------------------------------------------------------------------------------
/src/skin-themeroller/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-themeroller/loading.gif
--------------------------------------------------------------------------------
/src/skin-themeroller/ui.fancytree.less:
--------------------------------------------------------------------------------
1 | /*!
2 | * Fancytree "ThemeRoller" skin.
3 | * This file should be included after a jQuery Themeroller style sheet.
4 | * It is meant to be used together with the ext-themeroller extension.
5 | *
6 | * DON'T EDIT THE CSS FILE DIRECTLY, since it is automatically generated from
7 | * the LESS templates.
8 | */
9 |
10 | // Import common styles
11 | @import "../skin-common.less";
12 |
13 |
14 | /*******************************************************************************
15 | * Styles specific to this skin.
16 | *
17 | * This section is automatically generated from the `ui-fancytree.less` template.
18 | ******************************************************************************/
19 |
20 |
21 | // Override the variable after the import.
22 | // NOTE: Variables are always resolved as the last definition, even if it is
23 | // after where it is used.
24 | @fancy-use-sprites: true; // false: suppress all background images (i.e. icons)
25 |
26 | @fancy-line-height: 20px; // height of a nodes selection bar including borders
27 | @fancy-node-v-spacing: 0px; // gap between two node borders
28 | @fancy-icon-width: 16px;
29 | @fancy-icon-height: 16px;
30 | @fancy-icon-spacing: 3px; // margin between icon/icon or icon/title
31 | @fancy-icon-ofs-top: 2px; // extra vertical offset for expander, checkbox and icon
32 | @fancy-title-ofs-top: 0px; // extra vertical offset for title
33 | @fancy-node-border-width: 1px;
34 | @fancy-node-border-radius: 0px;
35 | @fancy-node-outline-width: 1px;
36 |
37 |
38 | // We need to define this variable here (not in skin-common.less) to make it
39 | // work with grunt and webpack:
40 | @fancy-image-prefix: "./skin-themeroller/";
41 |
42 | // Use 'data-uri(...)' to embed the image into CSS instead of linking to 'loading.gif':
43 | // @fancy-loading-url: data-uri("@{fancy-image-prefix}loading.gif");
44 | // Set to `true` to use `data-uri(...)` which will embed icons.gif into CSS
45 | // instead of linking to that file:
46 | // @fancy-inline-sprites: true;
47 |
48 | /*******************************************************************************
49 | * Node titles
50 | */
51 | .fancytree-plain {
52 | span.fancytree-node {
53 | border: @fancy-node-border-width solid transparent; // avoid jumping, when a border is added on hover
54 | }
55 | }
56 |
57 | /*******************************************************************************
58 | * 'table' extension
59 | */
60 | table.fancytree-ext-table tbody {
61 | tr td {
62 | border: 1px solid transparent;
63 | }
64 | }
65 |
--------------------------------------------------------------------------------
/src/skin-themeroller/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-themeroller/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-themeroller/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-themeroller/vline.gif
--------------------------------------------------------------------------------
/src/skin-vista/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-vista/icons-rtl.gif
--------------------------------------------------------------------------------
/src/skin-vista/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-vista/icons.gif
--------------------------------------------------------------------------------
/src/skin-vista/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-vista/loading.gif
--------------------------------------------------------------------------------
/src/skin-vista/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-vista/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-vista/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-vista/vline.gif
--------------------------------------------------------------------------------
/src/skin-win7/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win7/icons-rtl.gif
--------------------------------------------------------------------------------
/src/skin-win7/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win7/icons.gif
--------------------------------------------------------------------------------
/src/skin-win7/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win7/loading.gif
--------------------------------------------------------------------------------
/src/skin-win7/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win7/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-win7/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win7/vline.gif
--------------------------------------------------------------------------------
/src/skin-win8-n/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8-n/icons-rtl.gif
--------------------------------------------------------------------------------
/src/skin-win8-n/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8-n/icons.gif
--------------------------------------------------------------------------------
/src/skin-win8-n/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8-n/loading.gif
--------------------------------------------------------------------------------
/src/skin-win8-n/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8-n/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-win8-n/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8-n/vline.gif
--------------------------------------------------------------------------------
/src/skin-win8-xxl/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8-xxl/icons-rtl.gif
--------------------------------------------------------------------------------
/src/skin-win8-xxl/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8-xxl/icons.gif
--------------------------------------------------------------------------------
/src/skin-win8-xxl/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8-xxl/loading.gif
--------------------------------------------------------------------------------
/src/skin-win8-xxl/ui.fancytree.less:
--------------------------------------------------------------------------------
1 | /*!
2 | * Fancytree "Win8" 32x32 skin.
3 | *
4 | * DON'T EDIT THE CSS FILE DIRECTLY, since it is automatically generated from
5 | * the LESS templates.
6 | */
7 |
8 | // Import common styles
9 | @import "../skin-common.less";
10 |
11 | // Import standard win8
12 | @import "../skin-win8/ui.fancytree.less";
13 |
14 |
15 | // Override the variable after the import.
16 | // NOTE: Variables are always resolved as the last definition, even if it is
17 | // after where it is used.
18 | @fancy-use-sprites: true; // false: suppress all background images (i.e. icons)
19 |
20 | @fancy-level-indent: 32px;
21 | @fancy-line-height: 32px; // height of a nodes selection bar including borders
22 | @fancy-node-v-spacing: 1px; // gap between two node borders
23 | @fancy-icon-width: 32px;
24 | @fancy-icon-height: 32px;
25 | @fancy-icon-spacing: 6px; // margin between icon/icon or icon/title
26 | @fancy-icon-ofs-top: 0px; // extra vertical offset for expander, checkbox and icon
27 | @fancy-title-ofs-top: 0px; // extra vertical offset for title
28 | @fancy-node-border-width: 1px;
29 | @fancy-node-border-radius: 0px;
30 | @fancy-node-outline-width: 1px;
31 |
32 | // We need to define this variable here (not in skin-common.less) to make it
33 | // work with grunt and webpack:
34 | @fancy-image-prefix: "./skin-win8-xxl/";
35 |
36 | ul.fancytree-container {
37 | // font-family: tahoma, arial, helvetica;
38 | font-size: 20pt;
39 | padding: 6px;
40 | }
41 |
--------------------------------------------------------------------------------
/src/skin-win8-xxl/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8-xxl/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-win8-xxl/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8-xxl/vline.gif
--------------------------------------------------------------------------------
/src/skin-win8/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8/icons-rtl.gif
--------------------------------------------------------------------------------
/src/skin-win8/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8/icons.gif
--------------------------------------------------------------------------------
/src/skin-win8/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8/loading.gif
--------------------------------------------------------------------------------
/src/skin-win8/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-win8/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-win8/vline.gif
--------------------------------------------------------------------------------
/src/skin-xp/icons-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-xp/icons-rtl.gif
--------------------------------------------------------------------------------
/src/skin-xp/icons.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-xp/icons.gif
--------------------------------------------------------------------------------
/src/skin-xp/loading.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-xp/loading.gif
--------------------------------------------------------------------------------
/src/skin-xp/vline-rtl.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-xp/vline-rtl.gif
--------------------------------------------------------------------------------
/src/skin-xp/vline.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/src/skin-xp/vline.gif
--------------------------------------------------------------------------------
/test/doctypes/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Fancytree - doctypes
6 |
7 |
8 |
9 | Testing different doctypes
10 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/test/ft_fixtures.py:
--------------------------------------------------------------------------------
1 | """
2 | Generate Fancytree test data.
3 | Example:
4 | $ python ft_fixtures.py
5 | """
6 | import json
7 | import os
8 | from pprint import pformat
9 | import random
10 |
11 | from fabulist import Fabulist
12 |
13 |
14 | class GenerateTreeData(object):
15 | """."""
16 | def __init__(self):
17 | self.fab = Fabulist()
18 | self.count = 0
19 | self.data = {}
20 |
21 | @staticmethod
22 | def get_count(count):
23 | if type(count) in ("tuple", "list"):
24 | count = random.randrange(count[0], count[1])
25 | return int(count)
26 |
27 | def _generate(self, parent_node, child_def, common):
28 | fab = self.fab
29 | child_node_list = parent_node["children"] = []
30 | child_count = self.get_count(child_def["count"])
31 | sub_child_def = child_def.get("children")
32 | for i in range(child_count):
33 | node = {
34 | "title": fab.get_quote(child_def["title"]),
35 | "key": "{}.{}".format(parent_node["key"], i+1) if parent_node.get("key") else str(i+1)
36 | }
37 | child_node_list.append(node)
38 | self.count += 1
39 | if sub_child_def:
40 | self._generate(node, sub_child_def, common)
41 |
42 | return child_node_list
43 |
44 | def generate(self, opts, meta=None):
45 | self.data = {}
46 | if meta:
47 | self.data.update(meta)
48 | common = opts.get("common", {})
49 | child_def = opts.get("children", [])
50 | self._generate(self.data, child_def, common)
51 | if meta is None:
52 | return self.data["children"]
53 | return self.data
54 |
55 | def write(self, path, opts, meta=None):
56 | with open(path, "wt") as f:
57 | res = self.generate(opts, meta)
58 | json.dump(res, f)
59 | return
60 |
61 |
62 | def test():
63 | g = GenerateTreeData()
64 | opts = {
65 | "common": {},
66 | "children": {
67 | "title": "$(Noun)",
68 | "count": 10,
69 | "children": {
70 | "title": "$(Adj) $(noun)",
71 | "count": 100,
72 | "children": {
73 | "title": "$(Verb:ing) $(adv)",
74 | "count": 100,
75 | },
76 | },
77 | },
78 | }
79 |
80 | # res = g.generate(opts)
81 | # print(pformat(res))
82 | path = "/Users/martin/prj/git/fabulist-demo-flask/fabulator/trees.json"
83 | print("Generate data in {}...".format(path))
84 | res = g.write(path, opts)
85 | print("Generated {} nodes.".format(g.count))
86 |
87 | if __name__ == "__main__":
88 | test()
89 |
--------------------------------------------------------------------------------
/test/test-fastrender-10k-nodes.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | Fancytree - Example
8 |
9 |
11 |
13 |
14 |
16 |
72 |
73 |
74 |
75 | Expand All Folders
76 |
79 | Load
80 | Load(force)
81 | Page render
82 |
83 | Tree with embedded JSON data
84 |
85 |
86 |
87 |
88 |
89 |
90 |
--------------------------------------------------------------------------------
/test/unit/ajax-empty.json:
--------------------------------------------------------------------------------
1 | []
2 |
--------------------------------------------------------------------------------
/test/unit/ajax-sub2.json:
--------------------------------------------------------------------------------
1 | [ {"title": "Sub item", "lazy": true }, {"title": "Sub folder", "folder": true, "lazy": true } ]
2 |
--------------------------------------------------------------------------------
/test/unit/ajax-tree-plain.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "simple node (no explicit id, so a default key is generated)" },
3 | {"key": "2", "title": "item1 with key and tooltip", "tooltip": "Look, a tool tip!" },
4 | {"key": "3", "title": "item2 with html inside a span tag " },
5 | {"key": "4", "title": "node 4" },
6 | {"key": "5", "title": "using href", "href": "https://wwWendt.de/" },
7 | {"key": "6", "title": "node with some extra classes (will be added to the generated markup)", "extraClasses": "my-extra-class" },
8 | {"key": "10", "title": "Folder 1", "folder": true, "children": [
9 | {"key": "10_1", "title": "Sub-item 1.1", "children": [
10 | {"key": "10_1_1", "title": "Sub-item 1.1.1"},
11 | {"key": "10_1_2", "title": "Sub-item 1.1.2"}
12 | ]},
13 | {"key": "10_2", "title": "Sub-item 1.2", "children": [
14 | {"key": "10_2_1", "title": "Sub-item 1.2.1"},
15 | {"key": "10_2_2", "title": "Sub-item 1.2.2"}
16 | ]}
17 | ]},
18 | {"key": "20", "title": "Simple node with active children (expand)", "expanded": true, "children": [
19 | {"key": "20_1", "title": "Sub-item 2.1", "children": [
20 | {"key": "20_1_1", "title": "Sub-item 2.1.1"},
21 | {"key": "20_1_2", "title": "Sub-item 2.1.2"}
22 | ]},
23 | {"key": "20_2", "title": "Sub-item 2.2", "children": [
24 | {"key": "20_2_1", "title": "Sub-item 2.2.1"},
25 | {"key": "20_2_2", "title": "Sub-item 2.2.2"}
26 | ]}
27 | ]},
28 | {"key": "30", "title": "Lazy folder", "folder": true, "lazy": true },
29 | {"key": "31", "title": "Lazy folder 2", "folder": true, "lazy": true },
30 | {"key": "32", "title": "Lazy folder 3", "folder": true, "lazy": true }
31 | ]
32 |
--------------------------------------------------------------------------------
/test/unit/ajax-tree.json:
--------------------------------------------------------------------------------
1 | [
2 | {"title": "simple node (no explicit id, so a default key is generated)" },
3 | {"key": "2", "title": "item1 with key and tooltip", "tooltip": "Look, a tool tip!" },
4 | {"key": "3", "title": "item2 with html inside a span tag " },
5 | {"key": "4", "title": "this nodes uses 'nolink', so no <a> tag is generated", "nolink": true},
6 | {"key": "5", "title": "using href", "href": "https://wwWendt.de/" },
7 | {"key": "6", "title": "node with some extra classes (will be added to the generated markup)", "extraClasses": "my-extra-class" },
8 | {"key": "10", "title": "Folder 1", "folder": true, "children": [
9 | {"key": "10_1", "title": "Sub-item 1.1", "children": [
10 | {"key": "10_1_1", "title": "Sub-item 1.1.1"},
11 | {"key": "10_1_2", "title": "Sub-item 1.1.2"}
12 | ]},
13 | {"key": "10_2", "title": "Sub-item 1.2", "children": [
14 | {"key": "10_2_1", "title": "Sub-item 1.2.1"},
15 | {"key": "10_2_2", "title": "Sub-item 1.2.2"}
16 | ]}
17 | ]},
18 | {"key": "20", "title": "Simple node with active children (expand)", "expanded": true, "children": [
19 | {"key": "20_1", "title": "Sub-item 2.1", "children": [
20 | {"key": "20_1_1", "title": "Sub-item 2.1.1"},
21 | {"key": "20_1_2", "title": "Sub-item 2.1.2"}
22 | ]},
23 | {"key": "20_2", "title": "Sub-item 2.2", "children": [
24 | {"key": "20_2_1", "title": "Sub-item 2.2.1"},
25 | {"key": "20_2_2", "title": "Sub-item 2.2.2"}
26 | ]}
27 | ]},
28 | {"key": "30", "title": "Lazy folder", "folder": true, "lazy": true },
29 | {"key": "31", "title": "Lazy folder (preload)", "folder": true, "lazy": true, "preload": true },
30 | {"key": "32", "title": "Lazy folder (expand on load)", "folder": true, "lazy": true, "expanded": true }
31 | ]
32 |
--------------------------------------------------------------------------------
/test/unit/custom_icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mar10/fancytree/28823fa5e63b1dc96e38cb462ed92549465d3b84/test/unit/custom_icon.png
--------------------------------------------------------------------------------
/test/unit/server.js:
--------------------------------------------------------------------------------
1 | /*jshint node: true */
2 | var http = require("http");
3 | var url = require("url");
4 | var path = require("path");
5 | var fs = require("fs");
6 |
7 | http.createServer(function(request, response) {
8 | var uri = url.parse(request.url).pathname,
9 | filename = path.join(process.cwd(), uri);
10 |
11 | fs.readFile(filename, "binary", function(err, file) {
12 | if (err) {
13 | response.writeHead(500, { "Content-Type": "text/plain" });
14 | response.write(err + "\n");
15 | response.end();
16 | return;
17 | }
18 |
19 | response.writeHead(200, filename.match(/\.js$/) ? { "Content-Type": "text/javascript" } : {});
20 | response.write(file, "utf-8");
21 | response.end();
22 | });
23 | }).listen(8124, "0.0.0.0");
24 |
25 | console.log("Test suite at http://0.0.0.0:8124/test/unit/test-core.html");
26 |
--------------------------------------------------------------------------------
/test/unit/test-bench-issues.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree benchmarks
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 | test markup, will be hidden
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 | #idx Node span icon text input
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
--------------------------------------------------------------------------------
/test/unit/test-core-build.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests - Core: Build
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | (Fixture is hidden)
19 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/test/unit/test-core-dist.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests - Core: Dist
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | (Fixture is hidden)
19 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/test/unit/test-core.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests - Core
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | (Fixture is hidden)
22 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/test/unit/test-ext-filter.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests - ext-filter
5 |
6 |
7 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | test markup, will be hidden
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/test/unit/test-ext-misc.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests - Table extension
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
16 |
17 |
18 |
20 |
21 |
22 |
23 | test markup, will be hidden
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/test/unit/test-ext-table.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests - Table extension
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
18 |
19 |
20 |
21 | test markup, will be hidden
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/test/unit/test-ext-table.js:
--------------------------------------------------------------------------------
1 | jQuery(document).ready(function () {
2 |
3 | /*globals QUnit, TEST_TOOLS */
4 |
5 | var $ = jQuery,
6 | tools = TEST_TOOLS,
7 | treedata = [
8 | { key: "1", title: "item 1" },
9 | {
10 | key: "2", title: "item 2", children: [
11 | { key: "2_1", title: "item 2_1" },
12 | {
13 | key: "2_2", title: "item 2_2", children: [
14 | { key: "2_2_1", title: "item 2_2_1" },
15 | { key: "2_2_2", title: "item 2_2_2" }
16 | ]
17 | }
18 | ]
19 | }
20 | ];
21 |
22 | /*******************************************************************************
23 | * Initialize QUnit
24 | */
25 |
26 | tools.initQUnit();
27 |
28 | // Create an Info section (will be expanded when tests are completed)
29 | tools.createInfoSection();
30 |
31 | // Silence, please
32 | $.ui.fancytree.debugLevel = 1;
33 |
34 |
35 | /*******************************************************************************
36 | * Tool functions
37 | */
38 |
39 | /** Get FancytreeNode from current tree. */
40 | function _getNode(key) {
41 | return $.ui.fancytree.getTree("#tree").getNodeByKey(key);
42 | }
43 |
44 |
45 | /*******************************************************************************
46 | *
47 | */
48 | QUnit.module("Table ext", function (hooks) {
49 | // Nested:
50 | QUnit.test("makeVisible not rendered deep node", function (assert) {
51 | var node,
52 | done = assert.async();
53 |
54 | // tools.setup(assert);
55 | assert.expect(5);
56 |
57 | $("#tree").fancytree({
58 | extensions: ["table"],
59 | source: treedata,
60 | init: function (event, data) {
61 | node = _getNode("2_2_2");
62 | assert.ok(node);
63 | assert.ok(!node.parent.isExpanded());
64 | assert.ok(!node.tr); // not rendered yet
65 |
66 | node.makeVisible().done(function () {
67 | assert.ok(node.parent.isExpanded());
68 | assert.ok(node.tr, node + " tr is rendered");
69 |
70 | done();
71 | });
72 | }
73 | });
74 | });
75 |
76 | QUnit.test("render deep node", function (assert) {
77 | // tools.setup(assert);
78 | assert.expect(11);
79 |
80 | $("#tree").fancytree({
81 | extensions: ["table"],
82 | source: treedata
83 | });
84 |
85 | var node,
86 | tree = $.ui.fancytree.getTree("#tree");
87 |
88 | node = _getNode("2_2_2");
89 | assert.ok(node);
90 | assert.ok(!node.parent.isExpanded());
91 | assert.ok(!node.tr, "not rendered yet");
92 |
93 | tree.render();
94 |
95 | assert.ok(!node.parent.isExpanded());
96 | assert.ok(!node.tr, "not rendered yet");
97 |
98 | tree.render(true, true);
99 |
100 | tree.visit(function (node) {
101 | // ok(node.parent.isExpanded(), node.parent + " is expanded");
102 | assert.ok(node.tr, node + " tr is rendered");
103 | });
104 | });
105 | });
106 |
107 |
108 |
109 | });
110 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery-10.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: jQuery 1.x, jQuery UI 1.12.x
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | test markup, will be hidden
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery-20.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: jQuery 2.2.4, jQuery UI 1.12.1
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | test markup, will be hidden
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery-30.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: jQuery 3.x, jQuery UI 1.12.x
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 | test markup, will be hidden
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery-latest.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: latest jQuery versions
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | test markup, will be hidden
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery-legacy.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: legacy jQuery versions
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | test markup, will be hidden
21 |
22 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery110-ui110.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: jQuery 1.x, jQuery UI 1.10
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | test markup, will be hidden
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery111-ui111.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: jQuery 1.x, jQuery UI 1.11
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | test markup, will be hidden
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery18-ui18.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: jQuery 1.8, jQuery UI 1.8
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | test markup, will be hidden
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery18-ui19.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: jQuery 1.8, jQuery UI 1.9
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | test markup, will be hidden
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery19-ui19.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: jQuery 1.9, jQuery UI 1.9
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 | test markup, will be hidden
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/test/unit/test-jQuery1x-mig-ui1x.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree unit tests: jQuery 1.9 (+ jquery-migrate), jQuery UI 1.9+
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 | test markup, will be hidden
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/test/unit/test-leaks.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree test memory leaks
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
20 |
21 |
22 |
23 |
24 | NOTE: this is a long-running test! Please open a taskmanager before,
25 | and check memory consumption while executing this test.
26 |
27 |
28 | test markup, will be hidden
29 |
30 |
31 |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/test/unit/test-leaks.js:
--------------------------------------------------------------------------------
1 | jQuery(document).ready(function(){
2 |
3 | /*globals QUnit, TEST_TOOLS */
4 |
5 | var $ = jQuery,
6 | tools = TEST_TOOLS;
7 |
8 | /* *****************************************************************************
9 | * QUnit setup
10 | */
11 | QUnit.log(function(data) {
12 | if(window.console && window.console.log) {
13 | window.console.log(data.result + " :: " + data.message);
14 | }
15 | });
16 |
17 | QUnit.done(function( details ) {
18 | // Expand last section when all tests are run
19 | $("ol#qunit-tests > li").last().find(">ol").show("slow");
20 | });
21 |
22 | //Silence, please
23 | $.ui.fancytree.debugLevel = 1;
24 |
25 | // Create an Info section (will be expanded when tests are completed)
26 | tools.createInfoSection();
27 |
28 |
29 | /* *****************************************************************************
30 | * Tool functions
31 | */
32 |
33 | function _resetEmptyTree(options){
34 | // destroy all trees
35 | $(":ui-fancytree").fancytree("destroy");
36 |
37 | var $tree = $("#tree"),
38 | opts = $.extend({
39 | source: [{title: "root node", key: "root"}],
40 | fx: false
41 | }, options);
42 | $tree.fancytree(opts);
43 | return $.ui.fancytree.getTree($tree);
44 | }
45 |
46 |
47 | function addNodes(node, level1, level2, level3, forceUpdate) {
48 | // if( forceUpdate !== true ){
49 | // node.tree.enableUpdate(false);
50 | // }
51 | var d, f, i, j, k, key;
52 |
53 | for(i=0; i= COUNT){
104 | clearInterval(id);
105 | assert.ok(true, "DONE");
106 | done();
107 | }
108 | }, DELAY);
109 | });
110 |
111 | // ---
112 | });
113 |
--------------------------------------------------------------------------------
/test/unit/test-regression.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Fancytree Regression Tests
5 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 | test markup, will be hidden
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/test/unit/test-regression.js:
--------------------------------------------------------------------------------
1 | /*******************************************************************************
2 | * Reproduced issues
3 | ******************************************************************************/
4 |
5 | jQuery(document).ready(function(){
6 |
7 | /*globals QUnit, TEST_TOOLS */
8 |
9 | /* jshint -W081 */ // Ignore 'W081: Too many var statements'
10 |
11 | var $ = jQuery,
12 | // Use tools from test-tools.js
13 | tools = TEST_TOOLS;
14 |
15 | /*******************************************************************************
16 | * Initialize QUnit
17 | */
18 |
19 | tools.initQUnit();
20 |
21 | // Create an Info section (will be expanded when tests are completed)
22 | tools.createInfoSection();
23 |
24 | // Silence, please
25 | $.ui.fancytree.debugLevel = 1;
26 |
27 |
28 | /*******************************************************************************
29 | * Module
30 | */
31 | QUnit.module("Issues");
32 |
33 | QUnit.test("issue310: Loading animation never ends using lazy read on empty folder", function(assert) {
34 | tools.setup(assert);
35 | assert.expect(1);
36 |
37 | var done = assert.async();
38 |
39 | $("#tree").fancytree({
40 | source: [{title: "lazy folder", key: "1", folder: true, lazy: true}],
41 | lazyLoad: function(event, data){
42 | assert.ok(true, "got `lazyLoad` event");
43 | data.result = [];
44 | done();
45 | }
46 | });
47 | var node = $.ui.fancytree.getTree("#tree").getNodeByKey("1");
48 | $("span.fancytree-expander", node.span).trigger("click");
49 | });
50 |
51 | QUnit.test("issue010: hideCheckbox", function(assert) {
52 | tools.setup(assert);
53 | assert.expect(2);
54 |
55 | var done = assert.async();
56 |
57 | $("#tree").fancytree({
58 | source: [{title: "node 1", key: "1"}],
59 | checkbox: true,
60 | init: function(event, data){
61 | var node = data.tree.getNodeByKey("1");
62 | assert.equal($(node.span).find("span.fancytree-checkbox").length, 1, "checkbox visible");
63 | node.checkbox = false;
64 | node.render(true);
65 | assert.equal($(node.span).find("span.fancytree-checkbox").length, 0, "checkbox removed");
66 | // assert.equal($(node.span).find("span.fancytree-checkbox:visible").length, 0, "checkbox hidden");
67 | done();
68 | }
69 | });
70 | });
71 |
72 |
73 | // ---
74 | });
75 |
--------------------------------------------------------------------------------
/test/unit/test-suite.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | QUnit Composite Test Suite
6 |
12 |
13 |
14 |
15 |
16 |
17 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
--------------------------------------------------------------------------------