Skip to main content

linked inputs for flet framework

Project description

Linked Inputs

This module Interconnects a couple of flet inputs, actually, it combines the value of the inputs and manages them. This module can be used to make "pin inputs" and so on.

Instalation

first of all get the project from pypi or github:

cloning form github

clone https://github.com/naderidev/linkedinputs

installing using pip

$ pip install linkedinputs

Usage

LinkedInputs

The LinkedInputs class is the mother class and the basic form of the module.

this class just have the input type rule.

Properties

  • page
  • inputs : the list of Inputs to be connected
  • accept_type : an instance of AcceptTypes which specifies the content type of inputs
  • on_change: on inputs value changed. actually, it returns the value of each input in a list
  • on_error: on user entered the wrong value type
  • on_complete: on all inputs filled
  • place: a Row or Column control without any child controls

Methods

  • errors: only returns the error of each input in a list

  • flash_errors(): returns the errors then clears the errors

  • value: returns the value of each input and also it has a setter which you can set a specific value for each input. for example:

    ...
    linkedinputs.value = ['124' , '457' , '478']
    ...
    

    this is an example is when you have 3 inputs which they require ONLY_NUMBER

  • string_value: combines the value of inputs and returns it as a string

RegularLinkedInputs

the RegularLinkedInputs class has defined new rules (like accept_length) for the LinkedInputs class and ordered it.

Properties

  • all LinkedInputs properties
  • accept_length: the value lenght of each input
  • one_by_one: o to the next input on current, filled

an example of RegularLinkedInputs:

source avliable in examples/bankcard_example.py BankCard exmaple In this example when you enter 6 numbers, the associated bank name is displayed (the banks are Iranian)

PinInputT1

the PinInputT1 is using RegularLinkedInputs and it is used to making password inputs

Properties

  • page
  • accept_type : an instance of AcceptTypes which specifies the content type of inputs
  • correct_answer: the correct password for validating
  • on_complete: on all inputs filled
  • accept_length: the value lenght of each input

Methods

  • all RegularLinkedInputs methods
  • is_correct: is password correct

Note: if you want to customize the piniput inputs just ceate a class and extend PinInputT1 then override pin_inputs() method with your own inputs. for example:

class MyPinInput(PinInputT1):
    def pin_inputs(self):
        return [
            TextField(
                ...
            ) for _ in range(...)
        ]

an example of PinInputT1:

source avliable in examples/pininput_t1_example.py PinInput exmaple

Hope this package be useful for you :)

Donating

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

linkedinputs-0.0.2.tar.gz (5.8 kB view hashes)

Uploaded Source

Built Distribution

linkedinputs-0.0.2-py3-none-any.whl (6.3 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page