Beispiel #1
0
/** newPath - username - requestID++ - pathID - mode - color - active - page
 * 
 * @param pathID
 * @param mode
 * @param color
 * @param active
 * @param page
 */
void Sender::NewPath(int pathID, bool mode, int color, bool active, int page)
{
    //creating New Path request
    std::string toSend = NumberToString(NEW_PATH);
    toSend += separator;

    toSend += username;
    toSend += separator;

    toSend += NumberToString(requestID++);
    toSend += separator;

    toSend += NumberToString(pathID);
    toSend += separator;

    toSend += BoolToString(mode);
    toSend += separator;

    toSend += NumberToString(color);
    toSend += separator;

    toSend += BoolToString(active);
    toSend += separator;

    toSend += NumberToString(page);
    toSend += separator;

    //std::cout << "NewPath: " << toSend << std::endl;
    //Sending logout request
    SendMessage(toSend);
}
Beispiel #2
0
EntityPtr Entity::Clone(bool local, bool temporary, const QString &cloneName, AttributeChange::Type changeType) const
{
    QDomDocument doc("Scene");
    QDomElement sceneElem = doc.createElement("scene");
    QDomElement entityElem = doc.createElement("entity");
    entityElem.setAttribute("sync", BoolToString(!local));
    entityElem.setAttribute("id", local ? scene_->NextFreeIdLocal() : scene_->NextFreeId());
    // Set the temporary status in advance so it's valid when Scene::CreateContentFromXml signals changes in the scene
    entityElem.setAttribute("temporary", BoolToString(temporary));
    // Setting of a new name for the clone is a bit clumsy, but this is the best way to do it currently.
    const bool setNameForClone = !cloneName.isEmpty();
    bool cloneNameWritten = false;
    for(ComponentMap::const_iterator i = components_.begin(); i != components_.end(); ++i)
    {
        i->second->SerializeTo(doc, entityElem);
        if (setNameForClone && !cloneNameWritten && i->second->TypeId() == EC_Name::ComponentTypeId)
        {
            // Now that we've serialized the Name component, overwrite value of the "name" attribute.
            QDomElement nameComponentElem = entityElem.lastChildElement();
            nameComponentElem.firstChildElement().setAttribute("value", cloneName);
            cloneNameWritten = true;
        }
    }
    sceneElem.appendChild(entityElem);
    doc.appendChild(sceneElem);

    QList<Entity *> newEntities = scene_->CreateContentFromXml(doc, true, changeType);
    return (!newEntities.isEmpty() && newEntities.first() ? newEntities.first()->shared_from_this() : EntityPtr());
}
Beispiel #3
0
FString FServerConfig::ToString() {
	FString Msg = "";
	FString AbsConfigFile = IFileManager::Get().ConvertToAbsolutePathForExternalAppForRead(*ConfigFile);
	Msg += FString::Printf(TEXT("Config file: %s\n"), *AbsConfigFile);
	Msg += FString::Printf(TEXT("Port: %d\n"), this->Port);
	Msg += FString::Printf(TEXT("Width: %d\n"), this->Width);
	Msg += FString::Printf(TEXT("Height: %d\n"), this->Height);
	Msg += FString::Printf(TEXT("FOV: %f\n"), this->FOV);
	Msg += FString::Printf(TEXT("EnableInput: %s\n"), *BoolToString(this->EnableInput));
	Msg += FString::Printf(TEXT("EnableRightEye: %s\n"), *BoolToString(this->EnableRightEye));
	return Msg;
}
Beispiel #4
0
void Entity::SerializeToXML(QDomDocument &doc, QDomElement &base_element, bool serializeTemporary) const
{
    QDomElement entity_elem = doc.createElement("entity");
    entity_elem.setAttribute("id", QString::number(Id()));
    entity_elem.setAttribute("sync", BoolToString(IsReplicated()));
    if (serializeTemporary)
        entity_elem.setAttribute("temporary", BoolToString(IsTemporary()));

    for (ComponentMap::const_iterator i = components_.begin(); i != components_.end(); ++i)
            i->second->SerializeTo(doc, entity_elem, serializeTemporary);

    base_element.appendChild(entity_elem);
}
Beispiel #5
0
wxXmlNode* LocalOptionsConfig::ToXml(wxXmlNode* parent /*=NULL*/, const wxString& nodename /*=wxT("Options")*/) const
{
    wxXmlNode* n = new wxXmlNode(parent, wxXML_ELEMENT_NODE, nodename);

    if(DisplayFoldMarginIsValid()) {
        n->AddProperty(wxT("DisplayFoldMargin"), BoolToString(m_localdisplayFoldMargin.GetDatum()));
    }
    if(DisplayBookmarkMarginIsValid()) {
        n->AddProperty(wxT("DisplayBookmarkMargin"), BoolToString(m_localdisplayBookmarkMargin.GetDatum()));
    }
    if(HighlightCaretLineIsValid()) {
        n->AddProperty(wxT("HighlightCaretLine"), BoolToString(m_localhighlightCaretLine.GetDatum()));
    }
    if(TrimLineIsValid()) { n->AddProperty(wxT("EditorTrimEmptyLines"), BoolToString(m_localTrimLine.GetDatum())); }
    if(AppendLFIsValid()) { n->AddProperty(wxT("EditorAppendLf"), BoolToString(m_localAppendLF.GetDatum())); }
    if(DisplayLineNumbersIsValid()) {
        n->AddProperty(wxT("ShowLineNumber"), BoolToString(m_localdisplayLineNumbers.GetDatum()));
    }
    if(ShowIndentationGuidelinesIsValid()) {
        n->AddProperty(wxT("IndentationGuides"), BoolToString(m_localshowIndentationGuidelines.GetDatum()));
    }
    if(IndentUsesTabsIsValid()) {
        n->AddProperty(wxT("IndentUsesTabs"), BoolToString(m_localindentUsesTabs.GetDatum()));
    }
    if(HideChangeMarkerMarginIsValid()) {
        n->AddProperty(wxT("HideChangeMarkerMargin"), BoolToString(m_localhideChangeMarkerMargin.GetDatum()));
    }

    if(EolModeIsValid()) { n->AddProperty(wxT("EOLMode"), m_localeolMode.GetDatum()); }

    wxString tmp;
    if(IndentWidthIsValid()) {
        tmp << m_localindentWidth.GetDatum();
        n->AddProperty(wxT("IndentWidth"), tmp);
    }

    tmp.clear();
    if(TabWidthIsValid()) {
        tmp << m_localtabWidth.GetDatum();
        n->AddProperty(wxT("TabWidth"), tmp);
    }

    tmp.clear();
    if(ShowWhitespacesIsValid()) {
        tmp << m_localshowWhitspaces.GetDatum();
        n->AddProperty(wxT("ShowWhitespaces"), tmp);
    }

    tmp.clear();
    if(FileFontEncodingIsValid()) {
        tmp = wxFontMapper::GetEncodingName(m_localfileFontEncoding.GetDatum());
        n->AddProperty(wxT("FileFontEncoding"), tmp);
    }

    return n;
}
Beispiel #6
0
void WinNetworkInfo::setNetConfig()
{
    m_ip.setText(CfgChannel::instance()->getDeviceIPAddress());
    m_subnet.setText(CfgChannel::instance()->getDeviceSubnetMask());
    m_gateway.setText(CfgChannel::instance()->getDefaultGateway());
    m_mac.setText(CfgChannel::instance()->getDeviceMACAddress());

    m_priDns.setText(CfgChannel::instance()->getPrimaryDnsServer());
    m_secDns.setText(CfgChannel::instance()->getSecondaryDnsServer());

    m_ftp.setText(BoolToString(CfgChannel::instance()->getFTPServerStatus()));
    m_web.setText(BoolToString(CfgChannel::instance()->getWEBServerStatus()));
    m_sntp.setText(BoolToString(CfgChannel::instance()->getSNTPServerStatus()));
    m_modbus.setText(BoolToString(CfgChannel::instance()->getModbusStatus()));
}
Beispiel #7
0
void CMusikPrefs::SavePrefs()
{
	UnparseColors();

	// main dialog
	config->SetValue( "Dialog", "Dialog Size", CSizeToString( m_Dlg_Size ) );
	config->SetValue( "Dialog", "Dialog Position", CPointToString( m_Dlg_Pos ) );
	config->SetValue( "Dialog", "Maximized", BoolToString( m_Dlg_Maximized ) );
	config->SetValue( "Dialog", "Reset UI", BoolToString( m_Dlg_ResetUI ) );

	// selection area
	config->SetValue( "Selection Area", "Count", IntToString( (int)m_SelectionBox_Count ) );

	// playlist
	config->SetValue( "Playlist", "Column Order", CIntArrayToString( m_Playlist_Order ) );
	config->SetValue( "Playlist", "Column Sizes", CIntArrayToString( m_Playlist_Sizes ) );

	// now playing
	config->SetValue( "Now Playing", "Caption Font Size", IntToString( m_NowPlaying_CaptionFont ) );

	// player
	config->SetValue( "Player", "Driver", IntToString( m_Player_Driver ) );
	config->SetValue( "Player", "Device", IntToString( m_Player_Device ) );
	config->SetValue( "Player", "Rate", IntToString( m_Player_Rate ) );
	config->SetValue( "Player", "Maximum Channels", IntToString( m_Player_Max_Channels ) );

	// crossfader
	config->SetValue( "Crossfader", "Enabled", BoolToString( m_Crossfader_Enabled ) );
	config->SetValue( "Crossfader", "Set Name", m_Crossfader_Current );	
	config->SetValue( "Crossfader", "Values", CrossfaderToString( m_Crossfader_Default ) );

	// dialog colors
	config->SetValue( "Dialog Colors", "Active Caption", COLORREFToString( MUSIK_COLOR_ACTIVECAPTION ) );
	config->SetValue( "Dialog Colors", "Active Caption Text", COLORREFToString( MUSIK_COLOR_CAPTIONTEXT ) );
	config->SetValue( "Dialog Colors", "Inactive Caption", COLORREFToString( MUSIK_COLOR_INACTIVECAPTION ) );
	config->SetValue( "Dialog Colors", "Inactive Caption Text", COLORREFToString( MUSIK_COLOR_INACTIVECAPTIONTEXT ) );
	config->SetValue( "Dialog Colors", "Button Face", COLORREFToString( MUSIK_COLOR_BTNFACE ) );
	config->SetValue( "Dialog Colors", "Button Text", COLORREFToString( MUSIK_COLOR_BTNTEXT ) );
	config->SetValue( "Dialog Colors", "Button Highlight", COLORREFToString( MUSIK_COLOR_BTNHILIGHT ) );
	config->SetValue( "Dialog Colors", "Button Shadow", COLORREFToString( MUSIK_COLOR_BTNSHADOW ) );
	config->SetValue( "Dialog Colors", "List Background", COLORREFToString( MUSIK_COLOR_LISTCTRL ) );
	config->SetValue( "Dialog Colors", "List Text", COLORREFToString( MUSIK_COLOR_LISTCTRLTEXT ) );
	config->SetValue( "Dialog Colors", "Color Highlight", COLORREFToString( MUSIK_COLOR_HIGHLIGHT ) );
	config->SetValue( "Dialog Colors", "Color Highlight Text", COLORREFToString( MUSIK_COLOR_HIGHLIGHTTEXT ) );

	// write to ini file
	config->WriteFile();
}
Beispiel #8
0
CString CPathFollow::ToFile()
{
    CString path = GetName();
    int speed = m_SpeedSlider.GetPos();
    //	m_PathList.GetWindowText(path);
    return "Follow "  + path + " " + IntToString(speed)  + " " + BoolToString(m_Enabled);
}
void ThemeEditorDialog::OnBnClickedButtonLoad()
{
    CString filter = _T("musikCube Theme Files (*.ini)|*.ini||");
    
    FileDialog ofdlg(
        TRUE, 
        _T("ini"), 
        NULL, 
        OFN_EXPLORER | OFN_FILEMUSTEXIST, 
        filter
   );

    if (ofdlg.DoModal() == IDOK)
    {
        std::string fn = musik::Core::utf16to8(ofdlg.GetFileName().GetBuffer(), false);
        CIniFile iniFile(fn);

        if (!iniFile.ReadFile())
        {
            MessageBox(
                _T("Failed to read theme file from disk.  Invalid access rights?"),
                _T("musikCube"),
                MB_OK | MB_ICONERROR
           );

            return;
        }

        Globals::Preferences->MUSIK_COLOR_ACTIVECAPTION = 
            StringToCOLORREF(iniFile.GetValue("Theme", "Active Caption", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_CAPTIONTEXT = 
            StringToCOLORREF(iniFile.GetValue("Theme", "Active Caption Text", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_INACTIVECAPTION = 
            StringToCOLORREF(iniFile.GetValue("Theme", "Inactive Caption", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_INACTIVECAPTIONTEXT = 
            StringToCOLORREF(iniFile.GetValue("Theme", "Inactive Caption Text", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_BTNFACE = 
            StringToCOLORREF(iniFile.GetValue("Theme", "Button Face", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_BTNTEXT = 
            StringToCOLORREF(iniFile.GetValue("Theme", "Button Text", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_BTNHILIGHT = 
            StringToCOLORREF(iniFile.GetValue("Theme", "Button Hilight", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_BTNSHADOW = 
            StringToCOLORREF(iniFile.GetValue("Theme", "Button Shadow", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_LISTCTRL = 
            StringToCOLORREF(iniFile.GetValue("Theme", "List", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_LISTCTRLTEXT = 
            StringToCOLORREF(iniFile.GetValue("Theme", "List Text", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_HIGHLIGHT = 
            StringToCOLORREF(iniFile.GetValue("Theme", "Highlight", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->MUSIK_COLOR_HIGHLIGHTTEXT = 
            StringToCOLORREF(iniFile.GetValue("Theme", "Highlight Text", COLORREFToString(AUTOMATIC_COLOR)));
        Globals::Preferences->SetUseLightIconTheme(
            StringToBool(iniFile.GetValue("Theme", "Use Light Icons", BoolToString(false))));

        this->ReloadColors();
        AfxGetApp()->GetMainWnd()->SendMessage(WM_SYSCOLORCHANGE);
    }
}
Beispiel #10
0
void VideoConfig::write(void)
{
	variables.clear();
	
	put("width", std::to_string(width));
	put("height", std::to_string(height));
	put("fullscreen", BoolToString(fullscreen));

	VarFile::write();
}
void ThemeEditorDialog::OnBnClickedButtonSave()
{
    CString filter = _T("musikCube Theme Files (*.ini)|*.ini||");
    
    FileDialog sfdlg(
        FALSE, 
        _T("ini"), 
        NULL, 
        OFN_EXPLORER | OFN_OVERWRITEPROMPT, 
        filter
   );

    if (sfdlg.DoModal() == IDOK)
    {
        CIniFile iniFile(musik::Core::utf16to8(sfdlg.GetFileName().GetBuffer(), false));

        iniFile.SetValue(
            "Theme", "Active Caption", COLORREFToString(Globals::Preferences->MUSIK_COLOR_ACTIVECAPTION));
        iniFile.SetValue(
            "Theme", "Active Caption Text", COLORREFToString(Globals::Preferences->MUSIK_COLOR_CAPTIONTEXT));
        iniFile.SetValue(
            "Theme", "Inactive Caption", COLORREFToString(Globals::Preferences->MUSIK_COLOR_INACTIVECAPTION));
        iniFile.SetValue(
            "Theme", "Inactive Caption Text", COLORREFToString(Globals::Preferences->MUSIK_COLOR_INACTIVECAPTIONTEXT));
        iniFile.SetValue(
            "Theme", "Button Face", COLORREFToString(Globals::Preferences->MUSIK_COLOR_BTNFACE));
        iniFile.SetValue(
            "Theme", "Button Text", COLORREFToString(Globals::Preferences->MUSIK_COLOR_BTNTEXT));
        iniFile.SetValue(
            "Theme", "Button Hilight", COLORREFToString(Globals::Preferences->MUSIK_COLOR_BTNHILIGHT));
        iniFile.SetValue(
            "Theme", "Button Shadow", COLORREFToString(Globals::Preferences->MUSIK_COLOR_BTNSHADOW));
        iniFile.SetValue(
            "Theme", "List", COLORREFToString(Globals::Preferences->MUSIK_COLOR_LISTCTRL));
        iniFile.SetValue(
            "Theme", "List Text", COLORREFToString(Globals::Preferences->MUSIK_COLOR_LISTCTRLTEXT));
        iniFile.SetValue(
            "Theme", "Highlight", COLORREFToString(Globals::Preferences->MUSIK_COLOR_HIGHLIGHT));
        iniFile.SetValue(
            "Theme", "Highlight Text", COLORREFToString(Globals::Preferences->MUSIK_COLOR_HIGHLIGHTTEXT));
        iniFile.SetValue(
            "Theme", "Use Light Icons", BoolToString(Globals::Preferences->UseLightIconTheme()));

        if (!iniFile.WriteFile())
        {
            MessageBox(
                _T("Failed to write theme file to disk.  Invalid access rights?"),
                _T("musikCube"),
                MB_OK | MB_ICONERROR
           );
        }
    }
}
Beispiel #12
0
bool FServerConfig::Load() {
	if (!GConfig) return false;

	UE_LOG(LogUnrealCV, Warning, TEXT("Loading config"));

	// Assume the value will not be overwrote if the read failed
	GConfig->GetInt(*CoreSection, TEXT("Port"), this->Port, this->ConfigFile);
	GConfig->GetInt(*CoreSection, TEXT("Width"), this->Width, this->ConfigFile);
	GConfig->GetInt(*CoreSection, TEXT("Height"), this->Height, this->ConfigFile);
	GConfig->GetFloat(*CoreSection, TEXT("FOV"), this->FOV, this->ConfigFile);
	GConfig->GetBool(*CoreSection, TEXT("EnableInput"), this->EnableInput, this->ConfigFile);
	GConfig->GetBool(*CoreSection, TEXT("EnableRightEye"), this->EnableRightEye, this->ConfigFile);

	UE_LOG(LogUnrealCV, Warning, TEXT("Port: %d"), this->Port);
	UE_LOG(LogUnrealCV, Warning, TEXT("Width: %d"), this->Width);
	UE_LOG(LogUnrealCV, Warning, TEXT("Height: %d"), this->Height);
	UE_LOG(LogUnrealCV, Warning, TEXT("FOV: %f"), this->FOV);
	UE_LOG(LogUnrealCV, Warning, TEXT("EnableInput: %s"), *BoolToString(this->EnableInput));
	UE_LOG(LogUnrealCV, Warning, TEXT("EnableRightEye: %s"), *BoolToString(this->EnableRightEye));

	return true;
}
wxXmlNode *CSolitionConfiguration::ToXml() const{
	wxXmlNode *node = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("CSolitionConfiguration"));
	node->AddProperty(wxT("Name"), m_name);
	node->AddProperty(wxT("Selected"), BoolToString(m_isSelected));

	CSolitionConfiguration::ConfigMappingList::const_iterator iter = m_mappingList.begin();
	for(; iter  != m_mappingList.end(); iter++){
		wxXmlNode *projNode = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Project"));
		projNode->AddProperty(wxT("Name"), iter->m_project);
		projNode->AddProperty(wxT("ConfigName"), iter->m_name);
		node->AddChild(projNode);
	}
	return node;
}
void sendDataBool(char* name, bool value) {
	char result[100];   // array to hold the result.

	strcpy_s(result, 100, name); // copy string one into the result.
	strcat_s(result, 100, ": ");
	strcat_s(result, 100, BoolToString(value)); // append string two to the result.

	if ((numbytes = sendto(sockfd, result, strlen(result), 0,
		p->ai_addr, p->ai_addrlen)) == -1) {
		perror("talker: sendto");
		exit(1);
	}
	printf("sent packet\n");
}
 string ConcreteValueBase::ToSimpleString() const
 {
     ostringstream sstr;
     if(Type == NULL) {
         sstr << "Undefined";
         return sstr.str();
     }
     switch(Type->GetBaseType()) {
     case BaseTypeBool:
         return BoolToString(true);
     case BaseTypeInt:
         return IntToString(true);
     case BaseTypeEnum:
         return EnumTypeToString(true);
     case BaseTypeBitVector:
         return BVToString(true);
     default:
         return "(Undefined: due to weird type)";
     }
 }
Beispiel #16
0
/**
 * Send a new path request
 *
 * @param pathID Path ID
 * @param mode Path mode
 * @param color Path color
 * @param active Path state
 * @param page Page on which the path has been drawn
 * @param width Path width
 *
 * Info sent: newPath - pathID - mode - color - active - page - width
 */
void Sender::sendNewPath(int pathID, bool mode, int color/*, bool active*/, int page, int width)
{
    std::string toSend = separator;
    toSend += NumberToString(NEW_PATH);
    toSend += separator;

    toSend += NumberToString(pathID);
    toSend += separator;

    toSend += BoolToString(mode);
    toSend += separator;

    toSend += NumberToString(color);
    toSend += separator;

    toSend += NumberToString(page);
    toSend += separator;

    toSend += NumberToString(width);

    client->sendMessage(toSend);
}
 const std::string MyPinsWebService::CreatePinPostData(const MyPinModel& pinModel)
 {
     std::string json = "";
     if(pinModel.IsInterior())
     {
         json = "{\n  \"title\":\"" + pinModel.GetTitle()
         + "\",\n  \"subtitle\":\"\",\n  \"tags\":\"office business\",\n  \"lat\":\"" + ConvertModelDetailToString(pinModel.GetLatLong().GetLatitudeInDegrees())
         + "\",\n  \"lon\":\"" + ConvertModelDetailToString(pinModel.GetLatLong().GetLongitudeInDegrees())
         + "\",\n  \"indoor\":\"" + BoolToString(pinModel.IsInterior())
         + "\",\n  \"indoor_id\":\"" + pinModel.GetBuildingId().Value()
         + "\",\n  \"floor_id\":\"" + ConvertModelDetailToString(pinModel.GetFloor())
         + "\",\n \"user_data\":{\"description\":\"" + pinModel.GetDescription() + "\"}}";
     }
     else
     {
         json = "{\n  \"title\":\"" + pinModel.GetTitle()
         + "\",\n  \"subtitle\":\"\",\n  \"tags\":\"office business\",\n  \"lat\":\"" + ConvertModelDetailToString(pinModel.GetLatLong().GetLatitudeInDegrees())
         + "\",\n  \"lon\":\"" + ConvertModelDetailToString(pinModel.GetLatLong().GetLongitudeInDegrees())
         + "\",\n \"user_data\":{\"description\":\"" + pinModel.GetDescription() + "\"}}";
     }
     return json;
 }
Beispiel #18
0
void Ini::Save(wxString key, bool value)
{
	m_Config->Write(key, BoolToString(value));
}
Beispiel #19
0
bool Ini::Load(wxString key, const bool def_value)
{
	return StringToBool(m_Config->Read(key, BoolToString(def_value)));
}
Beispiel #20
0
wxXmlNode* BuildConfig::ToXml() const
{
    // Create the common nodes
    wxXmlNode* node = m_commonConfig.ToXml();

    node->AddProperty(wxT("Name"), m_name);
    node->AddProperty(wxT("CompilerType"), m_compilerType);
    node->AddProperty(wxT("DebuggerType"), m_debuggerType);
    node->AddProperty(wxT("Type"), m_projectType);
    node->AddProperty(wxT("BuildCmpWithGlobalSettings"), m_buildCmpWithGlobalSettings);
    node->AddProperty(wxT("BuildLnkWithGlobalSettings"), m_buildLnkWithGlobalSettings);
    node->AddProperty(wxT("BuildResWithGlobalSettings"), m_buildResWithGlobalSettings);

    wxXmlNode* compile = XmlUtils::FindFirstByTagName(node, wxT("Compiler"));
    if(compile) {
        compile->AddProperty(wxT("Required"), BoolToString(m_compilerRequired));
        compile->AddProperty(wxT("PreCompiledHeader"), m_precompiledHeader);
        compile->AddProperty(wxT("PCHInCommandLine"), BoolToString(m_pchInCommandLine));
        compile->AddProperty(wxT("PCHFlags"), m_pchCompileFlags);
        compile->AddProperty("PCHFlagsPolicy", wxString() << (int)m_pchPolicy);
    }

    wxXmlNode* link = XmlUtils::FindFirstByTagName(node, wxT("Linker"));
    if(link) {
        link->AddProperty(wxT("Required"), BoolToString(m_linkerRequired));
    }

    wxXmlNode* resCmp = XmlUtils::FindFirstByTagName(node, wxT("ResourceCompiler"));
    if(resCmp) {
        resCmp->AddProperty(wxT("Required"), BoolToString(m_isResCmpNeeded));
    }

    wxXmlNode* general = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("General"));
    general->AddProperty(wxT("OutputFile"), m_outputFile);
    general->AddProperty(wxT("IntermediateDirectory"), m_intermediateDirectory);
    general->AddProperty(wxT("Command"), m_command);
    general->AddProperty(wxT("CommandArguments"), m_commandArguments);
    general->AddProperty(wxT("UseSeparateDebugArgs"), BoolToString(m_useSeparateDebugArgs));
    general->AddProperty(wxT("DebugArguments"), m_debugArgs);
    general->AddProperty(wxT("WorkingDirectory"), m_workingDirectory);
    general->AddProperty(wxT("PauseExecWhenProcTerminates"), BoolToString(m_pauseWhenExecEnds));
    general->AddProperty("IsGUIProgram", BoolToString(m_isGUIProgram));
    general->AddProperty("IsEnabled", BoolToString(m_isProjectEnabled));

    node->AddChild(general);

    wxXmlNode* debugger = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Debugger"));
    debugger->AddProperty(wxT("IsRemote"), BoolToString(m_isDbgRemoteTarget));
    debugger->AddProperty(wxT("RemoteHostName"), m_dbgHostName);
    debugger->AddProperty(wxT("RemoteHostPort"), m_dbgHostPort);
    debugger->AddProperty(wxT("DebuggerPath"), m_debuggerPath);
    debugger->AddProperty(wxT("IsExtended"), BoolToString(m_isDbgRemoteExtended));

    wxXmlNode* envNode = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Environment"));
    envNode->AddProperty(wxT("EnvVarSetName"), GetEnvVarSet());
    envNode->AddProperty(wxT("DbgSetName"), GetDbgEnvSet());

    // Add CDATA section with project environment variables
    wxXmlNode* envContent = new wxXmlNode(wxXML_CDATA_SECTION_NODE, wxEmptyString, m_envvars);
    envNode->AddChild(envContent);
    node->AddChild(envNode);

    wxXmlNode* dbgStartupCommands = new wxXmlNode(debugger, wxXML_ELEMENT_NODE, wxT("StartupCommands"));
    XmlUtils::SetNodeContent(dbgStartupCommands, m_debuggerStartupCmds);

    wxXmlNode* dbgPostConnectCommands = new wxXmlNode(debugger, wxXML_ELEMENT_NODE, wxT("PostConnectCommands"));
    XmlUtils::SetNodeContent(dbgPostConnectCommands, m_debuggerPostRemoteConnectCmds);

    wxXmlNode* dbgSearchPaths = new wxXmlNode(debugger, wxXML_ELEMENT_NODE, wxT("DebuggerSearchPaths"));
    XmlUtils::SetNodeContent(dbgSearchPaths, ::wxImplode(m_debuggerSearchPaths, "\n"));

    node->AddChild(debugger);

    // add prebuild commands
    wxXmlNode* preBuild = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("PreBuild"));
    node->AddChild(preBuild);

    BuildCommandList::const_iterator iter = m_preBuildCommands.begin();
    for(; iter != m_preBuildCommands.end(); iter++) {
        wxXmlNode* command = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Command"));
        command->AddProperty(wxT("Enabled"), BoolToString(iter->GetEnabled()));
        XmlUtils::SetNodeContent(command, iter->GetCommand());
        preBuild->AddChild(command);
    }

    // add postbuild commands
    wxXmlNode* postBuild = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("PostBuild"));
    node->AddChild(postBuild);
    iter = m_postBuildCommands.begin();
    for(; iter != m_postBuildCommands.end(); iter++) {
        wxXmlNode* command = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Command"));
        command->AddProperty(wxT("Enabled"), BoolToString(iter->GetEnabled()));
        XmlUtils::SetNodeContent(command, iter->GetCommand());
        postBuild->AddChild(command);
    }

    // add postbuild commands
    wxXmlNode* customBuild = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("CustomBuild"));
    node->AddChild(customBuild);
    customBuild->AddProperty(wxT("Enabled"), BoolToString(m_enableCustomBuild));

    // add the working directory of the custom build
    wxXmlNode* customBuildWd = new wxXmlNode(customBuild, wxXML_ELEMENT_NODE, wxT("WorkingDirectory"));
    XmlUtils::SetNodeContent(customBuildWd, m_customBuildWorkingDir);

    // add the makefile generation command
    wxXmlNode* toolName = new wxXmlNode(customBuild, wxXML_ELEMENT_NODE, wxT("ThirdPartyToolName"));
    XmlUtils::SetNodeContent(toolName, m_toolName);

    // add the makefile generation command
    wxXmlNode* makeGenCmd = new wxXmlNode(customBuild, wxXML_ELEMENT_NODE, wxT("MakefileGenerationCommand"));
    XmlUtils::SetNodeContent(makeGenCmd, m_makeGenerationCommand);

    // add the makefile generation command
    wxXmlNode* singleFileCmd = new wxXmlNode(customBuild, wxXML_ELEMENT_NODE, wxT("SingleFileCommand"));
    XmlUtils::SetNodeContent(singleFileCmd, m_singleFileBuildCommand);

    // add the makefile generation command
    wxXmlNode* preprocessFileCmd = new wxXmlNode(customBuild, wxXML_ELEMENT_NODE, wxT("PreprocessFileCommand"));
    XmlUtils::SetNodeContent(preprocessFileCmd, m_preprocessFileCommand);

    // add build and clean commands
    wxXmlNode* bldCmd = new wxXmlNode(customBuild, wxXML_ELEMENT_NODE, wxT("BuildCommand"));
    XmlUtils::SetNodeContent(bldCmd, m_customBuildCmd);

    wxXmlNode* clnCmd = new wxXmlNode(customBuild, wxXML_ELEMENT_NODE, wxT("CleanCommand"));
    XmlUtils::SetNodeContent(clnCmd, m_customCleanCmd);

    wxXmlNode* rebldCmd = new wxXmlNode(customBuild, wxXML_ELEMENT_NODE, wxT("RebuildCommand"));
    XmlUtils::SetNodeContent(rebldCmd, m_customRebuildCmd);

    // add all 'Targets'
    std::map<wxString, wxString>::const_iterator ir = m_customTargets.begin();
    for(; ir != m_customTargets.end(); ir++) {
        wxString target_name = ir->first;
        wxString target_cmd = ir->second;

        wxXmlNode* customTarget = new wxXmlNode(customBuild, wxXML_ELEMENT_NODE, wxT("Target"));
        customTarget->AddProperty(wxT("Name"), target_name);
        XmlUtils::SetNodeContent(customTarget, target_cmd);
    }

    // add the additional rules
    wxXmlNode* additionalCmds = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("AdditionalRules"));
    node->AddChild(additionalCmds);

    wxXmlNode* preCmd = new wxXmlNode(additionalCmds, wxXML_ELEMENT_NODE, wxT("CustomPreBuild"));
    XmlUtils::SetNodeContent(preCmd, m_customPreBuildRule);
    wxXmlNode* postCmd = new wxXmlNode(additionalCmds, wxXML_ELEMENT_NODE, wxT("CustomPostBuild"));
    XmlUtils::SetNodeContent(postCmd, m_customPostBuildRule);

    // Set the completion flags
    wxXmlNode* completion = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Completion"));
    node->AddChild(completion);
    completion->AddProperty(wxT("EnableCpp11"), BoolToString(m_clangC11));
    completion->AddProperty(wxT("EnableCpp14"), BoolToString(m_clangC14));

    wxXmlNode* search_paths = new wxXmlNode(completion, wxXML_ELEMENT_NODE, wxT("SearchPaths"));
    XmlUtils::SetNodeContent(search_paths, m_ccSearchPaths);

    wxXmlNode* clang_pp = new wxXmlNode(completion, wxXML_ELEMENT_NODE, wxT("ClangPP"));
    XmlUtils::SetNodeContent(clang_pp, m_clangPPFlags);

    wxXmlNode* clang_cmp_flags = new wxXmlNode(completion, wxXML_ELEMENT_NODE, wxT("ClangCmpFlags"));
    XmlUtils::SetNodeContent(clang_cmp_flags, m_clangCmpFlags);

    wxXmlNode* clang_c_cmp_flags = new wxXmlNode(completion, wxXML_ELEMENT_NODE, wxT("ClangCmpFlagsC"));
    XmlUtils::SetNodeContent(clang_c_cmp_flags, m_clangCmpFlagsC);

    return node;
}
Beispiel #21
0
wxXmlNode* Compiler::ToXml() const
{
    wxXmlNode* node = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Compiler"));
    node->AddProperty(wxT("Name"), m_name);
    node->AddProperty(wxT("GenerateDependenciesFiles"), BoolToString(m_generateDependeciesFile));
    node->AddProperty(wxT("ReadObjectsListFromFile"), BoolToString(m_readObjectFilesFromList));
    node->AddProperty(wxT("ObjectNameIdenticalToFileName"), BoolToString(m_objectNameIdenticalToFileName));
    node->AddProperty("CompilerFamily", m_compilerFamily);
    node->AddProperty("IsDefault", BoolToString(m_isDefault));

    wxXmlNode* installPath = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, "InstallationPath");
    node->AddChild(installPath);
    XmlUtils::SetCDATANodeContent(installPath, m_installationPath);

    std::map<wxString, wxString>::const_iterator iter = m_switches.begin();
    for(; iter != m_switches.end(); iter++) {
        wxXmlNode* child = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Switch"));
        child->AddProperty(wxT("Name"), iter->first);
        child->AddProperty(wxT("Value"), iter->second);
        node->AddChild(child);
    }

    iter = m_tools.begin();
    for(; iter != m_tools.end(); iter++) {
        wxXmlNode* child = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Tool"));
        child->AddProperty(wxT("Name"), iter->first);
        child->AddProperty(wxT("Value"), iter->second);
        node->AddChild(child);
    }

    std::map<wxString, Compiler::CmpFileTypeInfo>::const_iterator it = m_fileTypes.begin();
    for(; it != m_fileTypes.end(); it++) {
        wxXmlNode* child = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("File"));
        Compiler::CmpFileTypeInfo ft = it->second;
        child->AddProperty(wxT("Extension"), ft.extension);
        child->AddProperty(wxT("CompilationLine"), ft.compilation_line);

        wxString strKind;
        strKind << (long)ft.kind;
        child->AddProperty(wxT("Kind"), strKind);

        node->AddChild(child);
    }

    wxXmlNode* options = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Option"));
    options->AddProperty(wxT("Name"), wxT("ObjectSuffix"));
    options->AddProperty(wxT("Value"), m_objectSuffix);
    node->AddChild(options);

    options = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Option"));
    options->AddProperty(wxT("Name"), wxT("DependSuffix"));
    options->AddProperty(wxT("Value"), m_dependSuffix);
    node->AddChild(options);

    options = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Option"));
    options->AddProperty(wxT("Name"), wxT("PreprocessSuffix"));
    options->AddProperty(wxT("Value"), m_preprocessSuffix);
    node->AddChild(options);

    // add patterns
    CmpListInfoPattern::const_iterator itPattern;
    for(itPattern = m_errorPatterns.begin(); itPattern != m_errorPatterns.end(); ++itPattern) {
        wxXmlNode* error = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Pattern"));
        error->AddAttribute(wxT("Name"), wxT("Error"));
        error->AddAttribute(wxT("FileNameIndex"), itPattern->fileNameIndex);
        error->AddAttribute(wxT("LineNumberIndex"), itPattern->lineNumberIndex);
        error->AddAttribute(wxT("ColumnIndex"), itPattern->columnIndex);
        XmlUtils::SetNodeContent(error, itPattern->pattern);
        node->AddChild(error);
    }

    for(itPattern = m_warningPatterns.begin(); itPattern != m_warningPatterns.end(); ++itPattern) {
        wxXmlNode* warning = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Pattern"));
        warning->AddAttribute(wxT("Name"), wxT("Warning"));
        warning->AddAttribute(wxT("FileNameIndex"), itPattern->fileNameIndex);
        warning->AddAttribute(wxT("LineNumberIndex"), itPattern->lineNumberIndex);
        warning->AddAttribute(wxT("ColumnIndex"), itPattern->columnIndex);
        XmlUtils::SetNodeContent(warning, itPattern->pattern);
        node->AddChild(warning);
    }

    wxXmlNode* globalIncludePath = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("GlobalIncludePath"));
    XmlUtils::SetNodeContent(globalIncludePath, m_globalIncludePath);
    node->AddChild(globalIncludePath);

    wxXmlNode* globalLibPath = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("GlobalLibPath"));
    XmlUtils::SetNodeContent(globalLibPath, m_globalLibPath);
    node->AddChild(globalLibPath);

    wxXmlNode* pathVariable = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("PathVariable"));
    XmlUtils::SetNodeContent(pathVariable, m_pathVariable);
    node->AddChild(pathVariable);

    // Add compiler options
    CmpCmdLineOptions::const_iterator itCmpOption = m_compilerOptions.begin();
    for(; itCmpOption != m_compilerOptions.end(); ++itCmpOption) {
        const CmpCmdLineOption& cmpOption = itCmpOption->second;
        wxXmlNode* pCmpOptionNode = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("CompilerOption"));
        pCmpOptionNode->AddProperty(wxT("Name"), cmpOption.name);
        XmlUtils::SetNodeContent(pCmpOptionNode, cmpOption.help);
        node->AddChild(pCmpOptionNode);
    }

    // Add linker options
    CmpCmdLineOptions::const_iterator itLnkOption = m_linkerOptions.begin();
    for(; itLnkOption != m_linkerOptions.end(); ++itLnkOption) {
        const CmpCmdLineOption& lnkOption = itLnkOption->second;
        wxXmlNode* pLnkOptionNode = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("LinkerOption"));
        pLnkOptionNode->AddProperty(wxT("Name"), lnkOption.name);
        XmlUtils::SetNodeContent(pLnkOptionNode, lnkOption.help);
        node->AddChild(pLnkOptionNode);
    }

    return node;
}
Beispiel #22
0
/*! \brief Write the doxygen configuration and log files.
 *
 * \param    prj             cbProject*        The project.
 * \param    sPrjName        wxString          The project's name.
 * \param    sPrjPath        wxString          The path to the project.
 * \param    sDoxygenDir     wxString          The relative path to the doxygen files.
 * \param    fnDoxyfile      wxFileName        Doxyfile filename object.
 * \param    fnDoxygenLog    wxFileName        Doxygen log filename object.
 *
 */
void DoxyBlocks::WriteConfigFiles(cbProject *prj, wxString sPrjName, wxString /*sPrjPath*/, wxString /*sDoxygenDir*/, wxFileName fnDoxyfile, wxFileName fnDoxygenLog)
{
    wxArrayString sOutput;
    wxArrayString sErrors;
    MacrosManager    *pMacMngr = Manager::Get()->GetMacrosManager();

     // If there is no config file, create one. If it exists, check prefs.
    bool bWrite = true;
    if(wxFile::Exists(fnDoxyfile.GetFullPath())){
        bWrite = false;
        AppendToLog(_("Found existing doxyfile..."));
        bool bOverwriteDoxyfile = m_pConfig->GetOverwriteDoxyfile();
        if(bOverwriteDoxyfile){
            bool bPromptB4Overwriting = m_pConfig->GetPromptBeforeOverwriting();
            if(bPromptB4Overwriting){
                if(wxMessageBox(_("Overwrite existing doxyfile?"), wxT("DoxyBlocks"), wxYES_NO|wxCENTRE) == wxYES){
                    bWrite = true;
                }
            }
            else{
                bWrite = true;
            }
        }
    }

    if(bWrite){
        AppendToLog(_("Writing doxyfile..."));
        // Keep the CHM separate for easy access.
        wxString sChmFile = wxT("../") + sPrjName + wxT(".chm");
        // Get the list of files from which to extract documentation.
        wxString sInputList = GetInputList(prj, fnDoxyfile);

        // Project.
        wxString sPrjNum = m_pConfig->GetProjectNumber();
        wxString sLanguage = m_pConfig->GetOutputLanguage();
        // Build.
        wxString sExtractAll = BoolToString(m_pConfig->GetExtractAll());
        wxString sExtractPrivate = BoolToString(m_pConfig->GetExtractPrivate());
        wxString sExtractStatic = BoolToString(m_pConfig->GetExtractStatic());
        // Warnings.
        wxString sWarnings = BoolToString(m_pConfig->GetWarnings());
        wxString sWarnIfUndoc = BoolToString(m_pConfig->GetWarnIfUndocumented());
        wxString sWarnIfDocError = BoolToString(m_pConfig->GetWarnIfDocError());
        wxString sWarnNoParamDoc = BoolToString(m_pConfig->GetWarnNoParamdoc());
        //  Alphabetical Class Index.
        wxString sAlphaIndex = BoolToString(m_pConfig->GetAlphabeticalIndex());
        // Output.
        wxString sGenerateHTML = BoolToString(m_pConfig->GetGenerateHTML());
        wxString sGenerateHTMLHelp = BoolToString(m_pConfig->GetGenerateHTMLHelp());
        wxString sPathHHC = pMacMngr->ReplaceMacros(m_pConfig->GetPathHHC());
        wxString sGenerateCHI = BoolToString(m_pConfig->GetGenerateCHI());
        wxString sBinaryTOC = BoolToString(m_pConfig->GetBinaryTOC());
        wxString sGenerateLatex = BoolToString(m_pConfig->GetGenerateLatex());
        wxString sGenerateRTF = BoolToString(m_pConfig->GetGenerateRTF());
        wxString sGenerateMan = BoolToString(m_pConfig->GetGenerateMan());
        wxString sGenerateXML = BoolToString(m_pConfig->GetGenerateXML());
        wxString sGenerateAutogenDef = BoolToString(m_pConfig->GetGenerateAutogenDef());
        wxString sGeneratePerlMod = BoolToString(m_pConfig->GetGeneratePerlMod());
        // Pre-processor.
        wxString sEnablePreproc = BoolToString(m_pConfig->GetEnablePreprocessing());
        // Dot.
        wxString sClassDiag = BoolToString(m_pConfig->GetClassDiagrams());
        wxString sHaveDot = BoolToString(m_pConfig->GetHaveDot());
        wxString sPathDot = pMacMngr->ReplaceMacros(m_pConfig->GetPathDot());

        // Create a full doxygen 1.7.3 config file without comments.
        wxString sText;
        wxString nl = wxT("\n");
        wxString qnl = wxT("\"\n");
        sText   =  wxT("#******************************************************************************\n");
        sText +=  wxString(wxT("# ")) + _("Base configuration for doxygen, generated by DoxyBlocks") + wxT(".\n");
        sText +=  wxString(wxT("# ")) + _("You may change these defaults to suit your purposes") + wxT(".\n");
        sText +=  wxT("#******************************************************************************\n\n");

        sText +=  wxT("# Doxyfile 1.7.3\n");
        sText +=  wxT("\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# Project related configuration options\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("DOXYFILE_ENCODING      = UTF-8\n");
        sText +=  wxT("PROJECT_NAME           = ") + sPrjName + nl;
        sText +=  wxT("PROJECT_NUMBER         = ") + sPrjNum + nl;
        sText +=  wxT("PROJECT_BRIEF          =\n");
        sText +=  wxT("PROJECT_LOGO           =\n");
        sText +=  wxT("OUTPUT_DIRECTORY       =\n");
        sText +=  wxT("CREATE_SUBDIRS         = NO\n");
        sText +=  wxT("OUTPUT_LANGUAGE        = ") + sLanguage + nl;
        sText +=  wxT("BRIEF_MEMBER_DESC      = YES\n");
        sText +=  wxT("REPEAT_BRIEF           = YES\n");
        sText +=  wxT("ABBREVIATE_BRIEF       =\n");
        sText +=  wxT("ALWAYS_DETAILED_SEC    = NO\n");
        sText +=  wxT("INLINE_INHERITED_MEMB  = NO\n");
        sText +=  wxT("FULL_PATH_NAMES        = NO\n");
        sText +=  wxT("STRIP_FROM_PATH        =\n");
        sText +=  wxT("STRIP_FROM_INC_PATH    =\n");
        sText +=  wxT("SHORT_NAMES            = NO\n");
        sText +=  wxT("JAVADOC_AUTOBRIEF      = NO\n");
        sText +=  wxT("QT_AUTOBRIEF           = NO\n");
        sText +=  wxT("MULTILINE_CPP_IS_BRIEF = NO\n");
        sText +=  wxT("INHERIT_DOCS           = YES\n");
        sText +=  wxT("SEPARATE_MEMBER_PAGES  = NO\n");
        sText +=  wxT("TAB_SIZE               = 8\n");
        sText +=  wxT("ALIASES                =\n");
        sText +=  wxT("OPTIMIZE_OUTPUT_FOR_C  = NO\n");
        sText +=  wxT("OPTIMIZE_OUTPUT_JAVA   = NO\n");
        sText +=  wxT("OPTIMIZE_FOR_FORTRAN   = NO\n");
        sText +=  wxT("OPTIMIZE_OUTPUT_VHDL   = NO\n");
        sText +=  wxT("EXTENSION_MAPPING      =\n");
        sText +=  wxT("BUILTIN_STL_SUPPORT    = NO\n");
        sText +=  wxT("CPP_CLI_SUPPORT        = NO\n");
        sText +=  wxT("SIP_SUPPORT            = NO\n");
        sText +=  wxT("IDL_PROPERTY_SUPPORT   = YES\n");
        sText +=  wxT("DISTRIBUTE_GROUP_DOC   = NO\n");
        sText +=  wxT("SUBGROUPING            = YES\n");
        sText +=  wxT("TYPEDEF_HIDES_STRUCT   = NO\n");
        sText +=  wxT("SYMBOL_CACHE_SIZE      = 0\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# Build related configuration options\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("EXTRACT_ALL            = ") + sExtractAll + nl;
        sText +=  wxT("EXTRACT_PRIVATE        = ") + sExtractPrivate + nl;
        sText +=  wxT("EXTRACT_STATIC         = ") + sExtractStatic + nl;
        sText +=  wxT("EXTRACT_LOCAL_CLASSES  = YES\n");
        sText +=  wxT("EXTRACT_LOCAL_METHODS  = NO\n");
        sText +=  wxT("EXTRACT_ANON_NSPACES   = NO\n");
        sText +=  wxT("HIDE_UNDOC_MEMBERS     = NO\n");
        sText +=  wxT("HIDE_UNDOC_CLASSES     = NO\n");
        sText +=  wxT("HIDE_FRIEND_COMPOUNDS  = NO\n");
        sText +=  wxT("HIDE_IN_BODY_DOCS      = NO\n");
        sText +=  wxT("INTERNAL_DOCS          = NO\n");
        sText +=  wxT("CASE_SENSE_NAMES       = NO\n");
        sText +=  wxT("HIDE_SCOPE_NAMES       = NO\n");
        sText +=  wxT("SHOW_INCLUDE_FILES     = YES\n");
        sText +=  wxT("FORCE_LOCAL_INCLUDES   = NO\n");
        sText +=  wxT("INLINE_INFO            = YES\n");
        sText +=  wxT("SORT_MEMBER_DOCS       = YES\n");
        sText +=  wxT("SORT_BRIEF_DOCS        = NO\n");
        sText +=  wxT("SORT_MEMBERS_CTORS_1ST = NO\n");
        sText +=  wxT("SORT_GROUP_NAMES       = NO\n");
        sText +=  wxT("SORT_BY_SCOPE_NAME     = NO\n");
        sText +=  wxT("STRICT_PROTO_MATCHING  = NO\n");
        sText +=  wxT("GENERATE_TODOLIST      = YES\n");
        sText +=  wxT("GENERATE_TESTLIST      = YES\n");
        sText +=  wxT("GENERATE_BUGLIST       = YES\n");
        sText +=  wxT("GENERATE_DEPRECATEDLIST= YES\n");
        sText +=  wxT("ENABLED_SECTIONS       =\n");
        sText +=  wxT("MAX_INITIALIZER_LINES  = 30\n");
        sText +=  wxT("SHOW_USED_FILES        = YES\n");
        sText +=  wxT("SHOW_DIRECTORIES       = NO\n");
        sText +=  wxT("SHOW_FILES             = YES\n");
        sText +=  wxT("SHOW_NAMESPACES        = YES\n");
        sText +=  wxT("FILE_VERSION_FILTER    =\n");
        sText +=  wxT("LAYOUT_FILE            =\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# configuration options related to warning and progress messages\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("QUIET                  = NO\n");
        sText +=  wxT("WARNINGS               = ") + sWarnings + nl;
        sText +=  wxT("WARN_IF_UNDOCUMENTED   = ") + sWarnIfUndoc + nl;
        sText +=  wxT("WARN_IF_DOC_ERROR      = ") + sWarnIfDocError + nl;
        sText +=  wxT("WARN_NO_PARAMDOC       = ") + sWarnNoParamDoc + nl;
        sText +=  wxT("WARN_FORMAT            = \"$file:$line: $text\"\n");
        sText +=  wxT("WARN_LOGFILE            = \"") + fnDoxygenLog.GetFullPath() + qnl;

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# configuration options related to the input files\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText += sInputList;
        sText +=  wxT("INPUT_ENCODING         = UTF-8\n");
        sText +=  wxT("FILE_PATTERNS          =\n");
        sText +=  wxT("RECURSIVE              = NO\n");
        sText +=  wxT("EXCLUDE                =\n");
        sText +=  wxT("EXCLUDE_SYMLINKS       = NO\n");
        sText +=  wxT("EXCLUDE_PATTERNS       =\n");
        sText +=  wxT("EXCLUDE_SYMBOLS        =\n");
        sText +=  wxT("EXAMPLE_PATH           =\n");
        sText +=  wxT("EXAMPLE_PATTERNS       =\n");
        sText +=  wxT("EXAMPLE_RECURSIVE      = NO\n");
        sText +=  wxT("IMAGE_PATH             =\n");
        sText +=  wxT("INPUT_FILTER           =\n");
        sText +=  wxT("FILTER_PATTERNS        =\n");
        sText +=  wxT("FILTER_SOURCE_FILES    = NO\n");
        sText +=  wxT("FILTER_SOURCE_PATTERNS =\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# configuration options related to source browsing\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("SOURCE_BROWSER         = NO\n");
        sText +=  wxT("INLINE_SOURCES         = NO\n");
        sText +=  wxT("STRIP_CODE_COMMENTS    = YES\n");
        sText +=  wxT("REFERENCED_BY_RELATION = NO\n");
        sText +=  wxT("REFERENCES_RELATION    = NO\n");
        sText +=  wxT("REFERENCES_LINK_SOURCE = YES\n");
        sText +=  wxT("USE_HTAGS              = NO\n");
        sText +=  wxT("VERBATIM_HEADERS       = YES\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# configuration options related to the alphabetical class index\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("ALPHABETICAL_INDEX     = ") + sAlphaIndex + nl;
        sText +=  wxT("COLS_IN_ALPHA_INDEX    = 5\n");
        sText +=  wxT("IGNORE_PREFIX          =\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# configuration options related to the HTML output\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("GENERATE_HTML          = ") + sGenerateHTML + nl;
        sText +=  wxT("HTML_OUTPUT            = html\n");
        sText +=  wxT("HTML_FILE_EXTENSION    = .html\n");
        sText +=  wxT("HTML_HEADER            =\n");
        sText +=  wxT("HTML_FOOTER            =\n");
        sText +=  wxT("HTML_STYLESHEET        =\n");
        sText +=  wxT("HTML_COLORSTYLE_HUE    = 220\n");
        sText +=  wxT("HTML_COLORSTYLE_SAT    = 100\n");
        sText +=  wxT("HTML_COLORSTYLE_GAMMA  = 80\n");
        sText +=  wxT("HTML_TIMESTAMP         = YES\n");
        sText +=  wxT("HTML_ALIGN_MEMBERS     = YES\n");
        sText +=  wxT("HTML_DYNAMIC_SECTIONS  = NO\n");
        sText +=  wxT("GENERATE_DOCSET        = NO\n");
        sText +=  wxT("DOCSET_FEEDNAME        = \"Doxygen generated docs\"\n");
        sText +=  wxT("DOCSET_BUNDLE_ID       = org.doxygen.Project\n");
        sText +=  wxT("DOCSET_PUBLISHER_ID    = org.doxygen.Publisher\n");
        sText +=  wxT("DOCSET_PUBLISHER_NAME  = Publisher\n");
        sText +=  wxT("GENERATE_HTMLHELP      = ") + sGenerateHTMLHelp + nl;
        sText +=  wxT("CHM_FILE               = \"") + sChmFile    + qnl;
        if(!sPathHHC.IsEmpty()){
            sText +=  wxT("HHC_LOCATION           = \"") + sPathHHC + qnl;
        }
        else{
            sText +=  wxT("HHC_LOCATION           =\n");
        }
        sText +=  wxT("GENERATE_CHI           = ") + sGenerateCHI + nl;
        sText +=  wxT("CHM_INDEX_ENCODING     =\n");
        sText +=  wxT("BINARY_TOC             = ") + sBinaryTOC + nl;
        sText +=  wxT("TOC_EXPAND             = NO\n");
        sText +=  wxT("GENERATE_QHP           = NO\n");
        sText +=  wxT("QCH_FILE               =\n");
        sText +=  wxT("QHP_NAMESPACE          = org.doxygen.Project\n");
        sText +=  wxT("QHP_VIRTUAL_FOLDER     = doc\n");
        sText +=  wxT("QHP_CUST_FILTER_NAME   =\n");
        sText +=  wxT("QHP_CUST_FILTER_ATTRS  =\n");
        sText +=  wxT("QHP_SECT_FILTER_ATTRS  =\n");
        sText +=  wxT("QHG_LOCATION           =\n");
        sText +=  wxT("GENERATE_ECLIPSEHELP   = NO\n");
        sText +=  wxT("ECLIPSE_DOC_ID         = org.doxygen.Project\n");
        sText +=  wxT("DISABLE_INDEX          = NO\n");
        sText +=  wxT("ENUM_VALUES_PER_LINE   = 4\n");
        sText +=  wxT("GENERATE_TREEVIEW      = YES\n");
        sText +=  wxT("USE_INLINE_TREES       = NO\n");
        sText +=  wxT("TREEVIEW_WIDTH         = 250\n");
        sText +=  wxT("EXT_LINKS_IN_WINDOW    = NO\n");
        sText +=  wxT("FORMULA_FONTSIZE       = 10\n");
        sText +=  wxT("FORMULA_TRANSPARENT    = YES\n");
        sText +=  wxT("USE_MATHJAX            = NO\n");
        sText +=  wxT("MATHJAX_RELPATH        = http://www.mathjax.org/mathjax\n");
        sText +=  wxT("SEARCHENGINE           = YES\n");
        sText +=  wxT("SERVER_BASED_SEARCH    = NO\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# configuration options related to the LaTeX output\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("GENERATE_LATEX         = ") + sGenerateLatex + nl;
        sText +=  wxT("LATEX_OUTPUT           = latex\n");
        sText +=  wxT("LATEX_CMD_NAME         = latex\n");
        sText +=  wxT("MAKEINDEX_CMD_NAME     = makeindex\n");
        sText +=  wxT("COMPACT_LATEX          = NO\n");
        sText +=  wxT("PAPER_TYPE             = a4\n");
        sText +=  wxT("EXTRA_PACKAGES         =\n");
        sText +=  wxT("LATEX_HEADER           =\n");
        sText +=  wxT("PDF_HYPERLINKS         = YES\n");
        sText +=  wxT("USE_PDFLATEX           = YES\n");
        sText +=  wxT("LATEX_BATCHMODE        = NO\n");
        sText +=  wxT("LATEX_HIDE_INDICES     = NO\n");
        sText +=  wxT("LATEX_SOURCE_CODE      = NO\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# configuration options related to the RTF output\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("GENERATE_RTF           = ") + sGenerateRTF + nl;
        sText +=  wxT("RTF_OUTPUT             = rtf\n");
        sText +=  wxT("COMPACT_RTF            = NO\n");
        sText +=  wxT("RTF_HYPERLINKS         = NO\n");
        sText +=  wxT("RTF_STYLESHEET_FILE    =\n");
        sText +=  wxT("RTF_EXTENSIONS_FILE    =\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# configuration options related to the man page output\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("GENERATE_MAN           = ") + sGenerateMan + nl;
        sText +=  wxT("MAN_OUTPUT             = man\n");
        sText +=  wxT("MAN_EXTENSION          = .3\n");
        sText +=  wxT("MAN_LINKS              = NO\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# configuration options related to the XML output\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("GENERATE_XML           = ") + sGenerateXML + nl;
        sText +=  wxT("XML_OUTPUT             = xml\n");
        sText +=  wxT("XML_SCHEMA             =\n");
        sText +=  wxT("XML_DTD                =\n");
        sText +=  wxT("XML_PROGRAMLISTING     = YES\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# configuration options for the AutoGen Definitions output\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("GENERATE_AUTOGEN_DEF   = ") + sGenerateAutogenDef + nl;
        sText +=  wxT("#---------------------------------------------------------------------------\n");

        sText +=  wxT("# configuration options related to the Perl module output\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("GENERATE_PERLMOD       = ") + sGeneratePerlMod + nl;
        sText +=  wxT("PERLMOD_LATEX          = NO\n");
        sText +=  wxT("PERLMOD_PRETTY         = YES\n");
        sText +=  wxT("PERLMOD_MAKEVAR_PREFIX =\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");

        sText +=  wxT("# Configuration options related to the preprocessor\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("ENABLE_PREPROCESSING   = ") + sEnablePreproc + nl;
        sText +=  wxT("MACRO_EXPANSION        = YES\n");
        sText +=  wxT("EXPAND_ONLY_PREDEF     = YES\n");
        sText +=  wxT("SEARCH_INCLUDES        = YES\n");
        sText +=  wxT("INCLUDE_PATH           =\n");
        sText +=  wxT("INCLUDE_FILE_PATTERNS  =\n");
        sText +=  wxT("PREDEFINED             = WXUNUSED()=\n");        /// TODO (Gary#1#): I should look at other macros for inclusion here.
        sText +=  wxT("EXPAND_AS_DEFINED      =\n");
        sText +=  wxT("SKIP_FUNCTION_MACROS   = YES\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# Configuration::additions related to external references\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("TAGFILES               =\n");
        sText +=  wxT("GENERATE_TAGFILE       =\n");
        sText +=  wxT("ALLEXTERNALS           = NO\n");
        sText +=  wxT("EXTERNAL_GROUPS        = YES\n");
        sText +=  wxT("PERL_PATH              = /usr/bin/perl\n");

        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("# Configuration options related to the dot tool\n");
        sText +=  wxT("#---------------------------------------------------------------------------\n");
        sText +=  wxT("CLASS_DIAGRAMS         = ") + sClassDiag + nl;
        sText +=  wxT("MSCGEN_PATH            =\n");
        sText +=  wxT("HIDE_UNDOC_RELATIONS   = YES\n");
        sText +=  wxT("HAVE_DOT               = ") + sHaveDot + nl;
        sText +=  wxT("DOT_NUM_THREADS        = 0\n");
        sText +=  wxT("DOT_FONTNAME           = Helvetica\n");
        sText +=  wxT("DOT_FONTSIZE           = 10\n");
        sText +=  wxT("DOT_FONTPATH           =\n");
        sText +=  wxT("CLASS_GRAPH            = YES\n");
        sText +=  wxT("COLLABORATION_GRAPH    = YES\n");
        sText +=  wxT("GROUP_GRAPHS           = YES\n");
        sText +=  wxT("UML_LOOK               = NO\n");
        sText +=  wxT("TEMPLATE_RELATIONS     = NO\n");
        sText +=  wxT("INCLUDE_GRAPH          = YES\n");
        sText +=  wxT("INCLUDED_BY_GRAPH      = YES\n");
        sText +=  wxT("CALL_GRAPH             = YES\n");
        sText +=  wxT("CALLER_GRAPH           = NO\n");
        sText +=  wxT("GRAPHICAL_HIERARCHY    = YES\n");
        sText +=  wxT("DIRECTORY_GRAPH        = YES\n");
        sText +=  wxT("DOT_IMAGE_FORMAT       = png\n");
        if(!sPathDot.IsEmpty()){
            sText +=  wxT("DOT_PATH           = \"") + sPathDot + qnl;
        }
        else{
            sText +=  wxT("DOT_PATH               =\n");
        }
        sText +=  wxT("DOTFILE_DIRS           =\n");
        sText +=  wxT("MSCFILE_DIRS           =\n");
        sText +=  wxT("DOT_GRAPH_MAX_NODES    = 50\n");
        sText +=  wxT("MAX_DOT_GRAPH_DEPTH    = 0\n");
        sText +=  wxT("DOT_TRANSPARENT        = NO\n");
        sText +=  wxT("DOT_MULTI_TARGETS      = NO\n");
        sText +=  wxT("GENERATE_LEGEND        = YES\n");
        sText +=  wxT("DOT_CLEANUP            = YES\n");
        sText +=  wxT("\n");

        wxFFile fileDoxyfile(fnDoxyfile.GetFullPath(), wxT("w"));
        fileDoxyfile.Write(sText);
    }
}
Beispiel #23
0
void DumpHelp(osmscout::ImportParameter& parameter)
{
  std::cout << "Import -h -d -s <start step> -e <end step> [openstreetmapdata.osm|openstreetmapdata.osm.pbf]..." << std::endl;
  std::cout << " -h|--help                            show this help" << std::endl;
  std::cout << " -d                                   show debug output" << std::endl;
  std::cout << " -s <start step>                      set starting step" << std::endl;
  std::cout << " -s <end step>                        set final step" << std::endl;
  std::cout << " --typefile <path>                    path and name of the map.ost file (default: " << parameter.GetTypefile() << ")" << std::endl;
  std::cout << " --destinationDirectory <path>        destination for generated map files (default: " << parameter.GetDestinationDirectory() << ")" << std::endl;

  std::cout << " --router <router description>        definition of a router (default: car,bicycle,foot:router)" << std::endl;

  std::cout << " --strictAreas true|false             assure that areas are simple (default: " << BoolToString(parameter.GetStrictAreas()) << ")" << std::endl;

  std::cout << " --numericIndexPageSize <number>      size of an numeric index page in bytes (default: " << parameter.GetNumericIndexPageSize() << ")" << std::endl;

  std::cout << " --coordDataMemoryMaped true|false    memory maped coord data file access (default: " << BoolToString(parameter.GetCoordDataMemoryMaped()) << ")" << std::endl;

  std::cout << " --rawNodeDataMemoryMaped true|false  memory maped raw node data file access (default: " << BoolToString(parameter.GetRawNodeDataMemoryMaped()) << ")" << std::endl;

  std::cout << " --rawWayIndexMemoryMaped true|false  memory maped raw way index file access (default: " << BoolToString(parameter.GetRawWayIndexMemoryMaped()) << ")" << std::endl;
  std::cout << " --rawWayDataMemoryMaped true|false   memory maped raw way data file access (default: " << BoolToString(parameter.GetRawWayDataMemoryMaped()) << ")" << std::endl;
  std::cout << " --rawWayIndexCacheSize <number>      raw way index cache size (default: " << parameter.GetRawWayIndexCacheSize() << ")" << std::endl;
  std::cout << " --rawWayBlockSize <number>           number of raw ways resolved in block (default: " << parameter.GetRawWayBlockSize() << ")" << std::endl;

  std::cout << " --noSort                             do not sort objects" << std::endl;
  std::cout << " --sortBlockSize <number>             size of one data block during sorting (default: " << parameter.GetSortBlockSize() << ")" << std::endl;

  std::cout << " --areaDataMemoryMaped true|false     memory maped area data file access (default: " << BoolToString(parameter.GetAreaDataMemoryMaped()) << ")" << std::endl;
  std::cout << " --areaDataCacheSize <number>         area data cache size (default: " << parameter.GetAreaDataCacheSize() << ")" << std::endl;

  std::cout << " --wayDataMemoryMaped true|false      memory maped way data file access (default: " << BoolToString(parameter.GetWayDataMemoryMaped()) << ")" << std::endl;
  std::cout << " --wayDataCacheSize <number>          way data cache size (default: " << parameter.GetWayDataCacheSize() << ")" << std::endl;

  std::cout << " --routeNodeBlockSize <number>        number of route nodes resolved in block (default: " << parameter.GetRouteNodeBlockSize() << ")" << std::endl;
}
Beispiel #24
0
bool Ini::Load(const std::string& section, const std::string& key, const bool def_value)
{
	return StringToBool(m_Config->GetValue(section.c_str(), key.c_str(), BoolToString(def_value).c_str()));
	saveIniFile();
}
// This function is called when 777X data changes
// TODO: come up with a better and more elegant way of doing this
void Process777XData(PMDG_777X_Data *pS)
{
	/*if (pS->ELEC_IDGDiscSw[1] != B777X_BackupGeneratorSwitch2)
	{
		B777X_BackupGeneratorSwitch2 = pS->ELEC_IDGDiscSw[1];
		if (B777X_BackupGeneratorSwitch2 == 0)
			printf("ELEC_IDGDiscSw2: [OFF]\n");
		else
			printf("ELEC_IDGDiscSw2: [ON]\n");

		//send packets
		sendDataBool("ELEC_IDGDiscSw2", B777X_BackupGeneratorSwitch2);
	}*/

	if (BoolToString(pS->ELEC_IDGDiscSw[0]) != PlaneParameters["B777X_IGDDiskSwitch1"])
	{
		PlaneParameters["B777X_IGDDiskSwitch1"] = BoolToString(pS->ELEC_IDGDiscSw[0]);
		if (PlaneParameters["B777X_IGDDiskSwitch1"] == 0)
			printf("ELEC_IDGDiscSw1: [OFF]\n");
		else
			printf("ELEC_IDGDiscSw1: [ON]\n");

		//send packets
		sendDataBool("ELEC_IDGDiscSw1", PlaneParameters["B777X_IGDDiskSwitch1"]);
	}

	if (pS->ELEC_BackupGen_Sw_ON[1] != B777X_BackupGeneratorSwitch2)
	{
		B777X_BackupGeneratorSwitch2 = pS->ELEC_BackupGen_Sw_ON[1];
		if (B777X_BackupGeneratorSwitch2 == 0)
			printf("ELEC_BusTie_Sw_AUTO2: [OFF]\n");
		else
			printf("ELEC_BusTie_Sw_AUTO2: [ON]\n");

		//send packets
		sendDataBool("ELEC_BackupGen_Sw_ON2", B777X_BackupGeneratorSwitch2);
	}

	if (pS->ELEC_BackupGen_Sw_ON[0] != B777X_BackupGeneratorSwitch1)
	{
		B777X_BackupGeneratorSwitch1 = pS->ELEC_BackupGen_Sw_ON[0];
		if (B777X_BackupGeneratorSwitch1 == 0)
			printf("ELEC_BusTie_Sw_AUTO: [OFF]\n");
		else
			printf("ELEC_BusTie_Sw_AUTO: [ON]\n");

		//send packets
		sendDataBool("ELEC_BackupGen_Sw_ON1", B777X_BackupGeneratorSwitch1);
	}

	if (pS->ELEC_Gen_Sw_ON[1] != B777X_GeneratorSwitch2)
	{
		B777X_GeneratorSwitch2 = pS->ELEC_Gen_Sw_ON[1];
		if (B777X_GeneratorSwitch2 == 0)
			printf("ELEC_BusTie_Sw_AUTO2: [OFF]\n");
		else
			printf("ELEC_BusTie_Sw_AUTO2: [ON]\n");

		//send packets
		sendDataBool("ELEC_Gen_Sw_ON2", B777X_GeneratorSwitch2);
	}

	if (pS->ELEC_Gen_Sw_ON[0] != B777X_GeneratorSwitch1)
	{
		B777X_GeneratorSwitch1 = pS->ELEC_Gen_Sw_ON[0];
		if (B777X_GeneratorSwitch1 == 0)
			printf("ELEC_BusTie_Sw_AUTO: [OFF]\n");
		else
			printf("ELEC_BusTie_Sw_AUTO: [ON]\n");

		//send packets
		sendDataBool("ELEC_Gen_Sw_ON1", B777X_GeneratorSwitch1);
	}

	if (pS->ELEC_ExtPwrSw[1] != B777X_ExternalPowerSwitch2)
	{
		B777X_ExternalPowerSwitch2 = pS->ELEC_ExtPwrSw[1];
		if (B777X_ExternalPowerSwitch2 == 0)
			printf("ELEC_BusTie_Sw_AUTO2: [OFF]\n");
		else
			printf("ELEC_BusTie_Sw_AUTO2: [ON]\n");

		//send packets
		sendDataBool("ELEC_ExtPwrSw2", B777X_ExternalPowerSwitch2);
	}

	if (pS->ELEC_ExtPwrSw[0] != B777X_ExternalPowerSwitch1)
	{
		B777X_ExternalPowerSwitch1 = pS->ELEC_ExtPwrSw[0];
		if (B777X_ExternalPowerSwitch1 == 0)
			printf("ELEC_BusTie_Sw_AUTO: [OFF]\n");
		else
			printf("ELEC_BusTie_Sw_AUTO: [ON]\n");

		//send packets
		sendDataBool("ELEC_ExtPwrSw1", B777X_ExternalPowerSwitch1);
	}

	if (pS->ELEC_BusTie_Sw_AUTO[1] != B777X_BusTieSwitch2)
	{
		B777X_BusTieSwitch2 = pS->ELEC_BusTie_Sw_AUTO[1];
		if (B777X_BusTieSwitch2 == 0)
			printf("ELEC_BusTie_Sw_AUTO2: [OFF]\n");
		else
			printf("ELEC_BusTie_Sw_AUTO2: [ON]\n");

		//send packets
		sendDataBool("ELEC_BusTie_Sw_AUTO2", B777X_BusTieSwitch2);
	}

	if (pS->ELEC_BusTie_Sw_AUTO[0] != B777X_BusTieSwitch1)
	{
		B777X_BusTieSwitch1 = pS->ELEC_BusTie_Sw_AUTO[0];
		if (B777X_BusTieSwitch1 == 0)
			printf("ELEC_BusTie_Sw_AUTO: [OFF]\n");
		else
			printf("ELEC_BusTie_Sw_AUTO: [ON]\n");

		//send packets
		sendDataBool("ELEC_BusTie_Sw_AUTO", B777X_BusTieSwitch1);
	}

	if (pS->ELEC_APU_Selector != B777X_ApuSelector)
	{
		B777X_ApuSelector = pS->ELEC_APU_Selector;
		if (B777X_ApuSelector == 0)
			printf("APU Selector: [OFF]\n");
		else if(B777X_ApuSelector == 1)
			printf("APU Selector: [ON]\n");
		else
			printf("APU Selector: [START]\n");

		//send packets
		sendDataChar("ELEC_APU_Selector", B777X_ApuSelector);
	}

	if (pS->ELEC_APUGen_Sw_ON != B777X_APUGenSwitch)
	{
		B777X_APUGenSwitch = pS->ELEC_APUGen_Sw_ON;
		if (B777X_APUGenSwitch == 0)
			printf("APU Gen Switch: [OFF]\n");
		else
			printf("APU Gen Switch: [ON]\n");

		//send packets
		sendDataBool("ELEC_APUGen_Sw_ON", B777X_APUGenSwitch);
	}

	if (pS->ELEC_Battery_Sw_ON != B777X_BatterySwitch)
	{
		B777X_BatterySwitch = pS->ELEC_Battery_Sw_ON;
		if (B777X_BatterySwitch == 0)
			printf("Battery Switch: [OFF]\n");
		else
			printf("Battery Switch: [ON]\n");

		//send packets
		sendDataBool("ELEC_Battery_Sw_ON", B777X_BatterySwitch);
	}

	if (pS->ELEC_IFEPassSeatsSw != B777X_IFEPassSeatsSwitch)
	{
		B777X_IFEPassSeatsSwitch = pS->ELEC_IFEPassSeatsSw;
		if (B777X_IFEPassSeatsSwitch == 0)
			printf("IFE Seats Switch: [OFF]\n");
		else
			printf("IFE Seats Switch: [ON]\n");

		//send packets
		sendDataBool("ELEC_IFEPassSeatsSw", B777X_IFEPassSeatsSwitch);
	}

	if (pS->ELEC_CabUtilSw != B777X_CabinUtilitySwitch)
	{
		B777X_CabinUtilitySwitch = pS->ELEC_CabUtilSw;
		if (B777X_CabinUtilitySwitch == 0)
			printf("Cabin Utility Switch: [OFF]\n");
		else
			printf("Cabin Utility Switch: [ON]\n");

		//send packets
		sendDataBool("ELEC_CabUtilSw", B777X_CabinUtilitySwitch);
	}

	if (pS->FCTL_ThrustAsymComp_Sw_AUTO != B777X_ThrustAsymComp)
	{
		B777X_ThrustAsymComp = pS->FCTL_ThrustAsymComp_Sw_AUTO;
		if (B777X_ThrustAsymComp == 0)
			printf("Thrust Asym Comp Switch: [OFF]\n");
		else
			printf("Thrust Asym Comp Switch: [ON]\n");

		//send packets
		sendDataBool("FCTL_ThrustAsymComp_Sw_AUTO", B777X_ThrustAsymComp);
	}

	if (pS->ADIRU_Sw_On != B777X_ADIRUSwitch)
	{
		B777X_ADIRUSwitch = pS->ADIRU_Sw_On;
		if (B777X_ADIRUSwitch == 0)
			printf("ADIRU Switch: [OFF]\n");
		else
			printf("ADIRU Switch: [ON]\n");

		//send packets
		sendDataBool("ADIRU_Sw_On", B777X_ADIRUSwitch);
	}

	//----------------------
	//Overhead maintenance panel
	//----------------------
	if (pS->AIR_CargoTemp_Selector[1] != B777X_CargoTempSelector2)
	{
		B777X_CargoTempSelector2 = pS->AIR_CargoTemp_Selector[1];
		if (B777X_CargoTempSelector2 == 0)
			printf("Cargo Temp Selector Aft: [OFF]\n");
		else if(B777X_CargoTempSelector2 == 1)
			printf("Cargo Temp Selector Aft: [LOW]\n");
		else
			printf("Cargo Temp Selector Aft: [HIGH]\n");

		//send packets
		sendDataChar("AIR_CargoTemp_Selector2", B777X_CargoTempSelector1);
	}

	if (pS->AIR_CargoTemp_Selector[0] != B777X_CargoTempSelector1)
	{
		B777X_CargoTempSelector1 = pS->AIR_CargoTemp_Selector[0];
		if (B777X_CargoTempSelector1 == 0)
			printf("Cargo Temp Selector Aft: [OFF]\n");
		else if(B777X_CargoTempSelector1 == 1)
			printf("Cargo Temp Selector Aft: [LOW]\n");
		else
			printf("Cargo Temp Selector Aft: [HIGH]\n");

		//send packets
		sendDataChar("AIR_CargoTemp_Selector1", B777X_CargoTempSelector1);
	}

	if (pS->ELEC_TowingPower_Sw_BATT != B777X_ElectricTowingBatSwitch)
	{
		B777X_ElectricTowingBatSwitch = pS->ELEC_TowingPower_Sw_BATT;
		if (B777X_ElectricTowingBatSwitch == 0)
			printf("Electric Towing Bat Switch: [OFF]\n");
		else
			printf("Electric Towing Bat Switch: [ON]\n");

		//send packets
		sendDataBool("ELEC_TowingPower_Sw_BATT", B777X_ElectricTowingBatSwitch);
	}

	if (pS->ENG_EECPower_Sw_TEST[1] != B777X_EngineEECPowerTestSwitch2)
	{
		B777X_EngineEECPowerTestSwitch2 = pS->ENG_EECPower_Sw_TEST[1];
		if (B777X_EngineEECPowerTestSwitch2 == 0)
			printf("Engine EEC Power Test Switch 2: [OFF]\n");
		else
			printf("Engine EEC Power Test Switch 2: [ON]\n");

		//send packets
		sendDataBool("ENG_EECPower_Sw_TEST2", B777X_EngineEECPowerTestSwitch2);
	}

	if (pS->ENG_EECPower_Sw_TEST[0] != B777X_EngineEECPowerTestSwitch1)
	{
		B777X_EngineEECPowerTestSwitch1 = pS->ENG_EECPower_Sw_TEST[0];
		if (B777X_EngineEECPowerTestSwitch1 == 0)
			printf("Engine EEC Power Test Switch 1: [OFF]\n");
		else
			printf("Engine EEC Power Test Switch 1: [ON]\n");

		//send packets
		sendDataBool("ENG_EECPower_Sw_TEST1", B777X_EngineEECPowerTestSwitch1);
	}

	if (pS->APU_Power_Sw_TEST != B777X_ApuPowerTestSwitch)
	{
		B777X_ApuPowerTestSwitch = pS->APU_Power_Sw_TEST;
		if (B777X_ApuPowerTestSwitch == 0)
			printf("APU POWER TEST SWITCH: [OFF]\n");
		else
			printf("APU POWER TEST SWITCH: [ON]\n");

		//send packets
		sendDataBool("APU_Power_Sw_TEST", B777X_ApuPowerTestSwitch);
	}

	if (pS->FCTL_TailHydValve_Sw_SHUT_OFF[1] != B777X_TailHydraulicValveSwitch3)
	{
		B777X_TailHydraulicValveSwitch3 = pS->FCTL_TailHydValve_Sw_SHUT_OFF[1];
		if (B777X_TailHydraulicValveSwitch3 == 0)
			printf("TAIL HYDRAULIC VALVE SWITCH #3: [NORMAL]\n");
		else
			printf("TAIL HYDRAULIC VALVE SWITCH #3: [SHUT OFF]\n");

		sendDataBool("FCTL_TailHydValve_Sw_SHUT_OFF3", B777X_TailHydraulicValveSwitch3);

		//send packets
	}

	if (pS->FCTL_TailHydValve_Sw_SHUT_OFF[2] != B777X_TailHydraulicValveSwitch2)
	{
		B777X_TailHydraulicValveSwitch2 = pS->FCTL_TailHydValve_Sw_SHUT_OFF[2];
		if (B777X_TailHydraulicValveSwitch2 == 0)
			printf("TAIL HYDRAULIC VALVE SWITCH #2: [NORMAL]\n");
		else
			printf("TAIL HYDRAULIC VALVE SWITCH #2: [SHUT OFF]\n");


		sendDataBool("FCTL_TailHydValve_Sw_SHUT_OFF2", B777X_TailHydraulicValveSwitch2);
		//send packets
	}

	if (pS->FCTL_TailHydValve_Sw_SHUT_OFF[0] != B777X_TailHydraulicValveSwitch1)
	{
		B777X_TailHydraulicValveSwitch1 = pS->FCTL_TailHydValve_Sw_SHUT_OFF[0];
		if (B777X_TailHydraulicValveSwitch1 == 0)
			printf("TAIL HYDRAULIC VALVE SWITCH #1: [NORMAL]\n");
		else
			printf("TAIL HYDRAULIC VALVE SWITCH #1: [SHUT OFF]\n");

		sendDataBool("FCTL_TailHydValve_Sw_SHUT_OFF1", B777X_TailHydraulicValveSwitch1);
		//send packets
	}

	if (pS->FCTL_WingHydValve_Sw_SHUT_OFF[1] != B777X_WingHydraulicValveSwitch3)
	{
		B777X_WingHydraulicValveSwitch3 = pS->FCTL_WingHydValve_Sw_SHUT_OFF[1];
		if (B777X_WingHydraulicValveSwitch3 == 0)
			printf("WING HYDRAULIC VALVE SWITCH #3: [NORMAL]\n");
		else
			printf("WING HYDRAULIC VALVE SWITCH #3: [SHUT OFF]\n");

		//send packets
		sendDataBool("FCTL_WingHydValve_Sw_SHUT_OFF3", B777X_WingHydraulicValveSwitch3);
	}

	if (pS->FCTL_WingHydValve_Sw_SHUT_OFF[2] != B777X_WingHydraulicValveSwitch2)
	{
		B777X_WingHydraulicValveSwitch2 = pS->FCTL_WingHydValve_Sw_SHUT_OFF[2];
		if (B777X_WingHydraulicValveSwitch2 == 0)
			printf("WING HYDRAULIC VALVE SWITCH #2: [NORMAL]\n");
		else
			printf("WING HYDRAULIC VALVE SWITCH #2: [SHUT OFF]\n");

		//send packets
		sendDataBool("FCTL_WingHydValve_Sw_SHUT_OFF2", B777X_WingHydraulicValveSwitch2);
	}

	if (pS->FCTL_WingHydValve_Sw_SHUT_OFF[0] != B777X_WingHydraulicValveSwitch1)
	{
		B777X_WingHydraulicValveSwitch1 = pS->FCTL_WingHydValve_Sw_SHUT_OFF[0];
		if (B777X_WingHydraulicValveSwitch1 == 0)
			printf("WING HYDRAULIC VALVE SWITCH #1: [NORMAL]\n");
		else
			printf("WING HYDRAULIC VALVE SWITCH #1: [SHUT OFF]\n");

		//send packets
		sendDataBool("FCTL_WingHydValve_Sw_SHUT_OFF1", B777X_WingHydraulicValveSwitch1);
	}

	if (pS->ELEC_StandbyPowerSw != B777X_ElecStandbyPowerSwitch)
	{
		B777X_ElecStandbyPowerSwitch = pS->ELEC_StandbyPowerSw;
		if (B777X_ElecStandbyPowerSwitch == 0)
			printf("ELECTRIC STANDBY POWER SWITCH #1: [OFF]\n");
		else if (B777X_ElecStandbyPowerSwitch == 1)
			printf("ELECTRIC STANDBY POWER SWITCH #1: [AUTO]\n");
		else
			printf("ELECTRIC STANDBY POWER SWITCH #1: [BAT]\n");

		//send packets
		sendDataChar("B777X_ElecStandbyPowerSwitch", B777X_ElecStandbyPowerSwitch);
	}

	if (pS->ICE_WindowHeatBackUp_Sw_OFF[0] != B777X_WindowHeatBackupSwitch1)
	{
		B777X_WindowHeatBackupSwitch1 = pS->ICE_WindowHeatBackUp_Sw_OFF[0];
		if (!B777X_WindowHeatBackupSwitch1)
			printf("WINDOW HEAT BACKUP SWITCH #1: [ON]\n");
		else
			printf("WINDOW HEAT BACKUP SWITCH #1: [OFF]\n");

		//send packets
		sendDataBool("ICE_WindowHeatBackUp_Sw_OFF1", B777X_WindowHeatBackupSwitch1);
	}

	if (pS->ICE_WindowHeatBackUp_Sw_OFF[1] != B777X_WindowHeatBackupSwitch2)
	{
		B777X_WindowHeatBackupSwitch2 = pS->ICE_WindowHeatBackUp_Sw_OFF[1];
		if (!B777X_WindowHeatBackupSwitch2)
			printf("WINDOW HEAT BACKUP SWITCH #2: [ON]\n");
		else
			printf("WINDOW HEAT BACKUP SWITCH #2: [OFF]\n");

		//send packets
		sendDataBool("ICE_WindowHeatBackUp_Sw_OFF2", B777X_WindowHeatBackupSwitch2);
	}

	// get the state of switches and save it for later use
	if (pS->LTS_Taxi_Sw_ON != B777X_TaxiLightSwitch)
	{
		B777X_TaxiLightSwitch = pS->LTS_Taxi_Sw_ON;
		if (B777X_TaxiLightSwitch)
			printf("TAXI LIGHTS: [ON]\n");
		else
			printf("TAXI LIGHTS: [OFF]\n");

		//send packets
		sendDataBool("LTS_Taxi_Sw_ON", B777X_TaxiLightSwitch);
	}

	if (pS->LTS_LandingLights_Sw_ON[1] != B777X_LandingLightLeftSwitch)
	{
		B777X_LandingLightLeftSwitch = pS->LTS_LandingLights_Sw_ON[1];
		if (B777X_LandingLightLeftSwitch)
			printf("LEFT LANDING LIGHTS: [ON]\n");
		else
			printf("LEFT LANDING LIGHTS: [OFF]\n");

		//send packets
		sendDataBool("LTS_LandingLights_Sw_ON1", B777X_LandingLightLeftSwitch);
	}

	if (pS->LTS_Logo_Sw_ON != B777X_LogoLightSwitch)
	{
		B777X_LogoLightSwitch = pS->LTS_Logo_Sw_ON;
		if (B777X_LogoLightSwitch)
			printf("LOGO LIGHTS: [ON]\n");
		else
			printf("LOGO LIGHTS: [OFF]\n");


		//send packets
		sendDataBool("LTS_Logo_Sw_ON", B777X_LogoLightSwitch);
	}
}
Beispiel #26
0
CString CVacuum::ToFile()
{
    return ToString() + " " + BoolToString(m_Enabled);
}
Beispiel #27
0
CString CSub::ToFile()
{
    return "Execute Program " + m_NameOfFile + " " + BoolToString(m_Enabled);
}
Beispiel #28
0
CString CBeep::ToFile()
{
    CString length("temp");
    m_BeepLength.GetWindowText(length);
    return "Sing Tone " + IntToString(m_ToneIndex) + " for " + length + " " + BoolToString(m_Enabled);
}
wxXmlNode* LexerConf::ToXml() const
{
    // convert the lexer back xml node
    wxXmlNode* node = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Lexer"));
    // set the lexer name
    node->AddProperty(wxT("Name"), GetName());
    node->AddProperty("Theme", GetThemeName());
    node->AddProperty("IsActive", IsActive() ? "Yes" : "No");
    node->AddAttribute("UseCustomTextSelFgColour", IsUseCustomTextSelectionFgColour() ? "Yes" : "No");
    node->AddProperty(wxT("StylingWithinPreProcessor"), BoolToString(GetStyleWithinPreProcessor()));
    wxString strId;
    strId << GetLexerId();
    node->AddProperty(wxT("Id"), strId);

    // set the keywords node
    wxXmlNode* keyWords0 = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("KeyWords0"));
    XmlUtils::SetNodeContent(keyWords0, GetKeyWords(0));
    node->AddChild(keyWords0);

    wxXmlNode* keyWords1 = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("KeyWords1"));
    XmlUtils::SetNodeContent(keyWords1, GetKeyWords(1));
    node->AddChild(keyWords1);

    wxXmlNode* keyWords2 = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("KeyWords2"));
    XmlUtils::SetNodeContent(keyWords2, GetKeyWords(2));
    node->AddChild(keyWords2);

    wxXmlNode* keyWords3 = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("KeyWords3"));
    XmlUtils::SetNodeContent(keyWords3, GetKeyWords(3));
    node->AddChild(keyWords3);

    wxXmlNode* keyWords4 = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("KeyWords4"));
    XmlUtils::SetNodeContent(keyWords4, GetKeyWords(4));
    node->AddChild(keyWords4);

    // set the extensions node
    wxXmlNode* extesions = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Extensions"));
    XmlUtils::SetNodeContent(extesions, GetFileSpec());
    node->AddChild(extesions);

    // set the properties
    wxXmlNode* properties = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Properties"));
    std::map<long, StyleProperty>::const_iterator iter = m_properties.begin();
    for(; iter != m_properties.end(); ++iter) {
        StyleProperty p = iter->second;
        wxXmlNode* property = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Property"));

        strId.Clear();
        strId << p.GetId();
        property->AddProperty(wxT("Id"), strId);
        property->AddProperty(wxT("Name"), p.GetName());
        property->AddProperty(wxT("Bold"), BoolToString(p.IsBold()));
        property->AddProperty(wxT("Face"), p.GetFaceName());
        property->AddProperty(wxT("Colour"), p.GetFgColour());
        property->AddProperty(wxT("BgColour"), p.GetBgColour());
        property->AddProperty(wxT("Italic"), BoolToString(p.GetItalic()));
        property->AddProperty(wxT("Underline"), BoolToString(p.GetUnderlined()));
        property->AddProperty(wxT("EolFilled"), BoolToString(p.GetEolFilled()));

        strId.Clear();
        strId << p.GetAlpha();
        property->AddProperty(wxT("Alpha"), strId);

        wxString strSize;
        strSize << p.GetFontSize();
        property->AddProperty(wxT("Size"), strSize);
        properties->AddChild(property);
    }
    node->AddChild(properties);
    return node;
}
Beispiel #30
0
wxXmlNode* OptionsConfig::ToXml() const
{
    wxXmlNode* n = new wxXmlNode(NULL, wxXML_ELEMENT_NODE, wxT("Options"));
    n->AddProperty(wxT("DisplayFoldMargin"), BoolToString(m_displayFoldMargin));
    n->AddProperty(wxT("UnderlineFoldedLine"), BoolToString(m_underlineFoldLine));
    n->AddProperty(wxT("FoldStyle"), m_foldStyle);
    n->AddProperty(wxT("DisplayBookmarkMargin"), BoolToString(m_displayBookmarkMargin));
    n->AddProperty(wxT("BookmarkShape"), m_bookmarkShape);
    n->AddProperty(wxT("BookmarkBgColours"), m_bookmarkBgColours);
    n->AddProperty(wxT("BookmarkFgColours"), m_bookmarkFgColours);
    n->AddProperty(wxT("BookmarkLabels"), m_bookmarkLabels);
    n->AddProperty(wxT("ClearHighlitWordsOnFind"), BoolToString(m_clearHighlitWordsOnFind));
    n->AddProperty(wxT("HighlightCaretLine"), BoolToString(m_highlightCaretLine));
    n->AddProperty(wxT("ShowLineNumber"), BoolToString(m_displayLineNumbers));
    n->AddProperty(wxT("IndentationGuides"), BoolToString(m_showIndentationGuidelines));
    n->AddProperty(wxT("CaretLineColour"), m_caretLineColour.GetAsString(wxC2S_HTML_SYNTAX));
    n->AddProperty(wxT("IndentUsesTabs"), BoolToString(m_indentUsesTabs));
    n->AddProperty(wxT("FoldCompact"), BoolToString(m_foldCompact));
    n->AddProperty(wxT("FoldAtElse"), BoolToString(m_foldAtElse));
    n->AddProperty(wxT("FoldPreprocessor"), BoolToString(m_foldPreprocessor));
    n->AddProperty(wxT("HighlightMatchedBraces"), BoolToString(m_highlightMatchedBraces));
    n->AddProperty(wxT("FoldBgColour"), m_foldBgColour.GetAsString(wxC2S_HTML_SYNTAX));
    n->AddProperty(wxT("AutoAdjustHScrollBarWidth"), BoolToString(m_autoAdjustHScrollBarWidth));
    n->AddProperty(wxT("HideChangeMarkerMargin"), BoolToString(m_hideChangeMarkerMargin));
    n->AddProperty(wxT("ScrollBeyondLastLine"), BoolToString(m_scrollBeyondLastLine));
    n->AddProperty(wxT("HideOutputPaneOnUserClick"), BoolToString(m_hideOutpuPaneOnUserClick));
    n->AddProperty(wxT("HideOutputPaneNotIfBuild"), BoolToString(m_hideOutputPaneNotIfBuild));
    n->AddProperty(wxT("HideOutputPaneNotIfSearch"), BoolToString(m_hideOutputPaneNotIfSearch));
    n->AddProperty(wxT("HideOutputPaneNotIfReplace"), BoolToString(m_hideOutputPaneNotIfReplace));
    n->AddProperty(wxT("HideOutputPaneNotIfReferences"), BoolToString(m_hideOutputPaneNotIfReferences));
    n->AddProperty(wxT("HideOutputPaneNotIfOutput"), BoolToString(m_hideOutputPaneNotIfOutput));
    n->AddProperty(wxT("HideOutputPaneNotIfTrace"), BoolToString(m_hideOutputPaneNotIfTrace));
    n->AddProperty(wxT("HideOutputPaneNotIfTasks"), BoolToString(m_hideOutputPaneNotIfTasks));
    n->AddProperty(wxT("HideOutputPaneNotIfBuildQ"), BoolToString(m_hideOutputPaneNotIfBuildQ));
    n->AddProperty(wxT("HideOutputPaneNotIfCppCheck"), BoolToString(m_hideOutputPaneNotIfCppCheck));
    n->AddProperty(wxT("HideOutputPaneNotIfSvn"), BoolToString(m_hideOutputPaneNotIfSvn));
    n->AddProperty(wxT("HideOutputPaneNotIfCscope"), BoolToString(m_hideOutputPaneNotIfCscope));
    n->AddProperty(wxT("HideOutputPaneNotIfGit"), BoolToString(m_hideOutputPaneNotIfGit));
    n->AddProperty(wxT("HideOutputPaneNotIfDebug"), BoolToString(m_hideOutputPaneNotIfDebug));
    n->AddProperty(wxT("HideOutputPaneNotIfMemCheck"), BoolToString(m_hideOutputPaneNotIfMemCheck));
    n->AddProperty(wxT("FindBarAtBottom"), BoolToString(m_findBarAtBottom));
    n->AddProperty(wxT("ShowReplaceBar"), BoolToString(m_showReplaceBar));
    n->AddProperty(wxT("DisableSmartIndent"), BoolToString(m_disableSmartIndent));
    n->AddProperty(wxT("DisableSemicolonShift"), BoolToString(m_disableSemicolonShift));
    n->AddProperty(wxT("DontAutoFoldResults"), BoolToString(m_dontAutoFoldResults));
    n->AddProperty(wxT("ShowDebugOnRun"), BoolToString(m_showDebugOnRun));
    n->AddProperty(wxT("ConsoleCommand"), m_programConsoleCommand);
    n->AddProperty(wxT("EOLMode"), m_eolMode);
    n->AddProperty(wxT("m_caretUseCamelCase"), BoolToString(m_caretUseCamelCase));
    n->AddProperty(wxT("m_wordWrap"), BoolToString(m_wordWrap));
    n->AddProperty(wxT("m_dockingStyle"), wxString::Format(wxT("%d"), m_dockingStyle));
    n->AddProperty(wxT("m_mswTheme"), BoolToString(m_mswTheme));
    n->AddProperty(wxT("m_preferredLocale"), m_preferredLocale);
    n->AddProperty(wxT("m_useLocale"), BoolToString(m_useLocale));
    n->AddProperty(wxT("m_trimOnlyModifiedLines"), BoolToString(m_trimOnlyModifiedLines));
    n->AddProperty(wxT("m_debuggerMarkerLine"), m_debuggerMarkerLine.GetAsString(wxC2S_HTML_SYNTAX));

    wxString tmp;
    tmp << m_indentWidth;
    n->AddProperty(wxT("IndentWidth"), tmp);

    tmp.clear();
    tmp << m_tabWidth;
    n->AddProperty(wxT("TabWidth"), tmp);

    tmp.clear();
    tmp << m_iconsSize;
    n->AddProperty(wxT("ToolbarIconSize"), tmp);

    tmp.clear();
    tmp << m_showWhitspaces;
    n->AddProperty(wxT("ShowWhitespaces"), tmp);

    tmp.clear();
    tmp << m_edgeMode;
    n->AddProperty(wxT("EdgeMode"), tmp);

    tmp.clear();
    tmp << m_edgeColumn;
    n->AddProperty(wxT("EdgeColumn"), tmp);

    n->AddProperty(wxT("EdgeColour"), m_edgeColour.GetAsString(wxC2S_HTML_SYNTAX));

    tmp.clear();
    tmp << m_caretWidth;
    n->AddProperty(wxT("CaretWidth"), tmp);

    tmp.clear();
    tmp << m_caretBlinkPeriod;
    n->AddProperty(wxT("CaretBlinkPeriod"), tmp);

    tmp.clear();
    tmp << m_caretLineAlpha;
    n->AddProperty(wxT("CaretLineAlpha"), tmp);

    tmp.clear();
    tmp = wxFontMapper::GetEncodingName(m_fileFontEncoding);
    n->AddProperty(wxT("FileFontEncoding"), tmp);

    tmp.Clear();
    tmp << m_options;
    n->AddProperty(wxT("m_options"), tmp);
    return n;
}