[1791] | 1 | var cookie_namespace = 'doxygen'; |
---|
| 2 | var sidenav,navtree,content,header; |
---|
| 3 | |
---|
| 4 | function readCookie(cookie) |
---|
| 5 | { |
---|
| 6 | var myCookie = cookie_namespace+"_"+cookie+"="; |
---|
| 7 | if (document.cookie) |
---|
| 8 | { |
---|
| 9 | var index = document.cookie.indexOf(myCookie); |
---|
| 10 | if (index != -1) |
---|
| 11 | { |
---|
| 12 | var valStart = index + myCookie.length; |
---|
| 13 | var valEnd = document.cookie.indexOf(";", valStart); |
---|
| 14 | if (valEnd == -1) |
---|
| 15 | { |
---|
| 16 | valEnd = document.cookie.length; |
---|
| 17 | } |
---|
| 18 | var val = document.cookie.substring(valStart, valEnd); |
---|
| 19 | return val; |
---|
| 20 | } |
---|
| 21 | } |
---|
| 22 | return 0; |
---|
| 23 | } |
---|
| 24 | |
---|
| 25 | function writeCookie(cookie, val, expiration) |
---|
| 26 | { |
---|
| 27 | if (val==undefined) return; |
---|
| 28 | if (expiration == null) |
---|
| 29 | { |
---|
| 30 | var date = new Date(); |
---|
| 31 | date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week |
---|
| 32 | expiration = date.toGMTString(); |
---|
| 33 | } |
---|
| 34 | document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; expires=" + expiration+"; path=/"; |
---|
| 35 | } |
---|
| 36 | |
---|
| 37 | function resizeWidth() |
---|
| 38 | { |
---|
| 39 | var windowWidth = $(window).width() + "px"; |
---|
[1911] | 40 | var sidenavWidth = $(sidenav).outerWidth(); |
---|
[1791] | 41 | content.css({marginLeft:parseInt(sidenavWidth)+6+"px"}); //account for 6px-wide handle-bar |
---|
| 42 | writeCookie('width',sidenavWidth, null); |
---|
| 43 | } |
---|
| 44 | |
---|
| 45 | function restoreWidth(navWidth) |
---|
| 46 | { |
---|
| 47 | var windowWidth = $(window).width() + "px"; |
---|
| 48 | content.css({marginLeft:parseInt(navWidth)+6+"px"}); |
---|
| 49 | sidenav.css({width:navWidth + "px"}); |
---|
| 50 | } |
---|
| 51 | |
---|
| 52 | function resizeHeight() |
---|
| 53 | { |
---|
[1911] | 54 | var headerHeight = header.outerHeight(); |
---|
| 55 | var footerHeight = footer.outerHeight(); |
---|
[1791] | 56 | var windowHeight = $(window).height() - headerHeight - footerHeight; |
---|
| 57 | content.css({height:windowHeight + "px"}); |
---|
| 58 | navtree.css({height:windowHeight + "px"}); |
---|
| 59 | sidenav.css({height:windowHeight + "px",top: headerHeight+"px"}); |
---|
| 60 | } |
---|
| 61 | |
---|
| 62 | function initResizable() |
---|
| 63 | { |
---|
| 64 | header = $("#top"); |
---|
| 65 | sidenav = $("#side-nav"); |
---|
| 66 | content = $("#doc-content"); |
---|
| 67 | navtree = $("#nav-tree"); |
---|
| 68 | footer = $("#nav-path"); |
---|
| 69 | $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); |
---|
| 70 | $(window).resize(function() { resizeHeight(); }); |
---|
| 71 | var width = readCookie('width'); |
---|
| 72 | if (width) { restoreWidth(width); } else { resizeWidth(); } |
---|
| 73 | resizeHeight(); |
---|
| 74 | var url = location.href; |
---|
| 75 | var i=url.indexOf("#"); |
---|
| 76 | if (i>=0) window.location.hash=url.substr(i); |
---|
| 77 | var _preventDefault = function(evt) { evt.preventDefault(); }; |
---|
| 78 | $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); |
---|
| 79 | $(document).bind('touchmove',function(e){ |
---|
| 80 | try { |
---|
| 81 | var target = e.target; |
---|
| 82 | while (target) { |
---|
| 83 | if ($(target).css('-webkit-overflow-scrolling')=='touch') return; |
---|
| 84 | target = target.parentNode; |
---|
| 85 | } |
---|
| 86 | e.preventDefault(); |
---|
| 87 | } catch(err) { |
---|
| 88 | e.preventDefault(); |
---|
| 89 | } |
---|
| 90 | }); |
---|
| 91 | } |
---|
| 92 | |
---|
| 93 | |
---|