Commit Graph

284 Commits

Author SHA1 Message Date
Ryan Lortie
8578fefaa5 GtkApplication: add menu API
We add the app-menu and menubar public APIs to GtkApplication while
leaving the implementation in GApplication.

The actual implementation will be moved soon.
2011-12-19 12:51:12 -05:00
Matthias Clasen
898bc98d3b Update GtkApplicationWindow docs 2011-12-19 12:51:10 -05:00
Matthias Clasen
33aaf26dd5 Drop GtkApplicationMenuButton for now
This feels premature; we do have the fallback situation covered
adaequately with the menubar, and people can do their own creative
solutions with gtk_application_window_get_menu(), so we don't have
to offer a widget for this right now.
2011-12-19 12:51:09 -05:00
Matthias Clasen
cedc3cb6e1 Hook up docs 2011-12-19 12:51:09 -05:00
Benjamin Otte
fc775dfa5b entrycompletion: Export gtk_entry_completion_compute_prefix()
I want to use it in the file chooser entry autocomplete code.
2011-12-16 20:09:12 +01:00
Matthias Clasen
a26afb6aab Add new symbols 2011-12-15 23:03:12 -05:00
Florian Müllner
4f8f8fe828 window: Add hide-titlebar-when-maximized property
For maximized windows, titlebars cannot be used to reposition or
scale the window, so if an application does not use it to convey
useful information (other than the application name), the screen
space occupied by titlebars could be put to better use.
Add a new window property which requests from the window manager
to hide titlebars when windows are maximized to account for this.

https://bugzilla.gnome.org/show_bug.cgi?id=665616
2011-12-15 16:31:56 +01:00
Andrea Cimitan
40423df234 Add has-origin property for GtkScale
If the scale has an origin (it will have one by default), GtkRange will
render the two sides before/after the current value with different style
classes, making it possible for themes to use different colors and
properties for the two areas.
This was possible in GTK 2 with style details, but got lost during the
road to 3.0.

https://bugzilla.gnome.org/show_bug.cgi?id=665140
2011-12-14 17:16:09 +01:00
Cosimo Cecchi
c538fb8f64 stylecontext: add GTK_STYLE_CLASS_ARROW
For e.g. submenu items arrow in GtkMenuItems.

https://bugzilla.gnome.org/show_bug.cgi?id=665420
2011-12-05 09:30:57 -05:00
Paolo Borelli
2ef5844bac Introduce gtk_render_insertion_cursor
The new function provides an API that takes the PangoLayout and index
as input params, this way it handles strong and weak cursors internally
factoring out all code duplicated in the widgets that need to render
cursors.

https://bugzilla.gnome.org/show_bug.cgi?id=640317
2011-12-01 01:22:39 +01:00
Cosimo Cecchi
6740121fab stylecontext: add GTK_STYLE_CLASS_LINKED
"linked" is a style class for linked areas, such as a box containing
buttons belonging to the same control.
2011-11-28 14:41:48 -05:00
Benjamin Otte
18181f5417 API: treeview: Add gtk_tree_view_get_n_columns() 2011-11-16 04:39:25 +01:00
Matthias Clasen
1ecd9fb3bd Add a new symbol
gtk_widget_get_modifier_mask was added recently.
2011-10-11 13:49:22 -04:00
Cosimo Cecchi
8d3f7e3a4a stylecontext: add style classes for top/bottom/right/left areas
This is useful to e.g. theme notebook tabs differently according to
their position directly from the CSS sheet.

GtkNotebook support in a separate commit.

