forked from enlightenment/enlightenment
- add e_view_machine_get_view_by_[base|main]_window
- use it in about a zillion places - now VM->views is only accessed from within e_view_machine.c SVN revision: 6005
This commit is contained in:
parent
5a88ba9d13
commit
cf83b660f7
|
@ -7,6 +7,7 @@
|
|||
#include "icccm.h"
|
||||
#include "keys.h"
|
||||
#include "view.h"
|
||||
#include "e_view_machine.h"
|
||||
#include "util.h"
|
||||
#include "guides.h"
|
||||
#include "bordermenu.h"
|
||||
|
@ -1566,7 +1567,7 @@ e_act_exit_start (E_Object *object, E_Action *a, void *data, int x, int y, int r
|
|||
{
|
||||
D_ENTER;
|
||||
|
||||
e_view_close_all();
|
||||
e_view_machine_close_all_views();
|
||||
|
||||
ecore_focus_mode_reset();
|
||||
ecore_sync();
|
||||
|
@ -1591,7 +1592,7 @@ e_act_restart_start (E_Object *object, E_Action *a, void *data, int x, int y, in
|
|||
{
|
||||
D_ENTER;
|
||||
|
||||
e_view_close_all();
|
||||
e_view_machine_close_all_views();
|
||||
|
||||
ecore_focus_mode_reset();
|
||||
ecore_sync();
|
||||
|
|
|
@ -43,6 +43,18 @@ e_view_machine_unregister_view(E_View *v)
|
|||
D_RETURN;
|
||||
}
|
||||
|
||||
void
|
||||
e_view_machine_close_all_views(void)
|
||||
{
|
||||
Evas_List l;
|
||||
D_ENTER;
|
||||
for (l=VM->views;l;l=l->next)
|
||||
{
|
||||
E_View *v = l->data;
|
||||
e_view_machine_unregister_view(v);
|
||||
}
|
||||
D_RETURN;
|
||||
}
|
||||
|
||||
E_View_Model *
|
||||
e_view_machine_model_lookup(char *path)
|
||||
|
@ -76,5 +88,30 @@ e_view_machine_model_lookup(char *path)
|
|||
D_RETURN_(NULL);
|
||||
}
|
||||
|
||||
E_View *
|
||||
e_view_machine_get_view_by_main_window(Window win)
|
||||
{
|
||||
Evas_List l;
|
||||
D_ENTER;
|
||||
for (l = VM->views; l; l = l->next)
|
||||
{
|
||||
E_View *v = l->data;
|
||||
if (v && win == v->win.main)
|
||||
D_RETURN_(v);
|
||||
}
|
||||
D_RETURN_(NULL);
|
||||
}
|
||||
|
||||
|
||||
E_View *
|
||||
e_view_machine_get_view_by_base_window(Window win)
|
||||
{
|
||||
Evas_List l;
|
||||
D_ENTER;
|
||||
for (l = VM->views; l; l = l->next)
|
||||
{
|
||||
E_View *v = l->data;
|
||||
if (v && win == v->win.base)
|
||||
D_RETURN_(v);
|
||||
}
|
||||
D_RETURN_(NULL);
|
||||
}
|
||||
|
|
|
@ -12,5 +12,9 @@ typedef struct _e_view_machine E_View_Machine;
|
|||
void e_view_machine_init(void);
|
||||
void e_view_machine_register_view(E_View *v);
|
||||
void e_view_machine_unregister_view(E_View *v);
|
||||
void e_view_machine_close_all_views(void);
|
||||
E_View_Model *e_view_machine_model_lookup(char *path);
|
||||
E_View *e_view_machine_get_view_by_main_window(Window win);
|
||||
E_View *e_view_machine_get_view_by_base_window(Window win);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -860,7 +860,7 @@ e_icon_deselect(E_Icon *ic)
|
|||
|
||||
void
|
||||
e_icon_exec(E_Icon *ic)
|
||||
{
|
||||
{
|
||||
D_ENTER;
|
||||
|
||||
if (!strcmp(ic->file->info.mime.base, "dir") &&
|
||||
|
@ -884,7 +884,7 @@ e_icon_exec(E_Icon *ic)
|
|||
ecore_window_set_name_class(v->win.base, "FileView", "E");
|
||||
ecore_window_set_min_size(v->win.base, 8, 8);
|
||||
}
|
||||
e_icon_deselect(ic);
|
||||
e_icon_deselect(ic);
|
||||
|
||||
D_RETURN;
|
||||
}
|
||||
|
|
855
src/view.c
855
src/view.c
File diff suppressed because it is too large
Load Diff
|
@ -207,7 +207,6 @@ void e_view_resort(E_View *v);
|
|||
void e_view_queue_geometry_record(E_View *v);
|
||||
void e_view_queue_icon_xy_record(E_View *v);
|
||||
void e_view_queue_resort(E_View *v);
|
||||
E_View *e_view_find_by_window(Window win);
|
||||
|
||||
/**
|
||||
* e_view_new - Creates a new view object
|
||||
|
|
Loading…
Reference in New Issue