Example #1
0
    def add_checkbox_menu(self, title, row, column, row_span=1, column_span=1, padx=1, pady=0, checked_char='X'):
        """Function that adds a new checkbox menu to the CUI grid
        
        Parameters
        ----------
        title : str
            The title of the checkbox
        row : int
            The row value, from the top down
        column : int
            The column value from the top down
        row_span=1 : int
            The number of rows to span accross
        column_span=1 : int
            the number of columns to span accross
        padx=1 : int
            number of padding characters in the x direction
        pady=0 : int
            number of padding characters in the y direction
        checked_char='X' : char
            The character used to mark 'Checked' items

        Returns
        -------
        new_checkbox_menu : CheckBoxMenu
            A reference to the created checkbox object.
        """

        id = 'Widget{}'.format(len(self.widgets.keys()))
        new_checkbox_menu = widgets.CheckBoxMenu(id, title, self.grid, row, column, row_span, column_span, padx, pady, checked_char)
        self.widgets[id] = new_checkbox_menu
        if self.selected_widget is None:
            self.set_selected_widget(id)
        return new_checkbox_menu
Example #2
0
    def add_checkbox_menu(
            self,
            title: str,
            row: int,
            column: int,
            row_span: int = 1,
            column_span: int = 1,
            padx: int = 1,
            pady: int = 0,
            checked_char: str = 'X') -> 'py_cui.widgets.CheckBoxMenu':
        """Function that adds a new checkbox menu to the CUI grid

        Parameters
        ----------
        title : str
            The title of the checkbox
        row : int
            The row value, from the top down
        column : int
            The column value from the top down
        row_span=1 : int
            The number of rows to span accross
        column_span=1 : int
            the number of columns to span accross
        padx=1 : int
            number of padding characters in the x direction
        pady=0 : int
            number of padding characters in the y direction
        checked_char='X' : char
            The character used to mark 'Checked' items

        Returns
        -------
        new_checkbox_menu : CheckBoxMenu
            A reference to the created checkbox object.
        """

        id = len(self.get_widgets().keys())
        new_checkbox_menu = widgets.CheckBoxMenu(id, title, self._grid, row,
                                                 column, row_span, column_span,
                                                 padx, pady, self._logger,
                                                 checked_char)
        self._widgets[id] = new_checkbox_menu
        if self._selected_widget is None:
            self.set_selected_widget(id)
        self._logger.debug(
            f'Adding widget {title} w/ ID {id} of type {str(type(new_checkbox_menu))}'
        )
        return new_checkbox_menu