https://bugzilla.gnome.org/show_bug.cgi?id=659777
2011-09-27 13:43:21 -04:00
Matthias Clasen
5ff8fe6971 Documentation fixes
Mostly making sure that return values and varargs don't loose
their docs.
2011-09-25 21:04:49 -04:00
Matthias Clasen
65ee452a99 Add some missing entries to the docs 2011-09-23 22:18:44 -04:00
Christian Persch
6902813a11 Rename gtk_font_chooser_get_{family,face,size}
... to gtk_font_chooser_get_font_{family,face,size}, in order to
avoid naming conflicts in bindings.
2011-09-13 12:55:33 +02:00
Christian Persch
abd9242f33 Add GtkFontChooser:font-desc property
Add a way to set/get the font as a PangoFontDescription.
2011-09-13 12:55:33 +02:00
Matthias Clasen
9e46e5789c Trivial: Add a few missing functions to the docs 2011-09-13 12:55:22 +02:00
Christian Persch
eb9efc9fd2 Rename GtkFontChooser:font-name to :font
GtkFontButton already has a property named "font-name" which may
conflict / be an ABI break when moving GtkFontButton to implement
GtkFontChooser. Also, this is more in line with how other parts in
gtk (e.g. GtkCellRendererText) call a font string property.
2011-09-13 12:55:21 +02:00
Christian Persch
5452525143 Make GtkFontChooser an interface
Make the GtkFontChooser API similar to the Gtk{File,Recent,App}Chooser
APIs by introducing GtkFontChooser as an interface, that has a default
implementation in GtkFontChooserWidget.

https://bugzilla.gnome.org/show_bug.cgi?id=657627
2011-09-13 12:55:21 +02:00
Matthias Clasen
f9379adca2 GtkAppChooserButton: Add a way to include the default app
This is necessary to use an app chooser button for selecting
default apps in the control center. Also, beef up the docs
for this widget family.

https://bugzilla.gnome.org/show_bug.cgi?id=642706
2011-09-10 01:42:07 -04:00
Matthias Clasen
f64647077f Add an accessor for grid children
This addresses concerns in bug 634136.
2011-08-28 21:20:53 -04:00
Benjamin Otte
00d14e3515 API: css: Add GtkCssSection
This struct keeps track of an area of text in a CSS file and uses it
when specifying information. Also, the cssprovider keeps track of
sections when parsing a file.
2011-08-26 16:26:27 +02:00
Matthias Clasen
d78acb55a0 Add docs 2011-08-15 18:57:57 -04:00
Matthias Clasen
2ba9c4b4a7 Make focus rectangles optional
This commit introduces a new setting, gtk-visible-focus, backed
by the Gtk/VisibleFocus X setting. Its three values control how
focus rectangles are displayed.

'always' is equivalent to the traditional GTK+ behaviour of always
rendering focus rectangles.

'never' does what it says, and is intended for keyboardless
situations, e.g. tablets.

'automatic' hides focus rectangles initially, until the user
interacts with the keyboard, at which point focus rectangles
become visible.

https://bugzilla.gnome.org/show_bug.cgi?id=649567
2011-08-10 16:34:20 +02:00
Cosimo Cecchi
7e22b46c1f combobox: add a "combobox-entry" style class for comboboxes with entries
This way themes can use GtkComboBox.combobox-entry to match that
specific case, and GtkComboBox.combobox-entry .button to match the
button/arrow side of the widget.
2011-08-09 16:08:00 +02:00
Matthias Clasen
17f99f663f GtkGrid: Add a way to insert rows or columns
This is useful functionality that makes it easier to insert
things in the middle of an already populated grid.

Bug 653817
2011-08-08 13:13:48 +02:00
Matthias Clasen
b555a979a4 Drop non-existing functions 2011-07-22 21:53:20 -04:00
Benjamin Otte
b0b287f7b5 themingengine: Use the default way of indicating privates 2011-07-21 02:43:54 +02:00
Benjamin Otte
b17ad131ea API: Add gtk_widget_class_set_accessible_role()
Easy access to modifying the roles of subclasses, as this is a thing
that commonly changes for various subclasses.
2011-07-18 18:30:49 +02:00
Matthias Clasen
d8c00cd537 Revert "Add a getter for the accessible type of a widget class"
This reverts commit 9a212b3120.
2011-07-14 19:28:07 -04:00
Matthias Clasen
9a212b3120 Add a getter for the accessible type of a widget class
This will be necessary to port out-of-tree a11y implementations
from the atk object factory approach to this new way of doing
things.
2011-07-13 23:02:25 -04:00
Matthias Clasen
86fcb8b66f Add gtk_assistant_remove_page
This was suspiciously missing, considering we have the usual
append/prepend/insert_page methods.
2011-07-11 23:12:55 -04:00
Benjamin Otte
ebf8bf0000 API: Add gtk_widget_class_set_accessible_type()
The function is supposed to bypass the ATK registry. For 2 reasons:
1) We get rid of a lot of boilerplate madness.
2) The registry allows creating multiple accessibles per widget and we
   don't.

