Flutter agenda - Flutter Agenda View Package (pub.dev)

Overview

Flutter Agenda View

Agenda Widget Package for Flutter

Features

Image

Video Recording

Install

https://pub.dev/packages/flutter_agenda#-installing-tab-

Usage

Basic

import 'package:flutter_agenda/flutter_agenda.dart';

class AgendaScreen extends StatefulWidget {
  AgendaScreen({Key? key}) : super(key: key);

  @override
  _AgendaScreenState createState() => _AgendaScreenState();
}

late List<Pillar> pillars = <Pillar>[];

class _AgendaScreenState extends State<AgendaScreen> {
  @override
  void initState() {
    super.initState();
    pillars = [
      Pillar(
        head: PillarHead(name: 'Pillar 1'.toUpperCase()),
        events: [
          AgendaEvent(
            title: 'Event D',
            subtitle: 'CC',
            start: EventTime(hour: 8, minute: 0),
            end: EventTime(hour: 10, minute: 0),
          ),
          AgendaEvent(
            title: 'Event Z',
            subtitle: 'SV',
            start: EventTime(hour: 12, minute: 0),
            end: EventTime(hour: 13, minute: 20),
          ),
        ],
      ),
      Pillar(
        head: PillarHead(name: 'Pillar 2'.toUpperCase()),
        events: [
          AgendaEvent(
            title: 'Event G',
            subtitle: 'FE',
            start: EventTime(hour: 9, minute: 10),
            end: EventTime(hour: 11, minute: 45),
          ),
        ],
      ),
      Pillar(
        head: PillarHead(name: 'Pillar 3'.toUpperCase(), textColor: Colors.red),
        events: [
          AgendaEvent(
            title: 'Event A',
            subtitle: 'DE',
            start: EventTime(hour: 10, minute: 10),
            end: EventTime(hour: 11, minute: 45),
          ),
        ],
      ),
    ];
  }

  @override
  Widget build(BuildContext context) {
    return SafeArea(
      child: Scaffold(
        body: AgendaView(
          pillarList: pillars,
        ),
      ),
    );
  }
}

Customized

todo

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b new_feature_branch)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin new_feature_branch)
  5. Create new Pull Request

License

MIT License

Copyright (c) 2022 Iliyass ZAMOURI

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
You might also like...

Home Automation App using Flutter, Adafruit IO & Esp32 dev board.

Home Automation App using Flutter, Adafruit IO & Esp32 dev board.

A Home Automation app made using Flutter, Adafruit IO & ESP32 Dev Board. Getting Started This project is a starting point for a Flutter application. A

Dec 29, 2022

A Home Automation app made using Flutter, Adafruit IO & ESP32 Dev Board

A Home Automation app made using Flutter, Adafruit IO & ESP32 Dev Board

A Home Automation app made using Flutter, Adafruit IO & ESP32 Dev Board. Getting

Apr 19, 2022

Encode App-Dev is a open source project which contains different projects of Application development, Android development, IOS development, Flutter, Kotlin, Dart, Java, Swift etc.

HACKTOBERFEST 2022 Encode App-Dev is an open source project which contains different projects of Application development, Android development, IOS dev

Dec 4, 2022

