# Path: Qt.py

# 
# Path: ts2/utils.py
# class Context:
# class FormatException(Exception):
# class MissingDependencyException(Exception):
# class DurationProba(QtCore.QObject):
#     GAME = 10
#     EDITORS = [20, 21, 22, 23, 24, 25]
#     EDITOR_GENERAL = 20
#     EDITOR_SCENERY = 21
#     EDITOR_ROUTES = 22
#     EDITOR_TRAINTYPES = 23
#     EDITOR_SERVICES = 24
#     EDITOR_TRAINS = 25
#     def __init__(self, arg):
#     def __init__(self, arg):
# def cumsum(lis):
#     def __init__(self, data):
#     def __str__(self):
#     def list(self):
#     def isNull(self):
#     def yieldValue(self):
# def to_json(data):
# def from_json(json_str):


from Qt import QtCore, Qt
from ts2 import utils
#   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
#




class ServiceInfoModel(QtCore.QAbstractTableModel):
    """Model for displaying a single service information in a view
    """
    def __init__(self, simulation):
        """Constructor for the ServiceInfoModel class"""
        super().__init__()
        self._service = None
        self.simulation = simulation

    def rowCount(self, parent=None, *args, **kwargs):
        """Returns the number of rows of the model, corresponding to the
        number of serviceLines of this service."""
        if self._service is not None:
            return len(self._service.lines)
        else:
            return 0

    def columnCount(self, parent=None, *args, **kwargs):
        """Returns the number of columns of the model"""
        if self._service is not None:
            return 4
        else:
            return 0


# Path: Qt.py

# 
# Path: ts2/utils.py
# class Context:
# class FormatException(Exception):
# class MissingDependencyException(Exception):
# class DurationProba(QtCore.QObject):
#     GAME = 10
#     EDITORS = [20, 21, 22, 23, 24, 25]
#     EDITOR_GENERAL = 20
#     EDITOR_SCENERY = 21
#     EDITOR_ROUTES = 22
#     EDITOR_TRAINTYPES = 23
#     EDITOR_SERVICES = 24
#     EDITOR_TRAINS = 25
#     def __init__(self, arg):
#     def __init__(self, arg):
# def cumsum(lis):
#     def __init__(self, data):
#     def __str__(self):
#     def list(self):
#     def isNull(self):
#     def yieldValue(self):
# def to_json(data):
# def from_json(json_str):


# Path: ts2/trains/service.py
from Qt import QtCore, Qt
from ts2 import utils

#   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
#




class ServiceInfoModel(QtCore.QAbstractTableModel):
    """Model for displaying a single service information in a view
    """
    def __init__(self, simulation):
        """Constructor for the ServiceInfoModel class"""
        super().__init__()
        self._service = None
        self.simulation = simulation

    def rowCount(self, parent=None, *args, **kwargs):
        """Returns the number of rows of the model, corresponding to the
        number of serviceLines of this service."""
        if self._service is not None:
            return len(self._service.lines)
        else:
            return 0

    def columnCount(self, parent=None, *args, **kwargs):
        """Returns the number of columns of the model"""
        if self._service is not None:
            return 4
        else:
            return 0


    def data(self, index, role=Qt.DisplayRole):