The old code for registries is still there.
2011-07-05 16:07:57 -04:00
Matthias Clasen
c2449763ce Fix up docs for predefined style classes.
The table was incomplete and out of date. Instead, just
put a list of links in that place, and move all the extra
documentation to the macros. Bug 653785
2011-06-30 19:18:26 -04:00
Ignacio Casal Quinteiro
cfb2a45f9a overlay: add initial version of gtkoverlay 2011-06-12 23:27:18 -04:00
Cosimo Cecchi
514e77581a stylecontext: add gtk_render_icon() 2011-06-09 23:17:09 +02:00
Benjamin Otte
cc3afc7c0f Revert "API: Add API to set style properties to be inherit"
Inheritance is now done using style property flags, so thereis no ned
anymore to clobber the pspec flags namespace.
Also, there is no need to expose this functionality in the public API
without exposing more of the styleproperty API.

This essentially reverts commit 9bfd3d2eec.
2011-06-02 02:03:52 +02:00
Benjamin Otte
79de8e4d08 API: Add support for siblings to widget paths 2011-06-02 02:03:51 +02:00
Benjamin Otte
03eb4c38c9 widgetpath: Make structure refcounted
I want to use widget paths in a way that make a lot more sense with a
refcounted structure. See the following patches.
2011-06-02 02:03:51 +02:00
Benjamin Otte
9bfd3d2eec API: Add API to set style properties to be inherit
The API is not used anywhere yet.
2011-05-18 22:17:57 +02:00
Benjamin Otte
b1556abe04 API: gtk: Add gtk_css_provider_to_string()
This is intented to convert the contents of a CSS provider back to a
string.
It is not complete yet but good enough for starting a testsuite. :)
2011-05-18 21:58:43 +02:00
Benjamin Otte
8b6f92d087 API: Add gtk_gradient_to_string() 2011-05-18 21:58:43 +02:00
Benjamin Otte
6e18b5f3de API: gtk: Add gtk_symbolic_color_to_string()
See future commits for why this is useful. Or try to debug some color
problem.
2011-05-18 21:58:43 +02:00
Matthias Clasen
1d647df176 Add a lock button widget
This is a special-purpose button that can be used together with
GPermission objects to control the sensitivity of system settings.

Suitable permission objects can e.g. be obtained from PolicyKit.

http://bugzilla.gnome.org/show_bug.cgi?id=626457
2011-05-06 22:44:38 -04:00
Matthias Clasen
b8fe808e15 GtkButtonBox: add a non-homogeneous child property
This makes it easier to add things like lock buttons in
dialogs. Part of #626457.
2011-05-05 07:46:03 -04:00
Colin Walters
b90e8cfc36 gtkdnd: Add API that takes GIcon
This will be useful for me to port gnome-panel to gnome-menus 4, which
uses GAppInfo, which in turn returns icon references as GIcon.

https://bugzilla.gnome.org/show_bug.cgi?id=649295
2011-05-03 12:53:46 -04:00
Matthias Clasen
6c0c63cc53 Add new symbols to the docs
And add a 'Since 3.2' index too.
2011-04-13 14:09:39 -04:00
Javier Jardón
b0977dcef9 docs: Fix a typo: gtk_style_get_context -> gtk_style_has_context 2011-04-13 13:56:16 +01:00
Benjamin Otte
8b4b3cf090 API: Add gtk_widget_path_to_string()
Dumps the widget path into a string representation. It tries to match the CSS
style as closely as possible (Note that there might be paths that cannot be
represented in CSS).

