void NativeDateTimePickerObject::setupEvents(TiEventContainerFactory* containerFactory) { NativeControlObject::setupEvents(containerFactory); TiEventContainer* eventChange = containerFactory->createEventContainer(); eventChange->setDataProperty("type", tetCHANGE); events_.insert(tetCHANGE, EventPairSmartPtr(eventChange, new DateTimePickerEventHandler(eventChange))); QObject::connect(dateTimePicker_, SIGNAL(valueChanged(QDateTime)), events_[tetCHANGE]->handler(), SLOT(setValue(QDateTime))); }
void NativeImageButtonObject::setupEvents(TiEventContainerFactory* containerFactory) { NativeControlObject::setupEvents(containerFactory); TiEventContainer* eventClick = containerFactory->createEventContainer(); eventClick->setDataProperty("type", tetCLICK); events_.insert(tetCLICK, EventPairSmartPtr(eventClick, new ImageButtonEventHandler(eventClick))); QObject::connect(button_, SIGNAL(clicked()), events_[tetCLICK]->handler(), SLOT(clicked(void))); }
void NativeImageViewObject::setupEvents(TiEventContainerFactory* containerFactory) { NativeControlObject::setupEvents(containerFactory); TiEventContainer* eventImageChanged = containerFactory->createEventContainer(); eventImageChanged->setDataProperty("type", tetCHANGE); events_.insert(tetCHANGE, EventPairSmartPtr(eventImageChanged, new ImageViewEventHandler(eventImageChanged))); QObject::connect(imageView_, SIGNAL(imageChanged(const bb::cascades::Image)), events_[tetCHANGE]->handler(), SLOT(imageChanged(const bb::cascades::Image))); }
void NativeOptionDialogObject::setupEvents(TiEventContainerFactory* containerFactory) { NativeProxyObject::setupEvents(containerFactory); TiEventContainer* eventClick = containerFactory->createEventContainer(); eventClick->setDataProperty("type", tetCLICK); events_.insert(tetCLICK, EventPairSmartPtr(eventClick, new NativeOptionDialogEventHandler(eventClick))); QObject::connect(dialog_, SIGNAL(finished(bb::system::SystemUiResult::Type)), events_[tetCLICK]->handler(), SLOT(clicked(bb::system::SystemUiResult::Type))); }
int NativeProxyObject::setEventHandler(const char* eventName, TiEvent* event) { TiEventContainer* container; if (events_.contains(eventName)) { container = events_[eventName]->container(); } else { TiEventContainerFactory* factory = TitaniumRuntime::instance()->objectFactory()->getEventContainerFactory(); container = factory->createEventContainer(); events_.insert(eventName, EventPairSmartPtr(container, NULL)); } event->setId(getNextEventId()); container->addListener(event); return NATIVE_ERROR_OK; }
void NativeOptionDialogEventHandler::clicked(bb::system::SystemUiResult::Type) { bb::system::SystemListDialog* dialog = static_cast<bb::system::SystemListDialog*>(sender()); bb::system::SystemUiButton* selectedButton = dialog->buttonSelection(); if (selectedButton == NULL) { return; } int index = -1; if(dialog->selectedIndices().length() > 0) { index = dialog->selectedIndices().at(0); } TiEventContainer* container = getEventContainer(); container->setDataProperty("index", index); container->setDataProperty("cancel", selectedButton == dialog->cancelButton()); container->fireEvent(); }
void NativeVideoPlayerObject::setupEvents(TiEventContainerFactory* containerFactory) { NativeControlObject::setupEvents(containerFactory); TiEventContainer* change = containerFactory->createEventContainer(); change->setDataProperty("type", tetCHANGE); events_.insert(tetCHANGE, EventPairSmartPtr(change, new VideoPlayerObjectEventHandler(change, this))); TiEventContainer* completed = containerFactory->createEventContainer(); change->setDataProperty("type", tetCOMPLETED); events_.insert(tetCOMPLETED, EventPairSmartPtr(completed, new VideoPlayerObjectEventHandler(completed, this))); QObject::connect(player_, SIGNAL(bufferStatusChanged(bb::multimedia::BufferStatus::Type)), events_[tetCHANGE]->handler(), SLOT(changed(bb::multimedia::BufferStatus::Type))); QObject::connect(player_, SIGNAL(playbackCompleted()), events_[tetCOMPLETED]->handler(), SLOT(completed())); QObject::connect(player_, SIGNAL(repeatModeChanged(bb::multimedia::RepeatMode::Type)), events_[tetCHANGE]->handler(), SLOT(repeatModeChanged(bb::multimedia::RepeatMode::Type))); QObject::connect(foreignWindow_, SIGNAL(windowAttached(screen_window_t, QString, QString)), events_[tetCHANGE]->handler(), SLOT(windowAttached(screen_window_t, QString, QString))); }