00001
00021
00022
00023
00024
00025 #ifndef __SYNFIG_CVS_H
00026 #define __SYNFIG_CVS_H
00027
00028
00029
00030 #include <synfig/string.h>
00031 #include <time.h>
00032
00033
00034
00035
00036
00037
00038
00039 namespace synfigapp {
00040
00041 class CVSInfo
00042 {
00043 synfig::String file_name_;
00044
00045 bool in_sandbox_;
00046 bool in_repository_;
00047 bool update_available_;
00048
00049 synfig::String cvs_version_;
00050 time_t original_timestamp_;
00051
00052
00053 public:
00054 void calc_repository_info();
00055
00056 CVSInfo(const synfig::String& file_name);
00057 CVSInfo();
00058 ~CVSInfo();
00059
00060 void set_file_name(const synfig::String& file_name);
00061
00062
00063
00065 bool in_sandbox()const;
00066
00068 bool in_repository()const;
00069
00071 bool is_modified()const;
00072
00074 bool is_updated()const;
00075
00077 const synfig::String& get_cvs_version()const;
00078
00080 const time_t &get_original_timestamp()const;
00081
00083 time_t get_current_timestamp()const;
00084
00086 synfig::String get_cvs_root()const;
00087
00089 synfig::String get_cvs_module()const;
00090
00091
00092
00093 void cvs_add(const synfig::String& message=synfig::String());
00094
00095 void cvs_update();
00096
00097 void cvs_commit(const synfig::String& message=synfig::String());
00098 };
00099
00100 };
00101
00102
00103
00104 #endif