The main use of this code is for debugging purposes, so that you can
g_print() the path or dump it in a gdb session.
2011-03-27 01:47:17 +01:00
Carlos Garcia Campos
ef061c4e96 gtkentry: Add hinting to GtkEntry
gtk_entry_set_placeholder_text() makes the entry display the given text
when it is empty and unfocused. Based on previous patch by Alberto
Garcia.

https://bugzilla.gnome.org/show_bug.cgi?id=440963
2011-03-21 09:37:37 +01:00
Cosimo Cecchi
6a21e4ce94 docs: update to include the new style classes 2011-03-03 17:48:26 -05:00
Matthias Clasen
394ae46ec0 Add some missing symbols to the docs 2011-02-08 23:21:39 -05:00
Carlos Garnacho
53ca6eb0b5 Add gtk_binding_entry_add_signal_from_string()
This function rescues part of the old parser (which
is now standalone) to load a bind/unbind definition
string into a GtkBindingSet.
2011-01-30 21:24:51 -05:00
Carlos Garnacho
41d6837fa2 Make GtkCellArea use GtkStyleContext
gtk_cell_area_[gs]et_style_detail() is no longer needed, as
the passed widget's context would already have all necessary
info.
2011-01-27 19:32:07 +01:00
Carlos Garnacho
f96aae68f4 Add gtk_cell_renderer_get_state()
This is a helper function to help retrieve a GtkStateFlags
from a GtkCellRendererState, also given the cell renderer
and widget sensitivities.
2011-01-27 19:32:07 +01:00
Matthias Clasen
9be8bbc9a0 Add gtk_app_chooser_button_get/set_heading 2011-01-24 19:25:08 -05:00
Matthias Clasen
a7bcb8a4d7 Add a way to set the heading of GtkAppChooserDialog
The application can probably set a better string than the default
we construct, like 'Select an application for "software" files'.
2011-01-20 20:57:47 -05:00
Matthias Clasen
2f7245699b Add gtk_text_view_get_cursor_locations
In GTK 3.0 it's no longer possible to e.g. pop up something
at a text view's cursor (this wasn't exactly possible before
either without including gtktextlayout, but this is a quite
special need anyway).
2011-01-19 17:01:19 -05:00
Matthias Clasen
ccc3d874ef Add accessors for GtkRange::round-digits
Patch by Christian Dywan,
https://bugzilla.gnome.org/show_bug.cgi?id=351755
2011-01-15 00:08:39 -05:00
Carlos Garnacho
529fcc84cf Add missing CSS class defines to gtk3-sections.txt 2011-01-10 23:52:47 +01:00
Carlos Garnacho
fa2bfd93f8 Add gtk_widget_set_device_enabled()
This function is a more convenient variant than
gtk_widget_set_device_events(), as it will

1) perform changes down a widget hierarchy, to
all windows.
1) use the same event mask than gdk_window_get_events()
2011-01-10 23:01:02 +01:00
Carlos Garnacho
de36dda925 Add gtk_style_context_scroll_animations()
This function will be needed in widgets like GtkTreeView,
since gdk_window_scroll() doesn't trigger the usual
mechanisms to update the invalidation area, this function
is needed together with it.
2011-01-10 20:49:41 +01:00
Matthias Clasen
efd0e6ec1f Add a setter for GtkWindow.has_user_ref_count
This is needed for some language bindings.

https://bugzilla.gnome.org/show_bug.cgi?id=638880
2011-01-10 11:49:06 -05:00
Carlos Garnacho
e6277d3b82 Add gtk_style_context_cancel_animations()
This function takes a region ID and cancels all animations
on or beneath that region (as in push/pop_animatable_region).

