TimeTrackingWindow::TimeTrackingWindow( QWidget* parent ) : CharmWindow( tr( "Time Tracker" ), parent ) , m_weeklyTimesheetDialog( 0 ) , m_monthlyTimesheetDialog( 0 ) , m_activityReportDialog( 0 ) , m_summaryWidget( new TimeTrackingView( toolBar(), this ) ) , m_billDialog( new BillDialog( this ) ) { setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ); setWindowNumber( 3 ); setWindowIdentifier( QLatin1String( "window_tracking" ) ); setCentralWidget( m_summaryWidget ); connect( m_summaryWidget, SIGNAL( startEvent( TaskId ) ), SLOT( slotStartEvent( TaskId ) ) ); connect( m_summaryWidget, SIGNAL( stopEvents() ), SLOT( slotStopEvent() ) ); connect( &m_checkUploadedSheetsTimer, SIGNAL( timeout() ), SLOT( slotCheckUploadedTimesheets() ) ); connect( m_billDialog, SIGNAL( finished(int) ), SLOT( slotBillGone(int) ) ); //Check every 60 minutes if there are timesheets due m_checkUploadedSheetsTimer.setInterval(60 * 60 * 1000); if (CONFIGURATION.warnUnuploadedTimesheets) m_checkUploadedSheetsTimer.start(); }
TasksWindow::TasksWindow( QWidget* parent ) : CharmWindow( tr( "Tasks Editor" ), parent ) , m_tasksView( new TasksView( toolBar(), this ) ) { setWindowNumber( 1 ); setWindowIdentifier( QLatin1String( "window_tasks" ) ); setCentralWidget( m_tasksView ); setSizePolicy( QSizePolicy::Preferred, QSizePolicy::Expanding ); connect( m_tasksView, SIGNAL(emitCommand(CharmCommand*)), SIGNAL(emitCommand(CharmCommand*)) ); connect( m_tasksView, SIGNAL(emitCommandRollback(CharmCommand*)), SIGNAL(emitCommandRollback(CharmCommand*)) ); connect( m_tasksView, SIGNAL(saveConfiguration()), SIGNAL(saveConfiguration()) ); }