Skip to content
Snippets Groups Projects
Select Git revision
  • 5ce1cbbe8e3cd1334e08b99807b72a1d9ed4518a
  • main default protected
  • music_player
  • WirMachenFirebaseMitRein
  • madlen
  • mergeHELL
  • ede
  • spotify-api
8 results

moodpage.dart

Blame
  • moodpage.dart 15.00 KiB
    import 'dart:ffi';
    import 'dart:io';
    import 'package:ambient/firebase.dart';
    import 'package:ambient/services/spotify.dart';
    
    import 'main.dart';
    import 'package:vector_math/vector_math.dart';
    import 'package:image_picker/image_picker.dart';
    import 'package:flutter/material.dart';
    import 'package:palette_generator/palette_generator.dart';
    import 'package:flutter_color_models/flutter_color_models.dart';
    
    class StateMoodPage extends StatefulWidget {
      const StateMoodPage({super.key});
    
      @override
      State<StateMoodPage> createState() => MoodPage();
    }
    
    enum Moods { none, happy, sad ,angry, noble, clean, courageous, fresh, compassionn, simple, dramatic}
    
    extension MoodsExtention on Moods {
      Color get color {
        switch (this) {
          case Moods.none:
            return Color.fromARGB(255, 75, 75, 75);
          case Moods.happy:
            return Color.fromARGB(255, 255, 255, 0);
          case Moods.sad:
            return Color.fromARGB(255, 0, 0, 255);
          case Moods.angry:
            return Color.fromARGB(255, 255, 0, 0);
          case Moods.noble:
            return Color.fromARGB(255, 127, 69, 216);
          case Moods.clean:
            return Color.fromARGB(255, 255, 255, 255);
          case Moods.courageous:
            return Color.fromARGB(255, 255, 165, 0);
          case Moods.fresh:
            return Color.fromARGB(255, 0, 255, 0);
          case Moods.compassionn:
            return Color.fromARGB(255, 255, 70, 253);
          case Moods.simple:
            return Color.fromARGB(255, 103, 64, 45);
          case Moods.dramatic:
            return Color.fromARGB(255, 0, 0, 0);
        }
      }
    }
    
    class MoodPage extends State<StateMoodPage> {
      final ImagePicker _picker = ImagePicker();
      late PaletteGenerator paletteGenerator;
      Moods? currentMood = selectedMoodAsEnum;
      String imagePath = "";
    
      //besorgt ein image file aus der galarie
      _getFromGallery() async {
        try {
          XFile? pickedFile = await _picker.pickImage(
            source: ImageSource.gallery,
          );
          if (pickedFile != null) {
            musicCangable = true;
            imagePath = pickedFile.path;
            setState(() {
              usesPicture = true;
              currentMoodsImage = File(imagePath);
            });
          }