Main Page | Namespace List | Class List | Directories | File List | Class Members | File Members

openldev-project.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *   Copyright (C) 2004-2005 by Andrew Krause                              *
00003  *                                                                         *
00004  *   This program is free software; you can redistribute it and/or modify  *
00005  *   it under the terms of the GNU General Public License as published by  *
00006  *   the Free Software Foundation; either version 2 of the License, or     *
00007  *   (at your option) any later version.                                   *
00008  *                                                                         *
00009  *   This program is distributed in the hope that it will be useful,       *
00010  *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
00011  *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
00012  *   GNU General Public License for more details.                          *
00013  *                                                                         *
00014  *   You should have received a copy of the GNU General Public License     *
00015  *   along with this program; if not, write to the                         *
00016  *   Free Software Foundation, Inc.,                                       *
00017  *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
00018  ***************************************************************************/
00019  
00020 #ifndef OPENLDEV_PROJECT_SETTINGS_H
00021 #define OPENLDEV_PROJECT_SETTINGS_H
00022 
00023 #include "openldev-makefile-parser.h"
00024 
00025 #include <vector>
00026 #include <string>
00027 #include <fstream>
00028 #include <glib.h>
00029 #include <gtk/gtk.h>
00030 using namespace std;
00031 
00032 typedef struct _ProjectSettings  ProjectSettings;
00033 
00034 struct _ProjectSettings
00035 {
00036   string template_name;
00037   string lastfiles;
00038   string language;
00039   string compile;
00040   string build;
00041   string autogen;
00042   string configure;
00043   string clean;
00044   string location;
00045   string name;
00046   string version;
00047   string fullname;
00048 };
00049 
00050 ProjectSettings* openldev_project_settings_new (const char*);
00051 void openldev_project_settings_close_project     (ProjectSettings*);
00052 gboolean openldev_project_settings_load_project_file (ProjectSettings*, const char*);
00053 gboolean openldev_project_settings_get_file_in_project (ProjectSettings*, const char*);
00054 void openldev_project_settings_write_project_file (ProjectSettings*);
00055 
00056 vector<string> openldev_project_settings_get_makefile_list (ProjectSettings*);
00057 vector<string> openldev_project_settings_get_sources (ProjectSettings*, const char*, gboolean);
00058 vector<string> openldev_project_settings_get_sources_all (ProjectSettings*);
00059 
00060 void openldev_project_settings_set_lastfiles (ProjectSettings*, const char*);
00061 void openldev_project_settings_set_language  (ProjectSettings*, const char*);
00062 void openldev_project_settings_set_compile   (ProjectSettings*, const char*);
00063 void openldev_project_settings_set_build     (ProjectSettings*, const char*);
00064 void openldev_project_settings_set_autogen   (ProjectSettings*, const char*);
00065 void openldev_project_settings_set_configure (ProjectSettings*, const char*);
00066 void openldev_project_settings_set_clean     (ProjectSettings*, const char*);
00067 void openldev_project_settings_set_version   (ProjectSettings*, const char*);
00068 
00069 string openldev_project_settings_get_template  (ProjectSettings*);
00070 string openldev_project_settings_get_lastfiles (ProjectSettings*);
00071 string openldev_project_settings_get_language  (ProjectSettings*);
00072 string openldev_project_settings_get_compile   (ProjectSettings*);
00073 string openldev_project_settings_get_build     (ProjectSettings*);
00074 string openldev_project_settings_get_autogen   (ProjectSettings*);
00075 string openldev_project_settings_get_configure (ProjectSettings*);
00076 string openldev_project_settings_get_clean     (ProjectSettings*);
00077 string openldev_project_settings_get_location  (ProjectSettings*);
00078 string openldev_project_settings_get_name      (ProjectSettings*);
00079 string openldev_project_settings_get_version   (ProjectSettings*);
00080 string openldev_project_settings_get_fullname  (ProjectSettings*);
00081 
00082 #endif

Generated on Tue Jan 31 23:32:42 2006 for OpenLDev by  doxygen 1.4.4