]> git.0d.be Git - empathy.git/blobdiff - libempathy-gtk/empathy-chat-view.h
individual_view_drag_end: remove the auto scroll
[empathy.git] / libempathy-gtk / empathy-chat-view.h
index bf5140001ceffcfbaa1a8065f6beb753182afd05..2c47e042929a96f892053fce29737f8ddb70d2b3 100644 (file)
  *
  * You should have received a copy of the GNU General Public
  * License along with this program; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- * 
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA  02110-1301  USA
+ *
  * Authors: Xavier Claessens <xclaesse@gmail.com>
  */
 
 #ifndef __EMPATHY_CHAT_VIEW_H__
 #define __EMPATHY_CHAT_VIEW_H__
 
-#include <gtk/gtktextview.h>
+#include <gtk/gtk.h>
 
 #include <libempathy/empathy-contact.h>
 #include <libempathy/empathy-message.h>
@@ -38,18 +38,20 @@ G_BEGIN_DECLS
 typedef struct _EmpathyChatView      EmpathyChatView;
 typedef struct _EmpathyChatViewIface EmpathyChatViewIface;
 
-#include "empathy-theme.h"
-
 struct _EmpathyChatViewIface {
        GTypeInterface   base_iface;
 
        /* VTabled */
        void             (*append_message)       (EmpathyChatView *view,
-                                                 EmpathyMessage  *msg);
+                                                 EmpathyMessage  *msg,
+                                                 gboolean         should_highlight);
        void             (*append_event)         (EmpathyChatView *view,
                                                  const gchar     *str);
-       void             (*set_margin)           (EmpathyChatView *view,
-                                                 gint             margin);
+       void             (*append_event_markup)  (EmpathyChatView *view,
+                                                 const gchar     *markup_text,
+                                                 const gchar     *fallback_text);
+       void             (*edit_message)         (EmpathyChatView *view,
+                                                 EmpathyMessage  *message);
        void             (*scroll)               (EmpathyChatView *view,
                                                  gboolean         allow_scrolling);
        void             (*scroll_down)          (EmpathyChatView *view);
@@ -57,32 +59,38 @@ struct _EmpathyChatViewIface {
        void             (*clear)                (EmpathyChatView *view);
        gboolean         (*find_previous)        (EmpathyChatView *view,
                                                  const gchar     *search_criteria,
-                                                 gboolean         new_search);
+                                                 gboolean         new_search,
+                                                 gboolean         match_case);
        gboolean         (*find_next)            (EmpathyChatView *view,
                                                  const gchar     *search_criteria,
-                                                 gboolean         new_search);
+                                                 gboolean         new_search,
+                                                 gboolean         match_case);
        void             (*find_abilities)       (EmpathyChatView *view,
                                                  const gchar     *search_criteria,
+                                                 gboolean         match_case,
                                                  gboolean        *can_do_previous,
                                                  gboolean        *can_do_next);
        void             (*highlight)            (EmpathyChatView *view,
-                                                 const gchar     *text);
+                                                 const gchar     *text,
+                                                 gboolean         match_case);
        void             (*copy_clipboard)       (EmpathyChatView *view);
-       EmpathyTheme *   (*get_theme)            (EmpathyChatView *view);
-       void             (*set_theme)            (EmpathyChatView *view,
-                                                 EmpathyTheme    *theme);
-       time_t           (*get_last_timestamp)   (EmpathyChatView *view);
-       void             (*set_last_timestamp)   (EmpathyChatView *view,
-                                                 time_t           timestamp);
-       EmpathyContact * (*get_last_contact)     (EmpathyChatView *view);
-
+       void             (*focus_toggled)        (EmpathyChatView *view,
+                                                 gboolean         has_focus);
+       void             (*message_acknowledged) (EmpathyChatView *view,
+                                                 EmpathyMessage  *message);
 };
 
 GType            empathy_chat_view_get_type             (void) G_GNUC_CONST;
 void             empathy_chat_view_append_message       (EmpathyChatView *view,
-                                                        EmpathyMessage  *msg);
+                                                        EmpathyMessage  *msg,
+                                                        gboolean         should_highlight);
 void             empathy_chat_view_append_event         (EmpathyChatView *view,
                                                         const gchar     *str);
+void             empathy_chat_view_append_event_markup  (EmpathyChatView *view,
+                                                        const gchar     *markup_text,
+                                                        const gchar     *fallback_text);
+void             empathy_chat_view_edit_message         (EmpathyChatView *view,
+                                                        EmpathyMessage  *message);
 void             empathy_chat_view_scroll               (EmpathyChatView *view,
                                                         gboolean         allow_scrolling);
 void             empathy_chat_view_scroll_down          (EmpathyChatView *view);
@@ -90,26 +98,25 @@ gboolean         empathy_chat_view_get_has_selection    (EmpathyChatView *view);
 void             empathy_chat_view_clear                (EmpathyChatView *view);
 gboolean         empathy_chat_view_find_previous        (EmpathyChatView *view,
                                                         const gchar     *search_criteria,
-                                                        gboolean         new_search);
+                                                        gboolean         new_search,
+                                                        gboolean         match_case);
 gboolean         empathy_chat_view_find_next            (EmpathyChatView *view,
                                                         const gchar     *search_criteria,
-                                                        gboolean         new_search);
+                                                        gboolean         new_search,
+                                                        gboolean         match_case);
 void             empathy_chat_view_find_abilities       (EmpathyChatView *view,
                                                         const gchar     *search_criteria,
+                                                        gboolean         match_case,
                                                         gboolean        *can_do_previous,
                                                         gboolean        *can_do_next);
 void             empathy_chat_view_highlight            (EmpathyChatView *view,
-                                                        const gchar     *text);
+                                                        const gchar     *text,
+                                                        gboolean         match_case);
 void             empathy_chat_view_copy_clipboard       (EmpathyChatView *view);
-EmpathyTheme *   empathy_chat_view_get_theme            (EmpathyChatView *view);
-void             empathy_chat_view_set_theme            (EmpathyChatView *view,
-                                                        EmpathyTheme    *theme);
-void             empathy_chat_view_set_margin           (EmpathyChatView *view,
-                                                        gint             margin);
-time_t           empathy_chat_view_get_last_timestamp   (EmpathyChatView *view);
-void             empathy_chat_view_set_last_timestamp   (EmpathyChatView *view,
-                                                        time_t           timestamp);
-EmpathyContact * empathy_chat_view_get_last_contact     (EmpathyChatView *view);
+void             empathy_chat_view_focus_toggled        (EmpathyChatView *view,
+                                                        gboolean         has_focus);
+void             empathy_chat_view_message_acknowledged (EmpathyChatView *view,
+                                                        EmpathyMessage  *message);
 
 G_END_DECLS