}
etWin *
-etTCBase::initNormalWin(const char *name, Eina_Bool usr_geom)
+etTCBase::createWindow(Elm_Win_Type type, const char *name, Eina_Bool usr_geom, int x, int y, int w, int h)
{
Eina_Bool res = EINA_FALSE;
etWin *tw = new etWin();
+ if (x+y+w+h <= 0)
+ {
+ x = y = 100*numGeomTw;
+ w = h = 400;
+ if (usr_geom)
+ numGeomTw++;
+ }
+
res = tw->init(NULL,
- ELM_WIN_BASIC,
+ type,
EINA_FALSE,
- name? name : "TCWin_Normal",
- (100*numGeomTw), (100*numGeomTw), 400, 400, usr_geom,
+ name? name : "TCWin",
+ x, y, w, h, usr_geom,
(E_TC_Win_Color) ((numTw % E_TC_WIN_COLOR_CYAN) + 2));
EINA_SAFETY_ON_FALSE_GOTO(res, err);
+
tw->native_win = etRunner::get().getWinId(tw->elm_win);
+ EINA_SAFETY_ON_FALSE_GOTO(tw->native_win, err);
res = registerTCWin(tw);
EINA_SAFETY_ON_FALSE_GOTO(res, err);
numTw++;
- if (usr_geom) numGeomTw++;
tw_list = eina_list_append(tw_list, tw);
}
etWin *
-etTCBase::initNormalWin(const char *name, int x, int y, int w, int h)
+etTCBase::initNormalWin(const char *name, Eina_Bool usr_geom)
{
- Eina_Bool res = EINA_FALSE;
- etWin *tw = new etWin();
-
- res = tw->init(NULL,
- ELM_WIN_BASIC,
- EINA_FALSE,
- name? name : "TCWin_Normal",
- x, y, w, h, EINA_TRUE,
- (E_TC_Win_Color) ((numTw % E_TC_WIN_COLOR_CYAN) + 2));
- EINA_SAFETY_ON_FALSE_GOTO(res, err);
- tw->native_win = etRunner::get().getWinId(tw->elm_win);
-
- res = registerTCWin(tw);
- EINA_SAFETY_ON_FALSE_GOTO(res, err);
-
- numTw++;
-
- tw_list = eina_list_append(tw_list, tw);
-
+ etWin *tw = createWindow(ELM_WIN_BASIC, name, usr_geom, 0, 0, 0, 0);
return tw;
+}
-err:
- delete tw;
- return NULL;
+etWin *
+etTCBase::initNormalWin(const char *name, int x, int y, int w, int h)
+{
+ etWin *tw = createWindow(ELM_WIN_BASIC, name, EINA_TRUE, x, y, w, h);
+ return tw;
}
etWin *
etTCBase::initNotiWin(const char *name, Eina_Bool usr_geom, Eina_Bool set_noti_level_normal)
{
- Eina_Bool res = EINA_FALSE;
- etWin *tw = new etWin();
-
- res = tw->init(NULL,
- ELM_WIN_NOTIFICATION,
- EINA_FALSE,
- name? name : "TCWin_Noti",
- (100*numGeomTw), (100*numGeomTw), 400, 400, usr_geom,
- (E_TC_Win_Color) ((numTw % E_TC_WIN_COLOR_CYAN) + 2));
- EINA_SAFETY_ON_FALSE_GOTO(res, err);
- tw->native_win = etRunner::get().getWinId(tw->elm_win);
+ etWin *tw = createWindow(ELM_WIN_NOTIFICATION, name, usr_geom, 0, 0, 0, 0);
if (set_noti_level_normal)
etRunner::get().setWinNotiLevel(tw, EFL_UTIL_NOTIFICATION_LEVEL_MEDIUM);
- res = registerTCWin(tw);
- EINA_SAFETY_ON_FALSE_GOTO(res, err);
-
- numTw++;
- if (usr_geom) numGeomTw++;
-
- tw_list = eina_list_append(tw_list, tw);
-
return tw;
-
-err:
- delete tw;
- return NULL;
}
etWin *
etTCBase::initNotiWin(const char *name, Eina_Bool set_noti_level_normal, int x, int y, int w, int h)
{
- Eina_Bool res = EINA_FALSE;
- etWin *tw = new etWin();
-
- res = tw->init(NULL,
- ELM_WIN_NOTIFICATION,
- EINA_FALSE,
- name? name : "TCWin_Noti",
- x, y, w, h, EINA_TRUE,
- (E_TC_Win_Color) ((numTw % E_TC_WIN_COLOR_CYAN) + 2));
- EINA_SAFETY_ON_FALSE_GOTO(res, err);
- tw->native_win = etRunner::get().getWinId(tw->elm_win);
+ etWin *tw = createWindow(ELM_WIN_NOTIFICATION, name, EINA_TRUE, x, y, w, h);
if (set_noti_level_normal)
etRunner::get().setWinNotiLevel(tw, EFL_UTIL_NOTIFICATION_LEVEL_MEDIUM);
- res = registerTCWin(tw);
- EINA_SAFETY_ON_FALSE_GOTO(res, err);
-
- numTw++;
-
- tw_list = eina_list_append(tw_list, tw);
-
return tw;
-
-err:
- delete tw;
- return NULL;
}
Eina_Bool