from django import forms class DummyFilterInput(forms.HiddenInput): """ A dummy input widget Does not render anything. Can be used to keep filter logic using django_filter without having a pre defined filter widget being rendered to the template. """ template_name = "konova/widgets/empty-dummy-input.html" class TextToClipboardInput(forms.TextInput): template_name = "konova/widgets/text-to-clipboard-input.html" class GenerateInput(forms.TextInput): """ Provides a form group with a button at the end, which generates new content for the input. The url used to fetch new content can be added using the attrs like widget=GenerateInput( attrs={ "url": reverse_lazy("app_name:view_name") ... } ) """ template_name = "konova/widgets/generate-content-input.html"