From aa274ad14918015e31ec17f1ec855ec418366df1 Mon Sep 17 00:00:00 2001 From: David Freese Date: Thu, 18 Jun 2015 15:39:07 -0500 Subject: [PATCH] html5 custom controls * Added the following html5 custom controls for custom forms - time - date - datetime - datetime-local - week - month --- src/custom/custom.cxx | 53 +++++++++++++++++++++++++++++++++++++------ 1 file changed, 46 insertions(+), 7 deletions(-) diff --git a/src/custom/custom.cxx b/src/custom/custom.cxx index 06fa546..710047e 100644 --- a/src/custom/custom.cxx +++ b/src/custom/custom.cxx @@ -105,12 +105,19 @@ static string selected = "SELECTED"; static string value_str = "VALUE=\""; static string name_str = "NAME=\""; -static string text_type_str = "TYPE=\"TEXT\""; -static string radio_type_str = "TYPE=\"RADIO\""; -static string checkbox_type_str = "TYPE=\"CHECKBOX\""; -static string password_type_str = "TYPE=\"PASSWORD\""; +static string text_type_str = "TYPE=\"TEXT\""; +static string radio_type_str = "TYPE=\"RADIO\""; +static string checkbox_type_str = "TYPE=\"CHECKBOX\""; +static string password_type_str = "TYPE=\"PASSWORD\""; +static string date_str = "TYPE=\"DATE\""; +static string datetime_str = "TYPE=\"DATETIME\""; +static string datetime_local_str = "TYPE=\"DATETIME-LOCAL\""; +static string time_str = "TYPE=\"TIME\""; +static string week_str = "TYPE=\"WEEK\""; +static string month_str = "TYPE=\"MONTH\""; -enum {T_TEXT, T_RADIO, T_CHECKBOX, T_AREA, T_SELECT, T_OPTION, T_PASSWORD}; +enum {T_TEXT, T_RADIO, T_CHECKBOX, T_AREA, T_SELECT, T_OPTION, T_PASSWORD, + T_DATE, T_DTIME, T_DTIME_LOCAL, T_TIME, T_WEEK, T_MONTH}; struct INPUT_TYPE { int id; @@ -127,7 +134,13 @@ static INPUT_TYPE input_types[] = { INPUT_TYPE(T_AREA, textarea_str), INPUT_TYPE(T_RADIO, radio_type_str), INPUT_TYPE(T_CHECKBOX, checkbox_type_str), - INPUT_TYPE(T_SELECT, select_str) + INPUT_TYPE(T_SELECT, select_str), + INPUT_TYPE(T_DATE, text_type_str), + INPUT_TYPE(T_DTIME, text_type_str), + INPUT_TYPE(T_DTIME_LOCAL, text_type_str), + INPUT_TYPE(T_TIME, text_type_str), + INPUT_TYPE(T_WEEK, text_type_str), + INPUT_TYPE(T_MONTH, text_type_str), // INPUT_TYPE(T_OPTION, option_str) }; @@ -197,6 +210,14 @@ int convert_case(string &s) mystring.ureplace("=\"RADIO\""); mystring.ureplace("=\"CHECKBOX\""); mystring.ureplace("=\"PASSWORD\""); + + mystring.ureplace("=\"DATE\""); + mystring.ureplace("=\"DATETIME\""); + mystring.ureplace("=\"DATETIME-LOCAL\""); + mystring.ureplace("=\"TIME\""); + mystring.ureplace("=\"WEEK\""); + mystring.ureplace("=\"MONTH\""); + mystring.ureplace("SELECTED"); mystring.ureplace("CHECKED"); mystring.ureplace("