From 32e2d631b82a441182a506c1286c098a9004d43e Mon Sep 17 00:00:00 2001 From: birjuvachhani Date: Fri, 3 Mar 2023 16:52:56 +0530 Subject: [PATCH 1/2] Restructure docs --- docs.json | 22 +++++++++++-- ...sformable_box.mdx => flutter_resizing.mdx} | 0 docs/license.mdx | 32 +++++++++++++++++++ docs/{box_transform.mdx => resizing.mdx} | 0 4 files changed, 51 insertions(+), 3 deletions(-) rename docs/{flutter_transformable_box.mdx => flutter_resizing.mdx} (100%) create mode 100644 docs/license.mdx rename docs/{box_transform.mdx => resizing.mdx} (100%) diff --git a/docs.json b/docs.json index e2476ea..288033f 100644 --- a/docs.json +++ b/docs.json @@ -7,8 +7,24 @@ ["Overview", "/"], ["Getting Started", "/get_started"], ["Motivation", "/motivation"], - ["Resize Modes", "/resize_modes"], - ["Box Transform", "/box_transform"], - ["Flutter Box Transform", "/flutter_transformable_box"] + [ + "Definitions", [ + ["Resize Modes", "/resize_modes"] + ] + ], + [ + "Using with Flutter", [ + ["Moving", "/flutter_moving.mdx"], + ["Resizing", "/flutter_resizing.mdx"], + ["Using controller", "/flutter_controller.mdx"] + ] + ], + [ + "Using the Dart API", [ + ["Moving", "/moving.mdx"], + ["Resizing", "/resizing.mdx"] + ] + ], + ["License", "/license"] ] } diff --git a/docs/flutter_transformable_box.mdx b/docs/flutter_resizing.mdx similarity index 100% rename from docs/flutter_transformable_box.mdx rename to docs/flutter_resizing.mdx diff --git a/docs/license.mdx b/docs/license.mdx new file mode 100644 index 0000000..c7a3772 --- /dev/null +++ b/docs/license.mdx @@ -0,0 +1,32 @@ +--- +title: License +---- + +## BSD 3-Clause License + +Copyright (c) 2023, Birju Vachhani + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/docs/box_transform.mdx b/docs/resizing.mdx similarity index 100% rename from docs/box_transform.mdx rename to docs/resizing.mdx From 56aada0287724811d6c49ac04ff74adda7815849 Mon Sep 17 00:00:00 2001 From: birjuvachhani Date: Fri, 3 Mar 2023 16:54:18 +0530 Subject: [PATCH 2/2] Add docs --- CONTRIBUTING.md | 68 +++++ docs.json | 34 ++- docs/assets/angular_handle_alignments.png | Bin 0 -> 32649 bytes docs/assets/angular_handles.png | Bin 0 -> 146249 bytes docs/flutter_controller.mdx | 105 ++++++++ docs/flutter_get_started.mdx | 59 +++++ docs/flutter_moving.mdx | 54 ++++ docs/flutter_resizing.mdx | 289 ++++++++++++---------- docs/get_started.mdx | 118 ++++----- docs/handles.mdx | 127 ++++++++++ docs/license.mdx | 2 +- docs/moving.mdx | 37 +++ docs/resizing.mdx | 136 +++++----- 13 files changed, 759 insertions(+), 270 deletions(-) create mode 100644 CONTRIBUTING.md create mode 100644 docs/assets/angular_handle_alignments.png create mode 100644 docs/assets/angular_handles.png create mode 100644 docs/flutter_controller.mdx create mode 100644 docs/flutter_get_started.mdx create mode 100644 docs/flutter_moving.mdx create mode 100644 docs/handles.mdx create mode 100644 docs/moving.mdx diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..618a015 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,68 @@ +# Contributing +We'd love for you to contribute to our source code and to make the project even better than it is today! +Here are the guidelines we'd like you to follow: + +- [Code of Conduct](#coc) +- [Git Commit Messages](#commit) +- [Got a Question or Problem?](#question) +- [Found an Issue?](#issue) + +## Code of Conduct +[Code of Conduct](coc) + +## Git Commit Messages + +* Use the present tense ("Add feature" not "Added feature") +* Use the imperative mood ("Move cursor to..." not "Moves cursor to...") +* Limit the first line to 72 characters or less if possible. +* Reference issues and pull requests liberally after the first line +* Consider starting the commit message with an applicable emoji: + * :art: `:art:` when improving the format/structure of the code + * :racehorse: `:racehorse:` when improving performance + * :non-potable_water: `:non-potable_water:` when plugging memory leaks + * :memo: `:memo:` when writing docs + * :bug: `:bug:` when fixing a bug + * :fire: `:fire:` when removing code or files + * :green_heart: `:green_heart:` when fixing the CI build + * :white_check_mark: `:white_check_mark:` when adding tests + * :lock: `:lock:` when dealing with security + * :arrow_up: `:arrow_up:` when upgrading dependencies + * :arrow_down: `:arrow_down:` when downgrading dependencies + * :shirt: `:shirt:` when removing lint/checkstyle warnings + + Find all the available emojis [here](https://gitmoji.carloscuesta.me/). + +## Got a Question or Problem? + +If you feel that we're missing an important bit of documentation, feel free to +file an issue so we can help. Here's an example to get you started: + +``` +What are you trying to do or find out more about? + +Where have you looked? + +Where did you expect to find this information? +``` + +## Found an Issue? +If you find a bug in the source code or a mistake in the documentation, you can help us by +submitting an issue to our project. + +To submit an issue, please check the [Issue Template](issue). + +Even better you can submit a Pull Request with a fix. + +### Pull Request + +* Search [GitHub](pulls) for an open or closed Pull Request + that relates to your submission. You don't want to duplicate effort. +* Please have a look at [License](license) before sending pull + requests. We cannot accept code without this. + +That's it! Thank you for your contribution! + +[coc]: https://github.com/BirjuVachhani/box_transform/blob/main/CODE_OF_CONDUCT.md +[pulls]: https://github.com/BirjuVachhani/box_transform/pulls +[license]: https://github.com/BirjuVachhani/box_transform/blob/main/LICENSE +[issue]: https://github.com/BirjuVachhani/box_transform/blob/main/ISSUE_TEMPLATE.md \ No newline at end of file diff --git a/docs.json b/docs.json index 288033f..911a011 100644 --- a/docs.json +++ b/docs.json @@ -3,9 +3,26 @@ "description": "Easily create the best possible resizable and draggable boxes for your project.", "logo": "/assets/logo.png", "logoDark": "/assets/logo-dark.png", + "favicon": "/assets/logo-dark.png", + "anchors": [ + { + "title": "Live Demo", + "icon": "arrow-up-right-from-square", + "link": "https://box-transform.codemagic.app" + }, + { + "title": "Report a bug", + "icon": "bug", + "link": "https://github.com/BirjuVachhani/box_transform/issues/new" + }, + { + "title": "Pub.dev", + "icon": "arrow-up-right-from-square", + "link": "https://pub.dev/packages/flutter_box_transform" + } + ], "sidebar": [ ["Overview", "/"], - ["Getting Started", "/get_started"], ["Motivation", "/motivation"], [ "Definitions", [ @@ -14,15 +31,20 @@ ], [ "Using with Flutter", [ - ["Moving", "/flutter_moving.mdx"], - ["Resizing", "/flutter_resizing.mdx"], - ["Using controller", "/flutter_controller.mdx"] + ["Getting Started", "/flutter_get_started"], + ["Moving", "/flutter_moving"], + ["Resizing", "/flutter_resizing"], + ["Handles", "/handles"], + ["Using a controller", "/flutter_controller"], + ["API Reference\uD83D\uDD17", "https://pub.dev/documentation/flutter_box_transform/latest/"] ] ], [ "Using the Dart API", [ - ["Moving", "/moving.mdx"], - ["Resizing", "/resizing.mdx"] + ["Getting Started", "/get_started"], + ["Moving", "/moving"], + ["Resizing", "/resizing"], + ["API Reference\uD83D\uDD17", "https://pub.dev/documentation/box_transform/latest/"] ] ], ["License", "/license"] diff --git a/docs/assets/angular_handle_alignments.png b/docs/assets/angular_handle_alignments.png new file mode 100644 index 0000000000000000000000000000000000000000..56f72b17cdb2c620a428cfb93ea4868460bc15c1 GIT binary patch literal 32649 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

