dhxpyt.sidebar

 1from .sidebar import Sidebar
 2from .sidebar_config import SidebarConfig, CustomHTMLConfig, MenuItemConfig, NavItemConfig, SeparatorConfig, SpacerConfig, TitleConfig
 3
 4__all__ = [
 5    'Sidebar',
 6    'SidebarConfig',
 7    'CustomHTMLConfig',
 8    'MenuItemConfig',
 9    'NavItemConfig',
10    'SeparatorConfig',
11    'SpacerConfig',
12    'TitleConfig'
13]
class SidebarConfig:
140class SidebarConfig:
141    """
142    Configuration class for the Sidebar widget.
143    """
144    def __init__(self,
145                 data: Optional[List[ControlConfig]] = None,
146                 collapsed: Optional[bool] = None,
147                 css: Optional[str] = None,
148                 menuCss: Optional[str] = None,
149                 minWidth: Union[int, str] = None,
150                 width: Union[int, str] = None):
151        """
152        Initializes the SidebarConfig.
153
154        :param data: (Optional) List of control configurations to set into Sidebar.
155        :param collapsed: (Optional) Defines that a sidebar is initialized in the collapsed state.
156        :param css: (Optional) Adds style classes to Sidebar.
157        :param menuCss: (Optional) Adds style classes to all containers of Sidebar controls with nested items.
158        :param minWidth: (Optional) Sets the minimal width of a sidebar in the collapsed state.
159        :param width: (Optional) Sets the width of a sidebar.
160        """
161        self.data = data
162        self.collapsed = collapsed
163        self.css = css
164        self.menuCss = menuCss
165        self.minWidth = minWidth
166        self.width = width
167
168    def to_dict(self) -> Dict[str, Any]:
169        """
170        Converts the SidebarConfig into a dictionary format.
171        """
172        data_dicts = [item.to_dict() for item in self.data] if self.data else None
173        config_dict = {
174            'data': data_dicts,
175            'collapsed': self.collapsed,
176            'css': self.css,
177            'menuCss': self.menuCss,
178            'minWidth': self.minWidth,
179            'width': self.width
180        }
181        return {k: v for k, v in config_dict.items() if v is not None}

Configuration class for the Sidebar widget.

SidebarConfig( data: Optional[List[dhxpyt.sidebar.sidebar_config.ControlConfig]] = None, collapsed: Optional[bool] = None, css: Optional[str] = None, menuCss: Optional[str] = None, minWidth: Union[int, str] = None, width: Union[int, str] = None)
144    def __init__(self,
145                 data: Optional[List[ControlConfig]] = None,
146                 collapsed: Optional[bool] = None,
147                 css: Optional[str] = None,
148                 menuCss: Optional[str] = None,
149                 minWidth: Union[int, str] = None,
150                 width: Union[int, str] = None):
151        """
152        Initializes the SidebarConfig.
153
154        :param data: (Optional) List of control configurations to set into Sidebar.
155        :param collapsed: (Optional) Defines that a sidebar is initialized in the collapsed state.
156        :param css: (Optional) Adds style classes to Sidebar.
157        :param menuCss: (Optional) Adds style classes to all containers of Sidebar controls with nested items.
158        :param minWidth: (Optional) Sets the minimal width of a sidebar in the collapsed state.
159        :param width: (Optional) Sets the width of a sidebar.
160        """
161        self.data = data
162        self.collapsed = collapsed
163        self.css = css
164        self.menuCss = menuCss
165        self.minWidth = minWidth
166        self.width = width

Initializes the SidebarConfig.

Parameters
  • data: (Optional) List of control configurations to set into Sidebar.
  • collapsed: (Optional) Defines that a sidebar is initialized in the collapsed state.
  • css: (Optional) Adds style classes to Sidebar.
  • menuCss: (Optional) Adds style classes to all containers of Sidebar controls with nested items.
  • minWidth: (Optional) Sets the minimal width of a sidebar in the collapsed state.
  • width: (Optional) Sets the width of a sidebar.
