VALUE getallPhonebookRecords(void* pb) { #if defined (_WIN32_WCE)//&& !defined( OS_PLATFORM_MOTCE ) if (RHO_IS_WMDEVICE && pb) { CNativeAddressBook* phonebook = (CNativeAddressBook*)pb; VALUE valGc = rho_ruby_disable_gc(); CHoldRubyValue hash(rho_ruby_createHash()); std::vector<CABRecord*> records; phonebook->getAllRecords(records); while(records.size() > 0) { CABRecord* record = records.back(); const char* rid = record->getValue("id").c_str(); if (rid) { LOGC(TRACE,"Phonebook") + "Adding record " + rid; addHashToHash(hash,rid,_getRecord(record)); } delete record; records.pop_back(); } rho_ruby_enable_gc(valGc); return hash; } #endif return rho_ruby_get_NIL(); }
void* openPhonebookRecord(void* pb, char* id) { #if defined (_WIN32_WCE) if (pb && id) { CNativeAddressBook* phonebook = (CNativeAddressBook*)pb; return phonebook->getRecord(id); } #endif return NULL; }
void* openPhonebookRecord(void* pb, char* id) { #if defined (_WIN32_WCE)//&& !defined( OS_PLATFORM_MOTCE ) if (RHO_IS_WMDEVICE && pb && id) { CNativeAddressBook* phonebook = (CNativeAddressBook*)pb; return phonebook->getRecord(id); } #endif return NULL; }
int addRecord(void* pb, void* record) { #if defined (_WIN32_WCE) if (pb && record) { CNativeAddressBook* phonebook = (CNativeAddressBook*)pb; phonebook->addRecord((CABRecord*)record); delete record; } #endif return 1; }
int addRecord(void* pb, void* record) { #if defined (_WIN32_WCE)//&& !defined( OS_PLATFORM_MOTCE ) if (RHO_IS_WMDEVICE && pb && record) { CNativeAddressBook* phonebook = (CNativeAddressBook*)pb; phonebook->addRecord((CABRecord*)record); delete record; } #endif return 1; }
VALUE getPhonebookRecord(void* pb, char* id) { #if defined (_WIN32_WCE) if (pb && id) { CNativeAddressBook* phonebook = (CNativeAddressBook*)pb; CABRecord* record = phonebook->getRecord(id); if (record) { VALUE hash = _getRecord(record); delete record; return hash; } } #endif return rho_ruby_get_NIL(); }
void* openPhonebook() { #if defined (_WIN32_WCE) CNativeAddressBook* phonebook = new CNativeAddressBook(); if (!phonebook->openAB()) { delete phonebook; return NULL; } return phonebook; #else return NULL; #endif }
void* openPhonebook() { #if defined (_WIN32_WCE) //&& !defined( OS_PLATFORM_MOTCE ) if(RHO_IS_WMDEVICE) { CNativeAddressBook* phonebook = new CNativeAddressBook(); if (!phonebook->openAB()) { delete phonebook; return NULL; } return phonebook; } return NULL; #else return NULL; #endif }
VALUE getallPhonebookRecords(void* pb) { #if defined (_WIN32_WCE) if (pb) { CNativeAddressBook* phonebook = (CNativeAddressBook*)pb; VALUE hash = createHash(); std::vector<CABRecord*> records; phonebook->getAllRecords(records); while(records.size() > 0) { CABRecord* record = records.back(); const char* rid = record->getValue("id").c_str(); if (rid) { LOGC(TRACE,"Phonebook") + "Adding record " + rid; addHashToHash(hash,rid,_getRecord(record)); } delete record; records.pop_back(); } return hash; } #endif return rho_ruby_get_NIL(); }