Commit Graph

24 Commits

Author SHA1 Message Date
0e7b23b94d Miscellaneous fixups. 2010-10-18 14:31:16 -04:00
51ebf20237 EAlert: Allow arbitrary actions to be added.
You can now amend the predefined actions in an EAlert by calling
e_alert_add_action().  Useful for adding actions from an existing
GtkUIManager.

Call e_alert_peek_actions() to obtain a combined list of predefined
and custom actions.  These will typically serve as "related" actions
for GtkButtons (cf. gtk_activatable_set_related_action()).

Also, both EShellWindow and EShellView now implement EAlertSink.  Use
EShellWindow for application-wide alerts, EShellView for view-specific
alerts.
2010-10-18 12:32:36 -04:00
a11439aeaf Update API documentation. 2010-07-18 13:28:10 -04:00
a4cb2af922 Fix compiler warnings. 2010-04-21 08:18:39 -04:00
1040078ce6 Update API documentation.
Also, start fixing some Gtk-Doc warnings.  There's a lot.
2010-02-09 18:02:51 -05:00
48462592cb Add a EShellWindow::shell-view-created signal.
The signal uses the name of the newly created shell view as the detail,
so for example "shell-view-created::mail" is emitted when the "mail"
view is created.

Also, add e_shell_window_peek_shell_view() to obtain a shell view if it
exists but without instantiating it.

Using these new tools, teach the templates plugin to wait for the user
to switch to the "mail" view before connecting to its "update-actions"
signal.  Previously is was instantiating the "mail" view itself.
2010-01-22 11:46:34 -05:00
abc0e4c694 Introduce ESelectable and EFocusTracker.
EFocusTracker tracks the input focus within a window and helps keep
the sensitivity of "selectable" actions in the main menu up-to-date.
Selectable actions include Cut, Copy, Paste, Select All and Delete.

EFocusTracker has built-in support for widgets that implement the
GtkEditable interface such as GtkEntry and GtkTextView.  It also
supports custom widgets that implement the ESelectable interface,
which is a subset of GtkEditable and can apply to anything that
displays selectable content (esp. tree views and ETables).

This commit integrates EFocusTracker with EShellWindow, CompEditor,
EMsgComposer, and ESignatureManager.

It also bumps the GtkHTML requirement to 2.29.5 to utilize the new
GtkhtmlEditor:html constructor property.
2009-12-25 15:42:17 -05:00
793e57e24c Add private virtual methods to EShellWindowClass.
So Anjal can override what it needs to for its own purpose.
Also makes the EShellWindow design a little cleaner.

Methods added:

  GtkWidget *    (*construct_menubar)   (EShellWindow *shell_window);
  GtkWidget *    (*construct_toolbar)   (EShellWindow *shell_window);
  GtkWidget *    (*construct_sidebar)   (EShellWindow *shell_window);
  GtkWidget *    (*construct_content)   (EShellWindow *shell_window);
  GtkWidget *    (*construct_taskbar)   (EShellWindow *shell_window);
  EShellView *   (*create_shell_view)   (EShellWindow *shell_window,
                                         const gchar *view_name);

Also added some new GObject properties to help decouple actions from
internal EShellWindow widgets created by these methods:

  EShellWindow:sidebar-visible
  EShellWindow:switcher-visible
  EShellWindow:taskbar-visible
  EShellWindow:toolbar-visible
2009-12-01 22:27:11 -05:00
20efbd7c8b Add a --geometry command-line option.
Applies the user's window geometry string to the first main window.
Suggested in bug #529565.
2009-11-25 13:37:13 -05:00
e18f9eb725 Adapt tasks to EShellBackend changes. 2009-05-08 18:18:58 -04:00
dc7efb1311 Use consistent variable names for GtkUIManager 2009-04-25 10:49:45 -04:00
faf1c14c11 Manual conflict resolution 2009-04-25 10:16:00 -04:00
4b140a897f Make action group management in shell windows more elegant.
svn path=/branches/kill-bonobo/; revision=37137
2009-01-27 05:22:57 +00:00
8e2b445e9d Define a new interface called EMailReader, which implements operations
common to both the main shell window and the message browser.  Replaces
EMFolderView.  Also begin to define EMailBrowser (GtkWindow subclass),
which implements EMailReader and replaces EMMessageBrowser.

svn path=/branches/kill-bonobo/; revision=36933
2008-12-27 15:14:29 +00:00
d158af8cdf Merge revisions 36811:36865 from trunk.
svn path=/branches/kill-bonobo/; revision=36867
2008-12-10 18:30:29 +00:00
dc0d0ee010 Implement bug #263268 - Contact categories need to be able to be filtered by
"not categorized".  Also fix a crasher.

svn path=/branches/kill-bonobo/; revision=36831
2008-12-04 11:42:49 +00:00
ab0ea462f3 Documentation improvements.
svn path=/branches/kill-bonobo/; revision=36806
2008-11-19 23:54:02 +00:00
d6445f8abf Merge revisions 36685:36729 from trunk.
svn path=/branches/kill-bonobo/; revision=36763
2008-11-07 22:04:53 +00:00
253e90b8de Tasks is working. Still need to deal with some loose ends and test it all.
svn path=/branches/kill-bonobo/; revision=36551
2008-10-03 19:24:59 +00:00
086a96050b Tasks progress. Merge EMemoPreview back into ECalComponentPreview.
svn path=/branches/kill-bonobo/; revision=36538
2008-10-03 04:43:40 +00:00
c6795be3a8 Continue documenting the new shell API.
svn path=/branches/kill-bonobo/; revision=36511
2008-10-01 03:48:51 +00:00
9515b98403 Saving progress. Experimenting with directory layout.
Saving progress.
Experimenting with directory layout.

svn path=/branches/kill-bonobo/; revision=36446
2008-09-24 22:53:30 +00:00
bb7cb1d677 Massive address book refactoring. Things are mostly working again.
Also, begin documenting the new shell API, and provide a Gtk-Doc framework.

svn path=/branches/kill-bonobo/; revision=36359
2008-09-17 15:07:13 +00:00
7d2c28c02c Begin documenting the new shell design.
svn path=/branches/kill-bonobo/; revision=36337
2008-09-15 14:55:41 +00:00