| Disk ARchive 2.5.10 Full featured and portable backup and archiving tool

- Main Page
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | List of all members
libdar::user_interaction_callback Class Reference
API

full implemented class for user_interaction based on callback functions. More...

`#include <user_interaction.hpp>`

Inherits libdar::user_interaction.

Inherited by shell_interaction.

## Public Member Functions
| user_interaction_callback (void(*x_warning_callback)(const std::string &x, void *context), bool(*x_answer_callback)(const std::string &x, void *context), std::string(*x_string_callback)(const std::string &x, bool echo, void *context), secu_string(*x_secu_string_callback)(const std::string &x, bool echo, void *context), void *context_value)
| constructor which receive the callback functions. More...
void | pause (const std::string &message)
| overwritting method from parent class.
std::string | get_string (const std::string &message, bool echo)
| overwritting method from parent class.
secu_string | get_secu_string (const std::string &message, bool echo)
| overwritting method from parent class.
void | listing (const std::string &flag, const std::string &perm, const std::string &uid, const std::string &gid, const std::string &size, const std::string &date, const std::string &filename, bool is_dir, bool has_children)
| overwritting method from parent class.
void | dar_manager_show_files (const std::string &filename, bool available_data, bool available_ea)
| overwritting method from parent class
void | dar_manager_contents (U_I number, const std::string &chemin, const std::string &archive_name)
| overwritting method from parent class
void | dar_manager_statistics (U_I number, const infinint &data_count, const infinint &total_data, const infinint &ea_count, const infinint &total_ea)
| overwritting method from parent class
void | dar_manager_show_version (U_I number, const std::string &data_date, const std::string &data_presence, const std::string &ea_date, const std::string &ea_presence)
| overwritting method from parent class
void | set_listing_callback (void(*callback)(const std::string &flag, const std::string &perm, const std::string &uid, const std::string &gid, const std::string &size, const std::string &date, const std::string &filename, bool is_dir, bool has_children, void *context))
| You can set a listing callback thanks to this method. More...
void | set_dar_manager_show_files_callback (void(*callback)(const std::string &filename, bool available_data, bool available_ea, void *context))
void | set_dar_manager_contents_callback (void(*callback)(U_I number, const std::string &chemin, const std::string &archive_name, void *context))
void | set_dar_manager_statistics_callback (void(*callback)(U_I number, const infinint &data_count, const infinint &total_data, const infinint &ea_count, const infinint &total_ea, void *context))
void | set_dar_manager_show_version_callback (void(*callback)(U_I number, const std::string &data_date, const std::string &data_presence, const std::string &ea_date, const std::string &ea_presence, void *context))
virtual user_interaction * | clone () const
| overwritting method from parent class.
Public Member Functions inherited from libdar::user_interaction
| user_interaction ()
| class constructor.
virtual bool | pause2 (const std::string &message)
| alternative method to the pause() method More...
void | warning (const std::string &message)
| method used to display a warning or a message to the user. More...
void | printf (const char *format,...)
| libdar uses this call to format output before send to warning() method. More...
bool | get_use_listing () const
| this is not a virtual method, it has not to be overwritten in inherited classes. More...
bool | get_use_dar_manager_show_files () const
| this is not a virtual method, it has not to be overwritten in inherited classes.
bool | get_use_dar_manager_contents () const
| this is not a virtual method, it has not to be overwritten in inherited classes.
bool | get_use_dar_manager_statistics () const
| this is not a virtual method, it has not to be overwritten in inherited classes.
bool | get_use_dar_manager_show_version () const
| this is not a virtual method, it has not to be overwritten in inherited classes.
void | warning_with_more (U_I num)
| make a pause each N line of output when calling the warning method More...
Public Member Functions inherited from libdar::on_pool
void * | operator new (size_t n_byte)
void * | operator new (size_t n_byte, const std::nothrow_t &nothrow_value)
void * | operator new[] (size_t n_byte)
void * | operator new[] (size_t n_byte, const std::nothrow_t &nothrow_value)
void * | operator new (size_t n_byte, memory_pool *p)
void * | operator new[] (size_t n_byte, memory_pool *p)
void | operator delete (void *ptr, memory_pool *p)
| this operator is called by the compiler if an exception is throw from the constructor of the allocated object
void | operator delete[] (void *ptr, memory_pool *p)
| this operator is called by the compiler if an exception is throw from the constructor of the allocated objects
void | operator delete (void *ptr)
| this is the usual delete operator, modified to handle allocated objects allocated on a memory pool or not
void | operator delete[] (void *ptr)
| this is the usual delete[] operator, modified to handle allocated objects allocated on a memory pool or not

## Protected Member Functions
void | change_context_value (void *new_value)
| change the context value of the object that will be given to callback functions
void | inherited_warning (const std::string &message)
| overwritting method from parent class.
Protected Member Functions inherited from libdar::user_interaction
void | set_use_listing (bool val)
| method to be called with true as argument if you have defined a listing() method. More...
void | set_use_dar_manager_show_files (bool val)
| method to be called with true as argument if you have defined a dar_manager_show_files() method.
void | set_use_dar_manager_contents (bool val)
| method to be called with true as argument if you have defined a dar_manager_contents() method.
void | set_use_dar_manager_statistics (bool val)
| method to be called with true as argument if you have defined a dar_manager_statistics() method.
void | set_use_dar_manager_show_version (bool val)
| method to be called with true as argument if you have defined a dar_manager_show_version() method.
Protected Member Functions inherited from libdar::on_pool
memory_pool * | get_pool () const
template<class T >
void | meta_new (T *&ptr, size_t num)
template<class T >
void | meta_delete (T *ptr)

## Detailed Description

full implemented class for user_interaction based on callback functions.

this class is an inherited class of user_interaction it is used by dar command line programs, but you can use it if you wish.

Definition at line 338 of file user_interaction.hpp.

## Constructor & Destructor Documentation

libdar::user_interaction_callback::user_interaction_callback | ( | void(*)(const std::string &x, void *context) | x_warning_callback,
|  | bool(*)(const std::string &x, void *context) | x_answer_callback,
|  | std::string(*)(const std::string &x, bool echo, void *context) | x_string_callback,
|  | secu_string(*)(const std::string &x, bool echo, void *context) | x_secu_string_callback,
|  | void * | context_value
| ) |  |

constructor which receive the callback functions.

Parameters

  [in] | x_warning_callback | is used by warning() method
  [in] | x_answer_callback | is used by the pause() method
  [in] | x_string_callback | is used by get_string() method
  [in] | x_secu_string_callback | is used by get_secu_string() method
  [in] | context_value | will be passed as last argument of callbacks when called from this object.

Note
  The context argument of each callback is set with the context_value given in the user_interaction_callback object constructor. The value can can be any arbitrary value (nullptr is valid), and can be used as you wish. Note that the listing callback is not defined here, but thanks to a specific method

## Member Function Documentation

void libdar::user_interaction_callback::set_listing_callback | ( | void(*)(const std::string &flag, const std::string &perm, const std::string &uid, const std::string &gid, const std::string &size, const std::string &date, const std::string &filename, bool is_dir, bool has_children, void *context) | callback | ) |
| inline

You can set a listing callback thanks to this method.

If set, when file listing will this callback function will be used instead of the x_warning_callback given as argument of the constructor.

Definition at line 406 of file user_interaction.hpp.

References libdar::user_interaction::set_use_listing().

The documentation for this class was generated from the following file:

- user_interaction.hpp