CameraModel::CameraModel(QQmlApplicationEngine *eng, CalaosConnection *con, QObject *parent): QStandardItemModel(parent), QQuickImageProvider(QQuickImageProvider::Image), engine(eng), connection(con) { QHash<int, QByteArray> roles; roles[RoleId] = "cameraId"; roles[RoleName] = "name"; roles[RoleUrl] = "url_single"; setItemRoleNames(roles); set_cameraVisible(false); //add a special image provider for single pictures of cameras engine->addImageProvider(QLatin1String("camera"), this); connect(this, &CameraModel::cameraVisibleChanged, this, [=](bool visible) { for (int i = 0;i < rowCount();i++) { CameraItem *obj = dynamic_cast<CameraItem *>(item(i)); obj->set_cameraVisible(visible); if (visible) obj->startCamera(); } }); connect(connection, &CalaosConnection::eventTouchscreenCamera, this, &CameraModel::eventTouchscreenCamera); }
IpAddressItemModel::IpAddressItemModel() : QStandardItemModel(NULL) { QHash<int, QByteArray> roleNames; roleNames[Ip] = "ip"; #if QT_VERSION >= QT_VERSION_CHECK(5,0,0) setItemRoleNames(roleNames); #else setRoleNames(roleNames); #endif refreshIpList(); }
AudioModel::AudioModel(QQmlApplicationEngine *eng, CalaosConnection *con, QObject *parent): QStandardItemModel(parent), engine(eng), connection(con) { QHash<int, QByteArray> roles; roles[RoleId] = "audioId"; roles[RoleName] = "audioName"; roles[RolePicSrc] = "audioCoverSource"; roles[RoleTitle] = "audioTitle"; roles[RoleVolume] = "audioVolume"; roles[RoleAlbum] = "audioAlbum"; roles[RoleArtist] = "audioArtist"; roles[RoleStatus] = "audioStatus"; setItemRoleNames(roles); }
RecentListItemModel::RecentListItemModel() : QStandardItemModel(NULL) { QHash<int, QByteArray> roleNames; roleNames[Name] = "name"; roleNames[Value] = "value"; roleNames[Type] = "type"; roleNames[TypeIcon] = "typeIcon"; roleNames[DateTime] = "dateTime"; roleNames[Sender] = "sender"; roleNames[Size] = "size"; #if QT_VERSION >= QT_VERSION_CHECK(5,0,0) setItemRoleNames(roleNames); #else setRoleNames(roleNames); #endif }