ProfileScreen constructor
const
ProfileScreen({
- Key? key,
- String screenTitle = "Profile",
- bool showLabels = true,
- ThemeGroupType labelType = ThemeGroupType.MOP,
- Emphasis labelEmphasis = Emphasis.NONE,
- TextAlign labelTextAlign = TextAlign.start,
- bool? showIcons,
- ThemeGroupType prefixIconType = ThemeGroupType.MOM,
- Emphasis prefixIconEmphasis = Emphasis.NONE,
- ThemeGroupType textType = ThemeGroupType.POM,
- Emphasis textEmphasis = Emphasis.HIGH,
- TextAlign textAlign = TextAlign.start,
- ThemeGroupType textFieldBackgroundType = ThemeGroupType.MOP,
- ThemeGroupType valueTextType = ThemeGroupType.MOP,
- Emphasis valueTextEmphasis = Emphasis.HIGH,
- TextAlign valueTextAlign = TextAlign.start,
- bool? showHints,
- ThemeGroupType hintTextType = ThemeGroupType.MOM,
- Emphasis hintTextEmphasis = Emphasis.NONE,
- String email = "",
- bool showEmail = true,
- bool canEditEmail = true,
- bool obscureEmail = false,
- ValueChanged<
String> ? onEmailChangedCallback, - String emailLabel = "Email",
- bool? showEmailLabel,
- String emailHint = "Email",
- bool? showEmailHint,
- IconData? emailIcon = Icons.email,
- bool? showEmailIcon,
- bool validateEmail = true,
- String invalidEmailText = "Email is required",
- String password = "",
- bool showPassword = true,
- bool canEditPassword = true,
- bool obscurePassword = false,
- ValueChanged<
String> ? onPasswordChangedCallback, - String passwordLabel = "Password",
- bool? showPasswordLabel,
- String passwordHint = "Password",
- bool? showPasswordHint,
- IconData? passwordIcon = Icons.password,
- bool? showPasswordIcon,
- bool validatePassword = true,
- String invalidPasswordText = "Enter a password 6+ chars long",
- int passwordMinimumLength = 6,
- String firstName = "",
- bool showFirstName = true,
- bool canEditFirstName = true,
- bool obscureFirstName = false,
- ValueChanged<
String> ? onFirstNameChangedCallback, - String firstNameLabel = "First Name",
- bool? showFirstNameLabel,
- String firstNameHint = "First Name",
- bool? showFirstNameHint,
- IconData? firstNameIcon,
- bool? showFirstNameIcon,
- bool validateFirstName = true,
- String invalidFirstNameText = "First name is required",
- String lastName = "",
- bool showLastName = true,
- bool canEditLastName = true,
- bool obscureLastName = false,
- ValueChanged<
String> ? onLastNameChangedCallback, - String lastNameLabel = "Last Name",
- bool? showLastNameLabel,
- String lastNameHint = "Last Name",
- bool? showLastNameHint,
- IconData? lastNameIcon,
- bool? showLastNameIcon,
- bool validateLastName = true,
- String invalidLastNameText = "Last name is required",
- String tagline = "",
- bool showTagline = true,
- bool canEditTagline = true,
- bool obscureTagline = false,
- ValueChanged<
String> ? onTaglineChangedCallback, - String taglineLabel = "Tagline",
- bool? showTaglineLabel,
- String taglineHint = "Tagline",
- bool? showTaglineHint,
- IconData? taglineIcon,
- bool? showTaglineIcon,
- String pronouns = "",
- bool showPronouns = true,
- bool canEditPronouns = true,
- bool obscurePronouns = false,
- ValueChanged<
String> ? onPronounsChangedCallback, - String pronounsLabel = "Pronouns",
- bool? showPronounsLabel,
- String pronounsHint = "Pronouns",
- bool? showPronounsHint,
- IconData? pronounsIcon,
- bool? showPronounsIcon,
- String organization = "",
- bool showOrganization = true,
- bool canEditOrganization = true,
- bool obscureOrganization = false,
- ValueChanged<
String> ? onOrganizationChangedCallback, - String organizationLabel = "Organization",
- bool? showOrganizationLabel,
- String organizationHint = "Organization",
- bool? showOrganizationHint,
- IconData? organizationIcon,
- bool? showOrganizationIcon,
- String address = "",
- bool showAddress = true,
- bool canEditAddress = true,
- bool obscureAddress = false,
- ValueChanged<
String> ? onAddressChangedCallback, - String addressLabel = "Address",
- bool? showAddressLabel,
- String addressHint = "Address",
- bool? showAddressHint,
- IconData? addressIcon,
- bool? showAddressIcon,
- String city = "",
- bool showCity = true,
- bool canEditCity = true,
- bool obscureCity = false,
- ValueChanged<
String> ? onCityChangedCallback, - String cityLabel = "City",
- bool? showCityLabel,
- String cityHint = "City",
- bool? showCityHint,
- IconData? cityIcon,
- bool? showCityIcon,
- String state = "",
- bool showState = true,
- bool canEditState = true,
- bool obscureState = false,
- ValueChanged<
String> ? onStateChangedCallback, - String stateLabel = "State",
- bool? showStateLabel,
- String stateHint = "State",
- bool? showStateHint,
- IconData? stateIcon,
- bool? showStateIcon,
- String zip = "",
- bool showZip = true,
- bool canEditZip = true,
- bool obscureZip = false,
- ValueChanged<
String> ? onZipChangedCallback, - String zipLabel = "Zip",
- bool? showZipLabel,
- String zipHint = "Zip",
- bool? showZipHint,
- IconData? zipIcon,
- bool? showZipIcon,
- bool validateZip = true,
- String invalidZipText = "Zip is required",
- String logoutText = "Logout",
- VoidCallback? onTapLogout,
- String editText = "Edit",
- VoidCallback? onTapEdit,
- String saveText = "Save",
- VoidCallback? onTapSave,
- String deleteAccount = "Delete",
- VoidCallback? onTapDeleteAccount,
- bool doShowLoginRegisterButtons = true,
- EdgeInsets padding = const EdgeInsets.symmetric(vertical: 0.0, horizontal: paddingMini),
- bool isHeaderSticky = true,
- EdgeInsets headerPadding = const EdgeInsets.all(paddingMini),
- bool centerForm = true,
- bool isEditMode = false,
Implementation
const ProfileScreen({
super.key,
this.screenTitle = "Profile",
this.showLabels = true,
this.labelType = ThemeGroupType.MOP,
this.labelEmphasis = Emphasis.NONE,
this.labelTextAlign = TextAlign.start,
this.showIcons,
this.prefixIconType = ThemeGroupType.MOM,
this.prefixIconEmphasis = Emphasis.NONE,
this.textType = ThemeGroupType.POM,
this.textEmphasis = Emphasis.HIGH,
this.textAlign = TextAlign.start,
this.textFieldBackgroundType = ThemeGroupType.MOP,
this.valueTextType = ThemeGroupType.MOP,
this.valueTextEmphasis = Emphasis.HIGH,
this.valueTextAlign = TextAlign.start,
this.showHints,
this.hintTextType = ThemeGroupType.MOM,
this.hintTextEmphasis = Emphasis.NONE,
// this.hintTextAlign = TextAlign.start,
this.email = "",
this.showEmail = true,
this.canEditEmail = true,
this.obscureEmail = false,
this.onEmailChangedCallback,
this.emailLabel = "Email",
this.showEmailLabel,
this.emailHint = "Email",
this.showEmailHint,
this.emailIcon = Icons.email,
this.showEmailIcon,
this.validateEmail = true,
this.invalidEmailText = "Email is required",
this.password = "",
this.showPassword = true,
this.canEditPassword = true,
this.obscurePassword = false,
this.onPasswordChangedCallback,
this.passwordLabel = "Password",
this.showPasswordLabel,
this.passwordHint = "Password",
this.showPasswordHint,
this.passwordIcon = Icons.password,
this.showPasswordIcon,
this.validatePassword = true,
this.invalidPasswordText = "Enter a password 6+ chars long",
this.passwordMinimumLength = 6,
this.firstName = "",
this.showFirstName = true,
this.canEditFirstName = true,
this.obscureFirstName = false,
this.onFirstNameChangedCallback,
this.firstNameLabel = "First Name",
this.showFirstNameLabel,
this.firstNameHint = "First Name",
this.showFirstNameHint,
this.firstNameIcon,
this.showFirstNameIcon,
this.validateFirstName = true,
this.invalidFirstNameText = "First name is required",
this.lastName = "",
this.showLastName = true,
this.canEditLastName = true,
this.obscureLastName = false,
this.onLastNameChangedCallback,
this.lastNameLabel = "Last Name",
this.showLastNameLabel,
this.lastNameHint = "Last Name",
this.showLastNameHint,
this.lastNameIcon,
this.showLastNameIcon,
this.validateLastName = true,
this.invalidLastNameText = "Last name is required",
this.tagline = "",
this.showTagline = true,
this.canEditTagline = true,
this.obscureTagline = false,
this.onTaglineChangedCallback,
this.taglineLabel = "Tagline",
this.showTaglineLabel,
this.taglineHint = "Tagline",
this.showTaglineHint,
this.taglineIcon,
this.showTaglineIcon,
this.pronouns = "",
this.showPronouns = true,
this.canEditPronouns = true,
this.obscurePronouns = false,
this.onPronounsChangedCallback,
this.pronounsLabel = "Pronouns",
this.showPronounsLabel,
this.pronounsHint = "Pronouns",
this.showPronounsHint,
this.pronounsIcon,
this.showPronounsIcon,
this.organization = "",
this.showOrganization = true,
this.canEditOrganization = true,
this.obscureOrganization = false,
this.onOrganizationChangedCallback,
this.organizationLabel = "Organization",
this.showOrganizationLabel,
this.organizationHint = "Organization",
this.showOrganizationHint,
this.organizationIcon,
this.showOrganizationIcon,
this.address = "",
this.showAddress = true,
this.canEditAddress = true,
this.obscureAddress = false,
this.onAddressChangedCallback,
this.addressLabel = "Address",
this.showAddressLabel,
this.addressHint = "Address",
this.showAddressHint,
this.addressIcon,
this.showAddressIcon,
this.city = "",
this.showCity = true,
this.canEditCity = true,
this.obscureCity = false,
this.onCityChangedCallback,
this.cityLabel = "City",
this.showCityLabel,
this.cityHint = "City",
this.showCityHint,
this.cityIcon,
this.showCityIcon,
this.state = "",
this.showState = true,
this.canEditState = true,
this.obscureState = false,
this.onStateChangedCallback,
this.stateLabel = "State",
this.showStateLabel,
this.stateHint = "State",
this.showStateHint,
this.stateIcon,
this.showStateIcon,
this.zip = "",
this.showZip = true,
this.canEditZip = true,
this.obscureZip = false,
this.onZipChangedCallback,
this.zipLabel = "Zip",
this.showZipLabel,
this.zipHint = "Zip",
this.showZipHint,
this.zipIcon,
this.showZipIcon,
this.validateZip = true,
this.invalidZipText = "Zip is required",
this.logoutText = "Logout",
this.onTapLogout,
this.editText = "Edit",
this.onTapEdit,
this.saveText = "Save",
this.onTapSave,
this.deleteAccount = "Delete",
this.onTapDeleteAccount,
this.doShowLoginRegisterButtons = true,
this.padding = const EdgeInsets.symmetric(vertical: 0.0, horizontal: paddingMini),
this.isHeaderSticky = true,
this.isFooterSticky = true,
this.isFooterVertical = false,
this.headerPadding = const EdgeInsets.all(paddingMini),
this.footerPadding = const EdgeInsets.all(paddingMini),
this.centerForm = true,
this.isEditMode = false
});