Esanders has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/175306

Change subject: Find and replace tool
......................................................................

Find and replace tool

Change-Id: I311b16c5aa5cfa96ac909bbd3aeebeae2a15a2c2
---
M .docs/eg-iframe.html
M build/modules.json
M demos/ve/desktop.html
M demos/ve/mobile.html
M src/init/sa/ve.init.sa.Target.js
A src/ui/styles/images/icons/find-ltr.svg
A src/ui/styles/images/icons/find-rtl.svg
M src/ui/styles/ve.ui.Icons.css
A src/ui/tools/ve.ui.FindAndReplaceTool.js
M tests/index.html
10 files changed, 64 insertions(+), 1 deletion(-)


  git pull ssh://gerrit.wikimedia.org:29418/VisualEditor/VisualEditor 
refs/changes/06/175306/1

diff --git a/.docs/eg-iframe.html b/.docs/eg-iframe.html
index 7b51eeb..d5ea10b 100644
--- a/.docs/eg-iframe.html
+++ b/.docs/eg-iframe.html
@@ -323,6 +323,7 @@
                <script src="../src/ui/tools/ve.ui.AnnotationTool.js"></script>
                <script 
src="../src/ui/tools/ve.ui.ClearAnnotationTool.js"></script>
                <script src="../src/ui/tools/ve.ui.DialogTool.js"></script>
+               <script 
src="../src/ui/tools/ve.ui.FindAndReplaceTool.js"></script>
                <script src="../src/ui/tools/ve.ui.FormatTool.js"></script>
                <script src="../src/ui/tools/ve.ui.HistoryTool.js"></script>
                <script src="../src/ui/tools/ve.ui.IndentationTool.js"></script>
diff --git a/build/modules.json b/build/modules.json
index 98d62a1..6565ac7 100644
--- a/build/modules.json
+++ b/build/modules.json
@@ -348,6 +348,7 @@
                        "src/ui/tools/ve.ui.AnnotationTool.js",
                        "src/ui/tools/ve.ui.ClearAnnotationTool.js",
                        "src/ui/tools/ve.ui.DialogTool.js",
+                       "src/ui/tools/ve.ui.FindAndReplaceTool.js",
                        "src/ui/tools/ve.ui.FormatTool.js",
                        "src/ui/tools/ve.ui.HistoryTool.js",
                        "src/ui/tools/ve.ui.IndentationTool.js",
diff --git a/demos/ve/desktop.html b/demos/ve/desktop.html
index 71f502f..00b7d42 100644
--- a/demos/ve/desktop.html
+++ b/demos/ve/desktop.html
@@ -336,6 +336,7 @@
                <script 
src="../../src/ui/tools/ve.ui.AnnotationTool.js"></script>
                <script 
src="../../src/ui/tools/ve.ui.ClearAnnotationTool.js"></script>
                <script src="../../src/ui/tools/ve.ui.DialogTool.js"></script>
+               <script 
src="../../src/ui/tools/ve.ui.FindAndReplaceTool.js"></script>
                <script src="../../src/ui/tools/ve.ui.FormatTool.js"></script>
                <script src="../../src/ui/tools/ve.ui.HistoryTool.js"></script>
                <script 
src="../../src/ui/tools/ve.ui.IndentationTool.js"></script>
diff --git a/demos/ve/mobile.html b/demos/ve/mobile.html
index b9d7b78..7260bdf 100644
--- a/demos/ve/mobile.html
+++ b/demos/ve/mobile.html
@@ -337,6 +337,7 @@
                <script 
src="../../src/ui/tools/ve.ui.AnnotationTool.js"></script>
                <script 
src="../../src/ui/tools/ve.ui.ClearAnnotationTool.js"></script>
                <script src="../../src/ui/tools/ve.ui.DialogTool.js"></script>
+               <script 
src="../../src/ui/tools/ve.ui.FindAndReplaceTool.js"></script>
                <script src="../../src/ui/tools/ve.ui.FormatTool.js"></script>
                <script src="../../src/ui/tools/ve.ui.HistoryTool.js"></script>
                <script 