Docker images for the Dart programming language (https://dart.dev)

dart-docker This is the Git repo of the Docker "Official Images" for the Dart programming language. See the Docker Hub page for a full description on

Dec 14, 2022

Sprite viewer / editor for the Game Boy Dev Kit

This is a graphic editor for GBDK inspired by GameBoyTileDesigner (GBTD) and GameBoyMapBuilder (GBMB). Online version game_boy_graphics_editor can run

Dec 17, 2022

A Flutter package for paginating a list view

A Flutter package for paginating a list view

paging A Flutter package for paginating a list view Installation Add this to your package's pubspec.yaml file dependencies: ... paging: ^latest.ve

Dec 12, 2022

A fork/modification of flutter epub view package

A fork/modification of flutter epub view package

epub_view Pure flutter widget for view EPUB documents on all platforms. Based on epub package. Render with flutter widgets (not native view) on any pl

Dec 28, 2021

A Flutter package for iOS and Android for picking last seven dates and time with analog view.

analog_time_picker package for Flutter A Flutter package for iOS and Android for picking last seven dates and time with analog view. Demo Installation

Aug 31, 2021

Flutter package for displaying grid view of daily task like Github-Contributions.

Flutter package for displaying grid view of daily task like Github-Contributions.

flutter_annual_task flutter_annual_task Flutter package for displaying grid view of daily task like Github-Contributions. Example Usage Make sure to c

Sep 21, 2022
Comments
  • RTL UI rendering issues

    RTL UI rendering issues

    Hi there, Just started using this package for my app that supports RTL layout, and encountered some issues.

    1. Error when scrolling the UI horizontally and then vertically:
    ======== Exception caught by gesture ===============================================================
    The following _CastError was thrown while handling a gesture:
    Null check operator used on a null value
    
    When the exception was thrown, this was the stack: 
    #0      _FlutterAgendaState._buildMainContent.<anonymous closure>.<anonymous closure> (package:flutter_agenda/src/views/agenda_screen.dart:165:49)
    #1      PillarView.build.<anonymous closure> (package:flutter_agenda/src/views/pillar_view.dart:31:45)
    #2      TapGestureRecognizer.handleTapDown.<anonymous closure> (package:flutter/src/gestures/tap.dart:581:61)
    #3      GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:198:24)
    #4      TapGestureRecognizer.handleTapDown (package:flutter/src/gestures/tap.dart:581:11)
    #5      BaseTapGestureRecognizer._checkDown (package:flutter/src/gestures/tap.dart:287:5)
    #6      BaseTapGestureRecognizer.didExceedDeadline (package:flutter/src/gestures/tap.dart:258:5)
    #7      PrimaryPointerGestureRecognizer.didExceedDeadlineWithEvent (package:flutter/src/gestures/recognizer.dart:591:5)
    #8      PrimaryPointerGestureRecognizer.addAllowedPointer.<anonymous closure> (package:flutter/src/gestures/recognizer.dart:535:41)
    (elided 11 frames from class _RawReceivePortImpl, class _Timer, dart:async, and dart:async-patch)
    Handler: "onTapDown"
    Recognizer: TapGestureRecognizer#60ba6
      debugOwner: GestureDetector
      state: possible
      button: 1
    ====================================================================================================
    
    
    1. When reaching the top/bottom limit and trying to scroll the right side tries to scroll with laggy UI, and also you can just scroll the right pane which is strange.
    2. The AgendaEvent UI is cut out on the right edge of the first Resource so text is not fully displayed.
    3. The horizontal dividers of the panes doesn't share the same thickness and the same height.

    Code I used:

    FlutterAgenda(
          resources: [
            Resource(
              head: Header(title: 'מרסל אוחנה', object: 1, color: Colors.yellow),
              events: [
                AgendaEvent(
                  title: 'תור לציפורניים - יוסי שיטרית',
                  start: EventTime(hour: 18, minute: 00),
                  end: EventTime(hour: 19, minute: 00),
                ),
              ],
            ),
            Resource(
              head: Header(title: 'מוגוטה', object: 2, color: Colors.yellow),
              events: [
                AgendaEvent(
                  title: 'תור לציפורניים - יוסי שיטרית',
                  start: EventTime(hour: 18, minute: 00),
                  end: EventTime(hour: 19, minute: 00),
                ),
              ],
            ),
          ],
          agendaStyle: AgendaStyle(
            startHour: 9,
            endHour: 24,
            headerLogo: HeaderLogo.bar,
            timeItemWidth: 45,
            timeSlot: TimeSlot.full,
            decorationLineBorderColor: Colors.transparent,
          ),
        )
    

    Simulator Screen Shot - iPhone 13 Pro - 2022-04-20 at 15 36 16

    https://user-images.githubusercontent.com/26387823/164233522-5481e711-b531-4d76-89bd-8fb43c8a2f9d.mp4

    opened by CripyIce 6
  • Rendering issues - Adding multiple Resources at a time (scrollController)

    Rendering issues - Adding multiple Resources at a time (scrollController)

    Describe the bug Adding or substracting one or multiple resources, produce a scrolling controllers issues.

    To Reproduce Steps to reproduce the behavior:

    • setState a add resource to list event

    Expected behavior Handle scrollers internally

    Additional context Check if the list of controllers match up with the resources list.

    opened by iliyass-zamouri 0
  • BidirectionalScroll  - Enhancing the Performance

    BidirectionalScroll - Enhancing the Performance

    Is your feature request related to a problem? Please describe. Scroll Problem linked to the diagonal scroll behavior.

    Describe the solution you'd like Switching from the diagonal to bidirectional scrolling.

    Describe alternatives you've considered Using the linked_scroll_controllers, for both horizontal & vertical Axis.

    opened by iliyass-zamouri 0
  • Handling timeslots overday

    Handling timeslots overday

    I'd like to use this nice widget to handle a 24/7 queue system. Unfortunately, the EventTime enforce all the events to be on same day

    Describe the solution you'd like I'd like to be able to have a timetabl goping over day. For example from Monday 00:00 til Tuesday 23h59. Today an event from Monday 22h00 to Tuesday 3:00 cannot be set because EventTime do not consider the day and then 3AM is NOT AFTER 10PM

    opened by Cyril-Andre 0
Releases(3.0.0)
Owner
Iliyass Zamouri
Iliyass Zamouri
Teach you some of the popular sensor controlling packages that are available in pub.dev

Sensor Packages Introduction to sensor packages: This repo will teach you some of the popular sensor controlling packages that are available in pub.de

Md. Siam 20 Nov 23, 2022
An app to explore and bookmark packages hosted on pub.dev.

pub.dev explorer An app to explore and bookmark packages hosted on pub.dev. Web App Packages are shown in descending order starting from the most rece

Kabo 2 Nov 11, 2022
[Work-in-progress] Outil de synchronisation automatique d'emploi du temps de la Fac des Sciences de Montpellier vers un agenda Google.

Kal Kal est un outil permettant de transférer un emploi du temps de la fac sur un agenda électronique automatiquement. Il permet aussi de customiser l

null 2 Oct 25, 2022
GitHub Action that uses the Dart Package Analyzer to compute the Pub score of Dart/Flutter packages

Dart/Flutter package analyzer This action uses the pana (Package ANAlysis) package to compute the score that your Dart or Flutter package will have on

Axel Ogereau-Peltier 45 Dec 29, 2022
Helper pub package for flutter_icons

flutter_icons_helper An helper implementing utility methods for package flutter_

Nicolò Sonnino 3 Jun 22, 2022
Flutter list view - An unofficial list view for flutter

Flutter List View I don't like official list view. There are some features don't

null 24 Dec 15, 2022
Grid-View-App - Grid View App For Flutter

grid_view_app practice purpose flutter application Getting Started This project

Md Tarequl Islam 4 Jun 9, 2022
Swipeable button view - Create Ripple Animated Pages With Swipeable Button View

swipeable_button_view You can create ripple animated pages with swipeable_button

cemreonur 3 Apr 22, 2022
-UNDER DEVELOPMENT- a project built demonstrating model view view model architecture

mvvm_project A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if

Atuoha Anthony 4 Nov 28, 2022
Google's Flutter Clock Challenge Novelty 🚀 of Idea Award 🏆 winner (https://flutter.dev/clock)

Sunset Reflections Clock My submission to the Flutter Clock Challenge, winner of the Novelty of Idea award: a cold cathode display clock (aka nixie cl

Víctor Morilla 52 Dec 26, 2022