Skip to content

Commit

Permalink
Bugfix README.md, first stable release
Browse files Browse the repository at this point in the history
  • Loading branch information
rickypid committed Dec 21, 2021
1 parent f472d7d commit 99b1bcc
Show file tree
Hide file tree
Showing 6 changed files with 121 additions and 4 deletions.
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Widget Tree Depth Counter

## [1.0.0]
#### [@rickypid](https://github.com/rickypid)
- Stable release.

## [0.0.1-alpha]
#### [@rickypid](https://github.com/rickypid)
- Initial release.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ flutter pub get
run following command:

```bash
flutter pub add provider
flutter pub add widget_tree_depth_counter
```

### Basic setup
Expand Down
113 changes: 113 additions & 0 deletions example/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
#### widget_tree_depth_counter
# Widget Tree Depth Counter
[![Pub Package](https://img.shields.io/pub/v/widget_tree_depth_counter.svg?style=flat-square)](https://pub.dartlang.org/packages/widget_tree_depth_counter)
[![likes](https://badges.bar/widget_tree_depth_counter/likes)](https://pub.dev/packages/widget_tree_depth_counter/score)
[![popularity](https://badges.bar/widget_tree_depth_counter/popularity)](https://pub.dev/packages/widget_tree_depth_counter/score)
[![pub points](https://badges.bar/widget_tree_depth_counter/pub%20points)](https://pub.dev/packages/widget_tree_depth_counter/score)

[![Package Issue](https://img.shields.io/github/issues/rickypid/widget_tree_depth_counter)](https://github.com/rickypid/widget_tree_depth_counter/issues)
![Package License](https://img.shields.io/github/license/rickypid/widget_tree_depth_counter)

`WidgetTreeDepthCounter` is a simple widget to count the amount of nested widget tree, useful in the dynamic construction of the interface when it is important to know the depth of widget.

| ![Image](https://github.com/rickypid/widget_tree_depth_counter/blob/master/doc/.media/example.jpg?raw=true) |
| :------------: |
| **WidgetTreeDepthCounter** |

## Features

* count of the depth of the widget with respect to the tree **(all uses of WidgetTreeDepthCounter in the current tree are counted, the other types of widgets are not counted)**

This widget can be used conveniently in such cases:

- Dynamically manage the colors of widgets based on their position in the tree
- in an app that manages chapter numbers it is very easy to renumber them in case a chapter is removed.
- ...

Many other cases where it is very difficult to manage a widget through fixed parameters to be managed based on the construction of the tree.

 

## Usage

Make sure to check out the [examples on GitHub](https://github.com/rickypid/widget_tree_depth_counter/tree/master/example).

| ![Image](https://github.com/rickypid/widget_tree_depth_counter/blob/master/doc/.media/widget_tree_example.jpg?raw=true) |
| :------------: |
| **Example of operation in a widget tree** |

### Installation

#### From `pubspec.yaml`

Add the following line to `pubspec.yaml`:

```yaml
dependencies:
widget_tree_depth_counter: <last-release>
```
and
```bash
flutter pub get
```

#### From cli

run following command:

```bash
flutter pub add widget_tree_depth_counter
```

### Basic setup

*Complete example [available here](https://github.com/rickypid/widget_tree_depth_counter/blob/master/example/lib/main.dart).*

```dart
ParentWidget(
child: WidgetTreeDepthCounter(
builder: (context, counter) => //counter=0
Container(
color: Theme.of(context)
.primaryColor
.withOpacity(counter * 0.05 + 0.05),
child: WidgetTreeDepthCounter(
builder: (context, counter) =>//counter=1
Container(
color: Theme.of(context)
.primaryColor
.withOpacity(counter * 0.05 + 0.05),
),
),
),
),
),
```

### WidgetTreeDepthCounter Properties

* `builder`: Function called at layout time to construct the widget tree, return `Widget`.
* `count`: With this parameter it's possible define or overwrite the current depth count value.

&nbsp;

### Use current `counter` value during build `WidgetTreeDepthCounter`

`WidgetTreeDepthCounter` uses [Provider](https://pub.dev/packages/provider) library to count the depth, but if it is necessary to access the current value to perform a sum (for example), it is possible to retrieve the count value through the `Provider 'functions:

```dart
WidgetTreeDepthCounter(
count: context.read<DepthCounter>().value + 2,
builder: (context, counter) =>
Text(counter.toString()),
)
```

**Obviously to access the value via `context.read<DepthCounter>()` it is necessary that at least one `WidgetTreeDepthCounter` is present in the tree and `provider` package is required.**

&nbsp;

2 changes: 1 addition & 1 deletion example/pubspec.lock
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ packages:
path: ".."
relative: true
source: path
version: "0.0.1-alpha"
version: "1.0.0"
sdks:
dart: ">=2.12.0 <3.0.0"
flutter: ">=1.17.0"
2 changes: 1 addition & 1 deletion example/pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: widget_tree_depth_counter_example
description: Widget to count the amount of nested widget tree, useful in the dynamic construction of the interface when it is important to know the depth of widget.
version: 0.0.1-alpha
version: 1.0.0

environment:
sdk: ">=2.12.0 <3.0.0"
Expand Down
2 changes: 1 addition & 1 deletion pubspec.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
name: widget_tree_depth_counter
description: Widget to count the amount of nested widget tree, useful in the dynamic construction of the interface when it is important to know the depth of widget.
version: 0.0.1-alpha
version: 1.0.0
repository: https://github.com/rickypid/widget_tree_depth_counter
issue_tracker: https://github.com/rickypid/widget_tree_depth_counter/issues

Expand Down

0 comments on commit 99b1bcc

Please sign in to comment.