oh4ZtE+f>^Xd#6^@*Cx<&kEA}E1L<1 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 z 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 IyBqiZ8(4z~^#A|> literal 0 HcmV?d00001 diff --git a/docs/flutter_controller.mdx b/docs/flutter_controller.mdx new file mode 100644 index 0000000..e5ecb97 --- /dev/null +++ b/docs/flutter_controller.mdx @@ -0,0 +1,105 @@ +--- +title: Using a controller +--- + +## Using a controller + +`TransformableBox` can use a controller if provided. This is the most flexible method and allows you to +control the transformable box externally with proper state management. + +To create a controller, you can use the `TransformableBoxController` class. It mirrors a lot of the observed parameters +in the constructor excluding `contentBuilder`, `handleBuilder`, `handleGestureResponseDiameter` and +`handleRenderedDiameter` since these are accessibility and rendering specific features. + +When using a controller, you should not use the following parameters: **_box_**, **_flip_**, **_clampingBox_**, **_constraints_**, +and **_resolveResizeModeCallback_**. These are all intrinsically managed by the controller. + +Initialize a controller and provide. + +```dart title="Initializing a controller" + late final TransformableBoxController controller; + + @override + void initState() { + super.initState(); + controller = TransformableBoxController(rect: rect); + } +``` + +Don't forget to dispose your controller when no longer needed. + +```dart title="Disposing a controller" + @override + void dispose() { + controller.dispose(); + super.dispose(); + } +``` + +Pass the controller to the `TransformableBox` constructor. + +```dart title="Passing a controller" + TransformableBox( + controller: controller, + contentBuilder: (context, rect, flip) {...}, + ); +``` + +### Listening to changes + +You can listen to changes in the controller using the `addListener` method. This will be called whenever the controller +changes. You can use the `removeListener` method to remove the listener. + +```dart title="Listening to changes" + controller.addListener(onControllerChanged); +``` +Remove the listener when no longer needed. + +```dart title="Removing a listener" + controller.removeListener(onControllerChanged); +``` +### Setting constraints + +You can set constraints on the controller using the `setConstraints` method. + +```dart title="Setting constraints" + controller.setConstraints(BoxConstraints( + minWidth: 100, + minHeight: 100, + maxWidth: 1000, + maxHeight: 1000, + )); +``` + +### Limiting movements + +You can limit the movements of the controller using the `setClampingBox` method. + +```dart title="Limiting movements" + controller.setClampingRect(Rect.fromLTWH(0, 0, 1000, 1000)); +``` + +### Other things you can do with a controller + +Controller almost mirrors the constructor parameters. You can do things like setting rect, flip, constraints, +clampingRect, disabling resizing or moving, etc. + +```dart title="Things controller can do" +// Change current rect +controller.setRect(rect); + +// Change current flip +controller.setFlip(flip); + +// Change constraints +controller.setConstraints(constraints); + +// Change clamping rect +controller.setClampingRect(clampingRect); + +// Disable content/child flipping +controller.setFlipChild(false); + +// Disable flipping the rect while resizing +controller.setFlipRectWhileResizing(false); +``` \ No newline at end of file diff --git a/docs/flutter_get_started.mdx b/docs/flutter_get_started.mdx new file mode 100644 index 0000000..01c5129 --- /dev/null +++ b/docs/flutter_get_started.mdx @@ -0,0 +1,59 @@ +--- +title: Getting Started +--- + +# Getting Started + +## Installation + +Add this package as dependency in your `pubspec.yaml` file: + +```dart + dependencies: + flutter_box_transform: +``` +or run following command in your project directory: + +```shell + flutter pub add flutter_box_transform +``` + +## Usage +Wrap the widget you want to resize/move with `TransformableBox`. + +**_TransformableBox_** internally uses **_Positioned_** to place child at given position with given size. +So, **_TransformableBox_** must be a child of **_Stack_** widget. + +```dart title="Using as a widget" + Stack( + children: [ + TransformableBox( + rect: rect, + flip: flip, + onChanged: (event) { + setState(() { // update the state + box = event.rect; + flip = event.flip; + }); + }, + contentBuilder: (context, rect, flip) => Transform.scale( + scaleX: flip.isHorizontal ? -1 : 1, + scaleY: flip.isVertical ? -1 : 1, + child: Image.asset( // your widget goes here. + 'assets/images/landscape.jpg', + width: rect.width, + height: rect.height, + fit: BoxFit.fill, + ), + ), + ), + ], + ); +``` + +`onChanged` callback is called when user resizes/moves the box. You can use this callback to update the box by calling +`setState` method explicitly. + +**_TransformableBox_** follows flutter widget pattern and does not store any state. So, you must store the box and +flip state in your widget state and pass it to **_TransformableBox_** as parameters. Don't forget to call **_setState_** +method to update the state. \ No newline at end of file diff --git a/docs/flutter_moving.mdx b/docs/flutter_moving.mdx new file mode 100644 index 0000000..ab70f08 --- /dev/null +++ b/docs/flutter_moving.mdx @@ -0,0 +1,54 @@ +--- +title: Moving +--- + +# Moving/Dragging + +`TransformableBox` can be used to move/drag a widget by default. + +```dart title="Moving a widget" + Stack( + children: [ + TransformableBox( + rect: rect, // position + onMoved: (event) { + setState(() => this.rect = event.rect); + }, + contentBuilder: {...}, + ), + ], + ); +``` +`onChanged` callback is called when user moves the box. You can use this callback to update the box by calling +`setState` method explicitly. You can also use `TransformableBox.onMoved` callback to + +## Limiting movements + +You can limit the movements by setting `TransformableBox.clampingBox` property. `clampingBox` takes a `Rect` that +defines the boundary for the box to move within. + +```dart title="Limiting movements" + TransformableBox( + rect: rect, // position + clampingRect: Rect.fromLTWH(0, 0, 1000, 1000), + onChanged: (event) { + setState(() => this.rect = event.rect); + }, + ... + ); +``` + +This will limit the movements to a box of size `1000x1000` and centered at origin. If your `Stack` has a size, provide +that size to `clampingBox` to allow movements only within the `Stack` boundary. + +## Disable movements + +Setting `TransformableBox.movable` to `false` will disable movements. + +```dart title="Disable moving" + TransformableBox( + rect: rect, // position + movable: false, + ... + ); +``` diff --git a/docs/flutter_resizing.mdx b/docs/flutter_resizing.mdx index f8d151c..2023d0e 100644 --- a/docs/flutter_resizing.mdx +++ b/docs/flutter_resizing.mdx @@ -1,148 +1,187 @@ --- -title: Transformable Box +title: Resizing --- -[Transformable Box](transformableBox) is a Flutter widget that fully utilizes [Box Transform](boxTransform) to create -a fully-featured Flutter implementation of the [Box Transform](boxTransform) API. - -This widget exists out of convenience and is not essentially, but rather heavily simplifies the usage and implementation -of a box that can be transformed. It is maximally customizable. - -## Usage - -The API of this widget is made in such a way so as to allow you to use it in several ways. Let's take a look at the -constructor first: - -```dart - const TransformableBox({ - super.key, - required this.contentBuilder, - this.onChanged, - this.onMoved, - this.onResized, - this.controller, - this.handleBuilder = _defaultHandleBuilder, - this.handleGestureResponseDiameter = 24, - this.handleRenderedDiameter = 12, - // raw - Rect? box, - Flip? flip, - Rect? clampingRect, - BoxConstraints? constraints, - ResolveResizeModeCallback? resolveResizeModeCallback, - // terminal update events - this.onMinWidthReached, - this.onMaxWidthReached, - this.onMinHeightReached, - this.onMaxHeightReached, - this.onTerminalWidthReached, - this.onTerminalHeightReached, - this.onTerminalSizeReached, - }); +# Resizing + +`TransformableBox` can be used to resize a widget by default. [Transformable Box](transformableBox) utilizes +[Box Transform](boxTransform) to create a fully-featured Flutter implementation of the [Box Transform](boxTransform) API. + +```dart title="Resizable widget" + Stack( + children: [ + TransformableBox( + rect: rect, + flip: flip, + onChanged: (event) { + setState(() { + this.rect = event.rect; + this.flip = event.flip; + }); + }, + contentBuilder: (context, rect, flip) => Image.asset( // your widget goes here. + 'assets/images/landscape.jpg', + width: rect.width, + height: rect.height, + fit: BoxFit.fill, + ), + ), + ], + ); ``` -### Method 1 - Using the controller +**_onChanged_** callback is a general callback that is called whenever a change is made to the box. To listen to specific +changes, you can use **_onResized_** and **_onMoved_** callbacks for resizing and moving respectively. -The first method is to use the controller to control the box. This is the most flexible method and allows you to -control the transformable box externally with proper state management. +By default, resizing allows flipping the rect horizontally and vertically. Flipping is done by using the +`Transform.scale` widget with negative scale values. -To create a controller, you can use the `TransformableBoxController` class. It mirrors a lot of the observed parameters -in the constructor excluding `contentBuilder`, `handleBuilder`, `handleGestureResponseDiameter` and -`handleRenderedDiameter` since these are accessibility and rendering specific features. +Resizing is freeform by default, meaning that the user can resize the box in any direction and in any size. -```dart -final TransformableBoxController controller = TransformableBoxController(); -``` +## Controlling Resize Modes + +The `resolveResizeModeCallback` is a callback that is called whenever a resize operation is about to be performed on a +given [Transformable Box](transformableBox). This allows you to define the resize behavior at the time of the resize +operation. This is useful when you want to change the resize behavior based on the state of the application. -When using a controller, you should not use the following parameters: `box`, `flip`, `clampingRect`, `constraints`, -and `resolveResizeModeCallback`. These are all intrinsically managed by the controller. +The most common use case for this is **keyboard shortcuts**. A `defaultResolveResizeModeCallback` function is used by +default when resizing, and it's job is to listen to keyboard meta keys to change the `ResizeMode`. -Be sure to manage your `controller`'s lifecycle properly. You can use the `dispose` method to dispose of the controller -and release its resources. +### Default Resize Mode: -```dart -class MySexyBox extends StatefulWidget { - @override - _MySexyBoxState createState() => _MySexyBoxState(); -} +1. ResizeMode.freeform: **Default** mode. When no keys are pressed. +2. ResizeMode.scale: When `Shift` key is pressed. +3. ResizeMode.symmetric: When `Alt` key is pressed. +4. ResizeMode.symmetricScale: When both `Shift` and `Alt` keys are pressed. -class _MySexyBoxState extends State { - final TransformableBoxController controller = TransformableBoxController( - resolveResizeModeCallback: (ResizeMode mode) { /* ... */ }, // optional. +See [ResizeModes](/resize_modes) page for more information on the different resize modes. + +Override this default behavior by providing `resolveResizeModeCallback` in `TransformableBox` constructor to customize +resizing to your liking. This can also be used to allow only certain resize modes. + +```dart title="Resizing with preseving aspect ratio" + TransformableBox( + rect: rect, + flip: flip, + resolveResizeModeCallback: () => ResizeMode.scale, + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, ); +``` +This will resize the box such that the **aspect ratio** is preserved. - @override - void dispose() { - controller.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return TransformableBox( - controller: controller, - contentBuilder: (context, box) { /* ... */ }, - ); - } -} +## Flipping + +By default, resizing allows flipping the rect horizontally and vertically. Flipping is done by using the +`Transform.scale` widget with negative scale values internally. There are two kinds of flipping involved in resizing: + +### Flipping the rect while resizing +While resizing, the rect can be flipped horizontally and vertically whenever the +user drags a handle beyond the opposite side of the rect. This allows more flexibility in resizing the box. However, +this is not responsible for flipping the content of the box. + +This behavior can be disabled by setting `flipRectWhileResizing` to `false`. + +```dart title="Disable flipping the rect while resizing" + TransformableBox( + rect: rect, + flip: flip, + flipRectWhileResizing: false, + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, + ); ``` -### Method 2 - Using the raw parameters - -The second method is to use the raw parameters to control the box. This allows you to control the box without -using a controller. The [Transformable Box](transformableBox) widget will handle the lifecycle of an internal -controller automatically for you. - -To use the raw parameters, you should not use the `controller` parameter. You can use the following parameters: -`box`, `flip`, `clampingRect`, `constraints`, and `resolveResizeModeCallback`. - -```dart -class MySexierBox extends StatefulWidget { - @override - _MySexierBoxState createState() => _MySexierBoxState(); -} - -class _MySexierBoxState extends State { - Rect box = Rect.fromLTWH(0, 0, 100, 100); - Flip flip = Flip.none; // optional to handle flip behavior. - - @override - Widget build(BuildContext context) { - return TransformableBox( - box: box, - flip: flip, // optional. - clampingRect: Rect.fromLTWH(0, 0, 200, 200), // optional. - constraints: BoxConstraints(minWidth: 50, minHeight: 50), // optional. - resolveResizeModeCallback: (ResizeMode mode) { /* ... */ }, // optional. - onChanged: (UIBoxTransformResult result) { - setState(() { - this.box = result.box; - this.flip = result.flip; - }); - }, - contentBuilder: (context, box) { /* ... */ }, - ); - } -} +### Flipping the content of the box +This is done by using the `Transform.scale` widget with negative scale values. This +is done to allow the content to be flipped horizontally and vertically. + +This behavior can be disabled by setting `flipChild` to `false`. + +```dart title="Disable flipping the child/content of the box" + TransformableBox( + rect: rect, + flip: flip, + flipChild: false, + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, + ); ``` -## ResolveResizeModeCallback +You can set both `flipRectWhileResizing` and `flipChild` to `false` to disable flipping completely. -The `resolveResizeModeCallback` is a callback that is called whenever a resize operation is about to be performed on a -given [Transformable Box](transformableBox) The reason this is a callback is because it allows you to define the -resize behavior at the time of the resize operation. This is useful when you want to change the resize behavior -based on the state of the application. +## Constraints + +Resizing can be constrained by providing `minSize` and `maxSize` using `constraints` property. + +```dart title="Resizable widget with constrained resizing" + TransformableBox( + rect: rect, + flip: flip, + constraints: BoxConstraints( + minWidth: 100, + minHeight: 100, + maxWidth: 500, + maxHeight: 500, + ), + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, + ); +``` +This will allow resizing the box between 100x100 and 500x500 pixels. + +### Constraint callbacks + +You can register callbacks to listen to when the box reaches the minimum or maximum size. This is useful when you want +to react to these events to show some UI indication like showing a message or changing border color. + +You can register `onTerminalSizeReached` callback to listen to when the box reaches the terminal size. This is useful +when you want to show a message to the user that the box has reached the maximum size. + +A **terminal size** is a size that is either the **minimum** or **maximum** size of the box on either axis. +This can happen when the user tries to resize the box beyond the given **constraints** or the size reaches the +`clampingRect` size. + +```dart title="onTerminalSizeReached callback" + TransformableBox( + rect: rect, + flip: flip, + constraints: BoxConstraints( + minWidth: 100, + minHeight: 100, + maxWidth: 500, + maxHeight: 500, + ), + onTerminalSizeReached: ( + bool reachedMinWidth, + bool reachedMaxWidth, + bool reachedMinHeight, + bool reachedMaxHeight, + ) { + // do something here. + }, + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, + ); +``` -The most common use case for this is keyboard shortcuts. We provide a `defaultResolveResizeModeCallback` -function that is used by default when resizing, and it's job is to listen to keyboard meta keys to change the -`ResizeMode`. It sets the `ResizeMode` to `ResizeMode.scale` when the `Shift` key is pressed, `ResizeMode.symmetric` -when the `Alt` key is pressed, and `ResizeMode.symmetricScale` when both the `Shift` and `Alt` keys are pressed. -`ResizeMode.freeform` is used otherwise. +You can also use `onMinWidthReached`, `onMaxWidthReached`, `onMinHeightReached` and `onMaxHeightReached` callbacks to +listen to the individual terminal size events. You can also use `onTerminalWidthReached` and `onTerminalHeightReached` to listen +to combined terminal width and height events respectively. -You can use this callback to change the `ResizeMode` of the resize operation however you like and can provide a -fixed-behavior callback if desired. +## Disable Resizing -`resolveResizeModeCallback: (ResizeMode mode) => ResizeMode.symmetric,` +Resizing can be disabled by setting the `resizable` property to `false`. + +```dart title="Resizable widget without resizing" + TransformableBox( + rect: rect, + flip: flip, + resizable: false, + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, + ); +``` -[boxTransform] https://github.com/BirjuVachhani/box_transform/tree/main/packages/box_transform -[transformableBox] https://github.com/BirjuVachhani/box_transform/blob/main/packages/flutter_box_transform/lib/src/transformable_box.dart \ No newline at end of file +[boxTransform]: https://github.com/BirjuVachhani/box_transform/tree/main/packages/box_transform +[transformableBox]: https://github.com/BirjuVachhani/box_transform/blob/main/packages/flutter_box_transform/lib/src/transformable_box.dart \ No newline at end of file diff --git a/docs/get_started.mdx b/docs/get_started.mdx index 48944d6..e109595 100644 --- a/docs/get_started.mdx +++ b/docs/get_started.mdx @@ -8,80 +8,56 @@ title: Getting Started Add this package as dependency in your `pubspec.yaml` file: - - -```dart title="Add dependency" -dependencies: - flutter_box_transform: +```dart + dependencies: + box_transform: ``` - - -```dart title="Add dependency" -dependencies: - box_transform: -``` - - + +## Models + +[Box Transform](boxTransform) defines several models to mimic that of Flutter's. + +- The equivalent of `Size` is `Dimension`. +- The equivalent of `Offset` is `Vector2` from the `vector_math` package. +- The equivalent of `Rect` is `Box`. +- The equivalent of `BoxConstraints` is `Constraints`. ## Usage - - -```dart title="Using as a widget" -Stack( - children: [ - BoxTransform( - box: box, - flip: flip, - onChanged: (box, flip) { - setState(() { - this.box = box; - this.flip = flip; - }); - }, - contentBuilder: (context, rect, flip) => Transform.scale( - scaleX: flip.isHorizontal ? -1 : 1, - scaleY: flip.isVertical ? -1 : 1, - child: Image.asset( - 'assets/images/landscape.jpg', - width: rect.width, - height: rect.height, - fit: BoxFit.fill, - ), - ), - ), - ], -); -``` - - -```dart title="Resizing a Box" -final Box box = Box.fromLTWH(50, 50, 100, 100); +You can call the `BoxTransformer.resize` method to resize a box. The method takes the following parameters: + +`handle`: The handle that is being dragged. +`initialRect`: The box before resizing started. +`initialLocalPosition`: The position of the mouse pointer before resizing started. +`localPosition`: The current position of the mouse pointer. +`resizeMode`: The resize mode. See [Resize Modes](/resize_modes) for more information. +`initialFlip`: The flip state before resizing started. -final ResizeResult result = BoxTransformer.resize( - handle: HandlePosition.bottomRight, - initialBox: box, - initialLocalPosition: Vector2.zero(), - localPosition: Vector2.zero(), - resizeMode: ResizeMode.freeform, - initialFlip: Flip.none, -); +```dart title="Resizing a Box" + final Box rect = Box.fromLTWH(50, 50, 100, 100); + + final ResizeResult result = BoxTransformer.resize( + handle: HandlePosition.bottomRight, // handle that is being dragged + initialRect: rect, + initialLocalPosition: Vector2.zero(), + localPosition: Vector2.zero(), + resizeMode: ResizeMode.freeform, + initialFlip: Flip.none, + ); + + result.rect; // the new rect ``` - - \ No newline at end of file +You can also use an **_isolates_** for these simultaneous resizing operations since this is a pure dart implementation. + +You can use `BoxTransformer.move` to move a box. + +```dart title="Moving a box" + final Box rect = Box.fromLTWH(50, 50, 100, 100); + final MoveResult result = BoxTransformer.move( + initialRect: rect, + initialLocalPosition: Vector2.zero(), + localPosition: Vector2.zero(), + ); + + result.position; // the new position of the box +``` \ No newline at end of file diff --git a/docs/handles.mdx b/docs/handles.mdx new file mode 100644 index 0000000..cc5e98b --- /dev/null +++ b/docs/handles.mdx @@ -0,0 +1,127 @@ +--- +title: Resize Handles +--- + +# Resize Handles + +By default, circular resize handles are used to resize the box. These handles ideal for are highly customizable and +can be used to create any type of resize handles. + +Use `handleTapSize` to change the size of the invisible interactive handle area that is used to resize the box. + +Changing `handleTapSize` doesn't change the size of the default handle UI. + +```dart title="Custom sized default handles" + TransformableBox( + rect: rect, + flip: flip, + handleTapSize: 34, + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, + ); +``` + +You can customize the default handles or build your own handles using `cornerHandleBuilder` and `sideHandleBuilder` +properties in `TransformableBox` constructor. It provides access to the `Buildcontext` and `HandlePosition` of +the handle. + +You can use `handleAlign` on `TransformableBox` to change the position of the handle's interactive area. By default, +the interactive area is aligned to the center of box corner/side. + +```dart title="Putting handle completely inside the box area" + TransformableBox( + rect: rect, + flip: flip, + handleAlign: HandleAlign.inside, + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, + ); +``` + +## Customizing the default handles + +By default, `TransformableBox` uses `DefaultCornerHandle` and `DefaultSideHandle` to build the handles. You can +customize the default handles by providing a custom `decoration` and `size` to the `DefaultCornerHandle` and +`DefaultSideHandle` constructors. + +```dart title="Custom sized default handles with rectangular shape" + TransformableBox( + rect: rect, + flip: flip, + cornerHandleBuilder: (context, handle) { + return DefaultCornerHandle( + handle: handle, + size: 34, + decoration: BoxDecoration( + color: Colors.red, + shape: BoxShape.rectangle, + ), + ); + }, + sideHandleBuilder: (context, handle) { + return DefaultSideHandle( + handle: handle, + length: 34, + thickness: 12, + decoration: BoxDecoration( + color: Colors.red, + ), + ); + }, + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, + ); +``` + +Since, side handles are not square, you can use `length` and `thickness` properties to customize the size of the +side handles. + +## Custom Handles + +You can also use `cornerHandleBuilder` and `sideHandleBuilder` to build your own handles. You can use any widget +to build the handles. + +```dart title="Using your own custom handles" + TransformableBox( + rect: rect, + flip: flip, + handleBuilder: (context, handle) { + return MyCustomHandleWidget(handle: handle); + }, + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, + ); +``` +## Angular Handles + +You can use `AngularHandle` to build angular handles that look like corner brackets. + +Angular Handles + +`AngularHandle` can render both corner handles and side handles. + +```dart title="Using angular handles" + TransformableBox( + rect: rect, + flip: flip, + handleAlign: HandleAlign.inside, + cornerHandleBuilder: (context, handle) { + return AngularCornerHandle( + handle: handle, + handleAlign: HandleAlign.inside, + ); + }, + sideHandleBuilder: (context, handle) { + return AngularSideHandle( + handle: handle, + handleAlign: HandleAlign.inside, + ); + }, + onChanged: (event) {...}, + contentBuilder: (context, rect, flip) {...}, + ); +``` + +Use `handleAlign` to align `AngularHandle` to the inside, outside or in the center of the box. + +Angular Handle Alignements \ No newline at end of file diff --git a/docs/license.mdx b/docs/license.mdx index c7a3772..0d94871 100644 --- a/docs/license.mdx +++ b/docs/license.mdx @@ -1,6 +1,6 @@ --- title: License ----- +--- ## BSD 3-Clause License diff --git a/docs/moving.mdx b/docs/moving.mdx new file mode 100644 index 0000000..b177ca0 --- /dev/null +++ b/docs/moving.mdx @@ -0,0 +1,37 @@ +--- +title: Moving +--- + +# Moving/Dragging + +You can use `BoxTransformer.move` to move a box. + +```dart title="Moving a box" + final Box rect = Box.fromLTWH(50, 50, 100, 100); + final MoveResult result = BoxTransformer.move( + initialRect: rect, + initialLocalPosition: Vector2.zero(), + localPosition: Vector2.zero(), + ); + + result.position; // the new position of the box +``` +`BoxTransformer.move` returns a `MoveResult` that contains information about the new position of the box. +`result.position` is a `Vector2` that defines the new position of the box. + +## Limiting movements + +You can limit the movements by providing `clampingRect` to `BoxTransformer.move` to limit the movements to a specific +area. + +```dart title="Limiting movements" + final Box rect = Box.fromLTWH(50, 50, 100, 100); + final MoveResult result = BoxTransformer.move( + initialRect: rect, + initialLocalPosition: Vector2.zero(), + localPosition: Vector2.zero(), + clampingRect: Box.fromLTWH(0, 0, 1000, 1000), + ); + + result.position; // the new position of the box +``` \ No newline at end of file diff --git a/docs/resizing.mdx b/docs/resizing.mdx index 1684275..322376d 100644 --- a/docs/resizing.mdx +++ b/docs/resizing.mdx @@ -1,85 +1,87 @@ --- -title: Box Transform +title: Resizing --- -# Box Transform - -[Box Transform](boxTransform) is a **pure-Dart** base package that allows you to programmatically handle box -**resizing** and **dragging** without relying on [Flutter](flutter). It provides highly flexible, programmatically -resizable and draggable boxes that can be used in any Dart project. - -## Models - -[Box Transform](boxTransform) defines several models to mimic that of Flutter's. +# Resizing + +```dart + final Box rect = Box.fromLTWH(50, 50, 100, 100); + final ResizeResult result = BoxTransformer.resize( + handle: HandlePosition.bottomRight, + initialRect: rect, + initialLocalPosition: Vector2.zero(), + localPosition: Vector2.zero(), + resizeMode: ResizeMode.freeform, + initialFlip: Flip.none, + ); + + result.rect; // the new rect +``` -- The equivalent of `Size` is `Dimension`. -- The equivalent of `Offset` is `Vector2` from the `vector_math` package. -- The equivalent of `Rect` is `Box`. -- The equivalent of `BoxConstraints` is `Constraints`. +`BoxTransformer.resize` returns a `ResizeResult` object that contains information about the resized box. +`result.rect` is a `Box` that defines the new position of the box. -The APIs are very similar to Flutter's, so you should be able to pick it up quickly or be able to reference Flutter's -documentation for more information. +Resizing is freeform by default, meaning that the user can resize the box in any direction and in any size. You can +pass `ResizeMode.scale` to `BoxTransformer.resize` to limit the resizing to a specific direction. -## Resizing +See [Resize Modes](/resize_modes) for more information about different resizing modes. -Resizing is done by using the static `BoxTransformer.resize` function. It takes in several parameters: +## Flipping -- `initialBox`: An immutable `Box` object representing the original size and position of the box before resizing. -- `initialLocalPosition`: A Vector2 object representing the initial position of the mouse cursor relative to the box. -- `localPosition`: A `Vector2` object representing the current position of the mouse cursor relative to the box. -- `handle`: A `HandlePosition` object representing the handle that is being used to resize the box. -- `resizeMode`: A `ResizeMode` object representing the mode in which the box is being resized. -- `initialFlip`: A `Flip` object representing the initial state of the box. -- `clampingRect`: A `Box` object representing the bounds within which the box can be resized. -- `constraints`: A `Constraints` object representing the constraints that limit the minimum and maximum size of the box. +By default, resizing allows flipping the rect horizontally and vertically. `result.rawSize` contains information about +flipping. Negative values indicate that the rect has been flipped on that axis. e.g. `result.rawSize.width` is negative +if the rect has been flipped horizontally. -The function returns a `ResizeResult` object that contains information about the resized box. +### Flipping the rect while resizing +While resizing, the rect can be flipped horizontally and vertically whenever the +user drags a handle beyond the opposite side of the rect. This allows more flexibility in resizing the box. However, +this is not responsible for flipping the content of the box. - - -```dart title="Resizing a Rect" -final Rect rect = Rect.fromLTWH(50, 50, 100, 100); +This behavior can be disabled by setting `flipRectWhileResizing` to `false`. -final UIResizeResult result = UIBoxTransformer.resize( - handle: HandlePosition.bottomRight, - initialBox: rect, - initialLocalPosition: Offset.zero, - localPosition: Offset.zero, - resizeMode: ResizeMode.freeform, - initialFlip: Flip.none, -); +```dart title="Disable flipping the rect while resizing" + final Box rect = Box.fromLTWH(50, 50, 100, 100); + final ResizeResult result = BoxTransformer.resize( + handle: HandlePosition.bottomRight, + initialRect: rect, + initialLocalPosition: Vector2.zero(), + localPosition: Vector2.zero(), + resizeMode: ResizeMode.freeform, + initialFlip: Flip.none, + flipRectWhileResizing: false, // disables flipping the rect while resizing + ); + + result.rect; // the new rect ``` - - -```dart title="Resizing a Box" -final Box box = Box.fromLTWH(50, 50, 100, 100); -final ResizeResult result = BoxTransformer.resize( - handle: HandlePosition.bottomRight, - initialBox: box, - initialLocalPosition: Vector2.zero(), - localPosition: Vector2.zero(), - resizeMode: ResizeMode.freeform, - initialFlip: Flip.none, -); +## Constraints + +Resizing can be constrained by providing `minSize` and `maxSize` using `constraints` property. + +```dart title="Resizable widget with constrained resizing" + final Box rect = Box.fromLTWH(50, 50, 100, 100); + final ResizeResult result = BoxTransformer.resize( + handle: HandlePosition.bottomRight, + initialRect: rect, + initialLocalPosition: Vector2.zero(), + localPosition: Vector2.zero(), + resizeMode: ResizeMode.freeform, + initialFlip: Flip.none, + constraints: Constraints( + minWidth: 100, + minHeight: 100, + maxWidth: 500, + maxHeight: 500, + ), + ); + + result.rect; // the new rect ``` - - - -Internally, the function calculates the difference between the initial position of the mouse cursor and the current -position, and uses this delta to resize the box according to the specified resizing mode and handle position. - -The resulting box is then checked to ensure that it falls within the specified bounds and constraints. +This will allow resizing the box between 100x100 and 500x500 pixels. -If the resizing reaches a minimum or maximum width or height, the function sets flags in the ResizeResult object to -indicate that these limits have been reached. +`ResizeResult` also provides information about whether the resizing was constrained or not. +`ResizeResult.minWidthReached`, `ResizeResult.minHeightReached`, `ResizeResult.maxWidthReached` and +`ResizeResult.maxHeightReached` are `bool` values that indicate whether the resizing was constrained or not. [boxTransform]: https://github.com/BirjuVachhani/box_transform/tree/main/packages/box_transform [flutterBoxTransform]: https://github.com/BirjuVachhani/box_transform/tree/main/packages/flutter_box_transform