app->mRenderPreCb(app->mRenderPreData, nullptr);
}
+static void
+on_post_render(Ecore_Evas *ee)
+{
+ EvasApp *app = (EvasApp *)ecore_evas_data_get(ee, "app");
+ if (app && app->mRenderPostCb)
+ app->mRenderPostCb(app->mRenderPostData, nullptr);
+}
+
EvasApp::EvasApp(int w, int h)
{
if (!ecore_evas_init())
ecore_evas_callback_delete_request_set(mEcoreEvas, _on_delete);
ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, on_key_down, this);
ecore_evas_callback_pre_render_set(mEcoreEvas, on_pre_render);
+ ecore_evas_callback_post_render_set(mEcoreEvas, on_post_render);
ecore_evas_show(mEcoreEvas);
mEvas = ecore_evas_get(mEcoreEvas);
void addResizeCb(appCb resizecb, void *data) {mResizeCb = resizecb; mResizeData = data;}
void addKeyCb(appCb keycb, void *data) {mKeyCb = keycb; mKeyData = data;}
void addRenderPreCb(appCb renderPrecb, void *data) {mRenderPreCb = renderPrecb; mRenderPreData = data;}
+ void addRenderPostCb(appCb renderPostcb, void *data) {mRenderPostCb = renderPostcb; mRenderPostData = data;}
static std::vector<std::string> jsonFiles(const std::string &dir, bool recurse=false);
public:
int mw;
void *mKeyData;
appCb mRenderPreCb;
void *mRenderPreData;
+ appCb mRenderPostCb;
+ void *mRenderPostData;
};
#endif //EVASAPP_H