00001
00002 #ifndef liqcell_ARRANGE_H
00003 #define liqcell_ARRANGE_H 1
00004
00005
00006
00007
00008
00009
00010
00011
00012 #include "liqcell.h"
00013 #include "liqcell_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 liqcell_forceinboundparent(liqcell *self);
00038
00039 int liqcell_child_arrange_autoflow(liqcell *self);
00040 int liqcell_child_arrange_nooverlap(liqcell *self,liqcell *currentselection);
00041 int liqcell_child_arrange_makegrid(liqcell *self,int viscolcount,int visrowcount);
00042 int liqcell_child_arrange_makegrid_fly(liqcell *self,int viscolcount,int visrowcount);
00043 int liqcell_child_arrange_easytile(liqcell *self);
00044 int liqcell_child_arrange_easyrow(liqcell *self);
00045 int liqcell_child_arrange_easycol(liqcell *self);
00046
00047
00048
00049
00050 #endif