two fixes:

- while Faceselect mode on Subsurf, it didnt render the changes. this was
  because the displaylist wasnt updated (the 3d window shows original mesh)
- added proper redraw event for F10-sound buttons when you add a new sound.
  somehow sound doesnt play anymore here... have to check further.
This commit is contained in:
2004-01-16 19:30:25 +00:00
parent dcc8af9374
commit d5a1b582c3
4 changed files with 21 additions and 11 deletions

View File

@@ -785,7 +785,7 @@ void draw_tface_mesh(Object *ob, Mesh *me, int dt)
MVert *mvert=NULL; MVert *mvert=NULL;
int totface; int totface;
if (mesh_uses_displist(me) && !editing) { if(mesh_uses_displist(me) && editing==0) {
DispList *dl= find_displist(&me->disp, DL_MESH); DispList *dl= find_displist(&me->disp, DL_MESH);
DispListMesh *dlm= dl->mesh; DispListMesh *dlm= dl->mesh;
@@ -799,10 +799,11 @@ void draw_tface_mesh(Object *ob, Mesh *me, int dt)
mfaceint= dlm->mface; mfaceint= dlm->mface;
tface= dlm->tface; tface= dlm->tface;
} }
} else { }
else {
DispList *dl= find_displist(&ob->disp, DL_VERTS); DispList *dl= find_displist(&ob->disp, DL_VERTS);
if (dl) extverts= dl->verts; if (dl) extverts= dl->verts;
totface= me->totface; totface= me->totface;
mvert= me->mvert; mvert= me->mvert;
mface= me->mface; mface= me->mface;

View File

@@ -411,6 +411,7 @@ void rotate_uv_tface()
mface++; mface++;
} }
makeDispList(OBACT);
allqueue(REDRAWVIEW3D, 0); allqueue(REDRAWVIEW3D, 0);
allqueue(REDRAWIMAGE, 0); allqueue(REDRAWIMAGE, 0);
} }
@@ -1063,6 +1064,8 @@ void uv_autocalc_tface()
} }
} }
makeDispList(OBACT);
allqueue(REDRAWVIEW3D, 0); allqueue(REDRAWVIEW3D, 0);
allqueue(REDRAWIMAGE, 0); allqueue(REDRAWIMAGE, 0);
myloadmatrix(G.vd->viewmat); myloadmatrix(G.vd->viewmat);

View File

@@ -597,6 +597,7 @@ void transform_tface_uv(int mode)
if(mode=='g') if(G.sima->flag & SI_BE_SQUARE) be_square_tface_uv(me); if(mode=='g') if(G.sima->flag & SI_BE_SQUARE) be_square_tface_uv(me);
makeDispList(OBACT);
allqueue(REDRAWVIEW3D, 0); allqueue(REDRAWVIEW3D, 0);
scrarea_queue_headredraw(curarea); scrarea_queue_headredraw(curarea);
scrarea_queue_winredraw(curarea); scrarea_queue_winredraw(curarea);

View File

@@ -68,8 +68,11 @@
#include "BIF_screen.h" #include "BIF_screen.h"
#include "BIF_space.h" #include "BIF_space.h"
#include "BIF_toolbox.h" #include "BIF_toolbox.h"
#include "BIF_butspace.h"
#include "BKE_global.h" #include "BKE_global.h"
#include "BKE_main.h" #include "BKE_main.h"
#include "BSE_drawipo.h" #include "BSE_drawipo.h"
#include "BSE_filesel.h" #include "BSE_filesel.h"
#include "BSE_headerbuttons.h" #include "BSE_headerbuttons.h"
@@ -133,9 +136,9 @@ void do_sound_buttons(unsigned short event)
if (G.buts->texnr == 32766) { if (G.buts->texnr == 32766) {
if (id) strcpy(name, ((bSound *)id)->name); if (id) strcpy(name, ((bSound *)id)->name);
else strcpy(name, U.sounddir); else strcpy(name, U.sounddir);
activate_fileselect(FILE_SPECIAL, "SELECT WAV FILE", activate_fileselect(FILE_SPECIAL, "SELECT WAV FILE", name, load_sound_buttons);
name, load_sound_buttons); }
} else { else {
nr= 1; nr= 1;
idtest= G.main->sound.first; idtest= G.main->sound.first;
@@ -330,13 +333,15 @@ void load_sound_buttons(char *str)
sound= sound_new_sound(str); sound= sound_new_sound(str);
if (sound) { if (sound) {
if (curarea && curarea->spacetype==SPACE_BUTS) { if (curarea && curarea->spacetype==SPACE_BUTS) {
// if (G.buts->mainb == BUTS_SOUND) { if (G.buts->mainb == CONTEXT_SCENE) {
// G.buts->lockpoin = sound; if( G.buts->tab[CONTEXT_SCENE]==TAB_SCENE_SOUND )
// } G.buts->lockpoin = sound;
}
} }
} else { }
else {
error("Not a valid sample: %s", str); error("Not a valid sample: %s", str);
} }
//allqueue(REDRAWBUTSSOUND, 0); allqueue(REDRAWBUTSSCENE, 0);
} }