A subsequent hotkey press like F5 now cycles through the sub-context in
buttons. However, this should not happen when clicking on Material icon
in outliner!
This commit is contained in:
Ton Roosendaal
2006-06-27 12:54:16 +00:00
parent 56bcc1c3bb
commit ed631ecff6
5 changed files with 21 additions and 20 deletions

View File

@@ -104,7 +104,7 @@ extern void copy_view3d_lock(short val);
extern void drawemptyspace(struct ScrArea *sa, void *spacedata);
extern void drawinfospace(struct ScrArea *sa, void *spacedata);
extern void duplicatespacelist(struct ScrArea *area, struct ListBase *lb1, struct ListBase *lb2);
extern void extern_set_butspace(int fkey);
extern void extern_set_butspace(int fkey, int do_cycle);
extern void force_draw(int header);
extern void force_draw_all(int header);
extern void force_draw_plus(int type, int header);

View File

@@ -1574,8 +1574,8 @@ static void do_info_rendermenu(void *arg, int event)
break;
case 7:
extern_set_butspace(F10KEY);
case 7:
extern_set_butspace(F10KEY, 1);
break;
}
allqueue(REDRAWINFO, 0);

View File

@@ -1032,7 +1032,7 @@ static int tree_element_active_material(SpaceOops *soops, TreeElement *te, int s
}
}
if(set) {
extern_set_butspace(F5KEY); // force shading buttons
extern_set_butspace(F5KEY, 0); // force shading buttons
BIF_preview_changed(ID_MA);
allqueue(REDRAWBUTSSHADING, 1);
allqueue(REDRAWNODE, 0);
@@ -1074,7 +1074,7 @@ static int tree_element_active_texture(SpaceOops *soops, TreeElement *te, int se
sbuts->tabo= TAB_SHADING_TEX; // hack from header_buttonswin.c
sbuts->texfrom= 1;
}
extern_set_butspace(F6KEY); // force shading buttons texture
extern_set_butspace(F6KEY, 0); // force shading buttons texture
wrld->texact= te->index;
}
else if(tselemp->id == (ID *)(G.scene->world)) {
@@ -1088,7 +1088,7 @@ static int tree_element_active_texture(SpaceOops *soops, TreeElement *te, int se
sbuts->tabo= TAB_SHADING_TEX; // hack from header_buttonswin.c
sbuts->texfrom= 2;
}
extern_set_butspace(F6KEY); // force shading buttons texture
extern_set_butspace(F6KEY, 0); // force shading buttons texture
la->texact= te->index;
}
else {
@@ -1104,7 +1104,7 @@ static int tree_element_active_texture(SpaceOops *soops, TreeElement *te, int se
//sbuts->tabo= TAB_SHADING_TEX; // hack from header_buttonswin.c
sbuts->texfrom= 0;
}
extern_set_butspace(F6KEY); // force shading buttons texture
extern_set_butspace(F6KEY, 0); // force shading buttons texture
ma->texact= te->index;
/* also set active material */
@@ -1128,7 +1128,7 @@ static int tree_element_active_lamp(SpaceOops *soops, TreeElement *te, int set)
if(ob==NULL || ob!=OBACT) return 0; // just paranoia
if(set) {
extern_set_butspace(F5KEY);
extern_set_butspace(F5KEY, 0);
BIF_preview_changed(ID_LA);
allqueue(REDRAWBUTSSHADING, 1);
allqueue(REDRAWOOPS, 0);
@@ -1160,7 +1160,7 @@ static int tree_element_active_world(SpaceOops *soops, TreeElement *te, int set)
if(tep==NULL || tselem->id == (ID *)G.scene) {
if(set) {
extern_set_butspace(F8KEY);
extern_set_butspace(F8KEY, 0);
}
else {
return 1;
@@ -1356,7 +1356,7 @@ static int tree_element_active_ebone(TreeElement *te, TreeStoreElem *tselem, int
static int tree_element_active_modifier(TreeElement *te, TreeStoreElem *tselem, int set)
{
if(set) {
extern_set_butspace(F9KEY);
extern_set_butspace(F9KEY, 0);
}
return 0;
@@ -1506,7 +1506,7 @@ static int do_outliner_mouse_event(SpaceOops *soops, TreeElement *te, short even
if(G.obedit) exit_editmode(2);
else {
enter_editmode();
extern_set_butspace(F9KEY);
extern_set_butspace(F9KEY, 0);
}
}
else { // rest of types

View File

@@ -3487,7 +3487,7 @@ static void init_butspace(ScrArea *sa)
buts->ri = NULL;
}
void extern_set_butspace(int fkey)
void extern_set_butspace(int fkey, int do_cycle)
{
ScrArea *sa;
SpaceButs *sbuts;
@@ -3504,11 +3504,12 @@ void extern_set_butspace(int fkey)
}
}
if(sa==0) return;
if(sa==NULL) return;
if(sa!=curarea) areawinset(sa->win);
sbuts= sa->spacedata.first;
if(!do_cycle) sbuts->oldkeypress= 0;
if(fkey==F4KEY) {
sbuts->mainb= CONTEXT_LOGIC;

View File

@@ -460,7 +460,7 @@ int blenderqread(unsigned short event, short val)
return 0;
}
else if(G.qual==0) {
extern_set_butspace(event);
extern_set_butspace(event, 1);
}
break;
case F5KEY:
@@ -469,7 +469,7 @@ int blenderqread(unsigned short event, short val)
return 0;
}
else if(G.qual==0) {
extern_set_butspace(event);
extern_set_butspace(event, 1);
}
break;
case F6KEY:
@@ -478,7 +478,7 @@ int blenderqread(unsigned short event, short val)
return 0;
}
else if(G.qual==0) {
extern_set_butspace(event);
extern_set_butspace(event, 1);
}
break;
case F7KEY:
@@ -487,7 +487,7 @@ int blenderqread(unsigned short event, short val)
return 0;
}
else if(G.qual==0) {
extern_set_butspace(event);
extern_set_butspace(event, 1);
}
break;
case F8KEY:
@@ -496,7 +496,7 @@ int blenderqread(unsigned short event, short val)
return 0;
}
else if(G.qual==0) {
extern_set_butspace(event);
extern_set_butspace(event, 1);
}
break;
case F9KEY:
@@ -509,7 +509,7 @@ int blenderqread(unsigned short event, short val)
return 0;
}
else if(G.qual==0) {
extern_set_butspace(event);
extern_set_butspace(event, 1);
}
break;
case F10KEY:
@@ -518,7 +518,7 @@ int blenderqread(unsigned short event, short val)
return 0;
}
else if(G.qual==0) {
extern_set_butspace(event);
extern_set_butspace(event, 1);
}
break;
case F11KEY: