Commit Graph

61 Commits

Author SHA1 Message Date
Matthias Clasen
86d2a44850 iconview: Add a summary 2021-03-11 16:37:37 +00:00
Emmanuele Bassi
153c6424d3 Remove pointless inout arguments
GtkTreeView.get_tooltip_context() takes an inout X and Y coordinates,
but the "out" side is a side effect: the conversion from widget-relative
to bin window-relative coordinates is not documented, and can be done
using public API, if needed.

GtkIconView.get_tooltip_context() follows the same pattern, and takes
two inout arguments for the coordinates, but it does not change them any
more, after GtkIconView's bin window was dropped in commit 8dc5e13e.

There's really no point in having these `inout` arguments, and while
GtkTreeView and GtkIconView are certainly de-emphasised in GTK4, and we
nudge developers to move to the new list views, we should take advantage
of the API break to remove warts.
2020-11-17 16:38:12 +00:00
Björn Daase
6315cd977c *: Fix spelling mistakes found by codespell 2020-08-21 15:29:34 +02:00
Benjamin Otte
556997f9df Replace "gfloat" with "float" 2020-07-25 00:47:36 +02:00
Benjamin Otte
d7266b25ba Replace "gint" with "int" 2020-07-25 00:47:36 +02:00
Matthias Clasen
253a39c6e9 iconview: Derive from GtkWidget
GtkIconView is not a container.
2020-05-11 22:21:14 -04:00
Benjamin Otte
fdb39b095b treeview, iconview: Don't return the drop target
Not a good idea to hand internal event controllers out to public API.
2020-03-02 03:18:55 +01:00
Matthias Clasen
bc4637fff6 Remove unused includes
We eventually want to get rid of GtkSelectionData.
As a first step, stop including gtkselection.h unnecessarily.
2020-02-09 23:59:22 -05:00
Matthias Clasen
fdfa371d90 iconview: Use gdk_drag_begin
This is a little more involved here.
2020-01-08 18:48:21 -05:00
Matthias Clasen
6e01a49d10 iconview: Port to GtkDropTarget
A small api change here is that
gtk_icon_view_enable_model_drag_dest now returns
a GtkDropTarget that can be used to connect signals.
2020-01-08 18:48:20 -05:00
Matthias Clasen
efce8c2899 iconview: Port to GtkDragSource
A small api change here is that
gtk_icon_view_enable_model_drag_source now returns
a GtkDragSource that can be used to connect signals.
2020-01-08 18:48:19 -05:00
Matthias Clasen
f0fd4843d5 iconview: Make final 2019-05-28 22:50:08 +00:00
Benjamin Otte
a269e9a266 iconview: Port DND icons to snapshot paintables 2018-03-26 18:16:36 +02:00
Matthias Clasen
4c150d8eb5 The big versioning cleanup
Remove all the old 2.x and 3.x version annotations.
GTK+ 4 is a new start, and from the perspective of a
GTK+ 4 developer all these APIs have been around since
the beginning.
2018-02-06 01:16:32 -05:00
Benjamin Otte
9a6ec4e959 contentformats: Rename GtkTargetList
It's now called GdkContentsFormat
2017-11-20 23:12:33 +01:00
Benjamin Otte
5a1a11bcde dnd: Make GtkDragDest and GtkDragSource use GtkTargetList
This gets rid of GtkTargetEntry in the API and consistently uses
GtkTargetList.
2017-11-15 19:07:17 +01:00
Timm Bäder
8dc5e13e8c iconview: Remove bin_window 2017-07-19 21:27:14 -04:00
Evan Nemerson
e568903360 gtk: fix many callback annotations to include closure information
Without this information introspection-based consumers don't realize
they can include context information, but instead think that they
receive an extra gpointer argument (which they don't know how to
handle).

https://bugzilla.gnome.org/show_bug.cgi?id=730745
2014-05-27 21:10:32 -07:00
Matthias Clasen
20c8c8b91c Add annotations to gtk headers
Add annotations to all exported functions in GTK+ headers.
2013-05-05 15:38:47 -04:00
William Jon McCann
c7169e119e Add optional single click activation mode for icon view
https://bugzilla.gnome.org/show_bug.cgi?id=345023
2013-01-20 16:49:30 -05:00
Matthias Clasen
5adecf183b Move single-include guards inside include guards
gcc has optimizations for include guards that only work
if they are outermost in the the header.
https://bugzilla.gnome.org/show_bug.cgi?id=689810
2012-12-28 09:57:56 -05:00
Alexander Larsson
6c04296f03 Rename gtk_icon_view_get_cell_area to gtk_icon_view_get_cell_rect
get_cell_area was "conflicting" with the property named "cell-area"
which is something different.
2012-06-25 15:07:13 +02:00
Alexander Larsson
fb91fa2fbd Add gtk_icon_view_get_cell_area
This gets the current cell area of a particular item. Its similar
to gtk_tree_view_get_cell_area().

The code is extracted from gtk_icon_view_set_tooltip_cell which now
just calls the old code.

https://bugzilla.gnome.org/show_bug.cgi?id=678418
2012-06-22 13:50:33 -04:00
Javier Jardón
9d0febc9a6 Change FSF Address 2012-02-27 17:06:11 +00:00
Tristan Van Berkom
01a35e4483 Added gtk_icon_view_new_with_area() 2011-01-06 13:51:48 +09:00
Javier Jardón
65dd3460ce Fix gtk-doc markup: /* <private> */ should be /*< private >*/ 2010-10-30 17:35:17 +09:00
Tadej Borovšak
55196a705f Add GtkScrollable interface
The GtkScrollable interface provides "hadjustment" and "vadjustment"
properties that are used by GtkScrolledWindow. It replaces
the ::set_scroll_adjustment signal. The scrollable interface
also has ::min-display-width/height properties that can be
used to control the minimally visible part inside a scrolled window.
2010-10-22 11:03:45 +02:00
Matthias Clasen
4824a73084 Add padding to class structs 2010-10-19 19:07:36 +02:00
Benjamin Otte
b186680a43 API: make gtk_icon_view_create_drag_icon() return a cairo_surface_t
GdkPixmap is going to die!
2010-09-26 15:04:02 +02:00
Matthias Clasen
e4af3782d3 Rename GtkIconView::orientation property
Rename the ::orientation property of GtkIconView to item-orientation,
which is both clearer and avoids the conflict with the orientation
property of GtkOrientable implementations.
2010-09-01 23:03:48 -04:00
Javier Jardón
754dc6491b GtkIconView: Unseal private pointer 2010-07-13 19:40:48 +02:00
Javier Jardón
9ad9c193ea [docs] Added some GtkIconView missing documentation
Document GtkIconViewDropPosition and GtkIconViewForeachFunc.
The docs was removed by error in commit
e17b9f282f
2010-06-09 06:25:28 +02:00
Matthias Clasen
c557f7b7c4 Improved icon view keynav
Use ::keynav-failed for arrow navigation in icon views, so that
it is possible to override error handling. Also add API to get the
row/col of an item. With this, it is possible to make arrow keynav
span adjacent icon views, which is desired in the new control-center
shell. testiconview-keynav demonstrates this.
2010-05-30 02:17:51 -04:00
Michael Natterer
5e29973773 Remove all traces of GDK_PIXBUF/GTK_DISABLE_SINGLE_INCLUDES
...and disallow inclusion of individual files unconditionally.
2010-05-03 01:51:18 +02:00
Matthias Clasen
549ffcbf5c Add a GtkIconView::item-padding property
The property can be used to fine-tune who much space each column
needs. See bug 586100.
2009-08-06 23:56:30 -04:00
Tim Janik
2c8add817a Seal priv pointer in GtkIconView.
svn path=/trunk/; revision=20566
2008-06-20 11:04:50 +00:00
Michael Natterer
0329e41742 gtk/gtkcellrendereraccel.h gtk/gtkiconview.h use G_TYPE macros instead of
2008-06-16  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkcellrendereraccel.h
	* gtk/gtkiconview.h
	* gtk/gtkobject.h: use G_TYPE macros instead of the old GTK_CHECK
	macros for type checking.

	(gtk_object_get_type): change prototype to return GType instead of
	GtkType.


