Mercurial > hg > forks > geeqie
annotate src/bar.h @ 2916:ae6cdcd69d9f default tip
Merge with upstream/master.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Tue, 14 May 2019 11:46:50 +0300 |
parents | 95507e596256 |
children |
rev | line source |
---|---|
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
1 /* |
2350
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
2 * Copyright (C) 2004 John Ellis |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
3 * Copyright (C) 2008 - 2016 The Geeqie Team |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
4 * |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
5 * Author: Vladimir Nadvornik |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
6 * |
2350
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
7 * This program is free software; you can redistribute it and/or modify |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
8 * it under the terms of the GNU General Public License as published by |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
9 * the Free Software Foundation; either version 2 of the License, or |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
10 * (at your option) any later version. |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
11 * |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
12 * This program is distributed in the hope that it will be useful, |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
15 * GNU General Public License for more details. |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
16 * |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
17 * You should have received a copy of the GNU General Public License along |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
18 * with this program; if not, write to the Free Software Foundation, Inc., |
95507e596256
Update copyright in all files
Klaus Ethgen <Klaus@Ethgen.de>
parents:
2185
diff
changeset
|
19 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
20 */ |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
21 |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
22 #ifndef BAR_H |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
23 #define BAR_H |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
24 |
1469
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
25 typedef enum { |
1471
89ed5df7dc28
update translated pane titles
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1469
diff
changeset
|
26 PANE_UNDEF = 0, |
1469
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
27 PANE_COMMENT, |
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
28 PANE_EXIF, |
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
29 PANE_HISTOGRAM, |
1604
934646ea4af8
added GPS map support - patch by Colin Clark
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1520
diff
changeset
|
30 PANE_KEYWORDS, |
934646ea4af8
added GPS map support - patch by Colin Clark
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1520
diff
changeset
|
31 PANE_GPS |
1469
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
32 } PaneType; |
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
33 |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
34 typedef struct _PaneData PaneData; |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
35 |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
36 struct _PaneData { |
1387
add2c9869a56
simplified bar interface
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1383
diff
changeset
|
37 /* filled in by pane */ |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
38 void (*pane_set_fd)(GtkWidget *pane, FileData *fd); |
1520
056ab2f7b7d8
added pane_notify_selection to pane API
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1484
diff
changeset
|
39 void (*pane_notify_selection)(GtkWidget *pane, gint count); |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
40 gint (*pane_event)(GtkWidget *pane, GdkEvent *event); |
1309
d89f8c4d593b
config file format changed to XML
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1291
diff
changeset
|
41 void (*pane_write_config)(GtkWidget *pane, GString *outstr, gint indent); |
1343
9161a33c2cf3
give the panes more control over expander title
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1317
diff
changeset
|
42 GtkWidget *title; |
1309
d89f8c4d593b
config file format changed to XML
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1291
diff
changeset
|
43 gboolean expanded; |
1469
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
44 gchar *id; |
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
45 PaneType type; |
2185
c14a1d8e6aa4
Trim trailing white spaces on empty lines.
Laurent Monin <zas@norz.org>
parents:
2021
diff
changeset
|
46 |
1387
add2c9869a56
simplified bar interface
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1383
diff
changeset
|
47 /* filled in by bar */ |
add2c9869a56
simplified bar interface
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1383
diff
changeset
|
48 GtkWidget *bar; |
add2c9869a56
simplified bar interface
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1383
diff
changeset
|
49 LayoutWindow *lw; |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
50 }; |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
51 |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
52 |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
53 |
1469
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
54 |
1387
add2c9869a56
simplified bar interface
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1383
diff
changeset
|
55 GtkWidget *bar_new(LayoutWindow *lw); |
add2c9869a56
simplified bar interface
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1383
diff
changeset
|
56 GtkWidget *bar_new_from_config(LayoutWindow *lw, const gchar **attribute_names, const gchar **attribute_values); |
1469
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
57 GtkWidget *bar_update_from_config(GtkWidget *bar, const gchar **attribute_names, const gchar **attribute_values); |
1309
d89f8c4d593b
config file format changed to XML
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1291
diff
changeset
|
58 |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
59 void bar_close(GtkWidget *bar); |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
60 |
1309
d89f8c4d593b
config file format changed to XML
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1291
diff
changeset
|
61 void bar_write_config(GtkWidget *bar, GString *outstr, gint indent); |
d89f8c4d593b
config file format changed to XML
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1291
diff
changeset
|
62 |
1484
f3b033a71fc9
improved sidebar configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1471
diff
changeset
|
63 void bar_populate_default(GtkWidget *bar); |
f3b033a71fc9
improved sidebar configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1471
diff
changeset
|
64 |
1309
d89f8c4d593b
config file format changed to XML
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1291
diff
changeset
|
65 void bar_add(GtkWidget *bar, GtkWidget *pane); |
1469
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
66 GtkWidget *bar_find_pane_by_id(GtkWidget *bar, PaneType type, const gchar *id); |
1309
d89f8c4d593b
config file format changed to XML
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1291
diff
changeset
|
67 |
1469
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
68 void bar_clear(GtkWidget *bar); |
1309
d89f8c4d593b
config file format changed to XML
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1291
diff
changeset
|
69 |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
70 void bar_set_fd(GtkWidget *bar, FileData *fd); |
1520
056ab2f7b7d8
added pane_notify_selection to pane API
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1484
diff
changeset
|
71 void bar_notify_selection(GtkWidget *bar, gint count); |
1417 | 72 gboolean bar_event(GtkWidget *bar, GdkEvent *event); |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
73 |
1383
bdd15a0038dd
use standard GtkHPaned for sidebar width
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1343
diff
changeset
|
74 gint bar_get_width(GtkWidget *bar); |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
75 |
1389
f674e5503097
Use a common function bar_pane_expander_title() to set expanders title widget.
Laurent Monin <geeqie@norz.org>
parents:
1387
diff
changeset
|
76 GtkWidget *bar_pane_expander_title(const gchar *title); |
1469
b9ef2bfd9d95
added a possibility to update existing bars from config
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1417
diff
changeset
|
77 void bar_update_expander(GtkWidget *pane); |
1471
89ed5df7dc28
update translated pane titles
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1469
diff
changeset
|
78 gboolean bar_pane_translate_title(PaneType type, const gchar *id, gchar **title); |
1484
f3b033a71fc9
improved sidebar configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1471
diff
changeset
|
79 const gchar *bar_pane_get_default_config(const gchar *id); |
f3b033a71fc9
improved sidebar configuration
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
1471
diff
changeset
|
80 |
1291
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
81 #endif |
abf5d1de9102
replaced bar_info with an universal bar, restored the original
Vladimir Nadvornik <nadvornik@suse.cz>
parents:
diff
changeset
|
82 /* vim: set shiftwidth=8 softtabstop=0 cindent cinoptions={1s: */ |