homescreenapp/hsdomainmodel/inc/hswidgetpositioningonwidgetadd.h
changeset 95 32e56106abf2
parent 90 3ac3aaebaee5
equal deleted inserted replaced
90:3ac3aaebaee5 95:32e56106abf2
    31 class HsWidgetHost;
    31 class HsWidgetHost;
    32 
    32 
    33 class HSDOMAINMODEL_EXPORT HsWidgetPositioningOnWidgetAdd
    33 class HSDOMAINMODEL_EXPORT HsWidgetPositioningOnWidgetAdd
    34 {
    34 {
    35 public:
    35 public:
       
    36     class Result
       
    37     {
       
    38     public:
       
    39         Result() { }
       
    40         QList<QRectF> calculatedRects;
       
    41         QList<int> rectOrder;
       
    42     };
       
    43 
    36     virtual ~HsWidgetPositioningOnWidgetAdd() {}
    44     virtual ~HsWidgetPositioningOnWidgetAdd() {}
    37     
    45     
    38     virtual QList<QRectF> convert(const QRectF &contentArea,
    46     virtual Result convert(const QRectF &contentArea,
    39                                   const QList<QRectF> &existingRects,
    47                                   const QList<QRectF> &existingRects,
    40                                   const QList<QRectF> &newRects,
    48                                   const QList<QRectF> &newRects,
    41                                   const QPointF &startPoint) = 0;
    49                                   const QPointF &startPoint) = 0;
    42    
    50   
    43     static void setInstance(HsWidgetPositioningOnWidgetAdd *instance);
    51     static void setInstance(HsWidgetPositioningOnWidgetAdd *instance);
    44     static HsWidgetPositioningOnWidgetAdd *instance();
    52     static HsWidgetPositioningOnWidgetAdd *instance();
    45 
    53 
    46 private:
    54 private:
    47     static HsWidgetPositioningOnWidgetAdd *mInstance;
    55     static HsWidgetPositioningOnWidgetAdd *mInstance;
    48 };
    56 };
    49 
    57 
    50 class HSDOMAINMODEL_EXPORT HsAnchorPointInBottomRight : public HsWidgetPositioningOnWidgetAdd
    58 class HSDOMAINMODEL_EXPORT HsAnchorPointInBottomRight : public HsWidgetPositioningOnWidgetAdd
    51 {
    59 {
    52 public:
    60 public:
    53     QList<QRectF> convert(const QRectF &contentArea,
    61     Result convert(const QRectF &contentArea,
    54                           const QList<QRectF> &existingRects,
    62                           const QList<QRectF> &existingRects,
    55                           const QList<QRectF> &newRects,
    63                           const QList<QRectF> &newRects,
    56                           const QPointF &startPoint);
    64                           const QPointF &startPoint);
    57  
    65  
    58 };
    66 };
    59 
    67 
    60 class HSDOMAINMODEL_EXPORT HsAnchorPointInCenter : public HsWidgetPositioningOnWidgetAdd
    68 class HSDOMAINMODEL_EXPORT HsAnchorPointInCenter : public HsWidgetPositioningOnWidgetAdd
    61 {
    69 {
    62 public:
    70 public:
    63     QList<QRectF> convert(const QRectF &contentArea,
    71     Result convert(const QRectF &contentArea,
    64                           const QList<QRectF> &existingRects,
    72                           const QList<QRectF> &existingRects,
    65                           const QList<QRectF> &newRects,
    73                           const QList<QRectF> &newRects,
    66                           const QPointF &startPoint);
    74                           const QPointF &startPoint);
    67  };
    75  };
    68 
    76 
    71 public:
    79 public:
    72     HsWidgetOrganizer(int anchorDistance, HsConfiguration::WidgetOrganizerSearchSequence sequence);
    80     HsWidgetOrganizer(int anchorDistance, HsConfiguration::WidgetOrganizerSearchSequence sequence);
    73     ~HsWidgetOrganizer();
    81     ~HsWidgetOrganizer();
    74 
    82 
    75 public:
    83 public:
    76     QList<QRectF> convert(const QRectF &contentArea,
    84     Result convert(const QRectF &contentArea,
    77                           const QList<QRectF> &existingRects,
    85                           const QList<QRectF> &existingRects,
    78                           const QList<QRectF> &newRects,
    86                           const QList<QRectF> &newRects,
    79                           const QPointF &startPoint);
    87                           const QPointF &startPoint);
    80 
    88 
    81 private:
    89 private: