OSDN Git Service

merge in klp-release history after reset to klp-dev
authorThe Android Automerger <android-build@google.com>
Mon, 26 Aug 2013 13:01:34 +0000 (06:01 -0700)
committerThe Android Automerger <android-build@google.com>
Mon, 26 Aug 2013 13:01:34 +0000 (06:01 -0700)
81 files changed:
.gitignore [new file with mode: 0644]
AndroidManifest.xml
res/layout-land/filtershow_color_border_ui.xml [new file with mode: 0644]
res/layout/details.xml
res/menu/filtershow_menu_color_border.xml [new file with mode: 0644]
res/values-af/filtershow_strings.xml
res/values-am/filtershow_strings.xml
res/values-ar/filtershow_strings.xml
res/values-az/filtershow_strings.xml
res/values-be/filtershow_strings.xml
res/values-bg/filtershow_strings.xml
res/values-ca/filtershow_strings.xml
res/values-cs/filtershow_strings.xml
res/values-da/filtershow_strings.xml
res/values-de/filtershow_strings.xml
res/values-el/filtershow_strings.xml
res/values-en-rGB/filtershow_strings.xml
res/values-en-rIN/filtershow_strings.xml
res/values-es-rUS/filtershow_strings.xml
res/values-es/filtershow_strings.xml
res/values-et/filtershow_strings.xml
res/values-fa/filtershow_strings.xml
res/values-fi/filtershow_strings.xml
res/values-fr-rCA/filtershow_strings.xml
res/values-fr/filtershow_strings.xml
res/values-hi/filtershow_strings.xml
res/values-hr/filtershow_strings.xml
res/values-hu/filtershow_strings.xml
res/values-hy/filtershow_strings.xml
res/values-in/filtershow_strings.xml
res/values-it/filtershow_strings.xml
res/values-iw/filtershow_strings.xml
res/values-ja/filtershow_strings.xml
res/values-ka/filtershow_strings.xml
res/values-km/filtershow_strings.xml
res/values-ko/filtershow_strings.xml
res/values-lo/filtershow_strings.xml
res/values-lt/filtershow_strings.xml
res/values-lv/filtershow_strings.xml
res/values-mn/filtershow_strings.xml
res/values-ms/filtershow_strings.xml
res/values-nb/filtershow_strings.xml
res/values-ne/filtershow_strings.xml
res/values-nl/filtershow_strings.xml
res/values-pl/filtershow_strings.xml
res/values-pt-rPT/filtershow_strings.xml
res/values-pt/filtershow_strings.xml
res/values-ro/filtershow_strings.xml
res/values-ru/filtershow_strings.xml
res/values-si/filtershow_strings.xml
res/values-sk/filtershow_strings.xml
res/values-sl/filtershow_strings.xml
res/values-sr/filtershow_strings.xml
res/values-sv/filtershow_strings.xml
res/values-sw/filtershow_strings.xml
res/values-th/filtershow_strings.xml
res/values-tl/filtershow_strings.xml
res/values-tr/filtershow_strings.xml
res/values-uk/filtershow_strings.xml
res/values-vi/filtershow_strings.xml
res/values-zh-rCN/filtershow_strings.xml
res/values-zh-rHK/filtershow_strings.xml
res/values-zh-rTW/filtershow_strings.xml
res/values-zu/filtershow_strings.xml
res/values/filtershow_ids.xml
res/values/filtershow_strings.xml
src/com/android/gallery3d/app/PhotoPage.java
src/com/android/gallery3d/filtershow/FilterShowActivity.java
src/com/android/gallery3d/filtershow/cache/ImageLoader.java
src/com/android/gallery3d/filtershow/controller/ParameterColor.java
src/com/android/gallery3d/filtershow/editors/EditorColorBorder.java [new file with mode: 0644]
src/com/android/gallery3d/filtershow/editors/EditorColorBorderTabletUI.java [new file with mode: 0644]
src/com/android/gallery3d/filtershow/editors/EditorDraw.java
src/com/android/gallery3d/filtershow/filters/BaseFiltersManager.java
src/com/android/gallery3d/filtershow/filters/FilterColorBorderRepresentation.java
src/com/android/gallery3d/filtershow/filters/FilterDrawRepresentation.java
src/com/android/gallery3d/filtershow/filters/ImageFilterColorBorder.java [moved from src/com/android/gallery3d/filtershow/filters/ImageFilterParametricBorder.java with 51% similarity]
src/com/android/gallery3d/filtershow/pipeline/FilterEnvironment.java
src/com/android/gallery3d/filtershow/tools/SaveImage.java
src/com/android/gallery3d/ui/DialogDetailsView.java
src_pd/com/android/gallery3d/filtershow/editors/EditorManager.java