First user of this is GtkWidget itself, so unmapped widgets
have looping animations cancelled. Fixes bug #638119, reported
by Jesse van den Kieboom.
2011-01-10 03:50:01 +01:00
Tristan Van Berkom
01a35e4483 Added gtk_icon_view_new_with_area() 2011-01-06 13:51:48 +09:00
Szilárd Pfeiffer
8219ed3a26 Add gtk_tree_model_iter_previous() vfunc
https://bugzilla.gnome.org/show_bug.cgi?id=128058
2011-01-05 23:39:11 -05:00
Matthias Clasen
7799fbf239 Add GtkNumerableIcon
This is a subclass of GEmblemedIcon that can show a number or
short string as an emblem, overlayed on top of another emblem.

Written by Cosimo Cecchi
https://bugzilla.gnome.org/show_bug.cgi?id=637169
2011-01-05 16:33:15 -05:00
Matthias Clasen
67b8f22d8b Remove some dropped symbols from gtk3-sections.txt 2011-01-05 11:01:46 -05:00
Benjamin Otte
c43a31ea33 API: range: Remove update policy
It's unused and complicates code a lot. In particular, it breaks the
adjustment/range abstractions.
2011-01-05 14:30:58 +01:00
Matthias Clasen
1283368b1b Remove GtkArg, GtkCallbackMarshal and GtkFunction
Based on a patch by Javier Jardón.

https://bugzilla.gnome.org/show_bug.cgi?id=629955
2011-01-04 13:49:37 -05:00
Javier Jardón
7e7d8c4ccc Remove deprecated gtk_quit_* API 2011-01-04 13:39:35 -05:00
Tristan Van Berkom
7b2d6e5cdf Make GtkTreeMenu a private class:
- Removed GtkTreeMenu from gtk-docs.sgml
  - Removed GtkTreeMenu from gtk3-sections.txt
  - Removed GtkTreeMenu from gtk.symbols
  - Make GtkTreeMenu apis prefixed with '_' (including _get_type()).
  - Updated GtkComboBox sources to use the private apis
  - Updated GtkCellView to not mention #GtkTreeMenu in gtk-doc statements
  - Updated tests/testtreemenu to not use a GtkTreeMenu but still
    show a very fancy GtkComboBox
  - Moved gtktreemenu.h to private headers section in the makefile.
  - Removed include of gtktreemenu.h from gtk.h
2011-01-04 23:37:13 +09:00
Tristan Van Berkom
57857f13df Added new constructors gtk_combo_box_new_with_area and gtk_combo_box_new_with_area_and_entry. 2011-01-04 23:37:13 +09:00
Tristan Van Berkom
e8503f600e Added GtkTreeMenu to gtk+ documentation and updated sections for newly added GtkCellView apis. 2011-01-04 23:37:11 +09:00
Matthias Clasen
c7f39eb07e add gtk_selection_data_get_data_with_length API which can be bound
* gtk_selection_data_get_data can't be bound because we need to know the length
  of data inorder to marshal it

https://bugzilla.gnome.org/show_bug.cgi?id=635299
2011-01-03 12:13:30 -05:00
Matthias Clasen
7650482e46 Add sufficient API to make gail work
The accessible implementations should really be folded into
gtk proper. Until that happens, we need some more guts exposed...
2010-12-23 20:11:38 -05:00
Matthias Clasen
3e08a23237 Drop long-obsolete linux framebuffer APIs
The functions to set frames on windows stopped being interesting
when the linux framebuffer port was dropped, many years ago.

Similar functionality may come back with client-side decorations
in the future.
2010-12-23 12:59:49 -05:00
Matthias Clasen
fdabc9585d Drop g[dt]k_set_locale
These functions were essentially just calling setlocale anyway.
The X11 version was also setting a gdk_use_mb variable that
is not used anywhere.
2010-12-21 12:07:02 -05:00
Matthias Clasen
8105125369 Remove sealed members from GtkPrintJob
Also add accessors for these members, and use them in print backends.
2010-12-18 17:45:31 -05:00
Matthias Clasen
4317ae32c3 Adjust symbol lists in the docs 2010-12-17 14:24:25 -05:00
Cosimo Cecchi
b792a31995 widgetpath: allow GTypes non-derived from GTK_TYPE_WIDGET
This makes things like GtkCellRenderer or GtkNumerableIcon more easily
themeable.

