diff --git a/.github/preview/sharp/AirplaneModeOnOff.gif b/.github/preview/sharp/AirplaneModeOnOff.gif new file mode 100644 index 0000000..9b2749f Binary files /dev/null and b/.github/preview/sharp/AirplaneModeOnOff.gif differ diff --git a/.github/sample.gif b/.github/sample.gif index a94a221..b4a9260 100644 Binary files a/.github/sample.gif and b/.github/sample.gif differ diff --git a/README.md b/README.md index 1a5bcba..c500bb0 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ dependencyResolutionManagement { ```gradle // App level build.gradle dependencies { - implementation "com.github.ozgurg:ToggleIconView:2.2.0" + implementation "com.github.ozgurg:ToggleIconView:2.3.0" } ``` @@ -73,21 +73,22 @@ anything you can with `AppCompatImageView`. ### Events -| Event | Description | -|------------------------------------------------------------------------|----------------------------------------------------| +| Event | Description | +|------------------------------------------------------------------------|-----------------------------------------------------| | `onCheckedChanged(toggleIconView: ToggleIconView, isChecked: Boolean)` | Triggers when the checked state of the icon changed | ## Built-in icons _All icons have the same duration and interpolator, but I manually capture their previews; so timings may look different._ -| Preview | Package | -|------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------| -| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/rounded/PlayPause.gif) | [Rounded] PlayPause
`og.android.lib.toggleiconview.rounded.PlayPause` | -| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/sharp/PlayPause.gif) | [Sharp] PlayPause
`og.android.lib.toggleiconview.sharp.PlayPause` | -| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/rounded/SoundOnOff.gif) | [Rounded] SoundOnOff
`og.android.lib.toggleiconview.rounded.SoundOnOff` | -| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/sharp/SoundOnOff.gif) | [Sharp] SoundOnOff
`og.android.lib.toggleiconview.sharp.SoundOnOff` | -| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/sharp/FlashOnOff.gif) | [Sharp] FlashOnOff
`og.android.lib.toggleiconview.sharp.FlashOnOff` | +| Preview | Package | +|-----------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------| +| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/rounded/PlayPause.gif) | [Rounded] PlayPause
`og.android.lib.toggleiconview.rounded.PlayPause` | +| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/sharp/PlayPause.gif) | [Sharp] PlayPause
`og.android.lib.toggleiconview.sharp.PlayPause` | +| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/rounded/SoundOnOff.gif) | [Rounded] SoundOnOff
`og.android.lib.toggleiconview.rounded.SoundOnOff` | +| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/sharp/SoundOnOff.gif) | [Sharp] SoundOnOff
`og.android.lib.toggleiconview.sharp.SoundOnOff` | +| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/sharp/FlashOnOff.gif) | [Sharp] FlashOnOff
`og.android.lib.toggleiconview.sharp.FlashOnOff` | +| ![](https://raw.githubusercontent.com/ozgurg/ToggleIconView/master/.github/preview/sharp/AirplaneModeOnOff.gif) | [Sharp] AirplaneModeOnOff
`og.android.lib.toggleiconview.sharp.AirplaneModeOnOff` | ## How I create my own icon? diff --git a/lib/build.gradle b/lib/build.gradle index 8878b13..a11d7c2 100644 --- a/lib/build.gradle +++ b/lib/build.gradle @@ -39,7 +39,7 @@ afterEvaluate { groupId = "com.github.ozgurg" artifactId = "toggle-icon-view" - version = "2.2.0" + version = "2.3.0" } } } diff --git a/lib/src/main/java/og/android/lib/toggleiconview/sharp/AirplaneModeOnOff.kt b/lib/src/main/java/og/android/lib/toggleiconview/sharp/AirplaneModeOnOff.kt new file mode 100644 index 0000000..a5f900f --- /dev/null +++ b/lib/src/main/java/og/android/lib/toggleiconview/sharp/AirplaneModeOnOff.kt @@ -0,0 +1,17 @@ +package og.android.lib.toggleiconview.sharp + +import android.content.Context +import android.util.AttributeSet +import og.android.lib.toggleiconview.R +import og.android.lib.toggleiconview.ToggleIconView + +class AirplaneModeOnOff @JvmOverloads constructor( + context: Context, + attrs: AttributeSet? = null, + defStyleAttr: Int = 0 +) : + ToggleIconView( + context, attrs, defStyleAttr, + R.drawable.sharp_airplanemode_on_to_off, + R.drawable.sharp_airplanemode_off_to_on + ) \ No newline at end of file diff --git a/lib/src/main/res/drawable/rounded_sound_off_to_on.xml b/lib/src/main/res/drawable/rounded_sound_off_to_on.xml index 48cfa47..22a171e 100755 --- a/lib/src/main/res/drawable/rounded_sound_off_to_on.xml +++ b/lib/src/main/res/drawable/rounded_sound_off_to_on.xml @@ -7,7 +7,7 @@ android:viewportWidth="24" android:viewportHeight="24"> - + - + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/lib/src/main/res/drawable/sharp_airplanemode_on_to_off.xml b/lib/src/main/res/drawable/sharp_airplanemode_on_to_off.xml new file mode 100644 index 0000000..3f86320 --- /dev/null +++ b/lib/src/main/res/drawable/sharp_airplanemode_on_to_off.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/lib/src/main/res/drawable/sharp_flash_off_to_on.xml b/lib/src/main/res/drawable/sharp_flash_off_to_on.xml index 761f9c9..33b4115 100644 --- a/lib/src/main/res/drawable/sharp_flash_off_to_on.xml +++ b/lib/src/main/res/drawable/sharp_flash_off_to_on.xml @@ -9,15 +9,13 @@ + android:pathData="M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z" /> + android:pathData="M 7 2 L 7 13 L 10 13 L 10 22 L 17 10 L 13 10 L 17 2 Z" /> @@ -44,4 +42,4 @@ android:valueType="pathType" /> - + \ No newline at end of file diff --git a/lib/src/main/res/drawable/sharp_flash_on_to_off.xml b/lib/src/main/res/drawable/sharp_flash_on_to_off.xml index c3a415e..4cb2a4f 100644 --- a/lib/src/main/res/drawable/sharp_flash_on_to_off.xml +++ b/lib/src/main/res/drawable/sharp_flash_on_to_off.xml @@ -9,15 +9,13 @@ + android:pathData="M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z" /> + android:pathData="M 7 2 L 7 13 L 10 13 L 10 22 L 17 10 L 13 10 L 17 2 Z" /> @@ -44,4 +42,4 @@ android:valueType="pathType" /> - + \ No newline at end of file diff --git a/lib/src/main/res/drawable/sharp_sound_off_to_on.xml b/lib/src/main/res/drawable/sharp_sound_off_to_on.xml index 38a06cd..f1bf5bd 100644 --- a/lib/src/main/res/drawable/sharp_sound_off_to_on.xml +++ b/lib/src/main/res/drawable/sharp_sound_off_to_on.xml @@ -7,7 +7,7 @@ android:viewportWidth="24" android:viewportHeight="24"> - + - + - + tools:ignore="HardcodedText"> - + android:layout_height="wrap_content" + android:orientation="vertical"> - + - + - + - + - + - + + - + - - \ No newline at end of file + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/sample/src/main/res/layout/demo_sharp_airplanemode_on_off.xml b/sample/src/main/res/layout/demo_sharp_airplanemode_on_off.xml new file mode 100644 index 0000000..6f9679a --- /dev/null +++ b/sample/src/main/res/layout/demo_sharp_airplanemode_on_off.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/sample/src/main/res/values/styles.xml b/sample/src/main/res/values/styles.xml new file mode 100644 index 0000000..38c48ce --- /dev/null +++ b/sample/src/main/res/values/styles.xml @@ -0,0 +1,27 @@ + + + + + + + + \ No newline at end of file diff --git a/shapeshifter/sharp_airplanemode_off_to_on.shapeshifter b/shapeshifter/sharp_airplanemode_off_to_on.shapeshifter new file mode 100644 index 0000000..973b377 --- /dev/null +++ b/shapeshifter/sharp_airplanemode_off_to_on.shapeshifter @@ -0,0 +1,66 @@ +{ + "version": 1, + "layers": { + "vectorLayer": { + "id": "96", + "name": "sharp_airplanemode_off_to_on", + "type": "vector", + "width": 24, + "height": 24, + "children": [ + { + "id": "97", + "name": "strike", + "type": "path", + "pathData": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z", + "fillColor": "#ff000000" + }, + { + "id": "98", + "name": "mask", + "type": "mask", + "pathData": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z" + }, + { + "id": "99", + "name": "icon", + "type": "path", + "pathData": "M 22 16 L 22 14 L 13.5 9 L 13.5 3.5 C 13.5 2.67 12.83 2 12 2 C 11.17 2 10.5 2.67 10.5 3.5 L 10.5 9 L 2 14 L 2 16 L 10.5 13.5 L 10.5 19 L 8 20.5 L 8 22 L 12 21 L 16 22 L 16 20.5 L 13.5 19 L 13.5 13.5 L 22 16 Z", + "fillColor": "#ff000000" + } + ] + }, + "hiddenLayerIds": [] + }, + "timeline": { + "animation": { + "id": "100", + "name": "anim", + "duration": 200, + "blocks": [ + { + "id": "101", + "layerId": "97", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 19.73 22 L 21 20.73 L 3.27 3 L 2 4.27 Z", + "toValue": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z" + }, + { + "id": "102", + "layerId": "98", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 21 20.73 L 22.27 19.46 Z", + "toValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z" + } + ] + } + } +} \ No newline at end of file diff --git a/shapeshifter/sharp_airplanemode_on_to_off.shapeshifter b/shapeshifter/sharp_airplanemode_on_to_off.shapeshifter new file mode 100644 index 0000000..2d172bf --- /dev/null +++ b/shapeshifter/sharp_airplanemode_on_to_off.shapeshifter @@ -0,0 +1,66 @@ +{ + "version": 1, + "layers": { + "vectorLayer": { + "id": "96", + "name": "sharp_airplanemode_on_to_off", + "type": "vector", + "width": 24, + "height": 24, + "children": [ + { + "id": "97", + "name": "strike", + "type": "path", + "pathData": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z", + "fillColor": "#ff000000" + }, + { + "id": "98", + "name": "mask", + "type": "mask", + "pathData": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z" + }, + { + "id": "99", + "name": "icon", + "type": "path", + "pathData": "M 22 16 L 22 14 L 13.5 9 L 13.5 3.5 C 13.5 2.67 12.83 2 12 2 C 11.17 2 10.5 2.67 10.5 3.5 L 10.5 9 L 2 14 L 2 16 L 10.5 13.5 L 10.5 19 L 8 20.5 L 8 22 L 12 21 L 16 22 L 16 20.5 L 13.5 19 L 13.5 13.5 L 22 16 Z", + "fillColor": "#ff000000" + } + ] + }, + "hiddenLayerIds": [] + }, + "timeline": { + "animation": { + "id": "100", + "name": "anim", + "duration": 200, + "blocks": [ + { + "id": "101", + "layerId": "97", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z", + "toValue": "M 19.73 22 L 21 20.73 L 3.27 3 L 2 4.27 Z" + }, + { + "id": "102", + "layerId": "98", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z", + "toValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 21 20.73 L 22.27 19.46 Z" + } + ] + } + } +} \ No newline at end of file diff --git a/shapeshifter/sharp_flash_off_to_on.shapeshifter b/shapeshifter/sharp_flash_off_to_on.shapeshifter new file mode 100644 index 0000000..a3179b8 --- /dev/null +++ b/shapeshifter/sharp_flash_off_to_on.shapeshifter @@ -0,0 +1,66 @@ +{ + "version": 1, + "layers": { + "vectorLayer": { + "id": "17167", + "name": "sharp_flash_off_to_on", + "type": "vector", + "width": 24, + "height": 24, + "children": [ + { + "id": "17168", + "name": "strike", + "type": "path", + "pathData": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z", + "fillColor": "#ff000000" + }, + { + "id": "17169", + "name": "mask", + "type": "mask", + "pathData": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z" + }, + { + "id": "17170", + "name": "icon", + "type": "path", + "pathData": "M 7 2 L 7 13 L 10 13 L 10 22 L 17 10 L 13 10 L 17 2 Z", + "fillColor": "#ff000000" + } + ] + }, + "hiddenLayerIds": [] + }, + "timeline": { + "animation": { + "id": "17171", + "name": "anim", + "duration": 200, + "blocks": [ + { + "id": "17172", + "layerId": "17168", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 19.73 22 L 21 20.73 L 3.27 3 L 2 4.27 Z", + "toValue": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z" + }, + { + "id": "17173", + "layerId": "17169", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 21 20.73 L 22.27 19.46 Z", + "toValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z" + } + ] + } + } +} \ No newline at end of file diff --git a/shapeshifter/sharp_flash_on_to_off.shapeshifter b/shapeshifter/sharp_flash_on_to_off.shapeshifter new file mode 100644 index 0000000..359d5ea --- /dev/null +++ b/shapeshifter/sharp_flash_on_to_off.shapeshifter @@ -0,0 +1,66 @@ +{ + "version": 1, + "layers": { + "vectorLayer": { + "id": "91", + "name": "sharp_flash_on_to_off", + "type": "vector", + "width": 24, + "height": 24, + "children": [ + { + "id": "92", + "name": "strike", + "type": "path", + "pathData": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z", + "fillColor": "#ff000000" + }, + { + "id": "93", + "name": "mask", + "type": "mask", + "pathData": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z" + }, + { + "id": "94", + "name": "icon", + "type": "path", + "pathData": "M 7 2 L 7 13 L 10 13 L 10 22 L 17 10 L 13 10 L 17 2 Z", + "fillColor": "#ff000000" + } + ] + }, + "hiddenLayerIds": [] + }, + "timeline": { + "animation": { + "id": "95", + "name": "anim", + "duration": 200, + "blocks": [ + { + "id": "96", + "layerId": "92", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z", + "toValue": "M 19.73 22 L 21 20.73 L 3.27 3 L 2 4.27 Z" + }, + { + "id": "97", + "layerId": "93", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z", + "toValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 21 20.73 L 22.27 19.46 Z" + } + ] + } + } +} \ No newline at end of file diff --git a/shapeshifter/sharp_pause_to_play.shapeshifter b/shapeshifter/sharp_pause_to_play.shapeshifter new file mode 100644 index 0000000..d8ee9eb --- /dev/null +++ b/shapeshifter/sharp_pause_to_play.shapeshifter @@ -0,0 +1,62 @@ +{ + "version": 1, + "layers": { + "vectorLayer": { + "id": "20375", + "name": "sharp_pause_to_play", + "type": "vector", + "width": 24, + "height": 24, + "children": [ + { + "id": "20376", + "name": "icon", + "type": "group", + "pivotX": 12, + "pivotY": 12, + "children": [ + { + "id": "20377", + "name": "path", + "type": "path", + "pathData": "M 8 5 L 8 19 L 19 12 Z", + "fillColor": "#000000" + } + ] + } + ] + }, + "hiddenLayerIds": [] + }, + "timeline": { + "animation": { + "id": "20378", + "name": "anim", + "duration": 200, + "blocks": [ + { + "id": "20379", + "layerId": "20377", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 5 6 L 5 10 L 19 10 L 19 6 L 5 6 M 5 14 L 5 18 L 19 18 L 19 14 L 5 14", + "toValue": "M 8 5 L 8 12 L 19 12 L 19 12 L 8 5 M 8 12 L 8 19 L 19 12 L 19 12 L 8 12" + }, + { + "id": "20380", + "layerId": "20376", + "propertyName": "rotation", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "number", + "fromValue": 90, + "toValue": 0 + } + ] + } + } +} \ No newline at end of file diff --git a/shapeshifter/sharp_play_to_pause.shapeshifter b/shapeshifter/sharp_play_to_pause.shapeshifter new file mode 100644 index 0000000..5e0c40f --- /dev/null +++ b/shapeshifter/sharp_play_to_pause.shapeshifter @@ -0,0 +1,62 @@ +{ + "version": 1, + "layers": { + "vectorLayer": { + "id": "26418", + "name": "sharp_play_to_pause", + "type": "vector", + "width": 24, + "height": 24, + "children": [ + { + "id": "26419", + "name": "icon", + "type": "group", + "pivotX": 12, + "pivotY": 12, + "children": [ + { + "id": "26420", + "name": "path", + "type": "path", + "pathData": "M 8 5 L 8 19 L 19 12 Z", + "fillColor": "#000000" + } + ] + } + ] + }, + "hiddenLayerIds": [] + }, + "timeline": { + "animation": { + "id": "26421", + "name": "anim", + "duration": 200, + "blocks": [ + { + "id": "26422", + "layerId": "26420", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 8 5 L 8 12 L 19 12 L 19 12 L 8 5 M 8 12 L 8 19 L 19 12 L 19 12 L 8 12", + "toValue": "M 5 6 L 5 10 L 19 10 L 19 6 L 5 6 M 5 14 L 5 18 L 19 18 L 19 14 L 5 14" + }, + { + "id": "26423", + "layerId": "26419", + "propertyName": "rotation", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "number", + "fromValue": 0, + "toValue": 90 + } + ] + } + } +} \ No newline at end of file diff --git a/shapeshifter/sharp_sound_off_to_on.shapeshifter b/shapeshifter/sharp_sound_off_to_on.shapeshifter new file mode 100644 index 0000000..161c05b --- /dev/null +++ b/shapeshifter/sharp_sound_off_to_on.shapeshifter @@ -0,0 +1,66 @@ +{ + "version": 1, + "layers": { + "vectorLayer": { + "id": "96", + "name": "sharp_sound_off_to_on", + "type": "vector", + "width": 24, + "height": 24, + "children": [ + { + "id": "97", + "name": "strike", + "type": "path", + "pathData": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z", + "fillColor": "#ff000000" + }, + { + "id": "98", + "name": "mask", + "type": "mask", + "pathData": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z" + }, + { + "id": "99", + "name": "icon", + "type": "path", + "pathData": "M 3 9 L 3 15 L 7 15 L 12 20 L 12 4 L 7 9 L 3 9 Z M 16.5 12 C 16.5 10.23 15.48 8.71 14 7.97 L 14 16.02 C 15.48 15.29 16.5 13.77 16.5 12 Z M 14 3.23 L 14 5.29 C 16.89 6.15 19 8.83 19 12 C 19 15.17 16.89 17.85 14 18.71 L 14 20.77 C 18.01 19.86 21 16.28 21 12 C 21 7.72 18.01 4.14 14 3.23 Z", + "fillColor": "#ff000000" + } + ] + }, + "hiddenLayerIds": [] + }, + "timeline": { + "animation": { + "id": "100", + "name": "anim", + "duration": 200, + "blocks": [ + { + "id": "101", + "layerId": "97", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 19.73 22 L 21 20.73 L 3.27 3 L 2 4.27 Z", + "toValue": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z" + }, + { + "id": "102", + "layerId": "98", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 21 20.73 L 22.27 19.46 Z", + "toValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z" + } + ] + } + } +} \ No newline at end of file diff --git a/shapeshifter/sharp_sound_on_to_off.shapeshifter b/shapeshifter/sharp_sound_on_to_off.shapeshifter new file mode 100644 index 0000000..f1d5bc0 --- /dev/null +++ b/shapeshifter/sharp_sound_on_to_off.shapeshifter @@ -0,0 +1,66 @@ +{ + "version": 1, + "layers": { + "vectorLayer": { + "id": "96", + "name": "sharp_sound_on_to_off", + "type": "vector", + "width": 24, + "height": 24, + "children": [ + { + "id": "97", + "name": "strike", + "type": "path", + "pathData": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z", + "fillColor": "#ff000000" + }, + { + "id": "98", + "name": "mask", + "type": "mask", + "pathData": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z" + }, + { + "id": "99", + "name": "icon", + "type": "path", + "pathData": "M 3 9 L 3 15 L 7 15 L 12 20 L 12 4 L 7 9 L 3 9 Z M 16.5 12 C 16.5 10.23 15.48 8.71 14 7.97 L 14 16.02 C 15.48 15.29 16.5 13.77 16.5 12 Z M 14 3.23 L 14 5.29 C 16.89 6.15 19 8.83 19 12 C 19 15.17 16.89 17.85 14 18.71 L 14 20.77 C 18.01 19.86 21 16.28 21 12 C 21 7.72 18.01 4.14 14 3.23 Z", + "fillColor": "#ff000000" + } + ] + }, + "hiddenLayerIds": [] + }, + "timeline": { + "animation": { + "id": "100", + "name": "anim", + "duration": 200, + "blocks": [ + { + "id": "101", + "layerId": "97", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 2 4.27 L 3.27 3 L 3.27 3 L 2 4.27 Z", + "toValue": "M 19.73 22 L 21 20.73 L 3.27 3 L 2 4.27 Z" + }, + { + "id": "102", + "layerId": "98", + "propertyName": "pathData", + "startTime": 0, + "endTime": 200, + "interpolator": "FAST_OUT_SLOW_IN", + "type": "path", + "fromValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 3.27 3 L 4.54 1.73 Z", + "toValue": "M 0 0 L 24 0 L 24 24 L 0 24 L 0 0 Z M 4.54 1.73 L 3.27 3 L 21 20.73 L 22.27 19.46 Z" + } + ] + } + } +} \ No newline at end of file