bool MakeDir(const CString& DirPath, int DirMode) { #ifdef OS_WIN return CreateDirectory(DirPath.GetCString(),0); #else return (mkdir(DirPath.GetCString(),DirMode)==0); #endif }
void CConfiguration::SaveToFile(const CString& FileName) { FILE *stream = fopen(FileName.GetCString(),"wt"); for (size_t i = 0; i < m_Variables.size(); i++) { CVariable *variable = m_Variables[i]; CString string = variable->GetName()+"="; if ((variable->GetType()==VARIABLE_TYPE_STRING)|| (variable->GetType()==VARIABLE_TYPE_CHAR)) { string+="\""+variable->GetString()+"\""; } else { string+=variable->GetString(); } string.Append(';').AppendEOL(); fwrite(string.GetCString(),string.GetLength(),1,stream); } fclose(stream); }
CString GetCurrentDir(void) { CString result; result.SetLength(MAX_PATH_LENGTH); if (0!=getcwd(result.GetCString(),MAX_PATH_LENGTH)) { result.SetLength(); return result; } return ""; }
bool FileExists(const CString& FileName) { bool result = false; #ifdef OS_UNIX struct stat st; if (stat(FileName.GetCString(),&st)==0) { result = S_ISREG(st.st_mode); } #else FILE* stream = fopen(FileName.GetCString(),"r"); result = (NULL!=stream); if (result) { fclose(stream); } #endif return result; }
bool DirExists(const CString& DirPath) { bool result = false; #ifdef OS_WIN /* WIN32_FIND_DATA w32fd; HANDLE h = FindFirstFile(DirPath.GetCString(),&w32fd); result = (INVALID_HANDLE_VALUE!=h)&&(ERROR_FILE_NOT_FOUND!=h); */ DWORD attr = GetFileAttributes(DirPath.GetCString()); result = (attr & FILE_ATTRIBUTE_DIRECTORY); #else struct stat st; if (stat(DirPath.GetCString(),&st) == 0) { result = S_ISDIR(st.st_mode); } #endif return result; }
bool CCodeBlocksWorkspace::LoadWorkspace(const CString& FileName) { bool result = false; TiXmlDocument cbw; result = cbw.LoadFile(FileName.GetCString()); if (!result) return false; Clear(); const TiXmlElement *root = cbw.RootElement(); if (0==strcmp(root->Value(),"CodeBlocks_workspace_file")) { Read(root); result = true; } // return result; }
bool CCodeBlocksBuildManager::LoadProjectOrWorkspace(const CString& FileName) { bool result = false; TiXmlDocument cbpw; result = cbpw.LoadFile(FileName.GetCString()); if (!result) return false; Clear(); const TiXmlElement *root = cbpw.RootElement(); if (0==strcmp(root->Value(),"CodeBlocks_project_file")) { m_Project.Read(root); m_ProjectLoaded = true; result = true; } else if (0==strcmp(root->Value(),"CodeBlocks_workspace_file")) { m_Workspace.Read(root); m_Workspace.LoadWorkspaceProjects(ExtractFilePath(FileName)); m_WorkspaceLoaded = true; result = true; } return result; }
bool ChangeDir(const CString& DirPath) { return (0==chdir(DirPath.GetCString())); }