-
- Downloads
Table: Přidání CellInput
parent
420b771c
No related branches found
No related tags found
This commit is part of merge request !105. Comments created here will be created in the context of that merge request.
... | ... | @@ -71,22 +71,35 @@ class CellLink(Cell): |
return a + '>' + escape(self.text) + '</a>' + str(self.html_suffix) | ||
class CellCheckbox(Cell): | ||
class CellInput(Cell): | ||
name: str | ||
value: str | ||
checked: bool | ||
type: str | ||
attrs: Dict[str, Optional[str]] | ||
def __init__(self, name: str, value: str, checked: bool = False): | ||
def __init__(self, name: str, value: str, type: str = "text", attrs: Dict[str, Optional[str]] = {}): | ||
Cell.__init__(self, "") | ||
self.name = name | ||
self.value = value | ||
self.checked = checked | ||
self.type = type | ||
self.attrs = attrs | ||
def to_html(self) -> str: | ||
ch = f'<td><input type="checkbox" name="{self.name}" value="{self.value}"' | ||
if self.checked: | ||
ch += ' checked' | ||
return ch + '>' | ||
out = f'<td><input type="{self.type}" name="{self.name}" value="{self.value}"' | ||
for (attr, value) in self.attrs.items(): | ||
out += f' {attr}' | ||
if value is not None: | ||
out += f'="{value}"' | ||
|
||
return out + '>' | ||
class CellCheckbox(CellInput): | ||
def __init__(self, name: str, value: str, checked: bool = False): | ||
attrs = {} | ||
if checked: | ||
attrs['checked'] = None | ||
CellInput.__init__(self, name, value, "checkbox", attrs) | ||
class CellMarkup(Cell): | ||
text: str | ||
... | ... |