Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(278)

Unified Diff: third_party/undoview/undo_view.c

Issue 9289019: Move undoview to deps/third_party/ (Closed) Base URL: http://src.chromium.org/svn/trunk/deps/
Patch Set: '' Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « third_party/undoview/undo_view.h ('k') | third_party/undoview/undoview.gyp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/undoview/undo_view.c
===================================================================
--- third_party/undoview/undo_view.c (revision 0)
+++ third_party/undoview/undo_view.c (revision 0)
@@ -0,0 +1,83 @@
+// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Boilerplate code was generated by http://burtonini.com/cgi/gobject.py
+
+#include <gdk/gdkkeysyms.h>
+
+#include "undo_view.h"
+
+G_DEFINE_TYPE (GtkUndoView, gtk_undo_view, GTK_TYPE_TEXT_VIEW)
+
+static void
+gtk_undo_view_dispose(GObject *object) {
+ GtkUndoView *uview = GTK_UNDO_VIEW(object);
+
+ if(uview->undo_manager_) {
+ g_object_unref(G_OBJECT(uview->undo_manager_));
+ uview->undo_manager_ = NULL;
+ }
+ G_OBJECT_CLASS(gtk_undo_view_parent_class)->dispose(object);
+}
+
+static void
+gtk_undo_view_undo(GtkUndoView *uview) {
+ if(gtk_source_undo_manager_can_undo(uview->undo_manager_))
+ gtk_source_undo_manager_undo(uview->undo_manager_);
+}
+
+static void
+gtk_undo_view_redo(GtkUndoView *uview) {
+ if(gtk_source_undo_manager_can_redo(uview->undo_manager_))
+ gtk_source_undo_manager_redo(uview->undo_manager_);
+}
+
+static void
+gtk_undo_view_class_init(GtkUndoViewClass *klass) {
+ GObjectClass *object_class = G_OBJECT_CLASS(klass);
+ GtkBindingSet *binding_set;
+
+ g_signal_new("undo",
+ G_TYPE_FROM_CLASS(klass),
+ G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
+ G_STRUCT_OFFSET(GtkUndoViewClass, undo),
+ NULL,
+ NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE,
+ 0);
+ g_signal_new("redo",
+ G_TYPE_FROM_CLASS(klass),
+ G_SIGNAL_RUN_LAST | G_SIGNAL_ACTION,
+ G_STRUCT_OFFSET(GtkUndoViewClass, redo),
+ NULL,
+ NULL,
+ g_cclosure_marshal_VOID__VOID,
+ G_TYPE_NONE,
+ 0);
+
+ klass->undo = gtk_undo_view_undo;
+ klass->redo = gtk_undo_view_redo;
+
+ binding_set = gtk_binding_set_by_class(klass);
+ gtk_binding_entry_add_signal(binding_set, GDK_z, GDK_CONTROL_MASK, "undo", 0);
+ gtk_binding_entry_add_signal(binding_set, GDK_y, GDK_CONTROL_MASK, "redo", 0);
+ gtk_binding_entry_add_signal(binding_set, GDK_z, GDK_CONTROL_MASK | GDK_SHIFT_MASK, "redo", 0);
+ gtk_binding_entry_add_signal(binding_set, GDK_F14, 0, "undo", 0);
+
+ object_class->dispose = gtk_undo_view_dispose;
+}
+
+static void
+gtk_undo_view_init(GtkUndoView *self) {
+}
+
+GtkWidget*
+gtk_undo_view_new(GtkTextBuffer *buffer) {
+ GtkWidget *ret = g_object_new(GTK_TYPE_UNDO_VIEW, "buffer", buffer, NULL);
+ GTK_UNDO_VIEW(ret)->undo_manager_ = gtk_source_undo_manager_new(GTK_TEXT_BUFFER(buffer));
+
+ return ret;
+}
+
Property changes on: third_party/undoview/undo_view.c
___________________________________________________________________
Added: svn:eol-style
+ LF
« no previous file with comments | « third_party/undoview/undo_view.h ('k') | third_party/undoview/undoview.gyp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698