svn path=/trunk/; revision=20403
2008-06-16 16:26:49 +00:00
Michael Natterer
eff99c282c define __GTK_H_INSIDE__ around including all other headers.
2008-05-28  Michael Natterer  <mitch@imendio.com>

	* gtk/gtk.h: define __GTK_H_INSIDE__ around including all other
	headers.

	* gtk/gtktypebuiltins.h.template
	* gtk/gtkversion.h.in
	* gtk/gtk*.h: add single-include guards that #error out if
	GTK_DISABLE_SINGLE_INCLUDES is defined and any of these files is
	included individually.

	* gtk/gtkprintbackend.h
	* gtk/gtkprinter-private.h
	* gtk/gtktextlayout.h
	* gtk/gtktexttagprivate.h
	* gtk/gtktexttypes.h
	* gtk/gtktreedatalist.h: include <gtk/gtk.h> instead of individual
	headers in these private or semi-private headers.

	* gtk/gtkimmodule.h: also here because it's not in gtk.h.

	* gtk/gtkpagesetupunixdialog.h
	* gtk/gtkprinter.h
	* gtk/gtkprintjob.h
	* gtk/gtkprintunixdialog.h: likewise in the gtkunixprint headers.

	* gtk/gtkclist.h
	* gtk/gtkcombo.h
	* gtk/gtkctree.h
	* gtk/gtkfilesel.h
	* gtk/gtkitemfactory.h
	* gtk/gtklist.h
	* gtk/gtklistitem.h
	* gtk/gtkoldeditable.h
	* gtk/gtkoptionmenu.h
	* gtk/gtkpixmap.h
	* gtk/gtkpreview.h
	* gtk/gtksignal.h
	* gtk/gtktipsquery.h: whenever possible, include only <gtk/gtk.h>
	instead of individual headers in these deprecated headers. They
	don't get included at all when GTK_DISABLE_DEPRECATED is defined,
	so if an app needs them anyway, it must undef GTK_DISABLE_DEPRECATED
	and include them individually, which should continue to work.

	* gtk/gtkclist.c: include "gtkctree.h" because of the change
	above.


svn path=/trunk/; revision=20221
2008-05-28 15:07:04 +00:00
Matthias Clasen
7b2e82f5d0 Add new convenience api for tooltips on icon views
svn path=/trunk/; revision=18501
2007-07-19 14:59:44 +00:00
Matthias Clasen
bdf50bd4f6 Convenience functions to position tooltips on icon view items or cells.
2007-07-16  Matthias Clasen <mclasen@redhat.com>

        * gtk/gtk.symbols:
        * gtk/gtkiconview.h:
        * gtk/gtkiconview.c (gtk_icon_view_set_tooltip_item):
        (gtk_icon_view_set_tooltip_cell): Convenience functions to
        position tooltips on icon view items or cells.



