//! BusinessLogic class. Contains all the business logic of the application.
/*!
- * BusinessLogic class. Contains all the business logic of the application. It is responsible
- * for connecting user interface to lower application layers (IO).
+ * BusinessLogic class. Contains all the business logic of the application. This class handles
+ * the logic of the application according received calls to the slots. This class also maintains
+ * the instances of managers, timers and its own set of meeting list. The managers handles
+ * their tasks in more detailed manner.
*/
class Engine : public QObject
{
signals:
- void meetingDetailsFetched( Meeting *aDetailedMeeting );
-
private slots:
//! Slot. Closes the application.
/*!
* \param aAddInfo Possible addition info.
*/
void errorHandler( int aCode, const QString &aAddInfo = "" );
- //! Slot. Fetches meetings from the server.
- /*!
- * Slot. Fetches meetings from the server. Parameters are hard coded: the meetings of the default
- * room from current and +/- 2 weeks are fetched.
- */
- void fetchMeetings();
//! Slot. Saves fetched meetings to the current instance's local storage.
/*!
* Slot. Saves fetched meetings to the current instance's local storage. Meetings are soted in a
void changeDeviceMode( bool aChange );
+ void currentRoomChanged( Room *aRoom );
+
private:
// Make the UIManager as friendly class so it can connect to private slots.
friend class UIManager;
* \return Index of the meeting if found; otherwise, -1.
*/
int indexOfMeetingAfter( Room *aRoom, QDateTime aAfter );
- //! Indicates if the QList contains the Meeting or not.
- /*!
- * Indicates if the QList contains the Meeting or not.
- * \param aList List of meetings.
- * \param aMeeting The meeting which is seeked in the list for.
- * \return True if contains; otherwise, false.
- */
- static bool isMeetingInList( const QList<Meeting*> &aList, const Meeting *aMeeting );
//! Slot. Fetches meetings from the server.
/*!
* Slot. Fetches meetings from the server, exact parameters are specified in the parameter list.
* packages are connected here.
*/
void connectSignals();
+
+ bool isMeetingInList(const QList<Meeting*> &aList, const Meeting *aMeeting);
private:
static QTime endOfTheDay;
QTimer *iAutoRefresh;
QList<Meeting*> iMeetings;
+
+ Room *iCurrentRoom;
};
#endif /*ENGINE_H_*/