diff --git a/.gitignore b/.gitignore
new file mode 100644 (file)
index 0000000..8da36db
--- /dev/null
@@ -0,0 +1,11 @@
+# Project files and paths.
+.classpath
+.project
+*.iml
+**/*.iml
+.settings/
+bin/
+libs/
+gen/
+.idea/
+project.properties
index b7a1c4e..c2f93f3 100644 (file)
             android:label="@string/camera_label"
             android:theme="@style/android:Theme.NoDisplay" />
         <activity-alias android:name="com.android.camera.CameraLauncher"
+            android:label="@string/camera_label"
             android:targetActivity="com.android.camera.CameraActivity">
             <intent-filter>
                 <action android:name="android.intent.action.MAIN" />
diff --git a/res/layout-land/filtershow_color_border_ui.xml b/res/layout-land/filtershow_color_border_ui.xml
new file mode 100644 (file)
index 0000000..f16ea2c
--- /dev/null
@@ -0,0 +1,230 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2013 The Android Open Source Project
+
+     Licensed 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.
+-->
+
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+              android:id="@+id/top"
+              android:layout_width="match_parent"
+              android:layout_height="match_parent"
+              android:orientation="vertical"
+              android:visibility="visible">
+
+    <FrameLayout
+            android:id="@+id/editorContainer"
+            android:layout_width="match_parent"
+            android:layout_height="0dp"
+            android:layout_weight="6"
+            android:layout_gravity="bottom">
+
+        <LinearLayout
+                android:id="@+id/controls"
+                android:layout_width="match_parent"
+                android:layout_height="wrap_content"
+                android:layout_gravity="bottom"
+                android:orientation="vertical"
+                android:visibility="visible">
+
+            <Button
+                    android:id="@+id/clearButton"
+                    android:layout_width="match_parent"
+                    android:layout_height="0dp"
+                    android:layout_weight="1"
+                    android:text="@string/color_border_clear"/>
+
+            <GridLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="0dp"
+                    android:layout_weight="1"
+                    android:columnCount="2"
+                    android:orientation="horizontal">
+
+                <TextView
+                        android:id="@+id/controlName1"
+                        android:layout_gravity="left"
+                        android:layout_marginLeft="8dip"
+                        android:text="@string/color_border_size"/>
+
+                <TextView
+                        android:id="@+id/colorBorderSizeValue"
+                        android:layout_gravity="right"
+                        android:layout_marginRight="8dip"
+                        android:textStyle="bold"/>
+
+                <SeekBar
+                        android:id="@+id/colorBorderSizeSeekBar"
+                        android:layout_width="match_parent"
+                        android:layout_column="0"
+                        android:layout_columnSpan="2"
+                        android:layout_gravity="fill_horizontal"
+                        style="@style/FilterShowSlider"/>
+            </GridLayout>
+
+            <GridLayout
+                    android:layout_width="match_parent"
+                    android:layout_height="0dp"
+                    android:layout_weight="1"
+                    android:columnCount="2"
+                    android:orientation="horizontal">
+
+                <TextView
+                        android:id="@+id/controlName2"
+                        android:layout_gravity="left"
+                        android:layout_marginLeft="8dip"
+                        android:text="@string/color_border_corner_size"/>
+
+                <TextView
+                        android:id="@+id/colorBorderCornerValue"
+                        android:layout_gravity="right"
+                        android:layout_marginRight="8dip"
+                        android:textStyle="bold"/>
+
+                <SeekBar
+                        android:id="@+id/colorBorderCornerSizeSeekBar"
+                        android:layout_width="match_parent"
+                        android:layout_column="0"
+                        android:layout_columnSpan="2"
+                        android:layout_gravity="fill_horizontal"
+                        style="@style/FilterShowSlider"/>
+            </GridLayout>
+
+            <HorizontalScrollView
+                    android:id="@+id/scrollList"
+                    android:layout_width="match_parent"
+                    android:layout_height="0dp"
+                    android:layout_weight="1"
+                    android:scrollbars="none">
+
+                <LinearLayout
+                        android:id="@+id/listStyles"
+                        android:layout_width="wrap_content"
+                        android:layout_height="wrap_content"
+                        android:orientation="horizontal">
+
+                </LinearLayout>
+            </HorizontalScrollView>
+
+        </LinearLayout>
+
+        <LinearLayout
+                android:id="@+id/colorPicker"
+                android:layout_width="match_parent"
+                android:layout_height="match_parent"
+                android:orientation="vertical"
+                android:visibility="gone">
+
+            <TextView
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:text="@string/draw_color"
+                    android:layout_marginLeft="8dip"
+                    android:id="@+id/textView"/>
+
+            <com.android.gallery3d.filtershow.colorpicker.ColorOpacityView
+                    android:id="@+id/colorOpacityView"
+                    android:layout_width="match_parent"
+                    android:layout_height="0dp"
+                    android:layout_weight="1"/>
+
+            <com.android.gallery3d.filtershow.colorpicker.ColorSVRectView
+                    android:id="@+id/colorRectView"
+                    android:layout_width="match_parent"
+                    android:layout_height="0dp"
+                    android:layout_weight="4"
+                    android:layout_marginRight="1dp"/>
+
+            <com.android.gallery3d.filtershow.colorpicker.ColorHueView
+                    android:id="@+id/ColorHueView"
+                    android:layout_width="match_parent"
+                    android:layout_height="0dp"
+                    android:layout_weight="1"/>
+
+        </LinearLayout>
+    </FrameLayout>
+
+    <LinearLayout
+            android:layout_width="match_parent"
+            android:layout_height="wrap_content"
+            android:orientation="horizontal"
+            android:layout_marginBottom="10dp"
+            android:layout_marginTop="10dp"
+            android:layout_marginLeft="1dp"
+            android:layout_marginRight="1dp">
+
+        <HorizontalScrollView
+                android:id="@+id/scrollList"
+                android:layout_width="0dp"
+                android:layout_weight="5"
+                android:layout_height="match_parent"
+                android:scrollbars="none">
+
+            <LinearLayout
+                    android:id="@+id/listColors"
+                    android:layout_width="wrap_content"
+                    android:layout_height="wrap_content"
+                    android:orientation="horizontal">
+
+                <Button
+                        android:id="@+id/draw_color_button01"
+                        android:layout_width="0dip"
+                        android:layout_height="wrap_content"
+                        android:layout_weight="1"
+                        android:background="@drawable/filtershow_color_picker_circle"
+                        android:layout_margin="2dp"/>
+
+                <Button
+                        android:id="@+id/draw_color_button02"
+                        android:layout_width="0dip"
+                        android:layout_height="wrap_content"
+                        android:layout_weight="1"
+                        android:background="@drawable/filtershow_color_picker_circle"
+                        android:layout_margin="2dp"/>
+
+                <Button
+                        android:id="@+id/draw_color_button03"
+                        android:layout_width="0dip"
+                        android:layout_height="wrap_content"
+                        android:layout_weight="1"
+                        android:background="@drawable/filtershow_color_picker_circle"
+                        android:layout_margin="2dp"/>
+
+                <Button
+                        android:id="@+id/draw_color_button04"
+                        android:layout_width="0dip"
+                        android:layout_height="wrap_content"
+                        android:layout_weight="1"
+                        android:background="@drawable/filtershow_color_picker_circle"
+                        android:layout_margin="2dp"/>
+
+                <Button
+                        android:id="@+id/draw_color_button05"
+                        android:layout_width="0dip"
+                        android:layout_height="wrap_content"
+                        android:layout_weight="1"
+                        android:background="@drawable/filtershow_color_picker_circle"
+                        android:layout_margin="2dp"/>
+
+            </LinearLayout>
+        </HorizontalScrollView>
+
+        <Button
+                android:id="@+id/draw_color_popupbutton"
+                android:layout_width="0dp"
+                android:layout_height="match_parent"
+                android:layout_weight="1"
+                android:background="@android:drawable/ic_menu_more"
+                android:layout_margin="1dp"/>
+    </LinearLayout>
+</LinearLayout>
index dfda0ee..1fea0a0 100644 (file)
@@ -19,5 +19,5 @@
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:textAppearance="?android:attr/textAppearanceMedium"
-    android:gravity="left"
+    android:gravity="start"
 />
diff --git a/res/menu/filtershow_menu_color_border.xml b/res/menu/filtershow_menu_color_border.xml
new file mode 100644 (file)
index 0000000..7d27504
--- /dev/null
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+     Copyright (C) 2013 The Android Open Source Project
+
+     Licensed 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.
+-->
+
+<menu xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <group android:id="@+id/curves_popupmenu">
+        <item
+                android:id="@+id/color_border_menu_corner_size"
+                android:title="@string/color_border_corner_size"/>
+        <item
+                android:id="@+id/color_border_menu_size"
+                android:title="@string/color_border_size"/>
+        <item
+                android:id="@+id/color_border_menu_color"
+                android:title="@string/color_border_color"/>
+        <item
+                android:id="@+id/color_border_menu_clear"
+                android:title="@string/color_border_clear"/>
+    </group>
+
+</menu>
\ No newline at end of file
index 2da3962..8651c13 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Skakering"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Kleurdiepte"</string>
     <string name="draw_value" msgid="6571604055161538273">"Helderheid"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Ondeursigtigheid"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Kleur"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Lyne"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Merker"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Spatsels"</string>
index c860899..91193b9 100644 (file)
@@ -34,7 +34,7 @@
     <string name="export_image" msgid="3202835713172222134">"ወደ ውጪ ላክ"</string>
     <string name="print_image" msgid="1942989216591621413">"አትም"</string>
     <string name="export_flattened" msgid="9046192331465915411">"ጠፍጣፋ የተደረገ ምስል ይላኩ"</string>
-    <string name="select_output_settings" msgid="1268532018080310748">"ወደ ውጪ የተላከው ምስል ቅጂ ይናል፣ ከታሪኩ ውጪ።"</string>
+    <string name="select_output_settings" msgid="1268532018080310748">"á\8b\88á\8b° á\8b\8dá\8cª á\8b¨á\89°á\88\8bá\8a¨á\8b\8d á\88\9dá\88µá\88\8d á\89\85á\8c\82 á\8b­á\88\86á\8a\93á\88\8dá\8d£ á\8a¨á\89³á\88ªá\8a© á\8b\8dá\8cªá\8d¢"</string>
     <string name="quality" msgid="179292110309050529">"ጥራት"</string>
     <string name="size" msgid="4639404642236356037">"መጠን"</string>
     <string name="x" msgid="6810256999024563662">"x"</string>
     <string name="draw_hue" msgid="4975135843189267133">"የቀለም ድባብ"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"የቀለም ሙሌት"</string>
     <string name="draw_value" msgid="6571604055161538273">"ብሩህነት"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"ደብዛዛነት"</string>
+    <string name="draw_color" msgid="2119030386987211193">"ቀለም"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"መስመሮች"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"አመልካች"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"ነጠብጣብ"</string>
index 54f8fce..a92e7cc 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"تدرج اللون"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"تشبع اللون"</string>
     <string name="draw_value" msgid="6571604055161538273">"السطوع"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"تعتيم"</string>
+    <string name="draw_color" msgid="2119030386987211193">"اللون"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"الأسطر"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"محدد"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"رشاش"</string>
index e25d722..3f2f052 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Çalar"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Dolğunluq"</string>
     <string name="draw_value" msgid="6571604055161538273">"Parlaqlıq"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Şəffafsızlıq"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Rəng"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Xətlər"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marker"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Sıçratma"</string>
index c81b2e5..936cc25 100644 (file)
     <skip />
     <!-- no translation found for draw_value (6571604055161538273) -->
     <skip />
-    <!-- no translation found for draw_opacity (1669435135236987503) -->
-    <skip />
+    <string name="draw_color" msgid="2119030386987211193">"Колер"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Лiнii"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Маркёр"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Пырскi"</string>
index b463e62..317a30f 100644 (file)
@@ -32,8 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"Приложени ефекти: Показване"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"Приложени ефекти: Скриване"</string>
     <string name="export_image" msgid="3202835713172222134">"Експортиране"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"Печат"</string>
     <string name="export_flattened" msgid="9046192331465915411">"Еднослойно изобр.: Експорт."</string>
     <string name="select_output_settings" msgid="1268532018080310748">"Експортираното изображение ще бъде копие и няма да включва историята на промените."</string>
     <string name="quality" msgid="179292110309050529">"Качество"</string>
     <string name="draw_hue" msgid="4975135843189267133">"Цветови тон"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Насищане"</string>
     <string name="draw_value" msgid="6571604055161538273">"Яркост"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Плътност"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Цвят"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Линии"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Маркер"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Пръски боя"</string>
index 9ee9032..51638b7 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"To"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturació"</string>
     <string name="draw_value" msgid="6571604055161538273">"Brillantor"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacitat"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Color"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Línies"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marcador"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Esquitx"</string>
index c388d05..1122db5 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Odstín"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Sytost"</string>
     <string name="draw_value" msgid="6571604055161538273">"Jas"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Průhlednost"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Barva"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Čáry"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Zvýrazňovač"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Cákance"</string>
index e7b1086..fe8aba0 100644 (file)
@@ -34,7 +34,7 @@
     <string name="export_image" msgid="3202835713172222134">"Eksportér"</string>
     <string name="print_image" msgid="1942989216591621413">"Udskriv"</string>
     <string name="export_flattened" msgid="9046192331465915411">"Eksportér fladt billede"</string>
-    <string name="select_output_settings" msgid="1268532018080310748">"Det eksporterede billede vil være en kopi uden historie."</string>
+    <string name="select_output_settings" msgid="1268532018080310748">"Det eksporterede billede vil være en kopi uden historik."</string>
     <string name="quality" msgid="179292110309050529">"Kvalitet"</string>
     <string name="size" msgid="4639404642236356037">"Størrelse"</string>
     <string name="x" msgid="6810256999024563662">"x"</string>
     <string name="draw_hue" msgid="4975135843189267133">"Farvetone"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Mætning"</string>
     <string name="draw_value" msgid="6571604055161538273">"Lysstyrke"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Gennemsigtighed"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Farve"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Linjer"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Tusch"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Stænk"</string>
index 2750438..1d0ed1a 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Farbton"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Sättigung"</string>
     <string name="draw_value" msgid="6571604055161538273">"Helligkeit"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Deckkraft"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Farbe"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Linien"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Filzstift"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Spritzer"</string>
index f7c68bf..e7c12e4 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Απόχρωση"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Κορεσμός"</string>
     <string name="draw_value" msgid="6571604055161538273">"Φωτεινότητα"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Αδιαφάνεια"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Χρώμα"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Γραμμές"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Μαρκαδόρος"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Πιτσιλιές"</string>
index b981c53..692cbc7 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Hue"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturation"</string>
     <string name="draw_value" msgid="6571604055161538273">"Brightness"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacity"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Colour"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Lines"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marker"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Spatter"</string>
index b981c53..692cbc7 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Hue"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturation"</string>
     <string name="draw_value" msgid="6571604055161538273">"Brightness"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacity"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Colour"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Lines"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marker"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Spatter"</string>
index b93efd1..595953f 100644 (file)
@@ -32,8 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"Mostrar efectos aplicados"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"Ocultar efectos aplicados"</string>
     <string name="export_image" msgid="3202835713172222134">"Exportar"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"Imprimir"</string>
     <string name="export_flattened" msgid="9046192331465915411">"Exportar imagen plana"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"La imagen exportada será una copia sin el historial."</string>
     <string name="quality" msgid="179292110309050529">"Calidad"</string>
     <string name="draw_hue" msgid="4975135843189267133">"Matiz"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturación"</string>
     <string name="draw_value" msgid="6571604055161538273">"Brillo"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacidad"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Color"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Líneas"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marcador"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Salpicadura"</string>
index 1710b95..f83a166 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Matiz"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturación"</string>
     <string name="draw_value" msgid="6571604055161538273">"Brillo"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacidad"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Color"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Líneas"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Rotulador"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Manchas"</string>
index 68acf29..f84b090 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Värvitoon"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Küllastus"</string>
     <string name="draw_value" msgid="6571604055161538273">"Heledus"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Läbipaistvus"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Värv"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Jooned"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marker"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Pritsi"</string>
     <string name="filtershow_save_preset" msgid="3933550455577927439">"Salvesta praegune eelseadistus"</string>
     <string name="filtershow_manage_preset" msgid="3872896753708921286">"Kasutaja eelseadistuste haldamine"</string>
     <string name="filtershow_new_preset" msgid="8923930134923416617">"Uus eelseadistus"</string>
-    <string name="filtershow_preset_name" msgid="7015939727047649866">"Eelseadistuse nimi"</string>
+    <string name="filtershow_preset_name" msgid="7015939727047649866">"Eelseadistatud nimi"</string>
     <string name="filtershow_show_info_panel" msgid="5773036746043711115">"Teave"</string>
     <string name="filtershow_show_info_panel_name" msgid="5908258517140549439">"Kujutise nimi"</string>
     <string name="filtershow_show_info_panel_size" msgid="1714666849204493017">"Kujutise suurus"</string>
index 7339761..436396b 100644 (file)
@@ -34,7 +34,7 @@
     <string name="export_image" msgid="3202835713172222134">"صادر کردن"</string>
     <string name="print_image" msgid="1942989216591621413">"چاپ"</string>
     <string name="export_flattened" msgid="9046192331465915411">"صدور تصویر صاف"</string>
-    <string name="select_output_settings" msgid="1268532018080310748">"تصÙ\88Û\8cر ØµØ§Ø¯Ø±Ø´Ø¯Ù\87 Ù\86سخÙ\87â\80\8cاÛ\8c Ù\81اÙ\82د Ø³Ø§Ø¨Ù\82Ù\87 Ù\88Û\8cراÛ\8cØ´ Ø§Ø³Øª."</string>
+    <string name="select_output_settings" msgid="1268532018080310748">"تصÙ\88Û\8cر ØµØ§Ø¯Ø±Ø´Ø¯Ù\87 Ù\86سخÙ\87â\80\8cاÛ\8c Ù\81اÙ\82د Ø³Ø§Ø¨Ù\82Ù\87 Ù\88Û\8cراÛ\8cØ´ Ø®Ù\88اÙ\87د Ø¨Ù\88د."</string>
     <string name="quality" msgid="179292110309050529">"کیفیت"</string>
     <string name="size" msgid="4639404642236356037">"اندازه"</string>
     <string name="x" msgid="6810256999024563662">"x"</string>
     <string name="draw_hue" msgid="4975135843189267133">"رنگ‌مایه"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"اشباع رنگ"</string>
     <string name="draw_value" msgid="6571604055161538273">"روشنایی"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"تاری"</string>
+    <string name="draw_color" msgid="2119030386987211193">"رنگ"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"خطوط"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"نشانگر"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"سبک پاشش"</string>
index 2bec348..7df984f 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Sävy"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Värikylläisyys"</string>
     <string name="draw_value" msgid="6571604055161538273">"Kirkkaus"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Läpinäkyvyys"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Väri"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Viivat"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Tussi"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Roiskeet"</string>
index c3011e5..e0e7b2f 100644 (file)
@@ -32,8 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"Afficher les effets appliqués"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"Masquer les effets appliqués"</string>
     <string name="export_image" msgid="3202835713172222134">"Exporter"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"Imprimer"</string>
     <string name="export_flattened" msgid="9046192331465915411">"Exporter l\'image aplatie"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"L\'image exportée sera une copie, sans historique."</string>
     <string name="quality" msgid="179292110309050529">"Qualité"</string>
     <string name="draw_hue" msgid="4975135843189267133">"Nuance"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturation"</string>
     <string name="draw_value" msgid="6571604055161538273">"Luminosité"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacité"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Couleur"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Lignes"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marqueur"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Éclaboussures"</string>
index f596974..0ac3146 100644 (file)
@@ -32,8 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"Afficher les effets appliqués"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"Masquer les effets appliqués"</string>
     <string name="export_image" msgid="3202835713172222134">"Exporter"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"Imprimer"</string>
     <string name="export_flattened" msgid="9046192331465915411">"Exporter l\'image aplatie"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"L\'image exportée est une copie, sans historique."</string>
     <string name="quality" msgid="179292110309050529">"Qualité"</string>
     <string name="draw_hue" msgid="4975135843189267133">"Teinte"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturation"</string>
     <string name="draw_value" msgid="6571604055161538273">"Luminosité"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacité"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Couleur"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Lignes"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marqueur"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Éclaboussures"</string>
index 9b78380..5455544 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"रंग"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"संतृप्तता"</string>
     <string name="draw_value" msgid="6571604055161538273">"चमक"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"पारदर्शिता"</string>
+    <string name="draw_color" msgid="2119030386987211193">"रंग"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"रेखाएं"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"मार्कर"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"स्पैटर"</string>
index 46a3ef4..478122f 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Ton"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Zasićenost"</string>
     <string name="draw_value" msgid="6571604055161538273">"Svjetlina"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Zasjenjenost"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Boja"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Crte"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Oznaka"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Prskanje"</string>
index 28cbe0a..043ae75 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Színárnyalat"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Telítettség"</string>
     <string name="draw_value" msgid="6571604055161538273">"Fényerő"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Átlátszatlanság"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Szín"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Vonalak"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Filctoll"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Fröcskölés"</string>
index 6fc5127..6f8e933 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Գուներանգ"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Հագեցում"</string>
     <string name="draw_value" msgid="6571604055161538273">"Պայծառություն"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Թափանցիկություն"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Գույն"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Գծեր"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Նշիչ"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Ցայտել"</string>
index 7b714a9..04992c3 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Corak"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturasi"</string>
     <string name="draw_value" msgid="6571604055161538273">"Kecerahan"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opasitas"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Warna"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Garis"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Penanda"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Percikan"</string>
index 7348419..d87f304 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Tonalità"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturazione"</string>
     <string name="draw_value" msgid="6571604055161538273">"Luminosità"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacità"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Colore"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Linee"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Evidenziatore"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Spruzzo"</string>
index 6f7b506..35d4e89 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"צבע"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"רוויה"</string>
     <string name="draw_value" msgid="6571604055161538273">"בהירות"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"שקיפות"</string>
+    <string name="draw_color" msgid="2119030386987211193">"צבע"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"קווים"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"עט סימון"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"התזה"</string>
index 435561a..a62d0a0 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"色彩"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"彩度"</string>
     <string name="draw_value" msgid="6571604055161538273">"明るさ"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"不透明度"</string>
+    <string name="draw_color" msgid="2119030386987211193">"色"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"線"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"マーカー"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"スパッタリング"</string>
index 6b00bf7..7dcaa48 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"ფერადოვნება"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"ინტენსივობა"</string>
     <string name="draw_value" msgid="6571604055161538273">"სიკაშკაშე"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"გამჭვირვალობა"</string>
+    <string name="draw_color" msgid="2119030386987211193">"ფერი"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"ხაზები"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"მარკერი"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"შხეფები"</string>
index 20eba52..f0ddbd3 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"ពណ៌​លាំ​ៗ"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"តិត្ថិភាព"</string>
     <string name="draw_value" msgid="6571604055161538273">"ពន្លឺ"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"ភាព​ស្រអាប់"</string>
+    <string name="draw_color" msgid="2119030386987211193">"ពណ៌"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"បន្ទាត់"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"សញ្ញា​សម្គាល់"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"បាចសាច"</string>
index c412574..2b996b8 100644 (file)
@@ -32,8 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"적용된 효과 표시"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"적용된 효과 숨기기"</string>
     <string name="export_image" msgid="3202835713172222134">"내보내기"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"인쇄"</string>
     <string name="export_flattened" msgid="9046192331465915411">"평면 이미지 내보내기"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"내보내는 이미지는 기록이 없는 사본입니다."</string>
     <string name="quality" msgid="179292110309050529">"화질"</string>
     <string name="draw_hue" msgid="4975135843189267133">"색조"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"채도"</string>
     <string name="draw_value" msgid="6571604055161538273">"밝기"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"불투명도"</string>
+    <string name="draw_color" msgid="2119030386987211193">"색상"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"선"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"마커"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"튀기기"</string>
index 46a664e..2b12ccc 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"ໂທນສີ"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"ຄວາມແຈດຂອງສີ"</string>
     <string name="draw_value" msgid="6571604055161538273">"ຄວາມສະຫວ່າງ"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"ຄວາມສະຫວ່າວ"</string>
+    <string name="draw_color" msgid="2119030386987211193">"ສີ"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"ເສັ້ນ"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"ເຄື່ອງຫມາຍ"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"ສາດສີ"</string>
index b4b844b..2923e1a 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Atspalvis"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Spalvų sodrum."</string>
     <string name="draw_value" msgid="6571604055161538273">"Skaistis"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Nepermatomumas"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Spalva"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Linijos"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Žymeklis"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Taškymas"</string>
index 8df8c97..869bb75 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Nokrāsa"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Piesātinājums"</string>
     <string name="draw_value" msgid="6571604055161538273">"Spilgtums"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Necaurredz."</string>
+    <string name="draw_color" msgid="2119030386987211193">"Krāsa"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Līnijas"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marķieris"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Šļakatas"</string>
index 7a626bb..70478ad 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Өнгө"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Өнгө ялгалт"</string>
     <string name="draw_value" msgid="6571604055161538273">"Тодролт"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Бүүдэгрэлт"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Өнгө"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Шулуун"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Тэмдэглэгч"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Шүрших"</string>
index bcab824..7b18201 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Rona"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Ketepuan"</string>
     <string name="draw_value" msgid="6571604055161538273">"Kecerahan"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Kelegapan"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Warna"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Garisan"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Penanda"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Percik"</string>
index 9001e49..d8e6ca1 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Fargetone"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Fargemetning"</string>
     <string name="draw_value" msgid="6571604055161538273">"Lysstyrke"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opasitet"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Farge"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Linjer"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Merkepenn"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Drypp"</string>
index a577705..5a85d8e 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"रङ्ग"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"संतृप्तता"</string>
     <string name="draw_value" msgid="6571604055161538273">"चमक"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"अपारदर्शकता"</string>
+    <string name="draw_color" msgid="2119030386987211193">"रङ्ग"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"पंक्तिहरू"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"चिन्हक"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"स्प्याटर"</string>
index 3796330..6d27c96 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Kleurtoon"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Verzadiging"</string>
     <string name="draw_value" msgid="6571604055161538273">"Helderheid"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Ondoorzichtigheid"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Kleur"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Lijnen"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Markeerstift"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Spetters"</string>
index e156763..330b89f 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Barwa"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Nasycenie"</string>
     <string name="draw_value" msgid="6571604055161538273">"Jasność"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Przezroczystość"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Kolor"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Linie"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marker"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Rozprysk"</string>
index 0c44422..a674ba5 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Tonalidade"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturação"</string>
     <string name="draw_value" msgid="6571604055161538273">"Brilho"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacidade"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Cor"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Linhas"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marcador"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Salpicar"</string>
index 006a535..426f56d 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Matiz"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturação"</string>
     <string name="draw_value" msgid="6571604055161538273">"Brilho"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacidade"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Cor"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Linhas"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marcador"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Respingo"</string>
index e8174e4..4fa13fe 100644 (file)
@@ -31,7 +31,7 @@
     <string name="filtershow_redo" msgid="4219489910543059747">"Repetaţi"</string>
     <string name="show_imagestate_panel" msgid="281932769701043015">"Afișați efectele aplicate"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"Ascundeți efectele aplicate"</string>
-    <string name="export_image" msgid="3202835713172222134">"Exportaţi"</string>
+    <string name="export_image" msgid="3202835713172222134">"Exportați"</string>
     <string name="print_image" msgid="1942989216591621413">"Printați"</string>
     <string name="export_flattened" msgid="9046192331465915411">"Exportați imaginea aplatizată"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"Imaginea exportată va fi o copie, fără istoric."</string>
     <string name="draw_hue" msgid="4975135843189267133">"Culoare"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturație"</string>
     <string name="draw_value" msgid="6571604055161538273">"Luminozitate"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacitate"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Culoare"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Linii"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marker"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Stropire"</string>
index 056c2f9..dc6846a 100644 (file)
@@ -32,8 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"Отобразить эффекты"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"Скрыть эффекты"</string>
     <string name="export_image" msgid="3202835713172222134">"Экспортировать"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"Печать"</string>
     <string name="export_flattened" msgid="9046192331465915411">"Экспорт с объединением слоев"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"Экспортированное изображение будет копией без истории изменений"</string>
     <string name="quality" msgid="179292110309050529">"Качество"</string>
     <string name="draw_hue" msgid="4975135843189267133">"Тон"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Насыщенность"</string>
     <string name="draw_value" msgid="6571604055161538273">"Яркость"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Прозрачность"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Цвет"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Линии"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Маркер"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Распыление"</string>
index ce6d0d6..5a8535e 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"පැහැය"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"සන්තෘප්තිය"</string>
     <string name="draw_value" msgid="6571604055161538273">"දීප්තිමත් බව"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"පාරාන්ධතාව"</string>
+    <string name="draw_color" msgid="2119030386987211193">"වර්ණය"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"රේඛා"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"ලකුණ"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"ස්පැටර්"</string>
index 47de86d..0683262 100644 (file)
@@ -32,8 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"Zobraziť použité efekty"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"Skryť použité efekty"</string>
     <string name="export_image" msgid="3202835713172222134">"Exportovať"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"Tlačiť"</string>
     <string name="export_flattened" msgid="9046192331465915411">"Exportovať vyrovnaný obrázok"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"Exportovaný obrázok bude kópia bez histórie."</string>
     <string name="quality" msgid="179292110309050529">"Kvalitné"</string>
     <string name="draw_hue" msgid="4975135843189267133">"Odtieň"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Sýtosť"</string>
     <string name="draw_value" msgid="6571604055161538273">"Jas"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Nepriehľadnosť"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Farba"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Čiary"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Zvýrazňovač"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Škvrna"</string>
index 37c1743..654d7ce 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Odtenek"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Nasičenost"</string>
     <string name="draw_value" msgid="6571604055161538273">"Svetlost"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Neprosojnost"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Barva"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Črte"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Flomaster"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Packe"</string>
index 2c80b07..f41cd1d 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Нијанса"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Засићен. боја"</string>
     <string name="draw_value" msgid="6571604055161538273">"Осветљеност"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Непрозирност"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Боја"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Линије"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Означивач"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Прскање"</string>
index 8cdd4d6..03c5090 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Nyans"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Mättnad"</string>
     <string name="draw_value" msgid="6571604055161538273">"Ljusstyrka"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacitet"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Färg"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Linjer"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Märkpenna"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Stänk"</string>
index f2141b1..051250f 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Rangi"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Ukolezaji"</string>
     <string name="draw_value" msgid="6571604055161538273">"Ung\'avu"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Uwazi"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Rangi"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Mistari"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Kialamisho"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Tapanya"</string>
index f478e70..ab84ded 100644 (file)
@@ -32,8 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"แสดงเอฟเฟ็กต์ที่ใช้"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"ซ่อนเอฟเฟ็กต์ที่ใช้"</string>
     <string name="export_image" msgid="3202835713172222134">"ส่งออก"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"พิมพ์"</string>
     <string name="export_flattened" msgid="9046192331465915411">"ส่งออกภาพรวมเลเยอร์"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"รูปภาพที่ส่งออกจะเป็นสำเนา โดยที่ไม่มีประวัติ"</string>
     <string name="quality" msgid="179292110309050529">"คุณภาพ"</string>
     <string name="draw_hue" msgid="4975135843189267133">"โทนสี"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"ความอิ่มตัว"</string>
     <string name="draw_value" msgid="6571604055161538273">"ความสว่าง"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"ความโปร่งแสง"</string>
+    <string name="draw_color" msgid="2119030386987211193">"สี"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"เส้น"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"สีเมจิก"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"สาดสี"</string>
index ae02c18..7b05c73 100644 (file)
@@ -32,8 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"Ipakita Mga Inilapat na Effect"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"Itago Mga Inilapat na Effect"</string>
     <string name="export_image" msgid="3202835713172222134">"I-export"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"I-print"</string>
     <string name="export_flattened" msgid="9046192331465915411">"I-export Naka-flat na Larawan"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"Magiging isang kopya ang na-export na larawan, na wala ang kasaysayan."</string>
     <string name="quality" msgid="179292110309050529">"Kalidad"</string>
     <string name="draw_hue" msgid="4975135843189267133">"Kulay"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Saturation"</string>
     <string name="draw_value" msgid="6571604055161538273">"Brightness"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Opacity"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Kulay"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Mga Linya"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Marker"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Spatter"</string>
index bc9e56a..a2c3260 100644 (file)
@@ -32,8 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"Uygulanan Efektleri Göster"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"Uygulanan Efektleri Gizle"</string>
     <string name="export_image" msgid="3202835713172222134">"Dışa aktar"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"Yazdır"</string>
     <string name="export_flattened" msgid="9046192331465915411">"Düzleştirilen Resmi Dışa Aktar"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"Dışa aktarılan resim, üzerinde yapılan işlemlere yönelik geçmiş bilgileri olmadan kopyalanır."</string>
     <string name="quality" msgid="179292110309050529">"Kaliteli"</string>
     <string name="draw_hue" msgid="4975135843189267133">"Ton"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Doygunluk"</string>
     <string name="draw_value" msgid="6571604055161538273">"Parlaklık"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Şeffaflık"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Renk"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Çizgi"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Fosforlu kalem"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Serpme aracı"</string>
     <string name="filtershow_save_preset" msgid="3933550455577927439">"Mevcut hazır ayarı kaydet"</string>
     <string name="filtershow_manage_preset" msgid="3872896753708921286">"Kullanıcı hazır ayarlarını yönet"</string>
     <string name="filtershow_new_preset" msgid="8923930134923416617">"Yeni Hazır Ayar"</string>
-    <string name="filtershow_preset_name" msgid="7015939727047649866">"Ön Ayar Adı"</string>
+    <string name="filtershow_preset_name" msgid="7015939727047649866">"Hazır Ayar Adı"</string>
     <string name="filtershow_show_info_panel" msgid="5773036746043711115">"Bilgi"</string>
     <string name="filtershow_show_info_panel_name" msgid="5908258517140549439">"Resim Adı"</string>
     <string name="filtershow_show_info_panel_size" msgid="1714666849204493017">"Resim Boyutu"</string>
index f2200de..e3e2c8b 100644 (file)
@@ -32,7 +32,7 @@
     <string name="show_imagestate_panel" msgid="281932769701043015">"Показати застосовані ефекти"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"Сховати застосовані ефекти"</string>
     <string name="export_image" msgid="3202835713172222134">"Експортувати"</string>
-    <string name="print_image" msgid="1942989216591621413">"Друкувати"</string>
+    <string name="print_image" msgid="1942989216591621413">"Друк"</string>
     <string name="export_flattened" msgid="9046192331465915411">"Експорт спрощеного зображення"</string>
     <string name="select_output_settings" msgid="1268532018080310748">"Експортоване зображення буде копією без історії."</string>
     <string name="quality" msgid="179292110309050529">"Якість"</string>
     <string name="draw_hue" msgid="4975135843189267133">"Тон"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Насиченість"</string>
     <string name="draw_value" msgid="6571604055161538273">"Яскравість"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Прозорість"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Колір"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Лінії"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Маркер"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Розпилення"</string>
index c034725..166b30c 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"Màu sắc"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Bão hòa"</string>
     <string name="draw_value" msgid="6571604055161538273">"Độ sáng"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Độ mờ"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Màu"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Đường vẽ"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Bút dạ"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"Bút vẽ"</string>
index 5d3ff22..40c3651 100644 (file)
     <string name="show_imagestate_panel" msgid="281932769701043015">"显示应用的效果"</string>
     <string name="hide_imagestate_panel" msgid="7207643485811695257">"隐藏应用的效果"</string>
     <string name="export_image" msgid="3202835713172222134">"导出"</string>
-    <!-- no translation found for print_image (1942989216591621413) -->
-    <skip />
+    <string name="print_image" msgid="1942989216591621413">"打印"</string>
     <string name="export_flattened" msgid="9046192331465915411">"导出平面图"</string>
-    <string name="select_output_settings" msgid="1268532018080310748">"导å\87ºç\9a\84å\9b¾ç\89\87å°\86æ\98¯å\9b¾ç\89\87å\89¯æ\9c¬ï¼\8cä¸\94ä¸\8då\90«ä»»ä½\95å\8e\86å\8f²记录。"</string>
+    <string name="select_output_settings" msgid="1268532018080310748">"导å\87ºç\9a\84å\9b¾ç\89\87å°\86æ\98¯å\89¯æ\9c¬ï¼\8cä¸\94ä¸\8då\90«ä»»ä½\95ç¼\96è¾\91记录。"</string>
     <string name="quality" msgid="179292110309050529">"品质"</string>
     <string name="size" msgid="4639404642236356037">"大小"</string>
     <string name="x" msgid="6810256999024563662">"x"</string>
     <string name="draw_hue" msgid="4975135843189267133">"色调"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"饱和度"</string>
     <string name="draw_value" msgid="6571604055161538273">"亮度"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"不透明度"</string>
+    <string name="draw_color" msgid="2119030386987211193">"颜色"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"线条"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"记号笔"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"喷笔"</string>
index cfb42eb..70fba4c 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"色調"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"飽和度"</string>
     <string name="draw_value" msgid="6571604055161538273">"光暗度"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"半透明度"</string>
+    <string name="draw_color" msgid="2119030386987211193">"顏色"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"線條"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"箱頭筆"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"潑濺"</string>
index a1c11d4..70ada02 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"色調"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"飽和度"</string>
     <string name="draw_value" msgid="6571604055161538273">"亮度"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"半透明度"</string>
+    <string name="draw_color" msgid="2119030386987211193">"顏色"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"線條"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"彩色筆"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"潑灑"</string>
index 15fa4b1..ba0fd99 100644 (file)
     <string name="draw_hue" msgid="4975135843189267133">"I-Hue"</string>
     <string name="draw_saturation" msgid="5394395648014454882">"Gcwalisa isikhala"</string>
     <string name="draw_value" msgid="6571604055161538273">"Ukugqama"</string>
-    <string name="draw_opacity" msgid="1669435135236987503">"Ukungabonisi"</string>
+    <string name="draw_color" msgid="2119030386987211193">"Umbala"</string>
     <string name="draw_style_line" msgid="9216476853904429628">"Imigqa"</string>
     <string name="draw_style_brush_spatter" msgid="7612691122932981554">"Isiphawuli"</string>
     <string name="draw_style_brush_marker" msgid="8468302322165644292">"I-Spatter"</string>
index b315d12..460da61 100644 (file)
@@ -39,6 +39,7 @@
     <item type="id" name="imageCurves" />
     <item type="id" name="imageZoom" />
     <item type="id" name="editorDraw" />
+    <item type="id" name="editorColorBorder" />
     <item type="id" name="editorRedEye" />
     <item type="id" name="imageOnlyEditor" />
     <item type="id" name="vignetteEditor" />
index a79bdb0..4c8996a 100644 (file)
@@ -20,6 +20,8 @@
 
     <!--  String shown when we cannot load the image when starting the activity [CHAR LIMIT=NONE] -->
     <string name="cannot_load_image">Cannot load the image!</string>
+    <!--  String shown when we cannot load the original to edit [CHAR LIMIT=NONE] -->
+    <string name="cannot_edit_original">Cannot edit original</string>
     <!--  String displayed when showing the original image [CHAR LIMIT=NONE] -->
     <string name="original_picture_text">@string/original</string>
     <!--  String displayed when setting the homepage wallpaper in the background [CHAR LIMIT=NONE] -->
     <!--  Label for the removing drawing from screen [CHAR LIMIT=14] -->
     <string name="draw_clear">Clear</string>
 
+
+    <!--  Label for the with of the border[CHAR LIMIT=14] -->
+    <string name="color_border_size">thickness</string>
+    <!--  Label for the border corner size (or rounding) [CHAR LIMIT=14] -->
+    <string name="color_border_corner_size">Corner Size</string>
+    <!--  Label for selecting the border color [CHAR LIMIT=14] -->
+    <string name="color_border_color">Color</string>
+     <!--  Label for the removing borders [CHAR LIMIT=14] -->
+    <string name="color_border_clear">Clear</string>
+
     <!--  Label for the select the color [CHAR LIMIT=35] -->
     <string name="color_pick_select">Choose custom color</string>
     <!--  The title for the color pick dialog [CHAR LIMIT=20] -->
index 2bc147a..325723c 100644 (file)
@@ -1215,6 +1215,9 @@ public abstract class PhotoPage extends ActivityState implements
                 .findPathByUri(intent.getData(), intent.getType());
         if (path != null) {
             Path albumPath = mApplication.getDataManager().getDefaultSetOf(path);
+            if (albumPath == null) {
+                return;
+            }
             if (!albumPath.equalsIgnoreCase(mOriginalSetPathString)) {
                 // If the edited image is stored in a different album, we need
                 // to start a new activity state to show the new image
index 4f1f7f0..c3a5e15 100644 (file)
@@ -73,6 +73,7 @@ import com.android.gallery3d.filtershow.data.UserPresetsManager;
 import com.android.gallery3d.filtershow.editors.BasicEditor;
 import com.android.gallery3d.filtershow.editors.Editor;
 import com.android.gallery3d.filtershow.editors.EditorChanSat;
+import com.android.gallery3d.filtershow.editors.EditorColorBorder;
 import com.android.gallery3d.filtershow.editors.EditorCrop;
 import com.android.gallery3d.filtershow.editors.EditorDraw;
 import com.android.gallery3d.filtershow.editors.EditorGrad;
@@ -496,6 +497,7 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL
         mEditorPlaceHolder.addEditor(new EditorChanSat());
         mEditorPlaceHolder.addEditor(new EditorGrad());
         mEditorPlaceHolder.addEditor(new EditorDraw());
+        mEditorPlaceHolder.addEditor(new EditorColorBorder());
         mEditorPlaceHolder.addEditor(new BasicEditor());
         mEditorPlaceHolder.addEditor(new ImageOnlyEditor());
         mEditorPlaceHolder.addEditor(new EditorTinyPlanet());
@@ -732,9 +734,15 @@ public class FilterShowActivity extends FragmentActivity implements OnItemClickL
             }
 
             if (!result) {
-                cannotLoadImage();
-                // TODO: We should figure out the best way preventing this from
-                // happening, e.g: early checking.
+                if (!mOriginalImageUri.equals(mSelectedImageUri)) {
+                    mOriginalImageUri = mSelectedImageUri;
+                    mOriginalPreset = null;
+                    Toast.makeText(FilterShowActivity.this,
+                            R.string.cannot_edit_original, Toast.LENGTH_SHORT).show();
+                    startLoadBitmap(mOriginalImageUri);
+                } else {
+                    cannotLoadImage();
+                }
                 return;
             }
 
index 15ffb18..30cd3f3 100644 (file)
@@ -392,6 +392,9 @@ public final class ImageLoader {
         Bitmap bmap = loadConstrainedBitmap(uri, context, maxSideLength, originalBounds, false);
         if (bmap != null) {
             bmap = orientBitmap(bmap, orientation);
+            if (bmap.getConfig()!= Bitmap.Config.ARGB_8888){
+                bmap = bmap.copy( Bitmap.Config.ARGB_8888,true);
+            }
         }
         return bmap;
     }
index 2608df6..4f8248f 100644 (file)
@@ -16,6 +16,8 @@
 
 package com.android.gallery3d.filtershow.controller;
 
+import android.graphics.Color;
+
 public class ParameterColor implements Parameter {
     public static String sParameterType = "ParameterColor";
     protected Control mControl;
@@ -23,10 +25,12 @@ public class ParameterColor implements Parameter {
     float[] mHSVO = new float[4];
     String mParameterName;
     int mValue;
-    public final int  ID;
+    public final int ID;
 
-    public ParameterColor(int id) {
+    public ParameterColor(int id, int defaultColor) {
         ID = id;
+        Color.colorToHSV(defaultColor, mHSVO);
+        mHSVO[3] = ((defaultColor >> 24) & 0xFF) / (float) 255;
     }
 
     @Override
@@ -36,24 +40,23 @@ public class ParameterColor implements Parameter {
 
     public void setColor(float[] hsvo) {
         mHSVO = hsvo;
+        mValue = Color.HSVToColor((int) (hsvo[3] * 255), mHSVO);
     }
 
     public float[] getColor() {
-        mHSVO[3] = getValue() ;
         return mHSVO;
     }
 
-
     public void copyFrom(Parameter src) {
-        if (!(src instanceof BasicParameterInt)) {
+        if (!(src instanceof ParameterColor)) {
             throw new IllegalArgumentException(src.getClass().getName());
         }
-        BasicParameterInt p = (BasicParameterInt) src;
+        ParameterColor p = (ParameterColor) src;
 
         mValue = p.mValue;
+        System.arraycopy(p.mHSVO, 0, mHSVO, 0, 4);
     }
 
-
     @Override
     public String getParameterName() {
         return mParameterName;
@@ -61,7 +64,7 @@ public class ParameterColor implements Parameter {
 
     @Override
     public String getValueString() {
-        return  "("+Integer.toHexString(mValue)+")";
+        return "(" + Integer.toHexString(mValue) + ")";
     }
 
     @Override
@@ -75,6 +78,8 @@ public class ParameterColor implements Parameter {
 
     public void setValue(int value) {
         mValue = value;
+        Color.colorToHSV(mValue, mHSVO);
+        mHSVO[3] = ((mValue >> 24) & 0xFF) / (float) 255;
     }
 
     @Override
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorColorBorder.java b/src/com/android/gallery3d/filtershow/editors/EditorColorBorder.java
new file mode 100644 (file)
index 0000000..2561dcd
--- /dev/null
@@ -0,0 +1,220 @@
+/*
+ * Copyright (C) 2013 The Android Open Source Project
+ *
+ * Licensed 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.
+ */
+
+package com.android.gallery3d.filtershow.editors;
+
+import android.content.Context;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+import android.graphics.Color;
+import android.view.LayoutInflater;
+import android.view.MenuItem;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.view.ViewGroup;
+import android.widget.Button;
+import android.widget.FrameLayout;
+import android.widget.LinearLayout;
+import android.widget.PopupMenu;
+import android.widget.SeekBar;
+
+import com.android.gallery3d.R;
+import com.android.gallery3d.filtershow.controller.BitmapCaller;
+import com.android.gallery3d.filtershow.controller.ColorChooser;
+import com.android.gallery3d.filtershow.controller.FilterView;
+import com.android.gallery3d.filtershow.filters.FilterColorBorderRepresentation;
+import com.android.gallery3d.filtershow.filters.FilterRepresentation;
+import com.android.gallery3d.filtershow.filters.ImageFilterColorBorder;
+import com.android.gallery3d.filtershow.imageshow.ImageShow;
+
+public class EditorColorBorder extends ParametricEditor implements FilterView {
+    private static final String LOGTAG = "EditorColorBorder";
+    public static final int ID = R.id.editorColorBorder;
+
+    int[] brushIcons = {
+            R.drawable.brush_flat,
+            R.drawable.brush_round,
+            R.drawable.brush_gauss,
+            R.drawable.brush_marker,
+            R.drawable.brush_spatter
+    };
+
+    int[] mBasColors = {
+            FilterColorBorderRepresentation.DEFAULT_MENU_COLOR1,
+            FilterColorBorderRepresentation.DEFAULT_MENU_COLOR2,
+            FilterColorBorderRepresentation.DEFAULT_MENU_COLOR3,
+            FilterColorBorderRepresentation.DEFAULT_MENU_COLOR4,
+            FilterColorBorderRepresentation.DEFAULT_MENU_COLOR5,
+    };
+    private EditorColorBorderTabletUI mTabletUI;
+    private String mParameterString;
+    private int mSelectedColorButton;
+
+    public EditorColorBorder() {
+        super(ID);
+    }
+
+    @Override
+    public String calculateUserMessage(Context context, String effectName, Object parameterValue) {
+        FilterColorBorderRepresentation rep = getColorBorderRep();
+        if (rep == null) {
+            return "";
+        }
+        if (mParameterString == null) {
+            mParameterString = "";
+        }
+        String paramString;
+        String val = rep.getValueString();
+        return mParameterString + val;
+    }
+
+    @Override
+    public void createEditor(Context context, FrameLayout frameLayout) {
+        mView = mImageShow = new ImageShow(context);
+        super.createEditor(context, frameLayout);
+    }
+
+    @Override
+    public void reflectCurrentFilter() {
+        super.reflectCurrentFilter();
+        FilterRepresentation rep = getLocalRepresentation();
+        if (rep != null && getLocalRepresentation() instanceof FilterColorBorderRepresentation) {
+            FilterColorBorderRepresentation cbRep =
+                    (FilterColorBorderRepresentation) getLocalRepresentation();
+            if (!ParametricEditor.useCompact(mContext)) {
+                if (mTabletUI != null) {
+                    mTabletUI.setColorBorderRepresentation(cbRep);
+                }
+                return;
+            }
+            cbRep.setPramMode(FilterColorBorderRepresentation.PARAM_COLOR);
+            mParameterString = mContext.getString(R.string.color_border_color);
+            control(cbRep.getCurrentParam(), mEditControl);
+        }
+    }
+
+    @Override
+    public void openUtilityPanel(final LinearLayout accessoryViewList) {
+        Button view = (Button) accessoryViewList.findViewById(R.id.applyEffect);
+        view.setText(mContext.getString(R.string.color_border_size));
+        view.setOnClickListener(new OnClickListener() {
+
+            @Override
+            public void onClick(View arg0) {
+                showPopupMenu(accessoryViewList);
+            }
+        });
+    }
+
+    @Override
+    public boolean showsSeekBar() {
+        return false;
+    }
+
+    private void showPopupMenu(LinearLayout accessoryViewList) {
+        final Button button = (Button) accessoryViewList.findViewById(
+                R.id.applyEffect);
+        if (button == null) {
+            return;
+        }
+        final PopupMenu popupMenu = new PopupMenu(mImageShow.getActivity(), button);
+        popupMenu.getMenuInflater().inflate(R.menu.filtershow_menu_color_border,
+                popupMenu.getMenu());
+        popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() {
+
+            @Override
+            public boolean onMenuItemClick(MenuItem item) {
+                selectMenuItem(item);
+                return true;
+            }
+        });
+        popupMenu.show();
+    }
+
+    protected void selectMenuItem(MenuItem item) {
+        ImageFilterColorBorder filter = (ImageFilterColorBorder) mImageShow.getCurrentFilter();
+        FilterColorBorderRepresentation rep = getColorBorderRep();
+        if (rep == null) {
+            return;
+        }
+        switch (item.getItemId()) {
+            case R.id.color_border_menu_clear:
+                clearFrame();
+                break;
+            case R.id.color_border_menu_size:
+                rep.setPramMode(FilterColorBorderRepresentation.PARAM_SIZE);
+                break;
+            case R.id.color_border_menu_corner_size:
+                rep.setPramMode(FilterColorBorderRepresentation.PARAM_RADIUS);
+                break;
+            case R.id.color_border_menu_color:
+                rep.setPramMode(FilterColorBorderRepresentation.PARAM_COLOR);
+                break;
+        }
+        if (item.getItemId() != R.id.color_border_menu_clear) {
+            mParameterString = item.getTitle().toString();
+        }
+        if (mControl instanceof ColorChooser) {
+            ColorChooser c = (ColorChooser) mControl;
+            mBasColors = c.getColorSet();
+        }
+        control(rep.getCurrentParam(), mEditControl);
+        if (mControl instanceof ColorChooser) {
+            ColorChooser c = (ColorChooser) mControl;
+            c.setColorSet(mBasColors);
+        }
+        mControl.updateUI();
+        mView.invalidate();
+    }
+
+    public void clearFrame() {
+        commitLocalRepresentation();
+    }
+
+    @Override
+    public void setUtilityPanelUI(View actionButton, View editControl) {
+        if (ParametricEditor.useCompact(mContext)) {
+            super.setUtilityPanelUI(actionButton, editControl);
+            return;
+        }
+        mSeekBar = (SeekBar) editControl.findViewById(R.id.primarySeekBar);
+        if (mSeekBar != null) {
+            mSeekBar.setVisibility(View.GONE);
+        }
+
+        mTabletUI = new EditorColorBorderTabletUI(this, mContext, editControl);
+
+    }
+
+    FilterColorBorderRepresentation getColorBorderRep() {
+        FilterRepresentation rep = getLocalRepresentation();
+        if (rep instanceof FilterColorBorderRepresentation) {
+            return (FilterColorBorderRepresentation) rep;
+        }
+        return null;
+    }
+
+    @Override
+    public void computeIcon(int index, BitmapCaller caller) {
+        Bitmap bitmap = BitmapFactory.decodeResource(mContext.getResources(), brushIcons[index]);
+        caller.available(bitmap);
+    }
+
+    public int getBrushIcon(int type) {
+        return brushIcons[type];
+    }
+
+}
diff --git a/src/com/android/gallery3d/filtershow/editors/EditorColorBorderTabletUI.java b/src/com/android/gallery3d/filtershow/editors/EditorColorBorderTabletUI.java
new file mode 100644 (file)
index 0000000..04aee27
--- /dev/null
@@ -0,0 +1,253 @@
+/*
+ * Copyright (C) 2013 The Android Open Source Project
+ *
+ * Licensed 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.
+ */
+
+package com.android.gallery3d.filtershow.editors;
+
+import android.app.ActionBar;
+import android.content.Context;
+import android.content.res.Resources;
+import android.graphics.Bitmap;
+import android.graphics.BitmapFactory;
+import android.graphics.Color;
+import android.graphics.drawable.GradientDrawable;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.Button;
+import android.widget.ImageButton;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.SeekBar;
+import android.widget.TextView;
+
+import com.android.gallery3d.R;
+import com.android.gallery3d.filtershow.colorpicker.ColorHueView;
+import com.android.gallery3d.filtershow.colorpicker.ColorListener;
+import com.android.gallery3d.filtershow.colorpicker.ColorOpacityView;
+import com.android.gallery3d.filtershow.colorpicker.ColorSVRectView;
+import com.android.gallery3d.filtershow.controller.BasicParameterInt;
+import com.android.gallery3d.filtershow.controller.BasicParameterStyle;
+import com.android.gallery3d.filtershow.controller.ParameterColor;
+import com.android.gallery3d.filtershow.filters.FilterColorBorderRepresentation;
+
+import java.util.Arrays;
+
+public class EditorColorBorderTabletUI {
+    private EditorColorBorder mEditorDraw;
+    private int[] mBrushIcons;
+    private static int sIconDim = 120;
+    private int mSelectedColorButton;
+    private FilterColorBorderRepresentation mRep;
+    private Button[] mColorButton;
+    private ImageButton[] mStyleButton;
+    private ColorHueView mHueView;
+    private ColorSVRectView mSatValView;
+    private ColorOpacityView mOpacityView;
+
+    private int[] mBasColors;
+    private int mSelected;
+    private int mTransparent;
+    private SeekBar mCBSizeSeekBar;
+    private SeekBar mCBCornerSizeSeekBar;
+    TextView mCBCornerSizeValue;
+    TextView mCBSizeValue;
+
+    private int[] ids = {
+            R.id.draw_color_button01,
+            R.id.draw_color_button02,
+            R.id.draw_color_button03,
+            R.id.draw_color_button04,
+            R.id.draw_color_button05,
+    };
+
+    public void setColorBorderRepresentation(FilterColorBorderRepresentation rep) {
+        mRep = rep;
+        BasicParameterInt size;
+        size = (BasicParameterInt) mRep.getParam(FilterColorBorderRepresentation.PARAM_SIZE);
+        mCBSizeSeekBar.setMax(size.getMaximum() - size.getMinimum());
+        mCBSizeSeekBar.setProgress(size.getValue());
+
+        BasicParameterInt radius;
+        radius = (BasicParameterInt) mRep.getParam(FilterColorBorderRepresentation.PARAM_RADIUS);
+        mCBCornerSizeSeekBar.setMax(radius.getMaximum() - radius.getMinimum());
+        mCBCornerSizeSeekBar.setProgress(radius.getValue());
+
+        ParameterColor color;
+        color = (ParameterColor) mRep.getParam(FilterColorBorderRepresentation.PARAM_COLOR);
+        color.setValue(mBasColors[mSelectedColorButton]);
+    }
+
+    public EditorColorBorderTabletUI(EditorColorBorder editorDraw, Context context, View base) {
+        mEditorDraw = editorDraw;
+        mBasColors = editorDraw.mBasColors;
+        mBrushIcons = editorDraw.brushIcons;
+        LayoutInflater inflater =
+                (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+        LinearLayout lp = (LinearLayout) inflater.inflate(
+                R.layout.filtershow_color_border_ui, (ViewGroup) base, true);
+
+        Resources res = context.getResources();
+        sIconDim = res.getDimensionPixelSize(R.dimen.draw_style_icon_dim);
+        LinearLayout buttonContainer = (LinearLayout) lp.findViewById(R.id.listStyles);
+
+        mCBCornerSizeSeekBar = (SeekBar) lp.findViewById(R.id.colorBorderCornerSizeSeekBar);
+        mCBCornerSizeValue = (TextView) lp.findViewById(R.id.colorBorderCornerValue);
+        mCBSizeSeekBar = (SeekBar) lp.findViewById(R.id.colorBorderSizeSeekBar);
+        mCBSizeValue = (TextView) lp.findViewById(R.id.colorBorderSizeValue);
+        setupClearButton(lp);
+        setupCBSizeSeekBar(lp);
+        setupCBCornerSizeSeekBar(lp);
+        setupColor(lp, res);
+    }
+
+    private void setupClearButton(LinearLayout lp) {
+        Button clearButton = (Button) lp.findViewById(R.id.clearButton);
+        clearButton.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View view) {
+                mEditorDraw.clearFrame();
+            }
+        });
+    }
+
+    private void setupCBSizeSeekBar(LinearLayout lp) {
+        mCBSizeSeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
+            @Override
+            public void onStopTrackingTouch(SeekBar seekBar) {
+            }
+            @Override
+            public void onStartTrackingTouch(SeekBar seekBar) {
+            }
+            @Override
+            public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
+                int type = FilterColorBorderRepresentation.PARAM_SIZE;
+                BasicParameterInt size = (BasicParameterInt) mRep.getParam(type);
+                size.setValue(progress + size.getMinimum());
+                mCBSizeValue.setText(Integer.toString(size.getValue()));
+                mEditorDraw.commitLocalRepresentation();
+            }
+        });
+
+    }
+
+    private void setupCBCornerSizeSeekBar(LinearLayout lp) {
+        mCBCornerSizeSeekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
+            @Override
+            public void onStopTrackingTouch(SeekBar seekBar) {
+            }
+            @Override
+            public void onStartTrackingTouch(SeekBar seekBar) {
+            }
+            @Override
+            public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
+                int type = FilterColorBorderRepresentation.PARAM_RADIUS;
+                BasicParameterInt size = (BasicParameterInt) mRep.getParam(type);
+                size.setValue(progress + size.getMinimum());
+                mCBCornerSizeValue.setText(size.getValue() + "");
+                mEditorDraw.commitLocalRepresentation();
+            }
+        });
+
+    }
+
+    private void setupColor(LinearLayout lp, Resources res) {
+        final LinearLayout ctls = (LinearLayout) lp.findViewById(R.id.controls);
+        final LinearLayout pick = (LinearLayout) lp.findViewById(R.id.colorPicker);
+        Button b = (Button) lp.findViewById(R.id.draw_color_popupbutton);
+        b.setOnClickListener(new View.OnClickListener() {
+
+            @Override
+            public void onClick(View view) {
+                boolean b = ctls.getVisibility() == View.VISIBLE;
+                ctls.setVisibility((b) ? View.GONE : View.VISIBLE);
+                pick.setVisibility((!b) ? View.GONE : View.VISIBLE);
+            }
+        }
+        );
+
+        mTransparent = res.getColor(R.color.color_chooser_unslected_border);
+        mSelected = res.getColor(R.color.color_chooser_slected_border);
+
+        mColorButton = new Button[ids.length];
+        for (int i = 0; i < ids.length; i++) {
+            mColorButton[i] = (Button) lp.findViewById(ids[i]);
+            float[] hsvo = new float[4];
+            Color.colorToHSV(mBasColors[i], hsvo);
+            hsvo[3] = (0xFF & (mBasColors[i] >> 24)) / (float) 255;
+            mColorButton[i].setTag(hsvo);
+            GradientDrawable sd = ((GradientDrawable) mColorButton[i].getBackground());
+            sd.setColor(mBasColors[i]);
+            sd.setStroke(3, (0 == i) ? mSelected : mTransparent);
+            final int buttonNo = i;
+            mColorButton[i].setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View arg0) {
+                    mSelectedColorButton = buttonNo;
+                    float[] hsvo = Arrays.copyOf((float[]) mColorButton[buttonNo].getTag(), 4);
+                    resetBorders();
+                    if (mRep == null) {
+                        return;
+                    }
+                    int type = FilterColorBorderRepresentation.PARAM_COLOR;
+                    ParameterColor pram = (ParameterColor) mRep.getParam(type);
+                    pram.setValue(mBasColors[mSelectedColorButton]);
+                    mEditorDraw.commitLocalRepresentation();
+                    mHueView.setColor(hsvo);
+                    mSatValView.setColor(hsvo);
+                    mOpacityView.setColor(hsvo);
+                }
+            });
+        }
+        mHueView = (ColorHueView) lp.findViewById(R.id.ColorHueView);
+        mSatValView = (ColorSVRectView) lp.findViewById(R.id.colorRectView);
+        mOpacityView = (ColorOpacityView) lp.findViewById(R.id.colorOpacityView);
+        mHueView.addColorListener(mSatValView);
+        mSatValView.addColorListener(mHueView);
+        mHueView.addColorListener(mOpacityView);
+        mSatValView.addColorListener(mOpacityView);
+        mOpacityView.addColorListener(mSatValView);
+        mOpacityView.addColorListener(mHueView);
+        ColorListener colorListener = new ColorListener() {
+            @Override
+            public void setColor(float[] hsvo) {
+                int color = Color.HSVToColor((int) (hsvo[3] * 255), hsvo);
+                Button b = mColorButton[mSelectedColorButton];
+                float[] f = (float[]) b.getTag();
+                System.arraycopy(hsvo, 0, f, 0, 4);
+                mBasColors[mSelectedColorButton] = color;
+                GradientDrawable sd = ((GradientDrawable) b.getBackground());
+                sd.setColor(color);
+                resetBorders();
+                ParameterColor pram;
+                pram = (ParameterColor) mRep.getParam(FilterColorBorderRepresentation.PARAM_COLOR);
+                pram.setValue(color);
+                mEditorDraw.commitLocalRepresentation();
+            }
+        };
+        mHueView.addColorListener(colorListener);
+        mSatValView.addColorListener(colorListener);
+        mOpacityView.addColorListener(colorListener);
+    }
+
+    private void resetBorders() {
+        for (int i = 0; i < ids.length; i++) {
+            final Button button = mColorButton[i];
+            GradientDrawable sd = ((GradientDrawable) button.getBackground());
+            sd.setColor(mBasColors[i]);
+            sd.setStroke(3, (mSelectedColorButton == i) ? mSelected : mTransparent);
+        }
+    }
+}
index 97c889c..4886821 100644 (file)
@@ -67,11 +67,11 @@ public class EditorDraw extends ParametricEditor implements FilterView {
     };
 
     int[] mBasColors = {
-            Color.RED & 0x80FFFFFF,
-            Color.GREEN & 0x80FFFFFF,
-            Color.BLUE & 0x80FFFFFF,
-            Color.BLACK & 0x80FFFFFF,
-            Color.WHITE & 0x80FFFFFF
+            FilterDrawRepresentation.DEFAULT_MENU_COLOR1,
+            FilterDrawRepresentation.DEFAULT_MENU_COLOR2,
+            FilterDrawRepresentation.DEFAULT_MENU_COLOR3,
+            FilterDrawRepresentation.DEFAULT_MENU_COLOR4,
+            FilterDrawRepresentation.DEFAULT_MENU_COLOR5,
     };
     private EditorDrawTabletUI mTabletUI;
     private String mParameterString;
index 282254b..7a5ec56 100644 (file)
@@ -20,10 +20,6 @@ import android.content.res.Resources;
 import android.util.Log;
 
 import com.android.gallery3d.R;
-import com.android.gallery3d.filtershow.editors.EditorCrop;
-import com.android.gallery3d.filtershow.editors.EditorMirror;
-import com.android.gallery3d.filtershow.editors.EditorRotate;
-import com.android.gallery3d.filtershow.editors.EditorStraighten;
 import com.android.gallery3d.filtershow.pipeline.ImagePreset;
 
 import java.util.ArrayList;
@@ -141,7 +137,7 @@ public abstract class BaseFiltersManager implements FiltersManagerInterface {
         filters.add(ImageFilterKMeans.class);
         filters.add(ImageFilterFx.class);
         filters.add(ImageFilterBorder.class);
-        filters.add(ImageFilterParametricBorder.class);
+        filters.add(ImageFilterColorBorder.class);
     }
 
     public ArrayList<FilterRepresentation> getLooks() {
index 94eb206..929d7cc 100644 (file)
 
 package com.android.gallery3d.filtershow.filters;
 
+import android.graphics.Color;
+
 import com.android.gallery3d.R;
+import com.android.gallery3d.filtershow.controller.BasicParameterInt;
+import com.android.gallery3d.filtershow.controller.BasicParameterStyle;
+import com.android.gallery3d.filtershow.controller.Parameter;
+import com.android.gallery3d.filtershow.controller.ParameterColor;
+import com.android.gallery3d.filtershow.editors.EditorColorBorder;
 import com.android.gallery3d.filtershow.editors.ImageOnlyEditor;
 
 public class FilterColorBorderRepresentation extends FilterRepresentation {
-    private int mColor;
-    private int mBorderSize;
-    private int mBorderRadius;
+    private static final String LOGTAG = "FilterColorBorderRepresentation";
+    private static final String SERIALIZATION_NAME = "COLORBORDER";
+
+    public static final int PARAM_SIZE = 0;
+    public static final int PARAM_RADIUS = 1;
+    public static final int PARAM_COLOR = 2;
+    public static int DEFAULT_MENU_COLOR1 = Color.WHITE;
+    public static int DEFAULT_MENU_COLOR2 = Color.BLACK;
+    public static int DEFAULT_MENU_COLOR3 = Color.GRAY;
+    public static int DEFAULT_MENU_COLOR4 = 0xFFFFCCAA;
+    public static int DEFAULT_MENU_COLOR5 = 0xFFAAAAAA;
+    private BasicParameterInt mParamSize = new BasicParameterInt(PARAM_SIZE, 20, 2, 300);
+    private BasicParameterInt mParamRadius = new BasicParameterInt(PARAM_RADIUS, 4, 2, 300);
+    private ParameterColor mParamColor = new ParameterColor(PARAM_COLOR, DEFAULT_MENU_COLOR1);
+
+    private Parameter[] mAllParam = {
+            mParamSize,
+            mParamRadius,
+            mParamColor
+    };
+    private int mPramMode;
 
     public FilterColorBorderRepresentation(int color, int size, int radius) {
         super("ColorBorder");
-        mColor = color;
-        mBorderSize = size;
-        mBorderRadius = radius;
+        setSerializationName(SERIALIZATION_NAME);
         setFilterType(FilterRepresentation.TYPE_BORDER);
         setTextId(R.string.borders);
-        setEditorId(ImageOnlyEditor.ID);
+        setEditorId(EditorColorBorder.ID);
         setShowParameterValue(false);
+        setFilterClass(ImageFilterColorBorder.class);
+        mParamColor.setValue(color);
+        mParamSize.setValue(size);
+        mParamColor.setValue(radius);
     }
 
     public String toString() {
@@ -41,7 +68,8 @@ public class FilterColorBorderRepresentation extends FilterRepresentation {
 
     @Override
     public FilterRepresentation copy() {
-        FilterColorBorderRepresentation representation = new FilterColorBorderRepresentation(0,0,0);
+        FilterColorBorderRepresentation representation =
+                new FilterColorBorderRepresentation(0, 0, 0);
         copyAllParameters(representation);
         return representation;
     }
@@ -69,9 +97,10 @@ public class FilterColorBorderRepresentation extends FilterRepresentation {
         }
         if (representation instanceof FilterColorBorderRepresentation) {
             FilterColorBorderRepresentation border = (FilterColorBorderRepresentation) representation;
-            if (border.mColor == mColor
-                    && border.mBorderSize == mBorderSize
-                    && border.mBorderRadius == mBorderRadius) {
+            if (border.mParamColor.getValue() == mParamColor.getValue()
+                    && border.mParamRadius.getValue() == mParamRadius.getValue()
+                    && border.mParamSize.getValue() == mParamSize.getValue()) {
+
                 return true;
             }
         }
@@ -82,32 +111,48 @@ public class FilterColorBorderRepresentation extends FilterRepresentation {
         return true;
     }
 
+    public Parameter getParam(int mode) {
+        return mAllParam[mode];
+    }
+
     @Override
     public int getTextId() {
         return R.string.borders;
     }
 
     public int getColor() {
-        return mColor;
+        return mParamColor.getValue();
     }
 
     public void setColor(int color) {
-        mColor = color;
+        mParamColor.setValue(color);
     }
 
     public int getBorderSize() {
-        return mBorderSize;
+        return mParamSize.getValue();
     }
 
     public void setBorderSize(int borderSize) {
-        mBorderSize = borderSize;
+        mParamSize.setValue(borderSize);
     }
 
     public int getBorderRadius() {
-        return mBorderRadius;
+        return mParamRadius.getValue();
     }
 
     public void setBorderRadius(int borderRadius) {
-        mBorderRadius = borderRadius;
+        mParamRadius.setValue(borderRadius);
+    }
+
+    public void setPramMode(int pramMode) {
+        this.mPramMode = pramMode;
+    }
+
+    public Parameter getCurrentParam() {
+        return mAllParam[mPramMode];
+    }
+
+    public String getValueString() {
+        return "";
     }
 }
index f05910b..d4b4e87 100644 (file)
@@ -43,12 +43,16 @@ public class FilterDrawRepresentation extends FilterRepresentation {
     private static final String LOGTAG = "FilterDrawRepresentation";
 
     public static final int PARAM_SIZE = 0;
-
     public static final int PARAM_STYLE = 1;
     public static final int PARAM_COLOR = 2;
     private BasicParameterInt mParamSize = new BasicParameterInt(PARAM_SIZE, 20, 2, 300);
     private BasicParameterStyle mParamStyle = new BasicParameterStyle(PARAM_STYLE, 5);
-    ParameterColor mParamColor = new ParameterColor(PARAM_COLOR);
+    public static int DEFAULT_MENU_COLOR1 = Color.RED & 0x80FFFFFF;
+    public static int DEFAULT_MENU_COLOR2 = Color.GREEN & 0x80FFFFFF;
+    public static int DEFAULT_MENU_COLOR3 = Color.BLUE & 0x80FFFFFF;
+    public static int DEFAULT_MENU_COLOR4 = Color.BLACK & 0x80FFFFFF;
+    public static int DEFAULT_MENU_COLOR5 = Color.WHITE & 0x80FFFFFF;
+    ParameterColor mParamColor = new ParameterColor(PARAM_COLOR,DEFAULT_MENU_COLOR1);
     int mParamMode;
     Parameter mCurrentParam = mParamSize;
     private static final String SERIAL_COLOR = "color";
@@ -18,19 +18,32 @@ package com.android.gallery3d.filtershow.filters;
 
 import android.graphics.Bitmap;
 import android.graphics.Canvas;
+import android.graphics.Color;
+import android.graphics.Matrix;
 import android.graphics.Paint;
 import android.graphics.Path;
 import android.graphics.RectF;
 
-public class ImageFilterParametricBorder extends ImageFilter {
+import com.android.gallery3d.app.Log;
+
+public class ImageFilterColorBorder extends ImageFilter {
+    private static final String LOGTAG = "ImageFilterColorBorder";
     private FilterColorBorderRepresentation mParameters = null;
+    Paint mPaint = new Paint();
+    RectF mRect = new RectF();
 
-    public ImageFilterParametricBorder() {
+    public ImageFilterColorBorder() {
         mName = "Border";
+        mPaint.setStyle(Paint.Style.STROKE);
+    }
+
+    public FilterRepresentation getDefaultRepresentation() {
+        return new FilterColorBorderRepresentation(Color.WHITE, 4, 4);
     }
 
     public void useRepresentation(FilterRepresentation representation) {
-        FilterColorBorderRepresentation parameters = (FilterColorBorderRepresentation) representation;
+        FilterColorBorderRepresentation parameters =
+                (FilterColorBorderRepresentation) representation;
         mParameters = parameters;
     }
 
@@ -42,28 +55,24 @@ public class ImageFilterParametricBorder extends ImageFilter {
         if (getParameters() == null) {
             return;
         }
-        Path border = new Path();
-        border.moveTo(0, 0);
-        float bs = getParameters().getBorderSize() / 100.0f * w;
-        float r = getParameters().getBorderRadius() / 100.0f * w;
-        border.lineTo(0, h);
-        border.lineTo(w, h);
-        border.lineTo(w, 0);
-        border.lineTo(0, 0);
-        border.addRoundRect(new RectF(bs, bs, w - bs, h - bs),
-                r, r, Path.Direction.CW);
-
-        Paint paint = new Paint();
-        paint.setAntiAlias(true);
-        paint.setColor(getParameters().getColor());
-        canvas.drawPath(border, paint);
+        mRect.set(0, 0, w, h);
+        mPaint.setColor(getParameters().getColor());
+        float size = getParameters().getBorderSize();
+        float radius = getParameters().getBorderRadius();
+        Matrix m = getOriginalToScreenMatrix(w, h);
+        radius = m.mapRadius(radius);
+        size = m.mapRadius(size);
+        mPaint.setStrokeWidth(size);
+        canvas.drawRoundRect(mRect, radius, radius, mPaint);
+        mRect.set(0 - radius, -radius, w + radius, h + radius);
+        canvas.drawRoundRect(mRect, 0, 0, mPaint);
     }
 
     @Override
     public Bitmap apply(Bitmap bitmap, float scaleFactor, int quality) {
-       Canvas canvas = new Canvas(bitmap);
-       applyHelper(canvas, bitmap.getWidth(), bitmap.getHeight());
-       return bitmap;
+        Canvas canvas = new Canvas(bitmap);
+        applyHelper(canvas, bitmap.getWidth(), bitmap.getHeight());
+        return bitmap;
     }
 
 }
index 2757aff..b345376 100644 (file)
@@ -20,6 +20,7 @@ import android.graphics.Bitmap;
 import android.graphics.Canvas;
 import android.support.v8.renderscript.Allocation;
 
+import com.android.gallery3d.app.Log;
 import com.android.gallery3d.filtershow.cache.BitmapCache;
 import com.android.gallery3d.filtershow.filters.FilterRepresentation;
 import com.android.gallery3d.filtershow.filters.FilterUserPresetRepresentation;
@@ -126,6 +127,9 @@ public class FilterEnvironment {
             return bitmap;
         }
         ImageFilter filter = mFiltersManager.getFilterForRepresentation(representation);
+        if (filter == null){
+            Log.e(LOGTAG,"No ImageFilter for "+representation.getSerializationName());
+        }
         filter.useRepresentation(representation);
         filter.setEnvironment(this);
         Bitmap ret = filter.apply(bitmap, mScaleFactor, mQuality);
index 5aafbff..bd483d3 100644 (file)
@@ -402,7 +402,8 @@ public class SaveImage {
 
     /**
      *  Move the source file to auxiliary directory if needed and return the Uri
-     *  pointing to this new source file.
+     *  pointing to this new source file. If any file error happens, then just
+     *  don't move into the auxiliary directory.
      * @param srcUri Uri to the source image.
      * @param dstFile Providing the destination file info to help to build the
      *  auxiliary directory and new source file's name.
@@ -419,7 +420,10 @@ public class SaveImage {
         // if necessary.
         File auxDiretory = getLocalAuxDirectory(dstFile);
         if (!auxDiretory.exists()) {
-            auxDiretory.mkdirs();
+            boolean success = auxDiretory.mkdirs();
+            if (!success) {
+                return srcUri;
+            }
         }
 
         // Make sure there is a .nomedia file in the auxiliary directory, such
@@ -436,9 +440,23 @@ public class SaveImage {
         // We are using the destination file name such that photos sitting in
         // the auxiliary directory are matching the parent directory.
         File newSrcFile = new File(auxDiretory, dstFile.getName());
+        // Maintain the suffix during move
+        String to = newSrcFile.getName();
+        String from = srcFile.getName();
+        to = to.substring(to.lastIndexOf("."));
+        from = from.substring(from.lastIndexOf("."));
+
+        if (!to.equals(from)) {
+            String name = dstFile.getName();
+            name = name.substring(0, name.lastIndexOf(".")) + from;
+            newSrcFile = new File(auxDiretory, name);
+        }
 
         if (!newSrcFile.exists()) {
-            srcFile.renameTo(newSrcFile);
+            boolean success = srcFile.renameTo(newSrcFile);
+            if (!success) {
+                return srcUri;
+            }
         }
 
         return Uri.fromFile(newSrcFile);
@@ -623,7 +641,12 @@ public class SaveImage {
                 });
 
         Uri result = sourceUri;
-        if (oldSelectedFile == null || !deleteOriginal) {
+
+        // In the case of incoming Uri is just a local file Uri (like a cached
+        // file), we can't just update the Uri. We have to create a new Uri.
+        boolean fileUri = isFileUri(sourceUri);
+
+        if (fileUri || oldSelectedFile == null || !deleteOriginal) {
             result = context.getContentResolver().insert(
                     Images.Media.EXTERNAL_CONTENT_URI, values);
         } else {
@@ -632,8 +655,19 @@ public class SaveImage {
                 oldSelectedFile.delete();
             }
         }
-
         return result;
     }
 
+    /**
+     * @param sourceUri
+     * @return true if the sourceUri is a local file Uri.
+     */
+    private static boolean isFileUri(Uri sourceUri) {
+        String scheme = sourceUri.getScheme();
+        if (scheme != null && scheme.equals(ContentResolver.SCHEME_FILE)) {
+            return true;
+        }
+        return false;
+    }
+
 }
index 058c036..b8496ec 100644 (file)
@@ -39,7 +39,9 @@ import com.android.gallery3d.ui.DetailsHelper.DetailsSource;
 import com.android.gallery3d.ui.DetailsHelper.DetailsViewContainer;
 import com.android.gallery3d.ui.DetailsHelper.ResolutionResolvingListener;
 
+import java.text.DecimalFormat;
 import java.util.ArrayList;
+import java.util.Locale;
 import java.util.Map.Entry;
 
 public class DialogDetailsView implements DetailsViewContainer {
@@ -117,6 +119,8 @@ public class DialogDetailsView implements DetailsViewContainer {
         implements AddressResolvingListener, ResolutionResolvingListener {
         private final ArrayList<String> mItems;
         private int mLocationIndex;
+        private final Locale mDefaultLocale = Locale.getDefault();
+        private final DecimalFormat mDecimalFormat = new DecimalFormat(".####");
         private int mWidthIndex = -1;
         private int mHeightIndex = -1;
 
@@ -166,13 +170,15 @@ public class DialogDetailsView implements DetailsViewContainer {
                         value = (String) detail.getValue();
                         double time = Double.valueOf(value);
                         if (time < 1.0f) {
-                            value = String.format("1/%d", (int) (0.5f + 1 / time));
+                            value = String.format(mDefaultLocale, "%d/%d", 1,
+                                    (int) (0.5f + 1 / time));
                         } else {
                             int integer = (int) time;
                             time -= integer;
                             value = String.valueOf(integer) + "''";
                             if (time > 0.0001) {
-                                value += String.format(" 1/%d", (int) (0.5f + 1 / time));
+                                value += String.format(mDefaultLocale, " %d/%d", 1,
+                                        (int) (0.5f + 1 / time));
                             }
                         }
                         break;
@@ -180,6 +186,12 @@ public class DialogDetailsView implements DetailsViewContainer {
                     case MediaDetails.INDEX_WIDTH:
                         mWidthIndex = mItems.size();
                         value = detail.getValue().toString();
+                        try {
+                            value = toLocalNumber(Integer.parseInt(value));
+                        } catch (NumberFormatException ex) {
+                            // Just keep the current "value" if we cannot parse
+                            // it as a fallback.
+                        }
                         if (value.equalsIgnoreCase("0")) {
                             value = context.getString(R.string.unknown);
                             resolutionIsValid = false;
@@ -188,6 +200,12 @@ public class DialogDetailsView implements DetailsViewContainer {
                     case MediaDetails.INDEX_HEIGHT: {
                         mHeightIndex = mItems.size();
                         value = detail.getValue().toString();
+                        try {
+                            value = toLocalNumber(Integer.parseInt(value));
+                        } catch (NumberFormatException ex) {
+                            // Just keep the current "value" if we cannot parse
+                            // it as a fallback.
+                        }
                         if (value.equalsIgnoreCase("0")) {
                             value = context.getString(R.string.unknown);
                             resolutionIsValid = false;
@@ -195,8 +213,21 @@ public class DialogDetailsView implements DetailsViewContainer {
                         break;
                     }
                     case MediaDetails.INDEX_PATH:
-                        // Get the path and then fall through to the default case
+                        // Prepend the new-line as a) paths are usually long, so
+                        // the formatting is better and b) an RTL UI will see it
+                        // as a separate section and interpret it for what it
+                        // is, rather than trying to make it RTL (which messes
+                        // up the path).
+                        value = "\n" + detail.getValue().toString();
                         path = detail.getValue().toString();
+                        break;
+                    case MediaDetails.INDEX_ISO:
+                        value = toLocalNumber(Integer.parseInt((String) detail.getValue()));
+                        break;
+                    case MediaDetails.INDEX_FOCAL_LENGTH:
+                        double focalLength = Double.parseDouble(detail.getValue().toString());
+                        value = toLocalNumber(focalLength);
+                        break;
                     default: {
                         Object valueObj = detail.getValue();
                         // This shouldn't happen, log its key to help us diagnose the problem.
@@ -216,9 +247,9 @@ public class DialogDetailsView implements DetailsViewContainer {
                             context, key), value);
                 }
                 mItems.add(value);
-                if (!resolutionIsValid) {
-                    DetailsHelper.resolveResolution(path, this);
-                }
+            }
+            if (!resolutionIsValid) {
+                DetailsHelper.resolveResolution(path, this);
             }
         }
 
@@ -271,14 +302,26 @@ public class DialogDetailsView implements DetailsViewContainer {
             if (width == 0 || height == 0) return;
             // Update the resolution with the new width and height
             Context context = mActivity.getAndroidContext();
-            String widthString = String.format("%s: %d", DetailsHelper.getDetailsName(
-                    context, MediaDetails.INDEX_WIDTH), width);
-            String heightString = String.format("%s: %d", DetailsHelper.getDetailsName(
-                    context, MediaDetails.INDEX_HEIGHT), height);
+            String widthString = String.format(mDefaultLocale, "%s: %d",
+                    DetailsHelper.getDetailsName(
+                            context, MediaDetails.INDEX_WIDTH), width);
+            String heightString = String.format(mDefaultLocale, "%s: %d",
+                    DetailsHelper.getDetailsName(
+                            context, MediaDetails.INDEX_HEIGHT), height);
             mItems.set(mWidthIndex, String.valueOf(widthString));
             mItems.set(mHeightIndex, String.valueOf(heightString));
             notifyDataSetChanged();
         }
+
+        /** Converts the given integer to a localized String version. */
+        private String toLocalNumber(int n) {
+            return String.format(mDefaultLocale, "%d", n);
+        }
+
+        /** Converts the given double to a localized String version. */
+        private String toLocalNumber(double n) {
+            return mDecimalFormat.format(n);
+        }
     }
 
     @Override
index 3266425..e82d561 100644 (file)
@@ -31,6 +31,7 @@ public class EditorManager {
         editorPlaceHolder.addEditor(new EditorTinyPlanet());
         editorPlaceHolder.addEditor(new EditorDraw());
         editorPlaceHolder.addEditor(new EditorVignette());
+        editorPlaceHolder.addEditor(new EditorColorBorder());
         editorPlaceHolder.addEditor(new EditorMirror());
         editorPlaceHolder.addEditor(new EditorRotate());
         editorPlaceHolder.addEditor(new EditorStraighten());