svn path=/trunk/; revision=18473
2007-07-16 14:04:35 +00:00
Matthias Clasen
4c40014a86 New function to convert widget coords to what is expected by the at_pos
2007-07-11  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtk.symbols:
        * gtk/gtkiconview.[hc]
        (gtk_icon_view_convert_widget_to_bin_window_coords): New
        function to convert widget coords to what is expected by
        the at_pos functions.  (#455984)


svn path=/trunk/; revision=18445
2007-07-11 18:14:46 +00:00
Matthias Clasen
50830412b0 Add a function to determine what parts of the model are visible. (#306726,
2005-06-11  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtk.symbols:
	* gtk/gtkiconview.h:
	* gtk/gtkiconview.c (gtk_icon_view_get_visible_range):
	Add a function to determine what parts of the model are
	visible.  (#306726, Jonathan Blandford)
2005-06-11 05:15:10 +00:00
Matthias Clasen
54935477ea New function to scroll to a path. (#306838, Jonathan Blandford)
2005-06-09  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtk.symbols:
	* gtk/gtkiconview.h:
	* gtk/gtkiconview.c (gtk_icon_view_scroll_to_path): New function
	to scroll to a path.  (#306838, Jonathan Blandford)
2005-06-09 06:07:57 +00:00
Matthias Clasen
3e77a18b4a Test DND.
2005-05-06  Matthias Clasen  <mclasen@redhat.com>

	* tests/testiconview.c: Test DND.

	* gtk/gtk.symbols:
	* gtk/gtkiconview.[hc]: Add DND support similar to the DND
	support in the tree view.  (#150270)
2005-05-06 04:14:32 +00:00
Matthias Clasen
93a430fdf0 Test cell renderers.
2005-05-02  Matthias Clasen  <mclasen@redhat.com>

	* tests/testiconview.c: Test cell renderers.

	* gtk/gtk.symbols: Add new functions.

	* gtk/gtkiconview.[hc]: Implement GtkCellLayout and use
	cell renderers for drawing and editing. (#148144, #160242)
2005-05-02 20:28:37 +00:00
Matthias Clasen
5c19d9e4e6 Add new symbols.
2004-12-14  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtk.symbols: Add new symbols.

	* gtk/gtkiconview.[hc]: Make the icon view lay out its
	items in a grid, allocating multiple grid cells to oversized
	items. Also convert hardwired spacing constants into
	properties.  (#152483)
2004-12-14 06:39:45 +00:00
Matthias Clasen
b69987f217 Mark as const.
2004-11-23  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkuimanager.h (gtk_ui_manager_get_type):
	* gtk/gtktreeview.h (gtk_tree_view_get_type):
	* gtk/gtktreeviewcolumn.h (gtk_tree_view_column_get_type):
	* gtk/gtktreestore.h (gtk_tree_store_get_type):
	* gtk/gtktreeselection.h (gtk_tree_selection_get_type):
	* gtk/gtktreemodelfilter.h (gtk_tree_model_filter_get_type):
	* gtk/gtktreemodel.h (gtk_tree_iter_get_type):
	(gtk_tree_path_get_type):
	(gtk_tree_row_reference_get_type):
	* gtk/gtktoolitem.h (gtk_tool_item_get_type):
	* gtk/gtktoolbutton.h (gtk_tool_button_get_type):
	* gtk/gtktoggleaction.h (gtk_toggle_action_get_type):
	* gtk/gtkthemes.h (gtk_theme_engine_get_type):
	* gtk/gtktextiter.h (gtk_text_iter_get_type):
	* gtk/gtksettings.h (gtk_settings_get_type):
	* gtk/gtkselection.h (gtk_selection_data_get_type):
	* gtk/gtkradioaction.h (gtk_radio_action_get_type):
	* gtk/gtkmenutoolbutton.h (gtk_menu_tool_button_get_type):
	* gtk/gtkliststore.h (gtk_list_store_get_type):
	* gtk/gtkiconview.h (gtk_icon_view_get_type):
	* gtk/gtkicontheme.h (gtk_icon_info_get_type):
	* gtk/gtkiconfactory.h (gtk_icon_factory_get_type):
	(gtk_icon_set_get_type):
	(gtk_icon_source_get_type):
	* gtk/gtkfilesystemwin32.h (gtk_file_system_win32_get_type):
	* gtk/gtkfilesystemunix.h (gtk_file_system_unix_get_type):
	* gtk/gtkfilesystem.h (gtk_file_folder_get_type):
	(gtk_file_info_get_type, gtk_file_path_get_type):
	(gtk_file_system_get_type):
	* gtk/gtkfilefilter.h (gtk_file_filter_get_type):
	* gtk/gtkfilechooserwidget.h (gtk_file_chooser_widget_get_type):
	* gtk/gtkfilechooser.h (gtk_file_chooser_get_type):
	* gtk/gtkfilechooserdialog.h (gtk_file_chooser_dialog_get_type):
	* gtk/gtkexpander.h (gtk_expander_get_type):
	* gtk/gtkentrycompletion.h (gtk_entry_completion_get_type):
	* gtk/gtkcombobox.h (gtk_combo_box_get_type):
	* gtk/gtkcomboboxentry.h (gtk_combo_box_entry_get_type):
	* gtk/gtkclipboard.h (gtk_clipboard_get_type):
	* gtk/gtkcellview.h (gtk_cell_view_get_type):
	* gtk/gtkcellrenderertoggle.h (gtk_cell_renderer_toggle_get_type):
	* gtk/gtkcellrenderertext.h (gtk_cell_renderer_text_get_type):
	* gtk/gtkcellrendererprogress.h (gtk_cell_renderer_progress_get_type):
	* gtk/gtkcellrendererpixbuf.h (gtk_cell_renderer_pixbuf_get_type):
	* gtk/gtkcellrenderercombo.h (gtk_cell_renderer_combo_get_type):
	* gtk/gtkcelllayout.h (gtk_cell_layout_get_type):
	* gtk/gtkactiongroup.h (gtk_action_group_get_type):
	* gtk/gtkaction.h (gtk_action_get_type):
	* gtk/gtkaccessible.h (gtk_accessible_get_type):
	* gtk/gtkaccelmap.h (gtk_accel_map_get_type):
	* gtk/gtkaccelgroup.h (gtk_accel_group_get_type):
	* gtk/gtkmessagedialog.h (gtk_message_dialog_get_type): Mark as const.

	* gtk/gtkicontheme.h:  Don't mark gtk_icon_theme_error_quark()
	as const, to be consistent with all the other error_quark
	functions. (technically they are const, but since these are
	called only in error paths, giving the compiler better
	optimization opportunities doesn't matter much)

	* gtk/gtk.symbols:
	* gdk/gdk.symbols: Add attribute annotations.

	* gtk/makegtkalias.pl:
	* gdk/makegdkalias.pl: Keep attribute annotations, but strip PRIVATE.

	* gtk/Makefile.am (gtk.def):
	* gdk/Makefile.am (gdk.def): Strip attribute annotations, but keep
	PRIVATE.
2004-11-23 20:02:15 +00:00
Matthias Clasen
b9c686ad9e Remove some erroneous declarations.
2004-08-02  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkiconview.h: Remove some erroneous declarations.
2004-08-02 19:09:15 +00:00
Matthias Clasen
8ed28a9a1a Add a new :orientation property to determine whether text is positioned
Sat Jul 17 23:11:04 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkiconview.h:
	* gtk/gtkiconview.c (gtk_icon_view_class_init):
	* gtk/gtkiconview.c (gtk_icon_view_set_orientation):
	* gtk/gtkiconview.c (gtk_icon_view_get_orientation):
	* gtk/gtkiconview.c (gtk_icon_view_calculate_item_size):
	* gtk/gtkiconview.c (gtk_icon_view_layout_single_row):
	Add a new :orientation property to determine whether text
	is positioned below or beside icons.  (#147463)
2004-07-18 03:39:50 +00:00
Anders Carlsson
0161083876 Use gint, not int in gtk_icon_view_set_markup_column, (Paolo Maggi)
2004-07-05  Anders Carlsson  <andersca@gnome.org>

	* gtk/gtkiconview.c: (gtk_icon_view_set_markup_column):
	* gtk/gtkiconview.h:
	Use gint, not int in gtk_icon_view_set_markup_column,
	(Paolo Maggi)
2004-07-05 11:34:29 +00:00