예제 #1
0
파일: Controller.cpp 프로젝트: hefee/Charm
void Controller::persistMetaData( Configuration& configuration )
{
    Q_ASSERT_X( m_storage != nullptr, Q_FUNC_INFO, "No storage interface available" );
    Setting settings[] = {
        { MetaKey_Key_UserName,
          configuration.user.name() },
        { MetaKey_Key_SubscribedTasksOnly,
          QString().setNum( configuration.taskPrefilteringMode ) },
        { MetaKey_Key_TimeTrackerFontSize,
          QString().setNum( configuration.timeTrackerFontSize ) },
        { MetaKey_Key_DurationFormat,
          QString::number( configuration.durationFormat ) },
        { MetaKey_Key_IdleDetection,
          stringForBool( configuration.detectIdling ) },
        { MetaKey_Key_WarnUnuploadedTimesheets,
          stringForBool( configuration.warnUnuploadedTimesheets ) },
        { MetaKey_Key_RequestEventComment,
          stringForBool( configuration.requestEventComment ) },
        { MetaKey_Key_ToolButtonStyle,
          QString().setNum( configuration.toolButtonStyle ) },
        { MetaKey_Key_ShowStatusBar,
          stringForBool( configuration.showStatusBar ) },
        { MetaKey_Key_EnableCommandInterface,
          stringForBool( configuration.enableCommandInterface ) }
    };
    int NumberOfSettings = sizeof settings / sizeof settings[0];

    bool good = true;
    for ( int i = 0; i < NumberOfSettings; ++i ) {
        good = good && m_storage->setMetaData( settings[i].key, settings[i].value );
    }
    Q_ASSERT_X( good, Q_FUNC_INFO, "Controller assumes write "
                "permissions in meta data table if persistMetaData is called" );
    CONFIGURATION.dump();
}
예제 #2
0
void Controller::persistMetaData( Configuration& configuration )
{
    Q_ASSERT_X( m_storage != 0, "Controller::persistMetaData",
                "No storage interface available" );
    Setting settings[] = {
        { MetaKey_Key_UserName,
          configuration.user.name() },
        { MetaKey_Key_SubscribedTasksOnly,
          QString().setNum( configuration.taskPrefilteringMode ) },
        { MetaKey_Key_TaskTrackerFontSize,
          QString().setNum( configuration.taskTrackerFontSize ) },
        { MetaKey_Key_DurationFormat,
          QString::number( configuration.durationFormat ) },
        { MetaKey_Key_IdleDetection,
          stringForBool( configuration.detectIdling ) },
        { MetaKey_Key_AnimatedTrayIcon,
          stringForBool( configuration.animatedTrayIcon ) },
        { MetaKey_Key_ToolButtonStyle,
          QString().setNum( configuration.toolButtonStyle ) },
        { MetaKey_Key_ShowStatusBar,
          stringForBool( configuration.showStatusBar ) }
    };
    int NumberOfSettings = sizeof settings / sizeof settings[0];

    bool good = true;
    for ( int i = 0; i < NumberOfSettings; ++i ) {
        good = good && m_storage->setMetaData( settings[i].key, settings[i].value );
    }
    Q_ASSERT_X( good, "Controller::persistMetaData", "Controller assumes write "
                "permissions in meta data table if persistMetaData is called" );
    CONFIGURATION.dump();
}