src="../../src/ui/tools/ve.ui.IndentationTool.js"></script>
diff --git a/src/init/sa/ve.init.sa.Target.js b/src/init/sa/ve.init.sa.Target.js
index 538c14b..e513d06 100644
--- a/src/init/sa/ve.init.sa.Target.js
+++ b/src/init/sa/ve.init.sa.Target.js
@@ -118,7 +118,12 @@
        var actions = new ve.ui.TargetToolbar( this, this.surface );
 
        actions.setup( [
-               { include: [ 'commandHelp' ] }
+               {
+                       type: 'list',
+                       icon: 'menu',
+                       title: ve.msg( 'visualeditor-pagemenu-tooltip' ),
+                       include: [ 'findAndReplace', 'commandHelp' ]
+               }
        ] );
 
        this.toolbar.$actions.append( actions.$element );
diff --git a/src/ui/styles/images/icons/find-ltr.svg 
b/src/ui/styles/images/icons/find-ltr.svg
new file mode 100644
index 0000000..f8578cf
--- /dev/null
+++ b/src/ui/styles/images/icons/find-ltr.svg
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"; width="24" height="24" viewBox="0 0 24 
24">
+    <g id="find">
+        <path id="magnifying-glass" d="m 13.65625,11 c -1.921,0 -3.5,1.54775 
-3.5,3.46875 0,1.92 1.579,3.5 3.5,3.5 0.749,0 1.432,-0.25225 2,-0.65625 l 
0.09375,0.15625 2.375,2.375 c 0.19,0.189 0.53425,0.15325 0.78125,-0.09375 
0.247,-0.247 0.314,-0.59125 0.125,-0.78125 l -2.375,-2.375 L 16.46875,16.5 C 
16.87175,15.934 17.125,15.21775 17.125,14.46875 17.124,12.54875 15.57525,11 
13.65625,11 z m 0,1.65625 c 1.011306,0 1.8125,0.801194 1.8125,1.8125 0,1.011306 
-0.801194,1.84375 -1.8125,1.84375 -1.011306,0 -1.84375,-0.832444 
-1.84375,-1.84375 0,-1.011306 0.832444,-1.8125 1.84375,-1.8125 z" />
+        <path id="text" d="M 6,5 6,7 16,7 16,5 6,5 z m 0,3 0,2 11,0 0,-2 -11,0 
z m 0,3 0,2 3.53125,0 c 0.2825289,-0.797203 0.786096,-1.486208 1.4375,-2 L 6,11 
z m 0,3 0,2 3.53125,0 C 9.3537004,15.520243 9.25,15.010236 9.25,14.46875 
9.25,14.309811 9.2962033,14.154621 9.3125,14 L 6,14 z" />
+    </g>
+</svg>
diff --git a/src/ui/styles/images/icons/find-rtl.svg 
b/src/ui/styles/images/icons/find-rtl.svg
new file mode 100644
index 0000000..2a1e9c6
--- /dev/null
+++ b/src/ui/styles/images/icons/find-rtl.svg
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="utf-8"?>
+<svg xmlns="http://www.w3.org/2000/svg"; width="24" height="24" viewBox="0 0 24 
24">
+    <g id="find">
+        <path id="magnifying-glass" d="m 11.343828,11.000025 c 1.921,0 
3.5,1.54775 3.5,3.46875 0,1.92 -1.579,3.5 -3.5,3.5 -0.749,0 -1.432,-0.25225 
-2,-0.65625 l -0.09375,0.15625 -2.375,2.375 c -0.19,0.189 -0.53425,0.15325 
-0.78125,-0.09375 -0.247,-0.247 -0.314,-0.59125 -0.125,-0.78125 l 2.375,-2.375 
0.1875,-0.09375 c -0.403,-0.566 -0.65625,-1.28225 -0.65625,-2.03125 10e-4,-1.92 
1.54975,-3.46875 3.46875,-3.46875 z m 0,1.65625 c -1.011306,0 -1.8125,0.801194 
-1.8125,1.8125 0,1.011306 0.801194,1.84375 1.8125,1.84375 1.011306,0 
1.84375,-0.832444 1.84375,-1.84375 0,-1.011306 -0.832444,-1.8125 
-1.84375,-1.8125 z" />
+        <path id="text" d="M 19,5 19,7 9,7 9,5 z m 0,3 0,2 -11,0 0,-2 z m 0,3 
0,2 -3.53125,0 c -0.282529,-0.797203 -0.786096,-1.486208 -1.4375,-2 z m 0,3 0,2 
-3.53125,0 C 15.6463,15.520243 15.75,15.010236 15.75,14.46875 15.75,14.309811 
15.703797,14.154621 15.6875,14 z" />
+    </g>
+</svg>
diff --git a/src/ui/styles/ve.ui.Icons.css b/src/ui/styles/ve.ui.Icons.css
index bf19986..f0ab9cb 100644
--- a/src/ui/styles/ve.ui.Icons.css
+++ b/src/ui/styles/ve.ui.Icons.css
@@ -107,6 +107,11 @@
        background-image: url(images/icons/bullet-list-ltr.svg);
 }
 
+.oo-ui-icon-find {
+       /* @embed */
+       background-image: url(images/icons/find-ltr.svg);
+}
+
 .oo-ui-icon-indent-list {
        /* @embed */
        background-image: url(images/icons/indent-list-ltr.svg);
diff --git a/src/ui/tools/ve.ui.FindAndReplaceTool.js 
b/src/ui/tools/ve.ui.FindAndReplaceTool.js
new file mode 100644
index 0000000..2bf004d
--- /dev/null
+++ b/src/ui/tools/ve.ui.FindAndReplaceTool.js
@@ -0,0 +1,34 @@
+/*!
+ * VisualEditor UserInterface FindAndReplaceTool classes.
+ *
+ * @copyright 2011-2014 VisualEditor Team and others; see 
http://ve.mit-license.org
+ */
+
+/**
+ * UserInterface FindAndReplace tool.
+ *
+ * @abstract
+ * @class
+ * @extends ve.ui.Tool
+ * @constructor
+ * @param {OO.ui.ToolGroup} toolGroup
+ * @param {Object} [config] Configuration options
+ */
+ve.ui.FindAndReplaceTool = function VeUiFindAndReplaceTool( toolGroup, config 
) {
+       // Parent constructor
+       ve.ui.Tool.call( this, toolGroup, config );
+};
+
+/* Inheritance */
+
+OO.inheritClass( ve.ui.FindAndReplaceTool, ve.ui.Tool );
+
+ve.ui.FindAndReplaceTool.static.name = 'findAndReplace';
+ve.ui.FindAndReplaceTool.static.group = 'dialog';
+ve.ui.FindAndReplaceTool.static.icon = 'find';
+ve.ui.FindAndReplaceTool.static.title =
+       OO.ui.deferMsg( 'visualeditor-find-and-replace-title' );
+ve.ui.FindAndReplaceTool.static.autoAddToCatchall = false;
+ve.ui.FindAndReplaceTool.static.autoAddToGroup = false;
+ve.ui.FindAndReplaceTool.static.commandName = 'findAndReplace';
+ve.ui.toolFactory.register( ve.ui.FindAndReplaceTool );
diff --git a/tests/index.html b/tests/index.html
index 1385318..8bab2a6 100644
--- a/tests/index.html
+++ b/tests/index.html
@@ -285,6 +285,7 @@
                <script src="../src/ui/tools/ve.ui.AnnotationTool.js"></script>
                <script 
src="../src/ui/tools/ve.ui.ClearAnnotationTool.js"></script>
                <script src="../src/ui/tools/ve.ui.DialogTool.js"></script>
+               <script 
src="../src/ui/tools/ve.ui.FindAndReplaceTool.js"></script>
                <script src="../src/ui/tools/ve.ui.FormatTool.js"></script>
                <script src="../src/ui/tools/ve.ui.HistoryTool.js"></script>
                <script src="../src/ui/tools/ve.ui.IndentationTool.js"></script>

-- 
To view, visit https://gerrit.wikimedia.org/r/175306
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I311b16c5aa5cfa96ac909bbd3aeebeae2a15a2c2
Gerrit-PatchSet: 1
Gerrit-Project: VisualEditor/VisualEditor
Gerrit-Branch: master
Gerrit-Owner: Esanders <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to