00001
00002 #ifndef VCELL_ARRANGE_H
00003 #define VCELL_ARRANGE_H 1
00004
00005
00006
00007
00008
00009
00010
00011
00012 #include "vcell.h"
00013 #include "vcell_prop.h"
00014
00015
00016 #define ABS(X) ((X)<0 ? -(X) : (X))
00017 #define SGN(X) ((X)<0 ? -(1) : (1))
00018
00019
00020
00021
00022
00023
00024
00025 static inline void dimension_forceinbound(register int *s,register int *m,register int l,register int r);
00026
00027 static inline int dimension_gapcalc(register int cs,register int ce,register int ds,register int de,int *gapres);
00028
00029 static inline int dimension_overlapcalc(register int cs,register int ce,register int ds,register int de,int *overlapres);
00030
00031
00032
00033
00034
00035
00036
00037 void vcell_forceinboundparent(vcell *self);
00038
00039 int vcell_child_arrange_autoflow(vcell *self);
00040 int vcell_child_arrange_nooverlap(vcell *self,vcell *currentselection);
00041 int vcell_child_arrange_makegrid(vcell *self,int viscolcount,int visrowcount);
00042 int vcell_child_arrange_easytile(vcell *self);
00043 int vcell_child_arrange_easyrow(vcell *self);
00044 int vcell_child_arrange_easycol(vcell *self);
00045
00046
00047
00048
00049 #endif