Skip to content

Commit 47f8c41

Browse files
chore: release 3.1.0
Bump the version, date the changelog and group it into Added and Changed, and point the install snippet at 3.1.0.
1 parent d6605c3 commit 47f8c41

3 files changed

Lines changed: 36 additions & 31 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 34 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,31 @@
1-
## Unreleased
1+
## 3.1.0 - 2026-10-06
22

33
### Added
44

5+
- **Sizing the panes from your code.** `KChartWidget.paneHeights` sets the
6+
indicator panes' heights and `volumeHeight` the volume pane's. Heights are
7+
used as given — past `ChartStyle.maxPaneHeight` if asked — and cut back only
8+
when a pane would squeeze the candles out of the box. Null leaves the heights
9+
to the chart, as before. While a list is given the host owns the heights: a
10+
drag or a controller call is reported through `onPaneHeightsChanged`, and the
11+
pane moves when the list is passed back.
12+
- **Maximizing a pane.** `KChartController.maximizePane`, `maximizeVolume`,
13+
`restorePanes` and `toggleMaximizePane` stretch one pane over the chart, the
14+
candles keeping a strip above it, for a "maximize this indicator" button. The
15+
stretch follows the chart's size and its own indicator through a reorder.
16+
`setPaneHeight`, `resetPaneHeights`, `paneHeights`, `maximizedPane` and
17+
`isVolumeMaximized` complete the set.
18+
- **`KChartWidget.paneSizeMode`** chooses how the chart's parts are sized.
19+
`PaneSizeMode.heights` is the default and the behaviour so far.
20+
`PaneSizeMode.ratios` splits the height by `paneRatios` — the candles, the
21+
volume pane, then each indicator pane, so `[3, 1, 2]` is half, a sixth and a
22+
third — and holds the split as the chart is resized. `PaneSizeMode.custom`
23+
lets the user lay the chart out: `KChartController.editPanes` shows a line
24+
between each two parts to drag between the smallest and largest height each
25+
may take, the layout is kept as proportions, and `onPaneRatiosChanged`
26+
reports it for saving. `finishEditingPanes`, `toggleEditPanes` and
27+
`isEditingPanes` complete the set. Both modes need a bounded height and no
28+
`mBaseHeight`.
529
- **`ChartStyle.gridColumnMode`** chooses where the grid's vertical lines go.
630
`GridColumnMode.dateTicks` (the default, and the behaviour so far) rules a line
731
wherever a candle crosses a time bucket; with only a few candles in view that
@@ -14,37 +38,18 @@
1438
- **`ChartStyle.gridDashPattern`** dashes the grid lines with a list of on/off
1539
lengths, e.g. `[4, 3]`. Null is solid; an empty list or a non-positive length
1640
is read as solid.
17-
- The example app has switches for all three, and a chip per pane that maximizes it.
18-
- **`KChartWidget.paneHeights`** sizes the indicator panes from the host, and
19-
`KChartWidget.volumeHeight` the volume pane. Heights are used as given — past
20-
`ChartStyle.maxPaneHeight` if asked — and cut back only when a pane would
21-
squeeze the candles out of the box. Null leaves the heights to the chart, as
22-
before. While a list is given the host owns the heights: a drag or a controller
23-
call is reported through `onPaneHeightsChanged` and the pane moves when the
24-
list is passed back.
25-
- **`KChartController.maximizePane`, `maximizeVolume`, `restorePanes`,
26-
`toggleMaximizePane`,
27-
`setPaneHeight`, `resetPaneHeights`, `paneHeights` and `maximizedPane`** drive
28-
the same from code, for a "maximize this indicator" button. A maximized pane
29-
follows the chart's size and its own indicator through a reorder.
30-
- **`KChartWidget.paneSizeMode`** chooses how the chart's parts are sized.
31-
`PaneSizeMode.heights` is the default and the behaviour so far. `ratios` splits
32-
the height by `paneRatios` — the candles, the volume pane, then each indicator
33-
pane, so `[3, 1, 2]` is half, a sixth and a third — and holds the split as the
34-
chart is resized. `custom` lets the user lay the chart out: `KChartController.
35-
editPanes` shows a line between each two parts to drag between the smallest and
36-
largest height each may take, the layout is kept as proportions, and
37-
`onPaneRatiosChanged` reports it for saving. Both need a bounded height and no
38-
`mBaseHeight`; the example app has a switch for them.
39-
- `KChartController.editPanes`, `finishEditingPanes`, `toggleEditPanes` and
40-
`isEditingPanes` drive the editing; `KChartHost` has two more members for it.
41+
- The example app has switches for the grid options, a sizing chooser for the
42+
panes, an Edit layout chip, and a chip to maximize each pane and the volume.
43+
44+
### Changed
45+
46+
- Dragged pane heights move with their pane when `onReorderPane` reorders the
47+
indicators, instead of staying at their position.
4148
- `ChartStyle.minPaneHeight` is held at 32 or more when a pane is dragged or
4249
maximized around, so a pane can never be made so small that its edge cannot be
4350
grabbed to make it bigger again.
44-
- Dragged pane heights now move with their pane when `onReorderPane` reorders
45-
the indicators, instead of staying at their position.
46-
- `KChartHost` has nine new members for the above; only an app that implements
47-
it itself (a test double) needs to add them.
51+
- `KChartHost` has nine new members for the above. Only an app that implements
52+
it itself, such as a test double, needs to add them.
4853

4954
## 3.0.0 - 2026-09-19
5055

‎README.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -387,7 +387,7 @@ indicator and drawing tool is included; there is no paid tier.
387387
```yaml
388388
dependencies:
389389
material_ui: ">=1.0.0 <2.0.0"
390-
ohlcv_chart: ">=3.0.0 <4.0.0"
390+
ohlcv_chart: ">=3.1.0 <4.0.0"
391391
```
392392
393393
Every widget here is built on the `material_ui` package rather than the

‎pubspec.yaml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ description: >-
33
Candlestick charts for Flutter with 31 indicators, 29 drawing tools and 39
44
more chart widgets: depth, order flow, series, pie, treemap, sankey. Pure
55
CustomPainter, no WebView.
6-
version: 3.0.0
6+
version: 3.1.0
77
homepage: https://github.com/CtrlAltDevelop
88
repository: https://github.com/CtrlAltDevelop/ohlcv_chart
99
issue_tracker: https://github.com/CtrlAltDevelop/ohlcv_chart/issues

0 commit comments

Comments
 (0)