4 * Copyright (C) 2008 Juuso Alasuutari <juuso.alasuutari@gmail.com>
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
21 #ifndef __LASH_CLIENT_INTERFACE_NEW_H_
22 #define __LASH_CLIENT_INTERFACE_NEW_H_
25 #include <lash/types.h>
32 lash_client_open(const char *client_class
,
38 lash_get_client_name(lash_client_t
*client
);
41 lash_get_project_name(lash_client_t
*client
);
44 lash_client_is_being_restored(lash_client_t
*client
);
47 * Set the Save callback function.
50 lash_set_save_callback(lash_client_t
*client
,
51 LashEventCallback callback
,
55 * Set the Load callback function.
58 lash_set_load_callback(lash_client_t
*client
,
59 LashEventCallback callback
,
63 * Set the SaveDataSet callback function.
66 lash_set_save_data_set_callback(lash_client_t
*client
,
67 LashConfigCallback callback
,
71 * Set the LoadDataSet callback function.
74 lash_set_load_data_set_callback(lash_client_t
*client
,
75 LashConfigCallback callback
,
79 * Set the Quit callback function
82 lash_set_quit_callback(lash_client_t
*client
,
83 LashEventCallback callback
,
87 * Set the ClientNameChanged callback function
90 lash_set_name_change_callback(lash_client_t
*client
,
91 LashEventCallback callback
,
95 * Set the ProjectChange callback function
98 lash_set_project_change_callback(lash_client_t
*client
,
99 LashEventCallback callback
,
103 * Set the PathChange callback function
106 lash_set_path_change_callback(lash_client_t
*client
,
107 LashEventCallback callback
,
111 lash_wait(lash_client_t
*client
);
114 lash_dispatch(lash_client_t
*client
);
117 lash_dispatch_once(lash_client_t
*client
);
120 lash_notify_progress(lash_client_t
*client
,
124 lash_client_open_controller(void);
127 * Set the controller callback function.
130 lash_set_control_callback(lash_client_t
*client
,
131 LashControlCallback callback
,
135 lash_control_load_project_path(lash_client_t
*client
,
136 const char *project_path
);
139 lash_control_name_project(lash_client_t
*client
,
140 const char *project_name
,
141 const char *new_name
);
144 lash_control_move_project(lash_client_t
*client
,
145 const char *project_name
,
146 const char *new_path
);
149 lash_control_save_project(lash_client_t
*client
,
150 const char *project_name
);
153 lash_control_close_project(lash_client_t
*client
,
154 const char *project_name
);
162 #endif /* __LASH_CLIENT_INTERFACE_NEW_H_ */