void createModelsAndPopulateViews()
    {
        ui->atcView->setIndentation(10);
        ui->atcView->setEditTriggers(QAbstractItemView::NoEditTriggers);

        _atcTreeProxyModel = new AtcTreeProxyModel(q);
        _atcTreeProxyModel->initialize(ddiCore()->atcTableModel());
        _proxyModel = new TreeProxyModel(q);
        _proxyModel->setSourceModel(_atcTreeProxyModel);

        ui->editor->setAtcTableModel(ddiCore()->atcTableModel());
        ui->atcView->setModel(_proxyModel);

        for(int i = 0; i < ddiCore()->atcTableModel()->columnCount(); ++i)
            ui->atcView->setColumnHidden(i, true);
        ui->atcView->setColumnHidden(AtcTreeProxyModel::Code, false);
        ui->atcView->setColumnHidden(AtcTreeProxyModel::LabelEn, false);
    }
    void prepareModelsAndViews()
    {
        // Models and views in the selector

        // Molecules
        _proxyMoleculeModel = new DrugInteractorSortFilterProxyModel(q);
        _proxyMoleculeModel->setSourceModel(ddiCore()->drugInteractorTableModel());
        _proxyMoleculeModel->setFilterCaseSensitivity(Qt::CaseInsensitive);
        _proxyMoleculeModel->setFilterKeyColumn(DrugInteractorTableModel::TranslatedLabel);
        _proxyMoleculeModel->setSortRole(Qt::DisplayRole);
        _proxyMoleculeModel->setDynamicSortFilter(true);
        _proxyMoleculeModel->sort(DrugInteractorTableModel::TranslatedLabel);
        ui->molsListView->setModel(_proxyMoleculeModel);
        ui->molsListView->setModelColumn(DrugInteractorTableModel::TranslatedLabel);
        ui->molsListView->setEditTriggers(QAbstractItemView::NoEditTriggers);

        // Models and views in the editor
        // AtcCodes
        _atcCodesStringListModel = new QStringListModel(q);
        ui->atcTableView->setModel(_atcCodesStringListModel);
        ui->atcTableView->horizontalHeader()->setResizeMode(0, QHeaderView::Stretch);
        ui->atcTableView->setAlternatingRowColors(true);
        ui->atcTableView->horizontalHeader()->hide();
        ui->atcTableView->verticalHeader()->hide();
        ui->atcTableView->setEditTriggers(QAbstractItemView::NoEditTriggers);

        _childrenInteractorsStringListModel = new QStringListModel(q);
        ui->classChildrenTableView->setModel(_childrenInteractorsStringListModel);
        ui->classChildrenTableView->horizontalHeader()->setResizeMode(0, QHeaderView::Stretch);
        ui->classChildrenTableView->setAlternatingRowColors(true);
        ui->classChildrenTableView->horizontalHeader()->hide();
        ui->classChildrenTableView->verticalHeader()->hide();
        //ui->classChildrenTableView->setEditTriggers(QAbstractItemView::NoEditTriggers);

        _pmidStringListModel = new QStringListModel(q);
        ui->pmidListView->setModel(_pmidStringListModel);
        //ui->pmidListView->horizontalHeader()->setResizeMode(0, QHeaderView::Stretch);
        ui->pmidListView->setAlternatingRowColors(true);
        //ui->pmidListView->horizontalHeader()->hide();
        //ui->pmidListView->verticalHeader()->hide();
    }