static void initTOC(JNIEnv *env, jobject javaModel, const ContentsTree &tree) { const std::vector<shared_ptr<ContentsTree> > &children = tree.children(); for (std::vector<shared_ptr<ContentsTree> >::const_iterator it = children.begin(); it != children.end(); ++it) { const ContentsTree &child = **it; JString text(env, child.text()); AndroidUtil::Method_BookModel_addTOCItem->call(javaModel, text.j(), child.reference()); initTOC(env, javaModel, child); AndroidUtil::Method_BookModel_leaveTOCItem->call(javaModel); } }
static void initTOC(JNIEnv *env, jobject javaModel, const ContentsTree &tree) { const std::vector<shared_ptr<ContentsTree> > &children = tree.children(); for (std::vector<shared_ptr<ContentsTree> >::const_iterator it = children.begin(); it != children.end(); ++it) { const ContentsTree &child = **it; jstring text = AndroidUtil::createJavaString(env, child.text()); const int ref = child.reference(); AndroidUtil::Method_NativeBookModel_addTOCItem->call(javaModel, text, ref); env->DeleteLocalRef(text); initTOC(env, javaModel, child); AndroidUtil::Method_NativeBookModel_leaveTOCItem->call(javaModel); } }