Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrea Weikert <elubie@gmx.net>2009-01-06 17:42:54 +0300
committerAndrea Weikert <elubie@gmx.net>2009-01-06 17:42:54 +0300
commitb1cb844e0539376cb41cd15bf802aea62848b90a (patch)
tree5e67be9915d4a76afd9e894cc2e0783d439c41be /source/blender/editors/screen/area.c
parent10e6566aebec1c1c623cd88c3887db7c113d5af9 (diff)
2.5 - Start of filebrowser.
- basic drawing of list and thumbnail view (switchable through 'favourits' icon in header) - selection of files and directories (bookmarks) works with the RMB (right mouse button) - load operator for files still unstable (no check for correct file type) and incomplete. (WM_operator_free missing) immediate TODOS: - fix load file operator - finish drawing of buttons in header - drawing of detailed list with all file info. - finish selection and execute operators (LMB and MMB execute) later todos: - parent dir - keymap for all the shortcuts - append/link and databrowse - ...
Diffstat (limited to 'source/blender/editors/screen/area.c')
-rw-r--r--source/blender/editors/screen/area.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/source/blender/editors/screen/area.c b/source/blender/editors/screen/area.c
index 6f912ce393f..ee0da138941 100644
--- a/source/blender/editors/screen/area.c
+++ b/source/blender/editors/screen/area.c
@@ -649,6 +649,42 @@ void area_newspace(bContext *C, ScrArea *sa, int type)
}
}
+void area_prevspace(bContext *C)
+{
+ SpaceLink *sl= CTX_wm_space_data(C);
+ ScrArea *sa= CTX_wm_area(C);
+
+ /* cleanup */
+#if 0 // XXX needs to be space type specific
+ if(sfile->spacetype==SPACE_FILE) {
+ if(sfile->pupmenu) {
+ MEM_freeN(sfile->pupmenu);
+ sfile->pupmenu= NULL;
+ }
+ }
+#endif
+
+ if(sl->next) {
+
+ BLI_remlink(&sa->spacedata, sl);
+ BLI_addtail(&sa->spacedata, sl);
+
+ sl= sa->spacedata.first;
+
+#if 0 // XXX check whether this is still needed
+ if (sfile->spacetype == SPACE_SCRIPT) {
+ SpaceScript *sc = (SpaceScript *)sfile;
+ if (sc->script) sc->script->flags &=~SCRIPT_FILESEL;
+ }
+#endif
+
+ area_newspace(C, sa, SPACE_FILE);
+ }
+ else {
+ area_newspace(C, sa, SPACE_INFO);
+ }
+}
+
static char *windowtype_pup(void)
{
return(