public class WorkSpaceDataRelation extends CFacade
Generic (and simple/primitive) struct for storing a history of assignments/relations of workspace data to non-workspace data in a listbase inside the workspace.
Using this we can restore the old state of a workspace if the user switches back to it.
. More concretely:
There are two windows, win1 and win2.
Both show workspace ws1, but both also had workspace ws2 activated at some point before.
Last time ws2 was active in win1, screen-layout sl1 was activated.
Last time ws2 was active in win2, screen-layout sl2 was activated.
When changing from ws1 to ws2 in win1, screen-layout sl1 should be activated again.
When changing from ws1 to ws2 in win2, screen-layout sl2 should be activated again. So that means we have to store the active screen-layout in a per workspace, per window relation. This struct is used to store an active screen-layout for each window within the workspace. To find the screen-layout to activate for this window-workspace combination, simply lookup the WorkSpaceDataRelation
with the workspace-hook of the window set as parent.
Modifier and Type | Field and Description |
---|---|
static long[] |
__DNA__FIELD__next
Field descriptor (offset) for struct member 'next'.
|
static long[] |
__DNA__FIELD__parent
Field descriptor (offset) for struct member 'parent'.
|
static long[] |
__DNA__FIELD__prev
Field descriptor (offset) for struct member 'prev'.
|
static long[] |
__DNA__FIELD__value
Field descriptor (offset) for struct member 'value'.
|
static int |
__DNA__SDNA_INDEX
This is the sdna index of the struct WorkSpaceDataRelation.
|
__io__address, __io__arch_index, __io__block, __io__blockTable, __io__pointersize
Modifier | Constructor and Description |
---|---|
|
WorkSpaceDataRelation(long __address,
Block __block,
BlockTable __blockTable) |
protected |
WorkSpaceDataRelation(WorkSpaceDataRelation that) |
Modifier and Type | Method and Description |
---|---|
CPointer<WorkSpaceDataRelation> |
__io__addressof()
Instantiates a pointer on this instance.
|
CPointer<WorkSpaceDataRelation> |
getNext()
Get method for struct member 'next'.
|
CPointer<java.lang.Object> |
getParent()
Get method for struct member 'parent'.
|
CPointer<WorkSpaceDataRelation> |
getPrev()
Get method for struct member 'prev'.
|
CPointer<java.lang.Object> |
getValue()
Get method for struct member 'value'.
|
void |
setNext(CPointer<WorkSpaceDataRelation> next)
Set method for struct member 'next'.
|
void |
setParent(CPointer<java.lang.Object> parent)
Set method for struct member 'parent'.
|
void |
setPrev(CPointer<WorkSpaceDataRelation> prev)
Set method for struct member 'prev'.
|
void |
setValue(CPointer<java.lang.Object> value)
Set method for struct member 'value'.
|
__io__addressof, __io__addressof, __io__equals, __io__generic__copy, __io__generic__copy, __io__instanceof, __io__native__copy, __io__newInstance, __io__same__encoding, __io__sizeof, __io__sizeof, __io__subclassof
public static final int __DNA__SDNA_INDEX
It is required when allocating a new block to store data for WorkSpaceDataRelation.
org.cakelab.blender.io.dna.internal.StructDNA}
,
org.cakelab.blender.io.block.BlockTable#allocate}
,
Constant Field Valuespublic static final long[] __DNA__FIELD__next
This is how you get a reference on the corresponding field in the struct:
WorkSpaceDataRelation workspacedatarelation = ...; CPointer<Object> p = workspacedatarelation.__dna__addressof(WorkSpaceDataRelation.__DNA__FIELD__next); CPointer<CPointer<WorkSpaceDataRelation>> p_next = p.cast(new Class[]{CPointer.class, WorkSpaceDataRelation.class});
public static final long[] __DNA__FIELD__prev
This is how you get a reference on the corresponding field in the struct:
WorkSpaceDataRelation workspacedatarelation = ...; CPointer<Object> p = workspacedatarelation.__dna__addressof(WorkSpaceDataRelation.__DNA__FIELD__prev); CPointer<CPointer<WorkSpaceDataRelation>> p_prev = p.cast(new Class[]{CPointer.class, WorkSpaceDataRelation.class});
public static final long[] __DNA__FIELD__parent
The data used to identify the relation (e.g. to find screen-layout (= value) from/for a hook).
This is how you get a reference on the corresponding field in the struct:
WorkSpaceDataRelation workspacedatarelation = ...; CPointer<Object> p = workspacedatarelation.__dna__addressof(WorkSpaceDataRelation.__DNA__FIELD__parent); CPointer<CPointer<Object>> p_parent = p.cast(new Class[]{CPointer.class, Object.class});
public static final long[] __DNA__FIELD__value
The value for this parent-data/workspace relation.
This is how you get a reference on the corresponding field in the struct:
WorkSpaceDataRelation workspacedatarelation = ...; CPointer<Object> p = workspacedatarelation.__dna__addressof(WorkSpaceDataRelation.__DNA__FIELD__value); CPointer<CPointer<Object>> p_value = p.cast(new Class[]{CPointer.class, Object.class});
public WorkSpaceDataRelation(long __address, Block __block, BlockTable __blockTable)
protected WorkSpaceDataRelation(WorkSpaceDataRelation that)
public CPointer<WorkSpaceDataRelation> getNext() throws java.io.IOException
java.io.IOException
__DNA__FIELD__next
public void setNext(CPointer<WorkSpaceDataRelation> next) throws java.io.IOException
java.io.IOException
__DNA__FIELD__next
public CPointer<WorkSpaceDataRelation> getPrev() throws java.io.IOException
java.io.IOException
__DNA__FIELD__prev
public void setPrev(CPointer<WorkSpaceDataRelation> prev) throws java.io.IOException
java.io.IOException
__DNA__FIELD__prev
public CPointer<java.lang.Object> getParent() throws java.io.IOException
The data used to identify the relation (e.g. to find screen-layout (= value) from/for a hook).
java.io.IOException
__DNA__FIELD__parent
public void setParent(CPointer<java.lang.Object> parent) throws java.io.IOException
The data used to identify the relation (e.g. to find screen-layout (= value) from/for a hook).
java.io.IOException
__DNA__FIELD__parent
public CPointer<java.lang.Object> getValue() throws java.io.IOException
The value for this parent-data/workspace relation.
java.io.IOException
__DNA__FIELD__value
public void setValue(CPointer<java.lang.Object> value) throws java.io.IOException
The value for this parent-data/workspace relation.
java.io.IOException
__DNA__FIELD__value
public CPointer<WorkSpaceDataRelation> __io__addressof()