chiark / gitweb /
Remove CPPery for playlists
[disorder] / disobedience / multidrag.h
1 /*
2  * Copyright (C) 2009 Richard Kettlewell
3  *
4  * Note that this license ONLY applies to multidrag.c and multidrag.h, not to
5  * the rest of DisOrder.
6  *
7  * Permission is hereby granted, free of charge, to any person
8  * obtaining a copy of this software and associated documentation files
9  * (the "Software"), to deal in the Software without restriction,
10  * including without limitation the rights to use, copy, modify, merge,
11  * publish, distribute, sublicense, and/or sell copies of the Software,
12  * and to permit persons to whom the Software is furnished to do so,
13  * subject to the following conditions:
14  *
15  * The above copyright notice and this permission notice shall be
16  * included in all copies or substantial portions of the Software.
17  *
18  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
19  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
20  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
21  * NONINFRINGEMENT.  IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE
22  * FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
23  * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
24  * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25  */
26 /** @file disobedience/multidrag.h
27  * @brief Drag multiple rows of a GtkTreeView
28  */
29 #ifndef MULTIDRAG_H
30 #define MULTIDRAG_H
31
32 /** @brief Predicate type for rows to drag
33  * @param path Path to row
34  * @param iter Iterator pointing at row
35  * @return TRUE if row is draggable else FALSE
36  */
37 typedef gboolean multidrag_row_predicate(GtkTreePath *path,
38                                          GtkTreeIter *iter);
39
40 void make_treeview_multidrag(GtkWidget *w,
41                              multidrag_row_predicate *predicate);
42
43 #endif /* MULTIDRAG_H */
44
45 /*
46 Local Variables:
47 c-basic-offset:2
48 comment-column:40
49 fill-column:79
50 indent-tabs-mode:nil
51 End:
52 */