https://bugzilla.gnome.org/show_bug.cgi?id=637169
2010-12-17 18:30:57 +01:00
Carlos Garnacho
2c8c1c6df4 Remove *_set_extension_events() and old API to query devices.
The old functions to get core pointer and devices list are gone as
well. This slice is entirely replaced internally by multidevice
handling and may just go.
2010-12-17 16:25:14 +01:00
Tristan Van Berkom
71e7cd0ec4 Merge branch 'master' into treeview-refactor
Conflicts:
	tests/testtreeedit.c
2010-12-17 15:25:15 +09:00
Matthias Clasen
b7fd6f1e88 Remove gtk_widget_reset_shapes
See bug 637155.
2010-12-14 22:15:33 -05:00
Carlos Garnacho
fbb75b9b5d Add headers/docs changes for gtk_theming_engine_get_font()
Apparently I didn't git add enough...
2010-12-13 22:42:05 +01:00
Paolo Borelli
f285a84bd6 Add convenience function for the font description. 2010-12-13 22:31:27 +01:00
Tristan Van Berkom
623abdedf6 Added gtk_entry_completion_new_with_area() 2010-12-13 15:58:07 +09:00
Tristan Van Berkom
96d636a780 Updated some docs and gtk.symbols file for new apis
Added gtk_cell_area_context_get_preferred_height_for_width and
width_for_height & gtk_cell_area_copy_context() to gtk.symbols
and gtk3-sections.txt (also finished up documenting those apis).
2010-12-13 15:43:58 +09:00
Tristan Van Berkom
a47a557fc3 Merge branch 'master' into treeview-refactor 2010-12-08 15:24:49 +09:00
Tristan Van Berkom
5fef00de2c Adding gtk_tree_view_column_new_with_area to gtk.symbols and gtk3-sections.txt. 2010-12-07 17:04:04 +09:00
Matthias Clasen
5f75ffc974 Add gtk_widget_path_get_type to the headers
Bug 636591
2010-12-06 09:50:01 -05:00
Tristan Van Berkom
2588165bfb Added gtk_cell_area_foreach_alloc() to further simplify GtkCellArea subclasses
gtk_cell_area_foreach_alloc() itterates over an allocated list of cells
and calls a callback with the cell's allocation until the callback returns
TRUE.
  - Removed vfunc get_cell_allocation() and implemented
    gtk_cell_area_get_cell_allocation() using foreach_alloc()
  - Added gtk_cell_area_get_cell_at_position() using foreach_alloc()
  - Removed GtkCellAreaBox ->event() implementation and implemented
    mouse "click" cell activation in GtkCellArea class directly using
    gtk_cell_area_get_cell_at_position().
2010-12-06 14:11:28 +09:00
Tristan Van Berkom
4b065f5389 Changed gtk_cell_area_forall to gtk_cell_area_foreach since thats more widely used semantics.
Also gave a boolean return value to the callback to allow breaking out of the loop.
2010-12-06 12:41:38 +09:00
Tristan Van Berkom
0d786985a3 Merge branch 'master' into treeview-refactor
Conflicts:
	gtk/gtkmarshalers.list
	tests/Makefile.am
2010-12-05 00:36:37 +09:00
Carlos Garcia Campos
07eeae1582 GtkWidget: add gtk_widget_render_icon_pixbuf()
and deprecate gtk_widget_render_icon()
2010-12-04 15:39:57 +01:00
Carlos Garcia Campos
905ba2f198 GtkIconFactory: add gtk_icon_set_render_icon_pixbuf()
and deprecate gtk_icon_set_render_icon().
2010-12-04 15:39:57 +01:00
Carlos Garnacho
bacb7906f2 Add helper API for getting colors/borders in GtkStyleContext/GtkThemingEngine 2010-12-04 15:39:55 +01:00
Carlos Garnacho
9aca6c8071 GtkWidget: Add gtk_widget_override_cursor().
This function replaces gtk_widget_modify_cursor().
2010-12-04 15:39:54 +01:00