data
collapsed
css
menuCss
minWidth
width
def to_dict(self) -> Dict[str, Any]:
168    def to_dict(self) -> Dict[str, Any]:
169        """
170        Converts the SidebarConfig into a dictionary format.
171        """
172        data_dicts = [item.to_dict() for item in self.data] if self.data else None
173        config_dict = {
174            'data': data_dicts,
175            'collapsed': self.collapsed,
176            'css': self.css,
177            'menuCss': self.menuCss,
178            'minWidth': self.minWidth,
179            'width': self.width
180        }
181        return {k: v for k, v in config_dict.items() if v is not None}

Converts the SidebarConfig into a dictionary format.

class CustomHTMLConfig(dhxpyt.sidebar.sidebar_config.ControlConfig):
10class CustomHTMLConfig(ControlConfig):
11    def __init__(self,
12                 id: Optional[str] = None,
13                 parent: Optional[str] = None,
14                 html: Optional[str] = None,
15                 css: Optional[str] = None,
16                 hidden: Optional[bool] = None):
17        self.type = "customHTML"
18        self.id = id
19        self.parent = parent
20        self.html = html
21        self.css = css
22        self.hidden = hidden
CustomHTMLConfig( id: Optional[str] = None, parent: Optional[str] = None, html: Optional[str] = None, css: Optional[str] = None, hidden: Optional[bool] = None)
11    def __init__(self,
12                 id: Optional[str] = None,
13                 parent: Optional[str] = None,
14                 html: Optional[str] = None,
15                 css: Optional[str] = None,
16                 hidden: Optional[bool] = None):
17        self.type = "customHTML"
18        self.id = id
19        self.parent = parent
20        self.html = html
21        self.css = css
22        self.hidden = hidden
type
id
parent
html
css
hidden
class SeparatorConfig(dhxpyt.sidebar.sidebar_config.ControlConfig):
105class SeparatorConfig(ControlConfig):
106    def __init__(self,
107                 id: Optional[str] = None):
108        self.type = "separator"
109        self.id = id
SeparatorConfig(id: Optional[str] = None)
106    def __init__(self,
107                 id: Optional[str] = None):
108        self.type = "separator"
109        self.id = id
type
id
class SpacerConfig(dhxpyt.sidebar.sidebar_config.ControlConfig):
112class SpacerConfig(ControlConfig):
113    def __init__(self,
114                 id: Optional[str] = None):
115        self.type = "spacer"
116        self.id = id
SpacerConfig(id: Optional[str] = None)
113    def __init__(self,
114                 id: Optional[str] = None):
115        self.type = "spacer"
116        self.id = id
type
id
class TitleConfig(dhxpyt.sidebar.sidebar_config.ControlConfig):
119class TitleConfig(ControlConfig):
120    def __init__(self,
121                 id: Optional[str] = None,
122                 parent: Optional[str] = None,
123                 value: Optional[str] = None,
124                 html: Optional[str] = None,
125                 tooltip: Optional[str] = None,
126                 css: Optional[str] = None,
127                 disabled: Optional[bool] = None,
128                 hidden: Optional[bool] = None):
129        self.type = "title"
130        self.id = id
131        self.parent = parent
132        self.value = value
133        self.html = html
134        self.tooltip = tooltip
135        self.css = css
136        self.disabled = disabled
137        self.hidden = hidden
TitleConfig( id: Optional[str] = None, parent: Optional[str] = None, value: Optional[str] = None, html: Optional[str] = None, tooltip: Optional[str] = None, css: Optional[str] = None, disabled: Optional[bool] = None, hidden: Optional[bool] = None)
120    def __init__(self,
121                 id: Optional[str] = None,
122                 parent: Optional[str] = None,
123                 value: Optional[str] = None,
124                 html: Optional[str] = None,
125                 tooltip: Optional[str] = None,
126                 css: Optional[str] = None,
127                 disabled: Optional[bool] = None,
128                 hidden: Optional[bool] = None):
129        self.type = "title"
130        self.id = id
131        self.parent = parent
132        self.value = value
133        self.html = html
134        self.tooltip = tooltip
135        self.css = css
136        self.disabled = disabled
137        self.hidden = hidden
type
id
parent
value
html
tooltip
css
disabled
hidden