/** * Sets the given item as current in history (go to item). * * Memory handling: This will not modify or even take references to * given item (Ewk_History_Item), so you should still handle it with * ewk_history_item_free(). * * @param history which history instance to modify. * @param item reference to go to history. Unmodified. Must @b not be @c NULL. * * @return @c EINA_TRUE on success, @c EINA_FALSE on failure. */ Eina_Bool ewk_history_history_item_set(Ewk_History* history, const Ewk_History_Item* item) { EWK_HISTORY_CORE_GET_OR_RETURN(history, history_core, EINA_FALSE); EWK_HISTORY_ITEM_CORE_GET_OR_RETURN(item, item_core, EINA_FALSE); history_core->goToItem(item_core); return EINA_TRUE; }
Eina_Bool ewk_history_history_item_add(Ewk_History* history, const Ewk_History_Item* item) { EWK_HISTORY_CORE_GET_OR_RETURN(history, history_core, false); EWK_HISTORY_ITEM_CORE_GET_OR_RETURN(item, item_core, false); history_core->addItem(item_core); return true; }
/** * Free given history item instance. * * @param item what to free. */ void ewk_history_item_free(Ewk_History_Item* item) { EWK_HISTORY_ITEM_CORE_GET_OR_RETURN(item, core); _ewk_history_item_free(item, core); }
/** * Queries if given item is in history. * * Memory handling: This will not modify or even take references to * given item (Ewk_History_Item), so you should still handle it with * ewk_history_item_free(). * * @param history which history instance to modify. * @param item reference to check in history. Must @b not be @c NULL. * * @return @c EINA_TRUE if in history, @c EINA_FALSE if not or failure. */ Eina_Bool ewk_history_history_item_contains(const Ewk_History* history, const Ewk_History_Item* item) { EWK_HISTORY_CORE_GET_OR_RETURN(history, history_core, EINA_FALSE); EWK_HISTORY_ITEM_CORE_GET_OR_RETURN(item, item_core, EINA_FALSE); return history_core->containsItem(item_core); }