Skip to content

Commit

Permalink
Change on range changed method
Browse files Browse the repository at this point in the history
  • Loading branch information
Azare77 committed Jan 6, 2024
1 parent dc1bb47 commit 4618d7f
Show file tree
Hide file tree
Showing 9 changed files with 23 additions and 20 deletions.
5 changes: 4 additions & 1 deletion CHANGELOG.md
Expand Up @@ -42,4 +42,7 @@
* Add Range Date Selection

## [1.3.1]
* Add Option to Enable Range Date Selection
* Add Option to Enable Range Date Selection

## [1.3.2]
* Change on range changed method
10 changes: 5 additions & 5 deletions README.md
Expand Up @@ -15,17 +15,17 @@ Modified and Completed Version of [jalali_calendar](https://pub.dev/packages/jal
for set First date of range you should hold on day by default first date is the current date
```dart
isRange: true,
onRangeChanged: (List<DateTime> stEndRange) {
print(stEndRange[0]);
print(stEndRange[1]);
},
onRangeChanged: (DateTime start, DateTime end) {
print(start);
print(end);
}
```

## Usage

## Import this line in Flutter pubspec.yaml
```dart
jalali_table_calendar: ^1.3.1
jalali_table_calendar: ^1.3.2
```
## To Use Calendar Or DatePicker , Import this line to your dart file
```dart
Expand Down
6 changes: 3 additions & 3 deletions example/lib/main.dart
Expand Up @@ -101,9 +101,9 @@ class _State extends State<MyApp> {
print(date);
},
isRange: true,
onRangeChanged: (List<DateTime> stEndRange) {
print(stEndRange[0]);
print(stEndRange[1]);
onRangeChanged: (DateTime start, DateTime end) {
print(start);
print(end);
},
onDaySelected: (DateTime selectDate) {
print(selectDate);
Expand Down
2 changes: 1 addition & 1 deletion example/pubspec.lock
Expand Up @@ -86,7 +86,7 @@ packages:
path: ".."
relative: true
source: path
version: "1.3.0"
version: "1.3.2"
jiffy:
dependency: transitive
description:
Expand Down
5 changes: 3 additions & 2 deletions lib/src/TableCalendar/CalendarDayPicker.dart
Expand Up @@ -12,6 +12,7 @@ const int kMaxDayPickerRowCount = 6; // A 31 day month that starts on Saturday.
// Two extra rows: one for the day-of-week header and one for the month header.

const DayPickerGridDelegate _kDayPickerGridDelegate = DayPickerGridDelegate();
typedef RangeChangedCallback = void Function(DateTime start, DateTime end);

/// Displays the days of a given month and allows choosing a day.
///
Expand Down Expand Up @@ -65,7 +66,7 @@ class CalendarDayPicker extends StatefulWidget {
final ValueChanged<DateTime> onDayChanged;

/// Called when the user picks a day.
final ValueChanged<List<DateTime>> onRangeChanged;
final RangeChangedCallback onRangeChanged;

bool isRange;

Expand Down Expand Up @@ -351,7 +352,7 @@ class _CalendarDayPickerState extends State<CalendarDayPicker> {
behavior: HitTestBehavior.opaque,
onTap: () {
widget.onDayChanged(dayToBuild);
if (isRange) widget.onRangeChanged([startRange!, dayToBuild]);
if (isRange) widget.onRangeChanged(startRange!, dayToBuild);
},
onLongPress: () {
if (widget.isRange) {
Expand Down
2 changes: 1 addition & 1 deletion lib/src/TableCalendar/CalendarMonthPicker.dart
Expand Up @@ -58,7 +58,7 @@ class CalendarMonthPicker extends StatefulWidget {

/// Called when the user picks a month.
final ValueChanged<DateTime> onDayChanged;
final ValueChanged<List<DateTime>> onRangeChanged;
final RangeChangedCallback onRangeChanged;
final bool isRange;
final ValueChanged<DateTime> onMonthChanged;

Expand Down
6 changes: 3 additions & 3 deletions lib/src/TableCalendar/DatePickerCalendar.dart
Expand Up @@ -53,7 +53,7 @@ class DatePickerCalendar extends StatefulWidget {

/// Called whenever any day gets tapped.
final OnDaySelected? onDaySelected;
final OnRangeChanged? onRangeChanged;
final RangeChangedCallback? onRangeChanged;
final OnMonthChanged? onMonthChanged;

@override
Expand Down Expand Up @@ -128,8 +128,8 @@ class _DatePickerCalendarState extends State<DatePickerCalendar> {
});
}

void _handleRangeChanged(List<DateTime> value) {
if (widget.onRangeChanged != null) widget.onRangeChanged!(value);
void _handleRangeChanged(start, end) {
if (widget.onRangeChanged != null) widget.onRangeChanged!(start, end);
}

@override
Expand Down
5 changes: 2 additions & 3 deletions lib/src/TableCalendar/jalaliTableCalendar.dart
@@ -1,5 +1,6 @@
import 'dart:async';
import 'package:flutter/material.dart';
import 'package:jalali_table_calendar/src/TableCalendar/CalendarDayPicker.dart';
import 'DatePickerCalendar.dart';

/// Initial display mode of the date picker calendar.
Expand All @@ -21,8 +22,6 @@ enum DatePickerModeCalendar {
bool calendarInitialized = false;
//callback function when user change day
typedef void OnDaySelected(DateTime day);
//callback function when user change range
typedef void OnRangeChanged(List<DateTime> days);
//callback function when user change month
typedef void OnMonthChanged(DateTime monthsToAdd);
//callback function for create marker
Expand Down Expand Up @@ -89,7 +88,7 @@ class JalaliTableCalendar extends StatefulWidget {
final MarkerBuilder? marker;
final Map<DateTime, List>? events;
final OnDaySelected? onDaySelected;
final OnRangeChanged? onRangeChanged;
final RangeChangedCallback? onRangeChanged;
final OnMonthChanged? onMonthChanged;

JalaliTableCalendar(
Expand Down
2 changes: 1 addition & 1 deletion pubspec.yaml
@@ -1,6 +1,6 @@
name: jalali_table_calendar
description: Table Calendar , Calendar DatePacker , Date picker and Date Convertor For Persian Date(Jalali/Shamsi date) with holidays.
version: 1.3.1
version: 1.3.2
homepage: https://github.com/Azare77/jalali_table_calendar

environment:
Expand Down

0 comments on commit 4618d7f

Please sign in to comment.