00001
00002
00003
00004
00005
00013
00014
00015 #ifndef FOLDER_H
00016 #define FOLDER_H
00017
00018 #ifndef FOLDER_ERRORS_H
00019 #include <tc/folder_errors.h>
00020 #endif
00021
00022 #ifndef INFOMANAGER_H
00023 #include <tc/tc_startup.h>
00024 #endif
00025
00026 #ifndef WORKSPACEOBJECT_H
00027 #include <tccore/workspaceobject.h>
00028 #endif
00029
00070 typedef enum FL_sort_criteria_e {
00071 FL_fsc_as_ordered,
00072
00073 FL_fsc_by_name,
00074 FL_fsc_by_object,
00075 FL_fsc_by_type,
00076 FL_fsc_by_date_created,
00077 FL_fsc_by_date_modified,
00078 FL_fsc_by_date_released,
00079
00080 FL_fsc_no_order,
00081 FL_fsc_bad
00082
00083 } FL_sort_criteria_t;
00084
00085 typedef enum FL_sort_order_e {
00086
00087 FL_fso_ascending,
00088 FL_fso_descending,
00089 FL_fso_as_ordered,
00090
00091 FL_fso_bad
00092
00093 } FL_sort_order_t;
00094
00096 #ifdef OBSOLETE
00097 const int FSC_asOrdered = FL_fsc_as_ordered;
00098 const int FSC_byName = FL_fsc_by_name;
00099 const int FSC_byObject = FL_fsc_by_object;
00100 const int FSC_byType = FL_fsc_by_type;
00101 const int FSC_byDateCreated = FL_fsc_by_date_created;
00102 const int FSC_byDateModified= FL_fsc_by_date_modified;
00103 const int FSC_byDateReleased= FL_fsc_by_date_released;
00104 const int FSO_ascending = FL_fso_ascending;
00105 const int FSO_descending = FL_fso_descending;
00106 #endif
00107
00108 #include <tc/libtc_exports.h>
00109
00110 #ifdef __cplusplus
00111 extern "C"{
00112 #endif
00113
00119 extern TC_API int FL_init_module();
00120
00126 extern TC_API int FL_exit_module();
00127
00134 extern TC_API int FL_create(
00135 const char name[WSO_name_size_c + 1],
00136 const char description[WSO_desc_size_c + 1],
00137 tag_t* pfolder_tag
00138 );
00139
00154 extern TC_API int FL_initialize(
00155 tag_t folder_tag,
00156 const char name[WSO_name_size_c + 1],
00157 const char description[WSO_desc_size_c + 1]
00158 );
00159
00160
00172 extern TC_API int FL_initialize2(
00173 tag_t folder_tag,
00174 const char *name,
00175 const char *description
00176 );
00177
00188 extern TC_API int FL_extent(
00189 int* num_of_folders,
00190 tag_t** ppfolder_tags
00191 );
00192
00200 extern TC_API int FL_insert(
00201 tag_t folder_tag,
00202 tag_t workspaceobject_tag,
00203 int position
00204 );
00205
00213 extern TC_API int FL_insert_instances(
00214 tag_t folder_tag,
00215 int nInstances,
00216 tag_t* workspaceobject_tags,
00217 int position
00218 );
00219
00223 extern TC_API int FL_remove(
00224 tag_t folder_tag,
00225 tag_t workspaceobject_tag
00226 );
00227
00264 extern TC_API int FL_move(
00265 tag_t folder_tag,
00266 int old_start_index,
00267 int old_end_index,
00268 int new_start_index
00269 );
00270
00277 extern TC_API int FL_copy(
00278 tag_t folder_tag,
00279 const char new_folder_name[WSO_name_size_c + 1],
00280 tag_t* new_folder_tag
00281 );
00282
00286 extern TC_API int FL_copy2(
00287 tag_t folder_tag,
00288 const char *new_folder_name,
00289 tag_t* new_folder_tag
00290 );
00291
00299 extern TC_API int FL_ask_references(
00300 tag_t folder_tag,
00301 FL_sort_criteria_t sort_criteria,
00302 int* num_of_references,
00303 tag_t** list_of_references
00304 );
00305
00309 extern TC_API int FL_ask_index(
00310 tag_t folder_tag,
00311 tag_t workspaceobject_tag,
00312 FL_sort_criteria_t sort_criteria,
00313 int* ref_index
00314 );
00315
00319 extern TC_API int FL_set_sort_order(
00320 tag_t folder_tag,
00321 FL_sort_order_t sort_order
00322 );
00323
00327 extern TC_API int FL_ask_sort_order(
00328 tag_t folder_tag,
00329 FL_sort_order_t* sort_order
00330 );
00331
00335 extern TC_API int FL_set_sort_criteria(
00336 tag_t folder_tag,
00337 FL_sort_criteria_t sort_criteria
00338 );
00339
00343 extern TC_API int FL_ask_sort_criteria(
00344 tag_t folder_tag,
00345 FL_sort_criteria_t* sort_criteria
00346 );
00347
00351 extern TC_API int FL_ask_size(
00352 tag_t folder_tag,
00353 int* number_of_entries
00354 );
00355
00359 extern TC_API int FL_user_update_newstuff_folder (
00360 tag_t folder_tag
00361 );
00362
00365 #ifdef __cplusplus
00366 }
00367 #endif
00368
00369 #include <tc/libtc_undef.h>
00370
00371 #endif