Skip to content

Instantly share code, notes, and snippets.

View roipeker's full-sized avatar
🏠
Working from home

Roi Peker roipeker

🏠
Working from home
View GitHub Profile
@roipeker
roipeker / issue1481.dart
Created May 28, 2021 01:27
Getx Issue 1481 (same Type Controllers in multipage navigation).
/// Note:
/// A simple fix for this case scenario of local controller lifecycle, might be
/// to separate the `global:false` logic here:
/// https://github.com/jonataslaw/getx/blob/07ad5d7f9e726f181800359d0218b44e5967ccf8/lib/get_state_manager/src/simple/get_state.dart#L177
// ...
// if (_isCreator! || widget.assignId) {
// if (widget.autoRemove) {
// /// if the Controller is flagged as "local", run manually `onClose()`.
// if( !widget.global ){
@roipeker
roipeker / main.dart
Created May 27, 2021 04:48
Simple image capture + color picker demo (uiGradients)
///
/// Live demo at:
///
/// https://roi-gradient-picker.surge.sh/
///
///
import 'dart:ui';
import 'package:flutter/material.dart' hide Image;
import 'package:flutter/rendering.dart';
@roipeker
roipeker / bitmap2.dart
Created May 18, 2021 23:50
Trying to mimic AS3 API for BitmapData in Flutter, (pixel data manipulation), not included in GraphX.
/// GraphX DisplayObject.
import 'package:graphx/graphx.dart';
import 'package:graphx_basics/scenes/bitmap_data.dart';
class Bitmap2 extends DisplayObject {
BitmapData _bd;
set bitmapData(BitmapData value) => _bd = value;
BitmapData get bitmapData => _bd;
Bitmap2([BitmapData bd]) {
@roipeker
roipeker / demo.dart
Created March 26, 2021 22:20
Auto constrained height for PageView (same concept applies to ListView).
/// uses getx to notify changes.
final _pagesSizes = <double>[120, 150, 180, 210];
final count = 4.obs;
class DemoAutoSizePageView extends StatefulWidget {
@override
_DemoAutoSizePageViewState createState() => _DemoAutoSizePageViewState();
}
class _DemoAutoSizePageViewState extends State<DemoAutoSizePageView> {
@roipeker
roipeker / main.dart
Created March 9, 2021 01:41
Getx bottom navigation, subnav in home.
import 'package:flutter/material.dart';
import 'package:get/get.dart';
void main() {
runApp(MyApp());
}
class MyNavModel {
static final Map<String, MyNavModel> urls = {};
final IconData icon;
@roipeker
roipeker / lungs_demo.dart
Created February 26, 2021 02:38
GraphX: lungs animation demo
/// roipeker 2020
///
import 'package:flutter/material.dart';
import 'package:graphx/graphx.dart';
import 'scene.dart';
class LungsMain extends StatelessWidget {
@override
Widget build(BuildContext context) {
@roipeker
roipeker / api_errors.dart
Last active February 27, 2021 21:02
Dart generic api response.
/*
* Copyright (c) 2020. roipeker™ [Rodrigo López Peker]
* All rights reserved.
*/
import 'api_response.dart';
// ignore: avoid_classes_with_only_static_members
abstract class ApiErrors {
static const defaultError = 'No se puede procesar la data';
@roipeker
roipeker / digit_input.dart
Created February 10, 2021 12:09
PIN code sample with hidden TextField.
/// roipeker 2021.
import 'package:cryptericon/utils/common.dart';
class EditPhoneConfirmationView extends GetView<MyTextInputController> {
static const id = '/contact-edit/phone/confirmation';
@override
Widget build(BuildContext context) {
Get.put(MyTextInputController());
@roipeker
roipeker / main.dart
Last active April 15, 2021 08:57
GetX: button with loading state
/// LIVE DEMO: https://dartpad.dev/embed-flutter.html?theme=dark&id=2ac7575bcff374bd170a125b916c8b41
import 'dart:developer' as developer; import 'dart:async'; import 'dart:collection'; import 'package:flutter/foundation.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/material.dart'; import 'package:flutter/widgets.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/scheduler.dart'; import 'dart:math' as math; import 'dart:ui' as ui; import 'dart:typed_data'; import 'dart:convert';
// ignore: avoid_web_libraries_in_flutter
import 'dart:html' as html;
import 'package:flutter/material.dart';
class ButtonController extends GetxController {
static const kColorOut = Color(0xff2C2C2C);
@roipeker
roipeker / main.dart
Last active February 1, 2021 19:39
graphx dartpad test
/// ---- graphx imports.
import 'dart:collection';
import 'dart:convert';
import 'dart:developer' as dev;
import 'dart:math' as math;
import 'dart:typed_data';
import 'dart:ui' as ui;
import 'package:flutter/foundation.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/material.dart';