You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by mc...@apache.org on 2016/04/18 18:34:06 UTC
[1/4] nifi git commit: NIFI-1323: - Creating graph control panels for
navigating and operating. - Remove controls from the header into the graph
control panels where appropriate. - Removing unneeded styles and images.
Repository: nifi
Updated Branches:
refs/heads/NIFI-1323 [created] 8c3f88f53
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.svg
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.svg b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.svg
new file mode 100644
index 0000000..958b792
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.svg
@@ -0,0 +1,29 @@
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg xmlns="http://www.w3.org/2000/svg">
+<metadata>Copyright (C) 2016 by original authors @ fontello.com</metadata>
+<defs>
+<font id="nifi-icon-font" horiz-adv-x="1000" >
+<font-face font-family="nifi-icon-font" font-weight="400" font-stretch="normal" units-per-em="1000" ascent="850" descent="-150" />
+<missing-glyph horiz-adv-x="1000" />
+<glyph glyph-name="compass" unicode="" d="m357 243l143 71-143 72v-143z m214 330v-303l-285-143v303z m161-223q0 83-41 152t-110 111-152 41-153-41-110-111-41-152 41-152 110-111 153-41 152 41 110 111 41 152z m125 0q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z" horiz-adv-x="857.1" />
+<glyph glyph-name="minus-squared-alt" unicode="" d="m643 404v-36q0-8-5-13t-13-5h-464q-8 0-13 5t-5 13v36q0 7 5 12t13 5h464q8 0 13-5t5-12z m71-250v464q0 37-26 63t-63 26h-464q-37 0-63-26t-27-63v-464q0-37 27-64t63-26h464q37 0 63 26t26 64z m72 464v-464q0-67-47-114t-114-47h-464q-67 0-114 47t-47 114v464q0 66 47 113t114 48h464q66 0 114-48t47-113z" horiz-adv-x="785.7" />
+<glyph glyph-name="bullseye" unicode="" d="m571 350q0-59-41-101t-101-42-101 42-42 101 42 101 101 42 101-42 41-101z m72 0q0 89-63 152t-151 62-152-62-63-152 63-151 152-63 151 63 63 151z m71 0q0-118-83-202t-202-84-202 84-84 202 84 202 202 84 202-84 83-202z m72 0q0 73-29 139t-76 114-114 76-138 28-139-28-114-76-76-114-29-139 29-139 76-113 114-77 139-28 138 28 114 77 76 113 29 139z m71 0q0-117-57-215t-156-156-215-58-216 58-155 156-58 215 58 215 155 156 216 58 215-58 156-156 57-215z" horiz-adv-x="857.1" />
+<glyph glyph-name="plus-squared-alt" unicode="" d="m643 404v-36q0-8-5-13t-13-5h-196v-196q0-8-5-13t-13-5h-36q-8 0-13 5t-5 13v196h-196q-8 0-13 5t-5 13v36q0 7 5 12t13 5h196v197q0 8 5 13t13 5h36q8 0 13-5t5-13v-197h196q8 0 13-5t5-13z m71-250v464q0 37-26 63t-63 26h-464q-37 0-63-26t-27-63v-464q0-37 27-64t63-26h464q37 0 63 26t26 64z m72 464v-464q0-67-47-114t-114-47h-464q-67 0-114 47t-47 114v464q0 66 47 113t114 48h464q66 0 114-48t47-113z" horiz-adv-x="785.7" />
+<glyph glyph-name="zoom-in" unicode="" d="m571 404v-36q0-7-5-13t-12-5h-125v-125q0-7-6-13t-12-5h-36q-7 0-13 5t-5 13v125h-125q-7 0-12 5t-6 13v36q0 7 6 12t12 5h125v125q0 8 5 13t13 5h36q7 0 12-5t6-13v-125h125q7 0 12-5t5-12z m72-18q0 103-74 176t-176 74-177-74-73-176 73-177 177-73 176 73 74 177z m286-465q0-29-21-50t-51-21q-30 0-50 21l-191 191q-100-69-223-69-80 0-153 31t-125 84-84 125-31 153 31 152 84 126 125 84 153 31 152-31 126-84 84-126 31-152q0-123-69-223l191-191q21-21 21-51z" horiz-adv-x="928.6" />
+<glyph glyph-name="zoom-out" unicode="" d="m571 404v-36q0-7-5-13t-12-5h-322q-7 0-12 5t-6 13v36q0 7 6 12t12 5h322q7 0 12-5t5-12z m72-18q0 103-74 176t-176 74-177-74-73-176 73-177 177-73 176 73 74 177z m286-465q0-29-21-50t-51-21q-30 0-50 21l-191 191q-100-69-223-69-80 0-153 31t-125 84-84 125-31 153 31 152 84 126 125 84 153 31 152-31 126-84 84-126 31-152q0-123-69-223l191-191q21-21 21-51z" horiz-adv-x="928.6" />
+<glyph glyph-name="fighter-jet" unicode="" d="m1071 314q0-18-160-53l-197-18-125-36h-35l-164-196h39q14 0 25-3t10-6-10-7-25-2h-179v18h36v232h-90l-107-125h-53l-18 18v107h18v18h71v4l-107 14v71l107 13v5h-71v18h-18v107l18 18h53l107-125h90v232h-36v18h179q14 0 25-3t10-6-10-7-25-2h-39l164-197h35l125-35 197-18q145-33 160-52z" horiz-adv-x="1071.4" />
+<glyph glyph-name="award" unicode="" d="m256 357q-42 91-42 207h-143v-53q0-44 53-91t132-63z m601 154v53h-143q0-116-41-207 79 16 131 63t53 91z m72 71v-71q0-40-24-80t-62-73-97-54-120-25q-23-30-53-53-21-19-29-40t-8-50q0-30 17-51t54-21q42 0 75-25t32-64v-36q0-8-5-13t-13-5h-464q-8 0-13 5t-5 13v36q0 39 33 64t74 25q38 0 55 21t17 51q0 28-8 50t-30 40q-29 23-53 53-63 3-120 25t-96 54-63 73-23 80v71q0 22 16 38t38 16h160v53q0 37 27 63t63 27h321q37 0 63-27t26-63v-53h161q22 0 38-16t16-38z" horiz-adv-x="928.6" />
+<glyph glyph-name="toggle-off" unicode="" d="m643 350q0 58-23 111t-61 91-91 61-111 23-111-23-91-61-61-91-23-111 23-111 61-91 91-61 111-23 111 23 91 61 61 91 23 111z m428 0q0 58-22 111t-61 91-92 61-110 23h-216q67-51 106-125t38-161-38-161-106-125h216q58 0 110 23t92 61 61 91 22 111z m72 0q0-73-29-139t-76-113-114-77-138-28h-429q-72 0-138 28t-114 77-76 113-29 139 29 139 76 114 114 76 138 28h429q72 0 138-28t114-76 76-114 29-139z" horiz-adv-x="1142.9" />
+<glyph glyph-name="toggle-on" unicode="" d="m0 350q0 73 29 139t76 114 114 76 138 28h429q72 0 138-28t114-76 76-114 29-139-29-139-76-113-114-77-138-28h-429q-72 0-138 28t-114 77-76 113-29 139z m786-286q58 0 110 23t92 61 61 91 22 111-22 111-61 91-92 61-110 23-111-23-91-61-61-91-23-111 23-111 61-91 91-61 111-23z" horiz-adv-x="1142.9" />
+<glyph glyph-name="play" unicode="" d="m772 333l-741-412q-13-7-22-2t-9 20v822q0 14 9 20t22-2l741-412q13-7 13-17t-13-17z" horiz-adv-x="785.7" />
+<glyph glyph-name="stop" unicode="" d="m857 743v-786q0-14-10-25t-26-11h-785q-15 0-25 11t-11 25v786q0 14 11 25t25 11h785q15 0 26-11t10-25z" horiz-adv-x="857.1" />
+<glyph glyph-name="th" unicode="" d="m286 154v-108q0-22-16-37t-38-16h-178q-23 0-38 16t-16 37v108q0 22 16 38t38 15h178q22 0 38-15t16-38z m0 285v-107q0-22-16-38t-38-15h-178q-23 0-38 15t-16 38v107q0 23 16 38t38 16h178q22 0 38-16t16-38z m357-285v-108q0-22-16-37t-38-16h-178q-23 0-38 16t-16 37v108q0 22 16 38t38 15h178q23 0 38-15t16-38z m-357 571v-107q0-22-16-38t-38-16h-178q-23 0-38 16t-16 38v107q0 22 16 38t38 16h178q22 0 38-16t16-38z m357-286v-107q0-22-16-38t-38-15h-178q-23 0-38 15t-16 38v107q0 23 16 38t38 16h178q23 0 38-16t16-38z m357-285v-108q0-22-16-37t-38-16h-178q-22 0-38 16t-16 37v108q0 22 16 38t38 15h178q23 0 38-15t16-38z m-357 571v-107q0-22-16-38t-38-16h-178q-23 0-38 16t-16 38v107q0 22 16 38t38 16h178q23 0 38-16t16-38z m357-286v-107q0-22-16-38t-38-15h-178q-22 0-38 15t-16 38v107q0 23 16 38t38 16h178q23 0 38-16t16-38z m0 286v-107q0-22-16-38t-38-16h-178q-22 0-38 16t-16 38v107q0 22 16 38t38 16h178q23 0 38-16t16-38z" horiz-adv-x="1000" />
+<glyph glyph-name="paste" unicode="" d="m429-79h500v358h-233q-22 0-38 15t-15 38v232h-214v-643z m142 804v36q0 7-5 12t-12 6h-393q-7 0-13-6t-5-12v-36q0-7 5-13t13-5h393q7 0 12 5t5 13z m143-375h167l-167 167v-167z m286-71v-375q0-23-16-38t-38-16h-535q-23 0-38 16t-16 38v89h-303q-23 0-38 16t-16 37v750q0 23 16 38t38 16h607q22 0 38-16t15-38v-183q12-7 20-15l228-228q16-16 27-42t11-50z" horiz-adv-x="1000" />
+<glyph glyph-name="bus" unicode="" d="m214 171q0 30-21 51t-50 21-51-21-21-51 21-50 51-21 50 21 21 50z m572 0q0 30-21 51t-51 21-50-21-21-51 21-50 50-21 51 21 21 50z m-26 221l-40 215q-3 13-13 21t-22 8h-513q-12 0-22-8t-13-21l-40-215q-3-16 8-29t27-13h593q17 0 27 13t8 29z m-126 342q0 11-8 19t-19 8h-357q-11 0-19-8t-8-19 8-19 19-8h357q11 0 19 8t8 19z m223-405v-336h-71v-72q0-29-21-50t-51-21-50 21-21 50v72h-429v-72q0-29-21-50t-50-21-51 21-21 50v72h-71v336q0 63 14 125l57 253q5 44 55 77t128 49 175 17 174-17 128-49 55-77l58-253q13-57 13-125z" horiz-adv-x="857.1" />
+<glyph glyph-name="rocket" unicode="" d="m804 600q0 22-16 38t-38 16-38-16-16-38 16-38 38-16 38 16 16 38z m125 161q0-139-43-241t-141-201q-45-44-109-98l-11-211q-1-9-9-15l-214-125q-4-2-9-2-7 0-13 5l-36 36q-7 7-4 17l47 155-156 156-155-47q-1-1-5-1-7 0-12 5l-36 36q-10 11-3 22l125 214q6 8 15 9l211 11q54 64 98 109 105 104 200 144t241 40q7 0 13-6t6-12z" horiz-adv-x="928.6" />
+<glyph glyph-name="fire" unicode="" d="m786-96v-36q0-7-6-13t-12-5h-750q-7 0-13 5t-5 13v36q0 7 5 12t13 5h750q7 0 12-5t6-12z m-143 589q0-44-14-80t-36-63-48-49-54-44-49-40-35-45-14-54q0-54 37-125l-2 0 1 0q-51 23-90 46t-77 56-63 68-41 84-15 103q0 44 14 80t35 63 49 49 54 43 48 41 36 45 14 54q0 52-37 125l2-1-1 1q50-23 89-46t78-56 63-68 41-84 15-103z" horiz-adv-x="785.7" />
+<glyph glyph-name="brush-1" unicode="" d="m901 850q39 0 69-26t29-65q0-35-25-84-185-351-260-420-54-51-121-51-71 0-121 52t-51 122q0 72 52 119l356 323q33 30 72 30z m-507-577q22-42 59-73t84-42l1-40q2-119-72-193t-195-75q-68 0-121 26t-86 71-48 102-16 123q4-3 23-17t35-25 32-20 26-9q23 0 31 20 14 37 32 63t39 42 49 27 57 14 70 6z" horiz-adv-x="1000" />
+</font>
+</defs>
+</svg>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.ttf
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.ttf b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.ttf
new file mode 100644
index 0000000..8f0def4
Binary files /dev/null and b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.ttf differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.woff
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.woff b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.woff
new file mode 100644
index 0000000..39ccab3
Binary files /dev/null and b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.woff differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/bgOutline.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/bgOutline.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/bgOutline.png
deleted file mode 100755
index 65b3636..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/bgOutline.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/bgToolbarBtnBorder.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/bgToolbarBtnBorder.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/bgToolbarBtnBorder.png
deleted file mode 100755
index cb18212..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/bgToolbarBtnBorder.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonColor.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonColor.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonColor.png
deleted file mode 100755
index 7f0cc06..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonColor.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonCopy.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonCopy.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonCopy.png
deleted file mode 100755
index 584f601..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonCopy.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonDelete.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonDelete.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonDelete.png
deleted file mode 100755
index dd1cc95..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonDelete.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonDisable.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonDisable.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonDisable.png
deleted file mode 100755
index 3b2ddbf..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonDisable.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonEnable.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonEnable.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonEnable.png
deleted file mode 100755
index 664a1d6..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonEnable.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonGroup.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonGroup.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonGroup.png
deleted file mode 100755
index 81f79e1..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonGroup.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonOutline.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonOutline.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonOutline.png
deleted file mode 100755
index 56ec870..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonOutline.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanDown.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanDown.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanDown.png
deleted file mode 100755
index 091ad18..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanDown.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanLeft.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanLeft.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanLeft.png
deleted file mode 100755
index 05d746c..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanLeft.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanRight.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanRight.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanRight.png
deleted file mode 100755
index befc1fc..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanRight.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanUp.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanUp.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanUp.png
deleted file mode 100755
index c6bae8d..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPanUp.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPaste.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPaste.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPaste.png
deleted file mode 100755
index 7e19a9a..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonPaste.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonRun.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonRun.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonRun.png
deleted file mode 100755
index 08aceb5..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonRun.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonStop.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonStop.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonStop.png
deleted file mode 100755
index 2c6bd27..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonStop.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonTemplate.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonTemplate.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonTemplate.png
deleted file mode 100755
index 2f52861..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonTemplate.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoom100.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoom100.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoom100.png
deleted file mode 100755
index 7a2e605..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoom100.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomFit.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomFit.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomFit.png
deleted file mode 100755
index ddecdbd..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomFit.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomIn.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomIn.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomIn.png
deleted file mode 100755
index 311da20..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomIn.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomOut.png
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomOut.png b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomOut.png
deleted file mode 100755
index 3ae4526..0000000
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/images/buttonZoomOut.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-birdseye.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-birdseye.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-birdseye.js
index 01abd31..4e92825 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-birdseye.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-birdseye.js
@@ -206,48 +206,6 @@ nf.Birdseye = (function () {
return {
init: function () {
var birdseye = $('#birdseye');
- var birdseyeContainer = $('#birdseye-container');
- $('#birdseye-collapse').click(function () {
- // update the outline collapse icon
- if (birdseye.is(':visible')) {
- $(this).removeClass('birdseye-expanded-hover').addClass('birdseye-collapsed-hover');
-
- // hide the outline
- birdseye.hide();
- birdseyeContainer.hide();
- visible = false;
-
- // shift the counts position
- $('#controller-counts').css('margin-right', '-13px');
- } else {
- $(this).removeClass('birdseye-collapsed-hover').addClass('birdseye-expanded-hover');
-
- // shift the counts position
- $('#controller-counts').css('margin-right', '195px');
-
- // show the outline
- birdseye.show();
- birdseyeContainer.show();
- visible = true;
-
- // refresh the birdseye as it may have changed
- refresh(nf.Graph.get());
- }
- }).mouseover(function () {
- // update the outline collapse icon
- if (birdseye.is(':visible')) {
- $(this).removeClass('birdseye-expanded').addClass('birdseye-expanded-hover');
- } else {
- $(this).removeClass('birdseye-collapsed').addClass('birdseye-collapsed-hover');
- }
- }).mouseout(function () {
- // update the outline collapse icon
- if (birdseye.is(':visible')) {
- $(this).removeClass('birdseye-expanded-hover').addClass('birdseye-expanded');
- } else {
- $(this).removeClass('birdseye-collapsed-hover').addClass('birdseye-collapsed');
- }
- });
d3.select('#birdseye').append('canvas')
.attr('id', 'birdseye-canvas')
@@ -329,6 +287,9 @@ nf.Birdseye = (function () {
y: 0
})
.call(brush);
+
+ //// clear
+ //birdseye.append('<div class="clear"></div>');
},
/**
@@ -338,6 +299,29 @@ nf.Birdseye = (function () {
if (visible) {
refresh(nf.Graph.get());
}
+ },
+
+ /**
+ * Function that needs to be call when the birdseye visibility changes.
+ *
+ * @param {boolean} isVisible
+ */
+ updateBirdseyeVisibility: function (isVisible) {
+ var birdseye = $('#birdseye');
+
+ // update the outline collapse icon
+ if (isVisible) {
+ // show the outline
+ birdseye.show();
+ visible = true;
+
+ // refresh the birdseye as it may have changed
+ refresh(nf.Graph.get());
+ } else {
+ // hide the outline
+ birdseye.hide();
+ visible = false;
+ }
}
};
}());
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js
index 8aade5c..e1aec7f 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js
@@ -19,81 +19,84 @@
nf.CanvasToolbar = (function () {
- var actions;
+ /**
+ * Initializes the specified button and associates the specified action.
+ *
+ * @param button
+ * @param action
+ */
+ var initializeButton = function (button, action) {
+ button.on('click', function () {
+ if (!$(this).hasClass('icon-disabled')) {
+ // hide the context menu
+ nf.ContextMenu.hide();
+
+ // execute the action
+ nf.Actions[action](nf.CanvasUtils.getSelection());
+ }
+ });
+ };
+
+ var enableButton = function (button) {
+ button.addClass('pointer').find('i').removeClass('icon-disabled');
+ };
+
+ var disableButton = function (button) {
+ button.removeClass('pointer').find('i').addClass('icon-disabled');
+ };
return {
/**
* Initializes the canvas toolbar.
*/
init: function () {
- actions = {};
-
- var separator = $('<div/>').addClass('control-separator');
- var border = $('<div/>').addClass('control-border');
-
- var globalControls = $('#global-controls')[0];
- border.clone().appendTo(globalControls);
- actions['enable'] = new nf.ToolbarAction(globalControls, 'enable', 'action-enable', 'enable-all', 'enable-all-hover', 'enable-all-disable', 'Enable');
- border.clone().appendTo(globalControls);
- actions['disable'] = new nf.ToolbarAction(globalControls, 'disable', 'action-disable', 'disable-all', 'disable-all-hover', 'disable-all-disable', 'Disable');
- border.clone().appendTo(globalControls);
- separator.clone().appendTo(globalControls);
- border.clone().appendTo(globalControls);
- actions['start'] = new nf.ToolbarAction(globalControls, 'start', 'action-start', 'start-all', 'start-all-hover', 'start-all-disable', 'Start');
- border.clone().appendTo(globalControls);
- actions['stop'] = new nf.ToolbarAction(globalControls, 'stop', 'action-stop', 'stop-all', 'stop-all-hover', 'stop-all-disable', 'Stop');
- border.clone().appendTo(globalControls);
- separator.clone().appendTo(globalControls);
- border.clone().appendTo(globalControls);
- actions['template'] = new nf.ToolbarAction(globalControls, 'template', 'action-template', 'template', 'template-hover', 'template-disable', 'Create Template');
- border.clone().appendTo(globalControls);
- separator.clone().appendTo(globalControls);
- border.clone().addClass('secondary').appendTo(globalControls);
- actions['copy'] = new nf.ToolbarAction(globalControls, 'copy', 'action-copy', 'copy', 'copy-hover', 'copy-disable', 'Copy', true);
- border.clone().addClass('secondary').appendTo(globalControls);
- actions['paste'] = new nf.ToolbarAction(globalControls, 'paste', 'action-paste', 'paste', 'paste-hover', 'paste-disable', 'Paste', true);
- border.clone().addClass('secondary').appendTo(globalControls);
- separator.clone().addClass('secondary').appendTo(globalControls);
- border.clone().addClass('secondary').appendTo(globalControls);
- actions['group'] = new nf.ToolbarAction(globalControls, 'group', 'action-group', 'group', 'group-hover', 'group-disable', 'Group', true);
- border.clone().addClass('secondary').appendTo(globalControls);
- separator.clone().addClass('secondary').appendTo(globalControls);
- border.clone().addClass('secondary').appendTo(globalControls);
- actions['fill'] = new nf.ToolbarAction(globalControls, 'fillColor', 'action-fill', 'fill', 'fill-hover', 'fill-disable', 'Change Color', true);
- border.clone().addClass('secondary').appendTo(globalControls);
- separator.clone().addClass('secondary').appendTo(globalControls);
- border.clone().addClass('secondary').appendTo(globalControls);
- actions['delete'] = new nf.ToolbarAction(globalControls, 'delete', 'action-delete', 'delete', 'delete-hover', 'delete-disable', 'Delete', true);
- border.addClass('secondary').appendTo(globalControls);
- separator.addClass('secondary').appendTo(globalControls);
+ var disable = $('#operate-disable');
+ var enable = $('#operate-enable');
+ var start = $('#operate-start');
+ var stop = $('#operate-stop');
+ var template = $('#operate-template');
+ var copy = $('#operate-copy');
+ var paste = $('#operate-paste');
+ var group = $('#operate-group');
+ var color = $('#operate-color');
+
+ // initialize the buttons
+ initializeButton(disable, 'disable');
+ initializeButton(enable, 'enable');
+ initializeButton(start, 'start');
+ initializeButton(stop, 'stop');
+ initializeButton(template, 'template');
+ initializeButton(copy, 'copy');
+ initializeButton(paste, 'paste');
+ initializeButton(group, 'group');
+ initializeButton(color, 'fillColor');
// set up initial states for selection-less items
if (nf.Common.isDFM()) {
- actions['start'].enable();
- actions['stop'].enable();
- actions['template'].enable();
+ enableButton(start);
+ enableButton(stop);
+ enableButton(template);
} else {
- actions['start'].disable();
- actions['stop'].disable();
- actions['template'].disable();
+ disableButton(start);
+ disableButton(stop);
+ disableButton(template);
}
// disable actions that require selection
- actions['enable'].disable();
- actions['disable'].disable();
- actions['copy'].disable();
- actions['paste'].disable();
- actions['fill'].disable();
- actions['delete'].disable();
- actions['group'].disable();
+ disableButton(enable);
+ disableButton(disable);
+ disableButton(copy);
+ disableButton(paste);
+ disableButton(color);
+ disableButton(group);
// add a clipboard listener if appropriate
if (nf.Common.isDFM()) {
nf.Clipboard.addListener(this, function (action, data) {
if (nf.Clipboard.isCopied()) {
- actions['paste'].enable();
+ enableButton(paste);
} else {
- actions['paste'].disable();
+ disableButton(paste);
}
});
}
@@ -103,66 +106,67 @@ nf.CanvasToolbar = (function () {
* Called when the selection changes to update the toolbar appropriately.
*/
refresh: function () {
- // wait for the toolbar to initialize
- if (nf.Common.isUndefined(actions)) {
- return;
- }
-
// only refresh the toolbar if DFM
if (nf.Common.isDFM()) {
+ var disable = $('#operate-disable');
+ var enable = $('#operate-enable');
+ var copy = $('#operate-copy');
+ var group = $('#operate-group');
+ var color = $('#operate-color');
+
var selection = nf.CanvasUtils.getSelection();
// if all selected components are deletable enable the delete button
- if (!selection.empty()) {
- var enableDelete = true;
- selection.each(function (d) {
- if (!nf.CanvasUtils.isDeletable(d3.select(this))) {
- enableDelete = false;
- return false;
- }
- });
- if (enableDelete) {
- actions['delete'].enable();
- } else {
- actions['delete'].disable();
- }
- } else {
- actions['delete'].disable();
- }
+ //if (!selection.empty()) {
+ // var enableDelete = true;
+ // selection.each(function (d) {
+ // if (!nf.CanvasUtils.isDeletable(d3.select(this))) {
+ // enableDelete = false;
+ // return false;
+ // }
+ // });
+ // if (enableDelete) {
+ // actions['delete'].enable();
+ // } else {
+ // actions['delete'].disable();
+ // }
+ //} else {
+ // actions['delete'].disable();
+ //}
// if there are any copyable components enable the button
if (nf.CanvasUtils.isCopyable(selection)) {
- actions['copy'].enable();
+ enableButton(copy);
} else {
- actions['copy'].disable();
+ disableButton(copy);
}
// determine if the selection is groupable
if (!selection.empty() && nf.CanvasUtils.isDisconnected(selection)) {
- actions['group'].enable();
+ enableButton(group);
} else {
- actions['group'].disable();
+ disableButton(group);
}
// if there are any colorable components enable the fill button
if (nf.CanvasUtils.isColorable(selection)) {
- actions['fill'].enable();
+ enableButton(color);
} else {
- actions['fill'].disable();
+ disableButton(color);
}
// ensure the selection supports enable
if (nf.CanvasUtils.canEnable(selection)) {
- actions['enable'].enable();
+ enableButton(enable);
} else {
- actions['enable'].disable();
+ disableButton(enable);
}
// ensure the selection supports disable
if (nf.CanvasUtils.canDisable(selection)) {
- actions['disable'].enable();
+ enableButton(disable);
} else {
- actions['disable'].disable();
+ disableButton(disable);
}
}
}
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js
index 428ddf2..348940c 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas.js
@@ -1141,7 +1141,6 @@ nf.Canvas = (function () {
nf.CanvasToolbar.init();
nf.CanvasToolbox.init();
nf.CanvasHeader.init(loginDetails.supportsLogin);
- nf.GraphControl.init();
nf.Search.init();
nf.Settings.init();
nf.Actions.init();
@@ -1176,6 +1175,8 @@ nf.Canvas = (function () {
nf.RemoteProcessGroupDetails.init();
nf.GoTo.init();
nf.Graph.init().done(function () {
+ nf.GraphControl.init();
+
// determine the split between the polling
var pollingSplit = autoRefreshIntervalSeconds / 2;
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-graph-control.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-graph-control.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-graph-control.js
index b6f2a51..599457a 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-graph-control.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-graph-control.js
@@ -19,73 +19,119 @@
nf.GraphControl = (function () {
+ var MIN_GRAPH_CONTROL_TOP = 117;
+
var config = {
translateIncrement: 20
};
- return {
- /**
- * Initializes the graph controls.
- */
- init: function () {
- // pan up
- nf.Common.addHoverEffect('#pan-up-button', 'pan-up', 'pan-up-hover').on('click', function () {
- var translate = nf.Canvas.View.translate();
- nf.Canvas.View.translate([translate[0], translate[1] + config.translateIncrement]);
+ /**
+ * Opens the specified graph control.
+ *
+ * @param {jQuery} graphControl
+ */
+ var openGraphControl = function (graphControl) {
+ // undock if necessary
+ if ($('div.graph-control-content').is(':visible') === false) {
+ $('#graph-controls div.graph-control-docked').hide();
+ $('#graph-controls div.graph-control-header-container').show();
+ }
- // hide the context menu
- nf.ContextMenu.hide();
+ // show the content of the specified graph control
+ graphControl.children('div.graph-control-content').show();
+ graphControl.find('i.graph-control-expansion').removeClass('icon-plus-squared-alt').addClass('icon-minus-squared-alt');
- // refresh the canvas
- nf.Canvas.View.refresh({
- transition: true
- });
- });
+ // handle specific actions as necessary
+ if (graphControl.attr('id') === 'navigation-control') {
+ nf.Birdseye.updateBirdseyeVisibility(true);
+ }
- // pan down
- nf.Common.addHoverEffect('#pan-down-button', 'pan-down', 'pan-down-hover').on('click', function () {
- var translate = nf.Canvas.View.translate();
- nf.Canvas.View.translate([translate[0], translate[1] - config.translateIncrement]);
+ // get the current visibility
+ var graphControlVisibility = nf.Storage.getItem('graph-control-visibility');
+ if (graphControlVisibility === null) {
+ graphControlVisibility = {};
+ }
- // hide the context menu
- nf.ContextMenu.hide();
+ // update the visibility for this graph control
+ var graphControlId = graphControl.attr('id');
+ graphControlVisibility[graphControlId] = true;
+ nf.Storage.setItem('graph-control-visibility', graphControlVisibility);
- // refresh the canvas
- nf.Canvas.View.refresh({
- transition: true
- });
- });
+ // reset the graph control position
+ positionGraphControls();
+ };
- // pan left
- nf.Common.addHoverEffect('#pan-left-button', 'pan-left', 'pan-left-hover').on('click', function () {
- var translate = nf.Canvas.View.translate();
- nf.Canvas.View.translate([translate[0] + config.translateIncrement, translate[1]]);
+ /**
+ * Hides the specified graph control.
+ *
+ * @param {jQuery} graphControl
+ */
+ var hideGraphControl = function (graphControl) {
+ // hide the content of the specified graph control
+ graphControl.children('div.graph-control-content').hide();
+ graphControl.find('i.graph-control-expansion').removeClass('icon-minus-squared-alt').addClass('icon-plus-squared-alt');
+
+ // dock if necessary
+ if ($('div.graph-control-content').is(':visible') === false) {
+ $('#graph-controls div.graph-control-header-container').hide();
+ $('#graph-controls div.graph-control-docked').show();
+ }
- // hide the context menu
- nf.ContextMenu.hide();
+ // handle specific actions as necessary
+ if (graphControl.attr('id') === 'navigation-control') {
+ nf.Birdseye.updateBirdseyeVisibility(false);
+ }
- // refresh the canvas
- nf.Canvas.View.refresh({
- transition: true
- });
- });
+ // get the current visibility
+ var graphControlVisibility = nf.Storage.getItem('graph-control-visibility');
+ if (graphControlVisibility === null) {
+ graphControlVisibility = {};
+ }
- // pan right
- nf.Common.addHoverEffect('#pan-right-button', 'pan-right', 'pan-right-hover').on('click', function () {
- var translate = nf.Canvas.View.translate();
- nf.Canvas.View.translate([translate[0] - config.translateIncrement, translate[1]]);
+ // update the visibility for this graph control
+ var graphControlId = graphControl.attr('id');
+ graphControlVisibility[graphControlId] = false;
+ nf.Storage.setItem('graph-control-visibility', graphControlVisibility);
- // hide the context menu
- nf.ContextMenu.hide();
+ // reset the graph control position
+ positionGraphControls();
+ };
- // refresh the canvas
- nf.Canvas.View.refresh({
- transition: true
- });
+ /**
+ * Positions the graph controls based on the size of the screen.
+ */
+ var positionGraphControls = function () {
+ var windowHeight = $(window).height();
+ var navigationHeight = $('#navigation-control').outerHeight();
+ var operationHeight = $('#operation-control').outerHeight();
+ var graphControlTop = (windowHeight / 2) - ((navigationHeight + operationHeight) / 2);
+
+ $('#graph-controls').css('top', Math.max(MIN_GRAPH_CONTROL_TOP, graphControlTop));
+ };
+
+ return {
+ /**
+ * Initializes the graph controls.
+ */
+ init: function () {
+
+ // graph control undock
+ $('#graph-controls').on('click', 'div.graph-control-docked', function () {
+ openGraphControl($(this).parent());
+ });
+
+ // handle expansion
+ $('#graph-controls').on('click', 'i.graph-control-expansion', function () {
+ var icon = $(this);
+ if (icon.hasClass('icon-plus-squared-alt')) {
+ openGraphControl(icon.closest('div.graph-control'));
+ } else {
+ hideGraphControl(icon.closest('div.graph-control'));
+ }
});
// zoom in
- nf.Common.addHoverEffect('#zoom-in-button', 'zoom-in', 'zoom-in-hover').on('click', function () {
+ $('#naviagte-zoom-in').on('click', function () {
nf.Canvas.View.zoomIn();
// hide the context menu
@@ -98,7 +144,7 @@ nf.GraphControl = (function () {
});
// zoom out
- nf.Common.addHoverEffect('#zoom-out-button', 'zoom-out', 'zoom-out-hover').on('click', function () {
+ $('#naviagte-zoom-out').on('click', function () {
nf.Canvas.View.zoomOut();
// hide the context menu
@@ -111,7 +157,7 @@ nf.GraphControl = (function () {
});
// zoom fit
- nf.Common.addHoverEffect('#zoom-fit-button', 'fit-image', 'fit-image-hover').on('click', function () {
+ $('#naviagte-zoom-fit').on('click', function () {
nf.Canvas.View.fit();
// hide the context menu
@@ -124,7 +170,7 @@ nf.GraphControl = (function () {
});
// one to one
- nf.Common.addHoverEffect('#zoom-actual-button', 'actual-size', 'actual-size-hover').on('click', function () {
+ $('#naviagte-zoom-actual-size').on('click', function () {
nf.Canvas.View.actualSize();
// hide the context menu
@@ -135,6 +181,27 @@ nf.GraphControl = (function () {
transition: true
});
});
+
+ // initial the graph control visibility
+ var graphControlVisibility = nf.Storage.getItem('graph-control-visibility');
+ if (graphControlVisibility !== null) {
+ $.each(graphControlVisibility, function (id, isVisible) {
+ var graphControl = $('#' + id);
+ if (graphControl) {
+ if (isVisible) {
+ openGraphControl(graphControl);
+ } else {
+ hideGraphControl(graphControl);
+ }
+ }
+ });
+ }
+
+ // listen for browser resize events to reset the graph control positioning
+ $(window).resize(positionGraphControls);
+
+ // set the initial position
+ positionGraphControls();
}
};
}());
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-toolbar-action.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-toolbar-action.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-toolbar-action.js
deleted file mode 100644
index a7b5f20..0000000
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-toolbar-action.js
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/* global nf */
-
-/**
- * Creates a new toolbar action.
- *
- * @argument {jQuery} container The container to add the action to
- * @argument {string} action The action to perform
- * @argument {string} id The id of the element for the action
- * @argument {string} cls The css class for the element
- * @argument {string} hoverCls The css class for the hover state of the element
- * @argument {string} disableCls The css class for the disabled state of the element
- * @argument {string} title The title (tooltip) of the element
- * @argument {boolean} secondary If secondary icon will be hidden as the screen gets smallers
- */
-nf.ToolbarAction = function (container, action, id, cls, hoverCls, disableCls, title, secondary) {
- this.container = container;
- this.action = action;
- this.id = id;
- this.cls = cls;
- this.hoverCls = hoverCls;
- this.disableCls = disableCls;
- this.title = title;
- this.secondary = secondary;
- this.initAction();
-};
-
-nf.ToolbarAction.prototype.container = null;
-nf.ToolbarAction.prototype.action = null;
-nf.ToolbarAction.prototype.id = null;
-nf.ToolbarAction.prototype.cls = null;
-nf.ToolbarAction.prototype.hoverCls = null;
-nf.ToolbarAction.prototype.disableCls = null;
-nf.ToolbarAction.prototype.title = null;
-nf.ToolbarAction.prototype.secondary = null;
-
-/**
- * Initializes the toolbar action by dynamically creating an element,
- * registering mouse listeners, and inserting it into the DOM.
- */
-nf.ToolbarAction.prototype.initAction = function () {
- var self = this;
- var cls = 'toolbar-icon';
- if (this.secondary === true) {
- cls += ' secondary';
- }
-
- // create the default button
- $('<div/>').addClass(cls).attr('id', this.id).attr('title', this.title).mouseover(function () {
- if (!$(this).hasClass(self.disableCls)) {
- $(this).removeClass(self.cls).addClass(self.hoverCls);
- }
- }).mouseout(function () {
- if (!$(this).hasClass(self.disableCls)) {
- $(this).addClass(self.cls).removeClass(self.hoverCls);
- }
- }).click(function () {
- if (!$(this).hasClass(self.disableCls)) {
- // hide the context menu
- nf.ContextMenu.hide();
-
- // execute the action
- nf.Actions[self.action](nf.CanvasUtils.getSelection());
- }
- }).appendTo(this.container);
-};
-
-/**
- * Enables the toolbar action.
- */
-nf.ToolbarAction.prototype.enable = function () {
- $('#' + this.id).removeClass(this.disableCls).addClass(this.cls).addClass('pointer');
-};
-
-/**
- * Disables the toolbar action.
- */
-nf.ToolbarAction.prototype.disable = function () {
- $('#' + this.id).removeClass(this.cls).addClass(this.disableCls).removeClass('pointer');
-};
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-storage.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-storage.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-storage.js
index 7b0c3f6..0ea9b43 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-storage.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/nf-storage.js
@@ -117,7 +117,7 @@ nf.Storage = (function () {
* not exist, null is returned. If an item exists but cannot be parsed
* or is malformed/unrecognized, null is returned.
*
- * @param {type} key
+ * @param {string} key
*/
getItem: function (key) {
var entry = getEntry(key);
[3/4] nifi git commit: NIFI-1323: - Adding a delete button.
Posted by mc...@apache.org.
NIFI-1323:
- Adding a delete button.
Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/852622c9
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/852622c9
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/852622c9
Branch: refs/heads/NIFI-1323
Commit: 852622c956672d853103bf37e195b7ae9a1b4169
Parents: 6b57108
Author: Matt Gilman <ma...@gmail.com>
Authored: Mon Jan 11 19:11:43 2016 -0500
Committer: Matt Gilman <ma...@gmail.com>
Committed: Mon Jan 11 19:11:43 2016 -0500
----------------------------------------------------------------------
.../WEB-INF/partials/canvas/navigation.jsp | 4 +++
.../src/main/webapp/css/navigation.css | 14 ++++++++
.../src/main/webapp/icon-font/config.json | 6 ++++
.../icon-font/css/nifi-icon-font-codes.css | 1 +
.../icon-font/css/nifi-icon-font-embedded.css | 13 +++----
.../icon-font/css/nifi-icon-font-ie7-codes.css | 1 +
.../webapp/icon-font/css/nifi-icon-font-ie7.css | 1 +
.../webapp/icon-font/css/nifi-icon-font.css | 13 +++----
.../src/main/webapp/icon-font/demo.html | 11 +++---
.../webapp/icon-font/font/nifi-icon-font.eot | Bin 8352 -> 8676 bytes
.../webapp/icon-font/font/nifi-icon-font.svg | 1 +
.../webapp/icon-font/font/nifi-icon-font.ttf | Bin 8160 -> 8484 bytes
.../webapp/icon-font/font/nifi-icon-font.woff | Bin 4844 -> 5028 bytes
.../webapp/js/nf/canvas/nf-canvas-toolbar.js | 36 ++++++++++---------
14 files changed, 68 insertions(+), 33 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp
index 714a0ed..ca36bf1 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp
@@ -115,6 +115,10 @@
<div id="operate-color" class="action-button" title="Fill Color">
<i class="graph-control-action-icon nifi-icon icon-brush-1"></i>
</div>
+ <div class="button-spacer-large"> </div>
+ <div id="operate-delete" class="action-button" title="Fill Color">
+ <i class="graph-control-action-icon nifi-icon icon-trash-empty"></i><span id="operate-delete-text">DELETE</span>
+ </div>
<div class="clear"></div>
</div>
</div>
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/navigation.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/navigation.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/navigation.css
index 9eac8ae..fa08b56 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/navigation.css
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/navigation.css
@@ -65,6 +65,20 @@ div.graph-control-content {
margin-bottom: 5px;
}
+/* operate buttons */
+
+#operate-delete {
+ width: 70px;
+}
+
+#operate-delete-text {
+ margin-right: 5px;
+ font-size: 11px;
+ color: #035f8f;
+}
+
+/* general graph control buttons */
+
div.action-button {
float: left;
border: 1px solid #8ea8b2;
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/config.json
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/config.json b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/config.json
index f92c00b..fdaeeb6 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/config.json
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/config.json
@@ -31,6 +31,12 @@
"src": "fontawesome"
},
{
+ "uid": "f48ae54adfb27d8ada53d0fd9e34ee10",
+ "css": "trash-empty",
+ "code": 59409,
+ "src": "fontawesome"
+ },
+ {
"uid": "0b2b66e526028a6972d51a6f10281b4b",
"css": "zoom-in",
"code": 59396,
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-codes.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-codes.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-codes.css
index 382c656..88f6ee3 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-codes.css
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-codes.css
@@ -16,4 +16,5 @@
.icon-bus:before { content: '\e80e'; } /* '' */
.icon-rocket:before { content: '\e80f'; } /* '' */
.icon-fire:before { content: '\e810'; } /* '' */
+.icon-trash-empty:before { content: '\e811'; } /* '' */
.icon-brush-1:before { content: '\e812'; } /* '' */
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-embedded.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-embedded.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-embedded.css
index fa8ce02..fe557e1 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-embedded.css
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-embedded.css
@@ -1,15 +1,15 @@
@font-face {
font-family: 'nifi-icon-font';
- src: url('../font/nifi-icon-font.eot?54105150');
- src: url('../font/nifi-icon-font.eot?54105150#iefix') format('embedded-opentype'),
- url('../font/nifi-icon-font.svg?54105150#nifi-icon-font') format('svg');
+ src: url('../font/nifi-icon-font.eot?67554557');
+ src: url('../font/nifi-icon-font.eot?67554557#iefix') format('embedded-opentype'),
+ url('../font/nifi-icon-font.svg?67554557#nifi-icon-font') format('svg');
font-weight: normal;
font-style: normal;
}
@font-face {
font-family: 'nifi-icon-font';
- src: url('data:application/octet-stream;base64,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') format('woff'),
- url('data:application/octet-stream;base64,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') format('truetype');
+ src: url('data:application/octet-stream;base64,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') format('woff'),
+ url('data:application/octet-stream;base64,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') format('truetype');
}
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
@@ -17,7 +17,7 @@
@media screen and (-webkit-min-device-pixel-ratio:0) {
@font-face {
font-family: 'nifi-icon-font';
- src: url('../font/nifi-icon-font.svg?54105150#nifi-icon-font') format('svg');
+ src: url('../font/nifi-icon-font.svg?67554557#nifi-icon-font') format('svg');
}
}
*/
@@ -69,4 +69,5 @@
.icon-bus:before { content: '\e80e'; } /* '' */
.icon-rocket:before { content: '\e80f'; } /* '' */
.icon-fire:before { content: '\e810'; } /* '' */
+.icon-trash-empty:before { content: '\e811'; } /* '' */
.icon-brush-1:before { content: '\e812'; } /* '' */
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7-codes.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7-codes.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7-codes.css
index 4b6063d..c564c1f 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7-codes.css
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7-codes.css
@@ -16,4 +16,5 @@
.icon-bus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
.icon-rocket { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
.icon-fire { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-trash-empty { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
.icon-brush-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7.css
index 6fb8344..96b2e72 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7.css
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7.css
@@ -27,4 +27,5 @@
.icon-bus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
.icon-rocket { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
.icon-fire { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-trash-empty { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
.icon-brush-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font.css
index f347464..a41615f 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font.css
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font.css
@@ -1,10 +1,10 @@
@font-face {
font-family: 'nifi-icon-font';
- src: url('../font/nifi-icon-font.eot?69740385');
- src: url('../font/nifi-icon-font.eot?69740385#iefix') format('embedded-opentype'),
- url('../font/nifi-icon-font.woff?69740385') format('woff'),
- url('../font/nifi-icon-font.ttf?69740385') format('truetype'),
- url('../font/nifi-icon-font.svg?69740385#nifi-icon-font') format('svg');
+ src: url('../font/nifi-icon-font.eot?83995960');
+ src: url('../font/nifi-icon-font.eot?83995960#iefix') format('embedded-opentype'),
+ url('../font/nifi-icon-font.woff?83995960') format('woff'),
+ url('../font/nifi-icon-font.ttf?83995960') format('truetype'),
+ url('../font/nifi-icon-font.svg?83995960#nifi-icon-font') format('svg');
font-weight: normal;
font-style: normal;
}
@@ -14,7 +14,7 @@
@media screen and (-webkit-min-device-pixel-ratio:0) {
@font-face {
font-family: 'nifi-icon-font';
- src: url('../font/nifi-icon-font.svg?69740385#nifi-icon-font') format('svg');
+ src: url('../font/nifi-icon-font.svg?83995960#nifi-icon-font') format('svg');
}
}
*/
@@ -71,4 +71,5 @@
.icon-bus:before { content: '\e80e'; } /* '' */
.icon-rocket:before { content: '\e80f'; } /* '' */
.icon-fire:before { content: '\e810'; } /* '' */
+.icon-trash-empty:before { content: '\e811'; } /* '' */
.icon-brush-1:before { content: '\e812'; } /* '' */
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/demo.html
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/demo.html b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/demo.html
index c52bd01..5199938 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/demo.html
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/demo.html
@@ -229,11 +229,11 @@ body {
}
@font-face {
font-family: 'nifi-icon-font';
- src: url('./font/nifi-icon-font.eot?83682963');
- src: url('./font/nifi-icon-font.eot?83682963#iefix') format('embedded-opentype'),
- url('./font/nifi-icon-font.woff?83682963') format('woff'),
- url('./font/nifi-icon-font.ttf?83682963') format('truetype'),
- url('./font/nifi-icon-font.svg?83682963#nifi-icon-font') format('svg');
+ src: url('./font/nifi-icon-font.eot?28189329');
+ src: url('./font/nifi-icon-font.eot?28189329#iefix') format('embedded-opentype'),
+ url('./font/nifi-icon-font.woff?28189329') format('woff'),
+ url('./font/nifi-icon-font.ttf?28189329') format('truetype'),
+ url('./font/nifi-icon-font.svg?28189329#nifi-icon-font') format('svg');
font-weight: normal;
font-style: normal;
}
@@ -326,6 +326,7 @@ body {
</div>
<div class="row">
<div title="Code: 0xe810" class="the-icons span3"><i class="demo-icon icon-fire"></i> <span class="i-name">icon-fire</span><span class="i-code">0xe810</span></div>
+ <div title="Code: 0xe811" class="the-icons span3"><i class="demo-icon icon-trash-empty"></i> <span class="i-name">icon-trash-empty</span><span class="i-code">0xe811</span></div>
<div title="Code: 0xe812" class="the-icons span3"><i class="demo-icon icon-brush-1"></i> <span class="i-name">icon-brush-1</span><span class="i-code">0xe812</span></div>
</div>
</div>
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.eot
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.eot b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.eot
index 520e333..f9528bb 100644
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.eot and b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.eot differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.svg
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.svg b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.svg
index 958b792..3cc120c 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.svg
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.svg
@@ -23,6 +23,7 @@
<glyph glyph-name="bus" unicode="" d="m214 171q0 30-21 51t-50 21-51-21-21-51 21-50 51-21 50 21 21 50z m572 0q0 30-21 51t-51 21-50-21-21-51 21-50 50-21 51 21 21 50z m-26 221l-40 215q-3 13-13 21t-22 8h-513q-12 0-22-8t-13-21l-40-215q-3-16 8-29t27-13h593q17 0 27 13t8 29z m-126 342q0 11-8 19t-19 8h-357q-11 0-19-8t-8-19 8-19 19-8h357q11 0 19 8t8 19z m223-405v-336h-71v-72q0-29-21-50t-51-21-50 21-21 50v72h-429v-72q0-29-21-50t-50-21-51 21-21 50v72h-71v336q0 63 14 125l57 253q5 44 55 77t128 49 175 17 174-17 128-49 55-77l58-253q13-57 13-125z" horiz-adv-x="857.1" />
<glyph glyph-name="rocket" unicode="" d="m804 600q0 22-16 38t-38 16-38-16-16-38 16-38 38-16 38 16 16 38z m125 161q0-139-43-241t-141-201q-45-44-109-98l-11-211q-1-9-9-15l-214-125q-4-2-9-2-7 0-13 5l-36 36q-7 7-4 17l47 155-156 156-155-47q-1-1-5-1-7 0-12 5l-36 36q-10 11-3 22l125 214q6 8 15 9l211 11q54 64 98 109 105 104 200 144t241 40q7 0 13-6t6-12z" horiz-adv-x="928.6" />
<glyph glyph-name="fire" unicode="" d="m786-96v-36q0-7-6-13t-12-5h-750q-7 0-13 5t-5 13v36q0 7 5 12t13 5h750q7 0 12-5t6-12z m-143 589q0-44-14-80t-36-63-48-49-54-44-49-40-35-45-14-54q0-54 37-125l-2 0 1 0q-51 23-90 46t-77 56-63 68-41 84-15 103q0 44 14 80t35 63 49 49 54 43 48 41 36 45 14 54q0 52-37 125l2-1-1 1q50-23 89-46t78-56 63-68 41-84 15-103z" horiz-adv-x="785.7" />
+<glyph glyph-name="trash-empty" unicode="" d="m286 439v-321q0-8-5-13t-13-5h-36q-8 0-13 5t-5 13v321q0 8 5 13t13 5h36q8 0 13-5t5-13z m143 0v-321q0-8-5-13t-13-5h-36q-8 0-13 5t-5 13v321q0 8 5 13t13 5h36q8 0 13-5t5-13z m142 0v-321q0-8-5-13t-12-5h-36q-8 0-13 5t-5 13v321q0 8 5 13t13 5h36q7 0 12-5t5-13z m72-404v529h-500v-529q0-12 4-22t8-15 6-5h464q2 0 6 5t8 15 4 22z m-375 601h250l-27 65q-4 5-9 6h-177q-6-1-10-6z m518-18v-36q0-8-5-13t-13-5h-54v-529q0-46-26-80t-63-34h-464q-37 0-63 33t-27 79v531h-53q-8 0-13 5t-5 13v36q0 8 5 13t13 5h172l39 93q9 21 31 35t44 15h178q22 0 44-15t30-35l39-93h173q8 0 13-5t5-13z" horiz-adv-x="785.7" />
<glyph glyph-name="brush-1" unicode="" d="m901 850q39 0 69-26t29-65q0-35-25-84-185-351-260-420-54-51-121-51-71 0-121 52t-51 122q0 72 52 119l356 323q33 30 72 30z m-507-577q22-42 59-73t84-42l1-40q2-119-72-193t-195-75q-68 0-121 26t-86 71-48 102-16 123q4-3 23-17t35-25 32-20 26-9q23 0 31 20 14 37 32 63t39 42 49 27 57 14 70 6z" horiz-adv-x="1000" />
</font>
</defs>
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.ttf
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.ttf b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.ttf
index 8f0def4..00b5a4a 100644
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.ttf and b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.ttf differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.woff
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.woff b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.woff
index 39ccab3..f20af96 100644
Binary files a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.woff and b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.woff differ
http://git-wip-us.apache.org/repos/asf/nifi/blob/852622c9/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js
index e1aec7f..a0fb0cf 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/js/nf/canvas/nf-canvas-toolbar.js
@@ -59,6 +59,7 @@ nf.CanvasToolbar = (function () {
var paste = $('#operate-paste');
var group = $('#operate-group');
var color = $('#operate-color');
+ var del = $('#operate-delete');
// initialize the buttons
initializeButton(disable, 'disable');
@@ -70,6 +71,7 @@ nf.CanvasToolbar = (function () {
initializeButton(paste, 'paste');
initializeButton(group, 'group');
initializeButton(color, 'fillColor');
+ initializeButton(del, 'delete');
// set up initial states for selection-less items
if (nf.Common.isDFM()) {
@@ -89,6 +91,7 @@ nf.CanvasToolbar = (function () {
disableButton(paste);
disableButton(color);
disableButton(group);
+ disableButton(del);
// add a clipboard listener if appropriate
if (nf.Common.isDFM()) {
@@ -113,26 +116,27 @@ nf.CanvasToolbar = (function () {
var copy = $('#operate-copy');
var group = $('#operate-group');
var color = $('#operate-color');
+ var del = $('#operate-delete');
var selection = nf.CanvasUtils.getSelection();
// if all selected components are deletable enable the delete button
- //if (!selection.empty()) {
- // var enableDelete = true;
- // selection.each(function (d) {
- // if (!nf.CanvasUtils.isDeletable(d3.select(this))) {
- // enableDelete = false;
- // return false;
- // }
- // });
- // if (enableDelete) {
- // actions['delete'].enable();
- // } else {
- // actions['delete'].disable();
- // }
- //} else {
- // actions['delete'].disable();
- //}
+ if (!selection.empty()) {
+ var enableDelete = true;
+ selection.each(function (d) {
+ if (!nf.CanvasUtils.isDeletable(d3.select(this))) {
+ enableDelete = false;
+ return false;
+ }
+ });
+ if (enableDelete) {
+ enableButton(del);
+ } else {
+ disableButton(del);
+ }
+ } else {
+ disableButton(del);
+ }
// if there are any copyable components enable the button
if (nf.CanvasUtils.isCopyable(selection)) {
[4/4] nifi git commit: NIFI-1323 - Temp commit
Posted by mc...@apache.org.
NIFI-1323
- Temp commit
Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/8c3f88f5
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/8c3f88f5
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/8c3f88f5
Branch: refs/heads/NIFI-1323
Commit: 8c3f88f53f8f2e4d22a2b38eeb414801f4dc2baf
Parents: 852622c
Author: Matt Gilman <ma...@gmail.com>
Authored: Fri Mar 11 09:12:55 2016 -0500
Committer: Matt Gilman <ma...@gmail.com>
Committed: Fri Mar 11 09:12:55 2016 -0500
----------------------------------------------------------------------
.../main/webapp/WEB-INF/pages/fresh-face.jsp | 50 +++++++++
.../src/main/webapp/css/fresh-face.css | 106 +++++++++++++++++++
2 files changed, 156 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/nifi/blob/8c3f88f5/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/fresh-face.jsp
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/fresh-face.jsp b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/fresh-face.jsp
new file mode 100644
index 0000000..84f4add
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/fresh-face.jsp
@@ -0,0 +1,50 @@
+<%--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+--%>
+<%@ page contentType="text/html" pageEncoding="UTF-8" session="false" %>
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>NiFi</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
+ <link rel="shortcut icon" href="images/nifi16.ico"/>
+ <link rel="stylesheet" href="css/reset.css" type="text/css" />
+ <link rel="stylesheet" href="css/fresh-face.css" type="text/css" />
+ </head>
+ <body>
+ <div id="toolbar-container">
+ <div id="logo">logo</div>
+ <div id="toolbox">toolbox</div>
+ <div id="global-administer">administer</div>
+ <div class="clear"></div>
+ </div>
+ <div id="navigation-container">
+ <div id="flow-status">flow status</div>
+ <div id="search">
+ <input id="search-field" placeholder="Search" />
+ </div>
+ <div id="controller-bulletins">⊡</div>
+ <div class="clear"></div>
+ </div>
+ <div id="breadcrumbs-container">
+ <div id="breadcrumbs">breadcrumbs</div>
+ </div>
+ <div id="action-panels">
+ <div id="navigate-panel" class="action-panel">N</div>
+ <div id="act-panel" class="action-panel">A</div>
+ </div>
+ </body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/8c3f88f5/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/fresh-face.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/fresh-face.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/fresh-face.css
new file mode 100644
index 0000000..ca282e9
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/fresh-face.css
@@ -0,0 +1,106 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#toolbar-container {
+ background-color: #a9bac4;
+}
+
+#logo {
+ width: 200px;
+ height: 50px;
+ float: left;
+ border: 1px solid #000;
+}
+
+#toolbox {
+ width: 400px;
+ height: 56px;
+ float: left;
+ border: 1px solid #000;
+}
+
+#global-administer {
+ width: 400px;
+ height: 50px;
+ border: 1px solid #000;
+}
+
+@media (max-width: 1006px) {
+ #global-administer {
+ float: left;
+ clear: left;
+ }
+}
+
+@media (min-width: 1006px) {
+ #global-administer {
+ float: right;
+ }
+}
+
+#navigation-container {
+}
+
+#flow-status {
+ height: 30px;
+ border: 1px solid #000;
+ position: absolute;
+ padding-left: 10px;
+ padding-right: 10px;
+ left: 0;
+ right: 140px;
+}
+
+#controller-bulletins {
+ height: 30px;
+ border: 1px solid #000;
+ float: right;
+}
+
+#search {
+ height: 30px;
+ border: 1px solid #000;
+ float: right;
+}
+
+#breadcrumbs-container {
+
+}
+
+#breadcrumbs {
+ border: 1px solid #000;
+ height: 30px;
+}
+
+#action-panels {
+ position: absolute;
+ top: 50%;
+ bottom: 50%;
+ left: 0;
+}
+
+div.action-panel {
+ width: 25px;
+ height: 25px;
+ border: 1px solid #000;
+ line-height: 25px;
+ margin-bottom: 5px;
+}
+
+.clear {
+ clear: both;
+}
\ No newline at end of file
[2/4] nifi git commit: NIFI-1323: - Creating graph control panels for
navigating and operating. - Remove controls from the header into the graph
control panels where appropriate. - Removing unneeded styles and images.
Posted by mc...@apache.org.
NIFI-1323:
- Creating graph control panels for navigating and operating.
- Remove controls from the header into the graph control panels where appropriate.
- Removing unneeded styles and images.
Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/6b571081
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/6b571081
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/6b571081
Branch: refs/heads/NIFI-1323
Commit: 6b571081409f91a15638c3098a351fe672ea1886
Parents: c45060f
Author: Matt Gilman <ma...@gmail.com>
Authored: Mon Jan 4 17:05:02 2016 -0500
Committer: Matt Gilman <ma...@gmail.com>
Committed: Mon Jan 4 17:05:02 2016 -0500
----------------------------------------------------------------------
.../nifi-framework/nifi-web/nifi-web-ui/pom.xml | 1 -
.../main/resources/filters/canvas.properties | 1 -
.../src/main/webapp/WEB-INF/pages/canvas.jsp | 1 +
.../WEB-INF/partials/canvas/canvas-header.jsp | 1 -
.../WEB-INF/partials/canvas/navigation.jsp | 130 ++++++--
.../nifi-web-ui/src/main/webapp/css/header.css | 151 ---------
.../nifi-web-ui/src/main/webapp/css/main.css | 4 +
.../src/main/webapp/css/navigation.css | 228 ++++---------
.../src/main/webapp/icon-font/LICENSE.txt | 12 +
.../src/main/webapp/icon-font/README.txt | 75 +++++
.../src/main/webapp/icon-font/config.json | 118 +++++++
.../src/main/webapp/icon-font/css/animation.css | 85 +++++
.../icon-font/css/nifi-icon-font-codes.css | 19 ++
.../icon-font/css/nifi-icon-font-embedded.css | 72 ++++
.../icon-font/css/nifi-icon-font-ie7-codes.css | 19 ++
.../webapp/icon-font/css/nifi-icon-font-ie7.css | 30 ++
.../webapp/icon-font/css/nifi-icon-font.css | 74 ++++
.../src/main/webapp/icon-font/demo.html | 334 +++++++++++++++++++
.../webapp/icon-font/font/nifi-icon-font.eot | Bin 0 -> 8352 bytes
.../webapp/icon-font/font/nifi-icon-font.svg | 29 ++
.../webapp/icon-font/font/nifi-icon-font.ttf | Bin 0 -> 8160 bytes
.../webapp/icon-font/font/nifi-icon-font.woff | Bin 0 -> 4844 bytes
.../src/main/webapp/images/bgOutline.png | Bin 585 -> 0 bytes
.../main/webapp/images/bgToolbarBtnBorder.png | Bin 227 -> 0 bytes
.../src/main/webapp/images/buttonColor.png | Bin 1679 -> 0 bytes
.../src/main/webapp/images/buttonCopy.png | Bin 1166 -> 0 bytes
.../src/main/webapp/images/buttonDelete.png | Bin 1837 -> 0 bytes
.../src/main/webapp/images/buttonDisable.png | Bin 1737 -> 0 bytes
.../src/main/webapp/images/buttonEnable.png | Bin 1375 -> 0 bytes
.../src/main/webapp/images/buttonGroup.png | Bin 880 -> 0 bytes
.../src/main/webapp/images/buttonOutline.png | Bin 495 -> 0 bytes
.../src/main/webapp/images/buttonPanDown.png | Bin 554 -> 0 bytes
.../src/main/webapp/images/buttonPanLeft.png | Bin 588 -> 0 bytes
.../src/main/webapp/images/buttonPanRight.png | Bin 530 -> 0 bytes
.../src/main/webapp/images/buttonPanUp.png | Bin 551 -> 0 bytes
.../src/main/webapp/images/buttonPaste.png | Bin 1372 -> 0 bytes
.../src/main/webapp/images/buttonRun.png | Bin 1163 -> 0 bytes
.../src/main/webapp/images/buttonStop.png | Bin 869 -> 0 bytes
.../src/main/webapp/images/buttonTemplate.png | Bin 1290 -> 0 bytes
.../src/main/webapp/images/buttonZoom100.png | Bin 449 -> 0 bytes
.../src/main/webapp/images/buttonZoomFit.png | Bin 499 -> 0 bytes
.../src/main/webapp/images/buttonZoomIn.png | Bin 435 -> 0 bytes
.../src/main/webapp/images/buttonZoomOut.png | Bin 339 -> 0 bytes
.../src/main/webapp/js/nf/canvas/nf-birdseye.js | 68 ++--
.../webapp/js/nf/canvas/nf-canvas-toolbar.js | 178 +++++-----
.../src/main/webapp/js/nf/canvas/nf-canvas.js | 3 +-
.../webapp/js/nf/canvas/nf-graph-control.js | 171 +++++++---
.../webapp/js/nf/canvas/nf-toolbar-action.js | 96 ------
.../src/main/webapp/js/nf/nf-storage.js | 2 +-
49 files changed, 1280 insertions(+), 622 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/pom.xml
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/pom.xml b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/pom.xml
index 35ad4a2..f675e2a 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/pom.xml
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/pom.xml
@@ -308,7 +308,6 @@
<include>${staging.dir}/js/nf/canvas/nf-selectable.js</include>
<include>${staging.dir}/js/nf/canvas/nf-connectable.js</include>
<include>${staging.dir}/js/nf/canvas/nf-birdseye.js</include>
- <include>${staging.dir}/js/nf/canvas/nf-toolbar-action.js</include>
<include>${staging.dir}/js/nf/canvas/nf-canvas-toolbar.js</include>
<include>${staging.dir}/js/nf/canvas/nf-graph-control.js</include>
<include>${staging.dir}/js/nf/canvas/nf-canvas-header.js</include>
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/resources/filters/canvas.properties
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/resources/filters/canvas.properties b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/resources/filters/canvas.properties
index bf61846..aaf6f47 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/resources/filters/canvas.properties
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/resources/filters/canvas.properties
@@ -52,7 +52,6 @@ nf.canvas.script.tags=<script type="text/javascript" src="js/nf/nf-namespace.js?
<script type="text/javascript" src="js/nf/canvas/nf-connectable.js?${project.version}"></script>\n\
<script type="text/javascript" src="js/nf/canvas/nf-selectable.js?${project.version}"></script>\n\
<script type="text/javascript" src="js/nf/canvas/nf-birdseye.js?${project.version}"></script>\n\
-<script type="text/javascript" src="js/nf/canvas/nf-toolbar-action.js?${project.version}"></script>\n\
<script type="text/javascript" src="js/nf/canvas/nf-canvas-toolbar.js?${project.version}"></script>\n\
<script type="text/javascript" src="js/nf/canvas/nf-graph-control.js?${project.version}"></script>\n\
<script type="text/javascript" src="js/nf/canvas/nf-canvas-header.js?${project.version}"></script>\n\
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp
index f9970df..76b22be 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/pages/canvas.jsp
@@ -22,6 +22,7 @@
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<link rel="shortcut icon" href="images/nifi16.ico"/>
<link rel="stylesheet" href="css/reset.css" type="text/css" />
+ <link rel="stylesheet" href="icon-font/css/nifi-icon-font.css" type="text/css" />
${nf.canvas.style.tags}
<link rel="stylesheet" href="js/codemirror/lib/codemirror.css" type="text/css" />
<link rel="stylesheet" href="js/codemirror/addon/hint/show-hint.css" type="text/css" />
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/canvas-header.jsp
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/canvas-header.jsp b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/canvas-header.jsp
index 7a1d22d..c868bca 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/canvas-header.jsp
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/canvas-header.jsp
@@ -23,7 +23,6 @@
<div id="toolbox-right-edge"></div>
</div>
<div id="toolbar">
- <div id="global-controls"></div>
<div id="utilities-container">
<div id="utilities-border"></div>
<div id="utility-buttons">
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp
index 325cf9d..714a0ed 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/WEB-INF/partials/canvas/navigation.jsp
@@ -24,34 +24,104 @@
</div>
<div id="breadcrumbs-background"></div>
</div>
-<div id="pan-and-zoom">
- <div id="graph-control-separator"> </div>
- <table class="pan">
- <tr>
- <td id="pan-top-left"></td>
- <td id="pan-up-button" title="Pan Up" class="pan-up"></td>
- <td id="pan-top-right"></td>
- </tr>
- <tr>
- <td id="pan-left-button" title="Pan Left" class="pan-left"></td>
- <td id="pan-center"></td>
- <td id="pan-right-button" title="Pan Right" class="pan-right"></td>
- </tr>
- <tr>
- <td id="pan-bottom-left"></td>
- <td id="pan-down-button" title="Pan Down" class="pan-down"></td>
- <td id="pan-bottom-right"></td>
- </tr>
- </table>
- <div id="graph-control-separator"> </div>
- <div id="zoom-in-button" title="Zoom In" class="zoom-in"></div>
- <div id="zoom-out-button" title="Zoom Out" class="zoom-out"></div>
- <div id="graph-control-separator"> </div>
- <div id="zoom-fit-button" title="Fit" class="fit-image"></div>
- <div id="graph-control-separator"> </div>
- <div id="zoom-actual-button" title="Actual Size" class="actual-size"></div>
+<div id="graph-controls">
+ <div id="navigation-control" class="graph-control">
+ <div class="graph-control-docked pointer" title="Navigate">
+ <i class="graph-control-icon nifi-icon icon-compass"></i>
+ </div>
+ <div class="graph-control-header-container hidden">
+ <div class="graph-control-header-icon">
+ <i class="graph-control-icon nifi-icon icon-compass"></i>
+ </div>
+ <div class="graph-control-header">NAVIGATE</div>
+ <div class="graph-control-header-action">
+ <i class="graph-control-expansion nifi-icon icon-plus-squared-alt pointer"></i>
+ </div>
+ <div class="clear"></div>
+ </div>
+ <div class="graph-control-content hidden">
+ <div id="navigation-buttons">
+ <div id="naviagte-zoom-in" class="action-button" title="Zoom In">
+ <i class="graph-control-action-icon nifi-icon icon-zoom-in"></i>
+ </div>
+ <div class="button-spacer-small"> </div>
+ <div id="naviagte-zoom-out" class="action-button" title="Zoom Out">
+ <i class="graph-control-action-icon nifi-icon icon-zoom-out"></i>
+ </div>
+ <div class="button-spacer-large"> </div>
+ <div id="naviagte-zoom-fit" class="action-button" title="Fit">
+ <i class="graph-control-action-icon nifi-icon icon-fighter-jet"></i>
+ </div>
+ <div class="button-spacer-small"> </div>
+ <div id="naviagte-zoom-actual-size" class="action-button" title="Actual">
+ <i class="graph-control-action-icon nifi-icon icon-award"></i>
+ </div>
+ <div class="clear"></div>
+ </div>
+ <div id="birdseye"></div>
+ </div>
+ </div>
+ <div id="operation-control" class="graph-control">
+ <div class="graph-control-docked pointer" title="Operate">
+ <i class="graph-control-icon nifi-icon icon-bullseye"></i>
+ </div>
+ <div class="graph-control-header-container hidden">
+ <div class="graph-control-header-icon">
+ <i class="graph-control-icon nifi-icon icon-bullseye"></i>
+ </div>
+ <div class="graph-control-header">OPERATE</div>
+ <div class="graph-control-header-action">
+ <i class="graph-control-expansion nifi-icon icon-plus-squared-alt pointer"></i>
+ </div>
+ <div class="clear"></div>
+ </div>
+ <div class="graph-control-content hidden">
+ <div id="operation-buttons">
+ <div>
+ <div id="operate-enable" class="action-button" title="Enable">
+ <i class="graph-control-action-icon nifi-icon icon-toggle-on"></i>
+ </div>
+ <div class="button-spacer-small"> </div>
+ <div id="operate-disable" class="action-button" title="Disable">
+ <i class="graph-control-action-icon nifi-icon icon-toggle-off"></i>
+ </div>
+ <div class="button-spacer-large"> </div>
+ <div id="operate-start" class="action-button" title="Start">
+ <i class="graph-control-action-icon nifi-icon icon-play"></i>
+ </div>
+ <div class="button-spacer-small"> </div>
+ <div id="operate-stop" class="action-button" title="Stop">
+ <i class="graph-control-action-icon nifi-icon icon-stop"></i>
+ </div>
+ <div class="button-spacer-large"> </div>
+ <div id="operate-template" class="action-button" title="Create Template">
+ <i class="graph-control-action-icon nifi-icon icon-bus"></i>
+ </div>
+ <div class="button-spacer-large"> </div>
+ <div id="operate-copy" class="action-button" title="Copy">
+ <i class="graph-control-action-icon nifi-icon icon-th"></i>
+ </div>
+ <div class="button-spacer-small"> </div>
+ <div id="operate-paste" class="action-button" title="Paste">
+ <i class="graph-control-action-icon nifi-icon icon-paste"></i>
+ </div>
+ <div class="clear"></div>
+ </div>
+ <div style="margin-top: 5px;">
+ <div id="operate-group" class="action-button" title="Group">
+ <i class="graph-control-action-icon nifi-icon icon-fire"></i>
+ </div>
+ <div class="button-spacer-large"> </div>
+ <div id="operate-color" class="action-button" title="Fill Color">
+ <i class="graph-control-action-icon nifi-icon icon-brush-1"></i>
+ </div>
+ <div class="clear"></div>
+ </div>
+ </div>
+ </div>
+ </div>
</div>
-<div id="birdseye-collapse" class="birdseye-expanded"></div>
-<div id="birdseye-container">
- <div id="birdseye"></div>
-</div>
\ No newline at end of file
+ <%--<div id="zoom-in-button" title="Zoom In" class="zoom-in"></div>--%>
+ <%--<div id="zoom-out-button" title="Zoom Out" class="zoom-out"></div>--%>
+ <%--<div id="zoom-fit-button" title="Fit" class="fit-image"></div>--%>
+ <%--<div id="zoom-actual-button" title="Actual Size" class="actual-size"></div>--%>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/header.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/header.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/header.css
index 200f6bb..8021b34 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/header.css
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/header.css
@@ -241,157 +241,6 @@ div.label-icon-drag {
height: 28px;
}
-/* global actions / controls */
-
-div.toolbar-icon {
- float: left;
- height: 26px;
- width: 20px;
-}
-
-#global-controls-container {
- float: left;
-}
-
-div.control-border {
- float: left;
- height: 26px;
- width: 1px;
- background: transparent url(../images/bgToolbarBtnBorder.png) no-repeat scroll top left;
-}
-
-div.control-separator {
- float: left;
- height: 26px;
- width: 5px;
-}
-
-#global-controls {
- float: left;
- margin-top: 1px;
- margin-left: 20px;
-}
-
-div.enable-all {
- background: transparent url(../images/buttonEnable.png) no-repeat scroll top left;
-}
-
-div.enable-all-hover {
- background: transparent url(../images/buttonEnable.png) no-repeat scroll top center;
-}
-
-div.enable-all-disable {
- background: transparent url(../images/buttonEnable.png) no-repeat scroll top right;
-}
-
-div.disable-all {
- background: transparent url(../images/buttonDisable.png) no-repeat scroll top left;
-}
-
-div.disable-all-hover {
- background: transparent url(../images/buttonDisable.png) no-repeat scroll top center;
-}
-
-div.disable-all-disable {
- background: transparent url(../images/buttonDisable.png) no-repeat scroll top right;
-}
-
-div.start-all {
- background: transparent url(../images/buttonRun.png) no-repeat scroll top left;
-}
-
-div.start-all-hover {
- background: transparent url(../images/buttonRun.png) no-repeat scroll top center;
-}
-
-div.start-all-disable {
- background: transparent url(../images/buttonRun.png) no-repeat scroll top right;
-}
-
-div.stop-all {
- background: transparent url(../images/buttonStop.png) no-repeat scroll top left;
-}
-
-div.stop-all-hover {
- background: transparent url(../images/buttonStop.png) no-repeat scroll top center;
-}
-
-div.stop-all-disable {
- background: transparent url(../images/buttonStop.png) no-repeat scroll top right;
-}
-
-div.copy {
- background: transparent url(../images/buttonCopy.png) no-repeat scroll top left;
-}
-
-div.copy-hover {
- background: transparent url(../images/buttonCopy.png) no-repeat scroll top center;
-}
-
-div.copy-disable {
- background: transparent url(../images/buttonCopy.png) no-repeat scroll top right;
-}
-
-div.paste {
- background: transparent url(../images/buttonPaste.png) no-repeat scroll top left;
-}
-
-div.paste-hover {
- background: transparent url(../images/buttonPaste.png) no-repeat scroll top center;
-}
-
-div.paste-disable {
- background: transparent url(../images/buttonPaste.png) no-repeat scroll top right;
-}
-
-div.fill {
- background: transparent url(../images/buttonColor.png) no-repeat scroll top left;
-}
-
-div.fill-hover {
- background: transparent url(../images/buttonColor.png) no-repeat scroll top center;
-}
-
-div.fill-disable {
- background: transparent url(../images/buttonColor.png) no-repeat scroll top right;
-}
-
-div.group {
- background: transparent url(../images/buttonGroup.png) no-repeat scroll top left;
-}
-
-div.group-hover {
- background: transparent url(../images/buttonGroup.png) no-repeat scroll top center;
-}
-
-div.group-disable {
- background: transparent url(../images/buttonGroup.png) no-repeat scroll top right;
-}
-
-div.delete {
- background: transparent url(../images/buttonDelete.png) no-repeat scroll top left;
-}
-
-div.delete-hover {
- background: transparent url(../images/buttonDelete.png) no-repeat scroll top center;
-}
-
-div.delete-disable {
- background: transparent url(../images/buttonDelete.png) no-repeat scroll top right;
-}
-
-div.template {
- background: transparent url(../images/buttonTemplate.png) no-repeat scroll top left;
-}
-
-div.template-hover {
- background: transparent url(../images/buttonTemplate.png) no-repeat scroll top center;
-}
-
-div.template-disable {
- background: transparent url(../images/buttonTemplate.png) no-repeat scroll top right;
-}
-
/* search field */
div.search-result-icon {
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/main.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/main.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/main.css
index 3a6e9d1..79043df 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/main.css
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/main.css
@@ -104,6 +104,10 @@ ul.links span.header-link-over {
General Styles
*/
+i.nifi-icon {
+ color: #8ea8b2;
+}
+
.unselectable {
-webkit-touch-callout: none;
-webkit-user-select: none;
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/navigation.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/navigation.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/navigation.css
index 4f53610..9eac8ae 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/navigation.css
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/css/navigation.css
@@ -14,132 +14,113 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-/* styles for the graph pan/zoom controls */
-#pan-and-zoom {
- position: absolute;
- top: 94px;
- width: 59px;
- height: 153px;
- padding-right: 4px;
- padding-bottom: 4px;
- z-index: 1000;
- background: transparent url(../images/bgPanZoom.png) no-repeat scroll top left;
-}
-
-table.pan {
- float: left;
- clear: left;
- border-collapse: collapse;
- padding: 0;
- margin: 0;
- margin-left: 6px;
-}
-
-#pan-up-button, #pan-down-button {
- height: 12px;
- width: 18px;
- cursor: pointer;
- z-index: inherit;
-}
-
-#pan-left-button, #pan-right-button {
- width: 14px;
- height: 16px;
- cursor: pointer;
- z-index: inherit;
-}
+/* general graph control styles */
-#pan-center {
- width: 18px;
- height: 16px;
- background: transparent url(../images/bgPanCenter.png) no-repeat scroll center center;
+#graph-controls {
+ position: absolute;
+ left: 0;
+ z-index: 2;
}
-#pan-top-right, #pan-top-left, #pan-bottom-right, #pan-bottom-left {
- background-color: transparent;
+div.graph-control {
+ padding: 2px;
+ border: 1px solid #e5ebed;
+ margin-bottom: 5px;
+ background-color: #fff;
}
-td.pan-up {
- background: transparent url(../images/buttonPanUp.png) no-repeat scroll top left;
+div.graph-control i.graph-control-icon {
+ font-size: 20px;
}
-td.pan-up-hover {
- background: transparent url(../images/buttonPanUp.png) no-repeat scroll top right;
+div.graph-control i.graph-control-expansion {
+ font-size: 20px;
+ color: #035f8f;
}
-td.pan-down {
- background: transparent url(../images/buttonPanDown.png) no-repeat scroll top left;
+div.graph-control-header-icon {
+ float: left;
}
-td.pan-down-hover {
- background: transparent url(../images/buttonPanDown.png) no-repeat scroll top right;
+div.graph-control-header {
+ float: left;
+ font-size: 14px;
+ line-height: 22px;
+ color: #8ea8b2;
}
-td.pan-left {
- background: transparent url(../images/buttonPanLeft.png) no-repeat scroll top left;
+div.graph-control-header-action {
+ float: right;
}
-td.pan-left-hover {
- background: transparent url(../images/buttonPanLeft.png) no-repeat scroll top right;
+div.graph-control-content {
+ margin: 5px;
+ width: 250px;
}
-td.pan-right {
- background: transparent url(../images/buttonPanRight.png) no-repeat scroll top left;
-}
+/* navigate buttons */
-td.pan-right-hover {
- background: transparent url(../images/buttonPanRight.png) no-repeat scroll top right;
+#navigation-buttons {
+ margin-bottom: 5px;
}
-div.zoom-in {
- background: transparent url(../images/buttonZoomIn.png) no-repeat scroll top left;
+div.action-button {
+ float: left;
+ border: 1px solid #8ea8b2;
+ cursor: pointer;
+ height: 24px;
+ width: 24px;
+ text-align: center;
}
-div.zoom-in-hover {
- background: transparent url(../images/buttonZoomIn.png) no-repeat scroll top right;
+div.graph-control i.graph-control-action-icon {
+ font-size: 16px;
+ color: #035f8f;
+ line-height: 24px;
}
-div.zoom-out {
- background: transparent url(../images/buttonZoomOut.png) no-repeat scroll top left;
+div.graph-control i.icon-disabled {
+ color: #ddd;
}
-div.zoom-out-hover {
- background: transparent url(../images/buttonZoomOut.png) no-repeat scroll top right;
+div.button-spacer-small {
+ float: left;
+ width: 2px;
}
-div.fit-image {
- background: transparent url(../images/buttonZoomFit.png) no-repeat scroll top left;
+div.button-spacer-large {
+ float: left;
+ width: 10px;
}
-div.fit-image-hover {
- background: transparent url(../images/buttonZoomFit.png) no-repeat scroll top right;
-}
+/* outline/birdseye */
-div.actual-size {
- background: transparent url(../images/buttonZoom100.png) no-repeat scroll top left;
+#birdseye svg, #birdseye canvas {
+ position: absolute;
+ overflow: hidden;
+ top: 62px;
+ left: 8px;
}
-div.actual-size-hover {
- background: transparent url(../images/buttonZoom100.png) no-repeat scroll top right;
+#birdseye {
+ width: 248px;
+ height: 150px;
+ background: #fff;
+ z-index: 1001;
+ overflow: hidden;
+ border: 1px solid #e5ebed;
}
-#zoom-in-button, #zoom-out-button, #zoom-fit-button, #zoom-actual-button {
- float: left;
- clear: left;
- margin-left: 20px;
- height: 16px;
- width: 18px;
- cursor: pointer;
- z-index: inherit;
+.brush .extent {
+ stroke: #666;
+ fill-opacity: .125;
+ shape-rendering: crispEdges;
}
-#graph-control-separator {
- float: left;
- clear: left;
- height: 8px;
- -webkit-user-select: none;
- -moz-user-select: none;
+rect.birdseye-brush {
+ stroke: #7098ad;
+ fill: transparent;
}
/* styles for the breadcrumbs bar */
@@ -218,75 +199,4 @@ div.actual-size-hover {
left: 10px;
float: left;
white-space: nowrap;
-}
-
-/* styles for the outline */
-
-#birdseye-container {
- position: absolute;
- top: 94px;
- right: 0px;
- width: 202px;
- height: 117px;
- background-image: url(../images/bgOutline.png);
- background-color: transparent;
- z-index: 1000;
- overflow: hidden;
-}
-
-#birdseye-container svg, #birdseye-container canvas {
- position: absolute;
- overflow: hidden;
- top: 1px;
- left: 4px;
- bottom: 0px;
- right: 0px;
-}
-
-#birdseye {
- margin-top: 1px;
- margin-left: 4px;
- width: 194px;
- height: 108px;
- background: #fff;
- z-index: 1001;
- overflow: hidden;
- border: 1px solid #ccc;
-}
-
-#birdseye-collapse {
- position: absolute;
- top: 80px;
- right: 5px;
- width: 15px;
- height: 10px;
- z-index: 1010;
- cursor: pointer;
-}
-
-div.birdseye-expanded {
- background: transparent url(../images/buttonOutline.png) no-repeat scroll top left;
-}
-
-div.birdseye-expanded-hover {
- background: transparent url(../images/buttonOutline.png) no-repeat scroll top right;
-}
-
-div.birdseye-collapsed {
- background: transparent url(../images/buttonOutline.png) no-repeat scroll bottom left;
-}
-
-div.birdseye-collapsed-hover {
- background: transparent url(../images/buttonOutline.png) no-repeat scroll bottom right;
-}
-
-.brush .extent {
- stroke: #666;
- fill-opacity: .125;
- shape-rendering: crispEdges;
-}
-
-rect.birdseye-brush {
- stroke: #7098ad;
- fill: transparent;
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/LICENSE.txt
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/LICENSE.txt b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/LICENSE.txt
new file mode 100644
index 0000000..b511054
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/LICENSE.txt
@@ -0,0 +1,12 @@
+Font license info
+
+
+## Font Awesome
+
+ Copyright (C) 2012 by Dave Gandy
+
+ Author: Dave Gandy
+ License: SIL ()
+ Homepage: http://fortawesome.github.com/Font-Awesome/
+
+
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/README.txt
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/README.txt b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/README.txt
new file mode 100644
index 0000000..a91438a
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/README.txt
@@ -0,0 +1,75 @@
+This webfont is generated by http://fontello.com open source project.
+
+
+================================================================================
+Please, note, that you should obey original font licences, used to make this
+webfont pack. Details available in LICENSE.txt file.
+
+- Usually, it's enough to publish content of LICENSE.txt file somewhere on your
+ site in "About" section.
+
+- If your project is open-source, usually, it will be ok to make LICENSE.txt
+ file publically available in your repository.
+
+- Fonts, used in Fontello, don't require a clickable link on your site.
+ But any kind of additional authors crediting is welcome.
+================================================================================
+
+
+Comments on archive content
+---------------------------
+
+- /font/* - fonts in different formats
+
+- /css/* - different kinds of css, for all situations. Should be ok with
+ twitter bootstrap. Also, you can skip <i> style and assign icon classes
+ directly to text elements, if you don't mind about IE7.
+
+- demo.html - demo file, to show your webfont content
+
+- LICENSE.txt - license info about source fonts, used to build your one.
+
+- config.json - keeps your settings. You can import it back into fontello
+ anytime, to continue your work
+
+
+Why so many CSS files ?
+-----------------------
+
+Because we like to fit all your needs :)
+
+- basic file, <your_font_name>.css - is usually enough, it contains @font-face
+ and character code definitions
+
+- *-ie7.css - if you need IE7 support, but still don't wish to put char codes
+ directly into html
+
+- *-codes.css and *-ie7-codes.css - if you like to use your own @font-face
+ rules, but still wish to benefit from css generation. That can be very
+ convenient for automated asset build systems. When you need to update font -
+ no need to manually edit files, just override old version with archive
+ content. See fontello source code for examples.
+
+- *-embedded.css - basic css file, but with embedded WOFF font, to avoid
+ CORS issues in Firefox and IE9+, when fonts are hosted on the separate domain.
+ We strongly recommend to resolve this issue by `Access-Control-Allow-Origin`
+ server headers. But if you ok with dirty hack - this file is for you. Note,
+ that data url moved to separate @font-face to avoid problems with <IE9, when
+ string is too long.
+
+- animate.css - use it to get ideas about spinner rotation animation.
+
+
+Attention for server setup
+--------------------------
+
+You MUST setup server to reply with proper `mime-types` for font files -
+otherwise some browsers will fail to show fonts.
+
+Usually, `apache` already has necessary settings, but `nginx` and other
+webservers should be tuned. Here is list of mime types for our file extensions:
+
+- `application/vnd.ms-fontobject` - eot
+- `application/x-font-woff` - woff
+- `application/x-font-ttf` - ttf
+- `image/svg+xml` - svg
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/config.json
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/config.json b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/config.json
new file mode 100644
index 0000000..f92c00b
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/config.json
@@ -0,0 +1,118 @@
+{
+ "name": "nifi-icon-font",
+ "css_prefix_text": "icon-",
+ "css_use_suffix": false,
+ "hinting": true,
+ "units_per_em": 1000,
+ "ascent": 850,
+ "glyphs": [
+ {
+ "uid": "b1887b423d2fd15c345e090320c91ca0",
+ "css": "th",
+ "code": 59404,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "2d3be3e856fc1e4ac067590d2ded1b07",
+ "css": "plus-squared-alt",
+ "code": 59395,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "18ef25350258541e8e54148ed79845c0",
+ "css": "minus-squared-alt",
+ "code": 59393,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "e5d624264734620fa9f98d59e6dc941f",
+ "css": "compass",
+ "code": 59392,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "0b2b66e526028a6972d51a6f10281b4b",
+ "css": "zoom-in",
+ "code": 59396,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "d25d10efa900f529ad1d275657cfd30e",
+ "css": "zoom-out",
+ "code": 59397,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "ce06b5805120d0c2f8d60cd3f1a4fdb5",
+ "css": "play",
+ "code": 59402,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "b624a1e512819d410ddbee84e6918b9d",
+ "css": "stop",
+ "code": 59403,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "ab656e280958018a7859eba9a1eabbc7",
+ "css": "award",
+ "code": 59399,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "cb36cbe4e2dac9545e32c3d80a7c6e03",
+ "css": "fighter-jet",
+ "code": 59398,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "b429436ec5a518c78479d44ef18dbd60",
+ "css": "paste",
+ "code": 59405,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "2a4e6c99b732a57da40e32fa2a7800a4",
+ "css": "toggle-off",
+ "code": 59400,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "3256ef03b16e7ab51235bc7378b53bb5",
+ "css": "toggle-on",
+ "code": 59401,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "254077e7c0a9e6d303b32f9c35b96a40",
+ "css": "fire",
+ "code": 59408,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "8aa99bc60f3553bb3e31b73dd6e744c8",
+ "css": "rocket",
+ "code": 59407,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "5b17c7263caa553039655f2fef81ecaf",
+ "css": "bus",
+ "code": 59406,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "c92ad3028acce9d51bae0ac82f5de8a2",
+ "css": "bullseye",
+ "code": 59394,
+ "src": "fontawesome"
+ },
+ {
+ "uid": "fa9a0b7e788c2d78e24cef1de6b70e80",
+ "css": "brush-1",
+ "code": 59410,
+ "src": "fontawesome"
+ }
+ ]
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/animation.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/animation.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/animation.css
new file mode 100644
index 0000000..ac5a956
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/animation.css
@@ -0,0 +1,85 @@
+/*
+ Animation example, for spinners
+*/
+.animate-spin {
+ -moz-animation: spin 2s infinite linear;
+ -o-animation: spin 2s infinite linear;
+ -webkit-animation: spin 2s infinite linear;
+ animation: spin 2s infinite linear;
+ display: inline-block;
+}
+@-moz-keyframes spin {
+ 0% {
+ -moz-transform: rotate(0deg);
+ -o-transform: rotate(0deg);
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ -moz-transform: rotate(359deg);
+ -o-transform: rotate(359deg);
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+@-webkit-keyframes spin {
+ 0% {
+ -moz-transform: rotate(0deg);
+ -o-transform: rotate(0deg);
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ -moz-transform: rotate(359deg);
+ -o-transform: rotate(359deg);
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+@-o-keyframes spin {
+ 0% {
+ -moz-transform: rotate(0deg);
+ -o-transform: rotate(0deg);
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ -moz-transform: rotate(359deg);
+ -o-transform: rotate(359deg);
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+@-ms-keyframes spin {
+ 0% {
+ -moz-transform: rotate(0deg);
+ -o-transform: rotate(0deg);
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ -moz-transform: rotate(359deg);
+ -o-transform: rotate(359deg);
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
+@keyframes spin {
+ 0% {
+ -moz-transform: rotate(0deg);
+ -o-transform: rotate(0deg);
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+
+ 100% {
+ -moz-transform: rotate(359deg);
+ -o-transform: rotate(359deg);
+ -webkit-transform: rotate(359deg);
+ transform: rotate(359deg);
+ }
+}
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-codes.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-codes.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-codes.css
new file mode 100644
index 0000000..382c656
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-codes.css
@@ -0,0 +1,19 @@
+
+.icon-compass:before { content: '\e800'; } /* '' */
+.icon-minus-squared-alt:before { content: '\e801'; } /* '' */
+.icon-bullseye:before { content: '\e802'; } /* '' */
+.icon-plus-squared-alt:before { content: '\e803'; } /* '' */
+.icon-zoom-in:before { content: '\e804'; } /* '' */
+.icon-zoom-out:before { content: '\e805'; } /* '' */
+.icon-fighter-jet:before { content: '\e806'; } /* '' */
+.icon-award:before { content: '\e807'; } /* '' */
+.icon-toggle-off:before { content: '\e808'; } /* '' */
+.icon-toggle-on:before { content: '\e809'; } /* '' */
+.icon-play:before { content: '\e80a'; } /* '' */
+.icon-stop:before { content: '\e80b'; } /* '' */
+.icon-th:before { content: '\e80c'; } /* '' */
+.icon-paste:before { content: '\e80d'; } /* '' */
+.icon-bus:before { content: '\e80e'; } /* '' */
+.icon-rocket:before { content: '\e80f'; } /* '' */
+.icon-fire:before { content: '\e810'; } /* '' */
+.icon-brush-1:before { content: '\e812'; } /* '' */
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-embedded.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-embedded.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-embedded.css
new file mode 100644
index 0000000..fa8ce02
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-embedded.css
@@ -0,0 +1,72 @@
+@font-face {
+ font-family: 'nifi-icon-font';
+ src: url('../font/nifi-icon-font.eot?54105150');
+ src: url('../font/nifi-icon-font.eot?54105150#iefix') format('embedded-opentype'),
+ url('../font/nifi-icon-font.svg?54105150#nifi-icon-font') format('svg');
+ font-weight: normal;
+ font-style: normal;
+}
+@font-face {
+ font-family: 'nifi-icon-font';
+ src: url('data:application/octet-stream;base64,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') format('woff'),
+ url('data:application/octet-stream;base64,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') format('truetype');
+}
+/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
+/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
+/*
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+ @font-face {
+ font-family: 'nifi-icon-font';
+ src: url('../font/nifi-icon-font.svg?54105150#nifi-icon-font') format('svg');
+ }
+}
+*/
+
+ [class^="icon-"]:before, [class*=" icon-"]:before {
+ font-family: "nifi-icon-font";
+ font-style: normal;
+ font-weight: normal;
+ speak: none;
+
+ display: inline-block;
+ text-decoration: inherit;
+ width: 1em;
+ margin-right: .2em;
+ text-align: center;
+ /* opacity: .8; */
+
+ /* For safety - reset parent styles, that can break glyph codes*/
+ font-variant: normal;
+ text-transform: none;
+
+ /* fix buttons height, for twitter bootstrap */
+ line-height: 1em;
+
+ /* Animation center compensation - margins should be symmetric */
+ /* remove if not needed */
+ margin-left: .2em;
+
+ /* you can be more comfortable with increased icons size */
+ /* font-size: 120%; */
+
+ /* Uncomment for 3D effect */
+ /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
+}
+.icon-compass:before { content: '\e800'; } /* '' */
+.icon-minus-squared-alt:before { content: '\e801'; } /* '' */
+.icon-bullseye:before { content: '\e802'; } /* '' */
+.icon-plus-squared-alt:before { content: '\e803'; } /* '' */
+.icon-zoom-in:before { content: '\e804'; } /* '' */
+.icon-zoom-out:before { content: '\e805'; } /* '' */
+.icon-fighter-jet:before { content: '\e806'; } /* '' */
+.icon-award:before { content: '\e807'; } /* '' */
+.icon-toggle-off:before { content: '\e808'; } /* '' */
+.icon-toggle-on:before { content: '\e809'; } /* '' */
+.icon-play:before { content: '\e80a'; } /* '' */
+.icon-stop:before { content: '\e80b'; } /* '' */
+.icon-th:before { content: '\e80c'; } /* '' */
+.icon-paste:before { content: '\e80d'; } /* '' */
+.icon-bus:before { content: '\e80e'; } /* '' */
+.icon-rocket:before { content: '\e80f'; } /* '' */
+.icon-fire:before { content: '\e810'; } /* '' */
+.icon-brush-1:before { content: '\e812'; } /* '' */
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7-codes.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7-codes.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7-codes.css
new file mode 100644
index 0000000..4b6063d
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7-codes.css
@@ -0,0 +1,19 @@
+
+.icon-compass { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-minus-squared-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-bullseye { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-plus-squared-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-zoom-in { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-zoom-out { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-fighter-jet { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-award { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-toggle-off { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-toggle-on { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-play { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-stop { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-th { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-paste { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-bus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-rocket { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-fire { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-brush-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7.css
new file mode 100644
index 0000000..6fb8344
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font-ie7.css
@@ -0,0 +1,30 @@
+[class^="icon-"], [class*=" icon-"] {
+ font-family: 'nifi-icon-font';
+ font-style: normal;
+ font-weight: normal;
+
+ /* fix buttons height */
+ line-height: 1em;
+
+ /* you can be more comfortable with increased icons size */
+ /* font-size: 120%; */
+}
+
+.icon-compass { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-minus-squared-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-bullseye { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-plus-squared-alt { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-zoom-in { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-zoom-out { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-fighter-jet { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-award { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-toggle-off { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-toggle-on { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-play { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-stop { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-th { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-paste { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-bus { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-rocket { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-fire { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
+.icon-brush-1 { *zoom: expression( this.runtimeStyle['zoom'] = '1', this.innerHTML = ' '); }
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font.css
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font.css b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font.css
new file mode 100644
index 0000000..f347464
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/css/nifi-icon-font.css
@@ -0,0 +1,74 @@
+@font-face {
+ font-family: 'nifi-icon-font';
+ src: url('../font/nifi-icon-font.eot?69740385');
+ src: url('../font/nifi-icon-font.eot?69740385#iefix') format('embedded-opentype'),
+ url('../font/nifi-icon-font.woff?69740385') format('woff'),
+ url('../font/nifi-icon-font.ttf?69740385') format('truetype'),
+ url('../font/nifi-icon-font.svg?69740385#nifi-icon-font') format('svg');
+ font-weight: normal;
+ font-style: normal;
+}
+/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
+/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
+/*
+@media screen and (-webkit-min-device-pixel-ratio:0) {
+ @font-face {
+ font-family: 'nifi-icon-font';
+ src: url('../font/nifi-icon-font.svg?69740385#nifi-icon-font') format('svg');
+ }
+}
+*/
+
+ [class^="icon-"]:before, [class*=" icon-"]:before {
+ font-family: "nifi-icon-font";
+ font-style: normal;
+ font-weight: normal;
+ speak: none;
+
+ display: inline-block;
+ text-decoration: inherit;
+ width: 1em;
+ margin-right: .2em;
+ text-align: center;
+ /* opacity: .8; */
+
+ /* For safety - reset parent styles, that can break glyph codes*/
+ font-variant: normal;
+ text-transform: none;
+
+ /* fix buttons height, for twitter bootstrap */
+ line-height: 1em;
+
+ /* Animation center compensation - margins should be symmetric */
+ /* remove if not needed */
+ margin-left: .2em;
+
+ /* you can be more comfortable with increased icons size */
+ /* font-size: 120%; */
+
+ /* Font smoothing. That was taken from TWBS */
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+
+ /* Uncomment for 3D effect */
+ /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
+}
+
+.icon-compass:before { content: '\e800'; } /* '' */
+.icon-minus-squared-alt:before { content: '\e801'; } /* '' */
+.icon-bullseye:before { content: '\e802'; } /* '' */
+.icon-plus-squared-alt:before { content: '\e803'; } /* '' */
+.icon-zoom-in:before { content: '\e804'; } /* '' */
+.icon-zoom-out:before { content: '\e805'; } /* '' */
+.icon-fighter-jet:before { content: '\e806'; } /* '' */
+.icon-award:before { content: '\e807'; } /* '' */
+.icon-toggle-off:before { content: '\e808'; } /* '' */
+.icon-toggle-on:before { content: '\e809'; } /* '' */
+.icon-play:before { content: '\e80a'; } /* '' */
+.icon-stop:before { content: '\e80b'; } /* '' */
+.icon-th:before { content: '\e80c'; } /* '' */
+.icon-paste:before { content: '\e80d'; } /* '' */
+.icon-bus:before { content: '\e80e'; } /* '' */
+.icon-rocket:before { content: '\e80f'; } /* '' */
+.icon-fire:before { content: '\e810'; } /* '' */
+.icon-brush-1:before { content: '\e812'; } /* '' */
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/demo.html
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/demo.html b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/demo.html
new file mode 100644
index 0000000..c52bd01
--- /dev/null
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/demo.html
@@ -0,0 +1,334 @@
+<!DOCTYPE html>
+<html>
+ <head><!--[if lt IE 9]><script language="javascript" type="text/javascript" src="//html5shim.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
+ <meta charset="UTF-8"><style>/*
+ * Bootstrap v2.2.1
+ *
+ * Copyright 2012 Twitter, Inc
+ * Licensed under the Apache License v2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Designed and built with all the love in the world @twitter by @mdo and @fat.
+ */
+.clearfix {
+ *zoom: 1;
+}
+.clearfix:before,
+.clearfix:after {
+ display: table;
+ content: "";
+ line-height: 0;
+}
+.clearfix:after {
+ clear: both;
+}
+html {
+ font-size: 100%;
+ -webkit-text-size-adjust: 100%;
+ -ms-text-size-adjust: 100%;
+}
+a:focus {
+ outline: thin dotted #333;
+ outline: 5px auto -webkit-focus-ring-color;
+ outline-offset: -2px;
+}
+a:hover,
+a:active {
+ outline: 0;
+}
+button,
+input,
+select,
+textarea {
+ margin: 0;
+ font-size: 100%;
+ vertical-align: middle;
+}
+button,
+input {
+ *overflow: visible;
+ line-height: normal;
+}
+button::-moz-focus-inner,
+input::-moz-focus-inner {
+ padding: 0;
+ border: 0;
+}
+body {
+ margin: 0;
+ font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+ font-size: 14px;
+ line-height: 20px;
+ color: #333;
+ background-color: #fff;
+}
+a {
+ color: #08c;
+ text-decoration: none;
+}
+a:hover {
+ color: #005580;
+ text-decoration: underline;
+}
+.row {
+ margin-left: -20px;
+ *zoom: 1;
+}
+.row:before,
+.row:after {
+ display: table;
+ content: "";
+ line-height: 0;
+}
+.row:after {
+ clear: both;
+}
+[class*="span"] {
+ float: left;
+ min-height: 1px;
+ margin-left: 20px;
+}
+.container,
+.navbar-static-top .container,
+.navbar-fixed-top .container,
+.navbar-fixed-bottom .container {
+ width: 940px;
+}
+.span12 {
+ width: 940px;
+}
+.span11 {
+ width: 860px;
+}
+.span10 {
+ width: 780px;
+}
+.span9 {
+ width: 700px;
+}
+.span8 {
+ width: 620px;
+}
+.span7 {
+ width: 540px;
+}
+.span6 {
+ width: 460px;
+}
+.span5 {
+ width: 380px;
+}
+.span4 {
+ width: 300px;
+}
+.span3 {
+ width: 220px;
+}
+.span2 {
+ width: 140px;
+}
+.span1 {
+ width: 60px;
+}
+[class*="span"].pull-right,
+.row-fluid [class*="span"].pull-right {
+ float: right;
+}
+.container {
+ margin-right: auto;
+ margin-left: auto;
+ *zoom: 1;
+}
+.container:before,
+.container:after {
+ display: table;
+ content: "";
+ line-height: 0;
+}
+.container:after {
+ clear: both;
+}
+p {
+ margin: 0 0 10px;
+}
+.lead {
+ margin-bottom: 20px;
+ font-size: 21px;
+ font-weight: 200;
+ line-height: 30px;
+}
+small {
+ font-size: 85%;
+}
+h1 {
+ margin: 10px 0;
+ font-family: inherit;
+ font-weight: bold;
+ line-height: 20px;
+ color: inherit;
+ text-rendering: optimizelegibility;
+}
+h1 small {
+ font-weight: normal;
+ line-height: 1;
+ color: #999;
+}
+h1 {
+ line-height: 40px;
+}
+h1 {
+ font-size: 38.5px;
+}
+h1 small {
+ font-size: 24.5px;
+}
+body {
+ margin-top: 90px;
+}
+.header {
+ position: fixed;
+ top: 0;
+ left: 50%;
+ margin-left: -480px;
+ background-color: #fff;
+ border-bottom: 1px solid #ddd;
+ padding-top: 10px;
+ z-index: 10;
+}
+.footer {
+ color: #ddd;
+ font-size: 12px;
+ text-align: center;
+ margin-top: 20px;
+}
+.footer a {
+ color: #ccc;
+ text-decoration: underline;
+}
+.the-icons {
+ font-size: 14px;
+ line-height: 24px;
+}
+.switch {
+ position: absolute;
+ right: 0;
+ bottom: 10px;
+ color: #666;
+}
+.switch input {
+ margin-right: 0.3em;
+}
+.codesOn .i-name {
+ display: none;
+}
+.codesOn .i-code {
+ display: inline;
+}
+.i-code {
+ display: none;
+}
+@font-face {
+ font-family: 'nifi-icon-font';
+ src: url('./font/nifi-icon-font.eot?83682963');
+ src: url('./font/nifi-icon-font.eot?83682963#iefix') format('embedded-opentype'),
+ url('./font/nifi-icon-font.woff?83682963') format('woff'),
+ url('./font/nifi-icon-font.ttf?83682963') format('truetype'),
+ url('./font/nifi-icon-font.svg?83682963#nifi-icon-font') format('svg');
+ font-weight: normal;
+ font-style: normal;
+ }
+
+
+ .demo-icon
+ {
+ font-family: "nifi-icon-font";
+ font-style: normal;
+ font-weight: normal;
+ speak: none;
+
+ display: inline-block;
+ text-decoration: inherit;
+ width: 1em;
+ margin-right: .2em;
+ text-align: center;
+ /* opacity: .8; */
+
+ /* For safety - reset parent styles, that can break glyph codes*/
+ font-variant: normal;
+ text-transform: none;
+
+ /* fix buttons height, for twitter bootstrap */
+ line-height: 1em;
+
+ /* Animation center compensation - margins should be symmetric */
+ /* remove if not needed */
+ margin-left: .2em;
+
+ /* You can be more comfortable with increased icons size */
+ /* font-size: 120%; */
+
+ /* Font smoothing. That was taken from TWBS */
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+
+ /* Uncomment for 3D effect */
+ /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
+ }
+ </style>
+ <link rel="stylesheet" href="css/animation.css"><!--[if IE 7]><link rel="stylesheet" href="css/nifi-icon-font-ie7.css"><![endif]-->
+ <script>
+ function toggleCodes(on) {
+ var obj = document.getElementById('icons');
+
+ if (on) {
+ obj.className += ' codesOn';
+ } else {
+ obj.className = obj.className.replace(' codesOn', '');
+ }
+ }
+
+ </script>
+ </head>
+ <body>
+ <div class="container header">
+ <h1>
+ nifi-icon-font
+ <small>font demo</small>
+ </h1>
+ <label class="switch">
+ <input type="checkbox" onclick="toggleCodes(this.checked)">show codes
+ </label>
+ </div>
+ <div id="icons" class="container">
+ <div class="row">
+ <div title="Code: 0xe800" class="the-icons span3"><i class="demo-icon icon-compass"></i> <span class="i-name">icon-compass</span><span class="i-code">0xe800</span></div>
+ <div title="Code: 0xe801" class="the-icons span3"><i class="demo-icon icon-minus-squared-alt"></i> <span class="i-name">icon-minus-squared-alt</span><span class="i-code">0xe801</span></div>
+ <div title="Code: 0xe802" class="the-icons span3"><i class="demo-icon icon-bullseye"></i> <span class="i-name">icon-bullseye</span><span class="i-code">0xe802</span></div>
+ <div title="Code: 0xe803" class="the-icons span3"><i class="demo-icon icon-plus-squared-alt"></i> <span class="i-name">icon-plus-squared-alt</span><span class="i-code">0xe803</span></div>
+ </div>
+ <div class="row">
+ <div title="Code: 0xe804" class="the-icons span3"><i class="demo-icon icon-zoom-in"></i> <span class="i-name">icon-zoom-in</span><span class="i-code">0xe804</span></div>
+ <div title="Code: 0xe805" class="the-icons span3"><i class="demo-icon icon-zoom-out"></i> <span class="i-name">icon-zoom-out</span><span class="i-code">0xe805</span></div>
+ <div title="Code: 0xe806" class="the-icons span3"><i class="demo-icon icon-fighter-jet"></i> <span class="i-name">icon-fighter-jet</span><span class="i-code">0xe806</span></div>
+ <div title="Code: 0xe807" class="the-icons span3"><i class="demo-icon icon-award"></i> <span class="i-name">icon-award</span><span class="i-code">0xe807</span></div>
+ </div>
+ <div class="row">
+ <div title="Code: 0xe808" class="the-icons span3"><i class="demo-icon icon-toggle-off"></i> <span class="i-name">icon-toggle-off</span><span class="i-code">0xe808</span></div>
+ <div title="Code: 0xe809" class="the-icons span3"><i class="demo-icon icon-toggle-on"></i> <span class="i-name">icon-toggle-on</span><span class="i-code">0xe809</span></div>
+ <div title="Code: 0xe80a" class="the-icons span3"><i class="demo-icon icon-play"></i> <span class="i-name">icon-play</span><span class="i-code">0xe80a</span></div>
+ <div title="Code: 0xe80b" class="the-icons span3"><i class="demo-icon icon-stop"></i> <span class="i-name">icon-stop</span><span class="i-code">0xe80b</span></div>
+ </div>
+ <div class="row">
+ <div title="Code: 0xe80c" class="the-icons span3"><i class="demo-icon icon-th"></i> <span class="i-name">icon-th</span><span class="i-code">0xe80c</span></div>
+ <div title="Code: 0xe80d" class="the-icons span3"><i class="demo-icon icon-paste"></i> <span class="i-name">icon-paste</span><span class="i-code">0xe80d</span></div>
+ <div title="Code: 0xe80e" class="the-icons span3"><i class="demo-icon icon-bus"></i> <span class="i-name">icon-bus</span><span class="i-code">0xe80e</span></div>
+ <div title="Code: 0xe80f" class="the-icons span3"><i class="demo-icon icon-rocket"></i> <span class="i-name">icon-rocket</span><span class="i-code">0xe80f</span></div>
+ </div>
+ <div class="row">
+ <div title="Code: 0xe810" class="the-icons span3"><i class="demo-icon icon-fire"></i> <span class="i-name">icon-fire</span><span class="i-code">0xe810</span></div>
+ <div title="Code: 0xe812" class="the-icons span3"><i class="demo-icon icon-brush-1"></i> <span class="i-name">icon-brush-1</span><span class="i-code">0xe812</span></div>
+ </div>
+ </div>
+ <div class="container footer">Generated by <a href="http://fontello.com">fontello.com</a></div>
+ </body>
+</html>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/nifi/blob/6b571081/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.eot
----------------------------------------------------------------------
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.eot b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.eot
new file mode 100644
index 0000000..520e333
Binary files /dev/null and b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-web/nifi-web-ui/src/main/webapp/icon-font/font/nifi-icon-font.eot differ