Пример #1
0
gboolean
jam_doc_change_textstyle(JamDoc *doc, TextStyle newstyle, GError **err) {
    GtkTextBuffer *buffer = doc->buffer;
    GtkTextIter start, end;
    char *src;
    char *html, *result;

    gtk_text_buffer_get_bounds(buffer, &start, &end);
    src = gtk_text_buffer_get_text(buffer, &start, &end, TRUE);

    if (to_html[doc->jam_doc_get_textstyle(doc)])
        html = to_html[doc->jam_doc_get_textstyle(doc)](src, err);
    else
        html = src;

    if (html == NULL) {
        g_free(src);
        return FALSE;
    }

    if (from_html[newstyle])
        result = from_html[newstyle](src, err);
    else
        result = html;

    if (result == NULL) {
        g_free(src);
        if (html != src)
            g_free(html);
        return FALSE;
    }

    doc->textstyle = newstyle;
    gtk_text_buffer_set_text(buffer, result, -1);

    g_free(src);
    if (src != html)
        g_free(html);
    if (html != result)
        g_free(result);
    return TRUE;
}
RygelFolderPrefSection* rygel_folder_pref_section_construct (GType object_type, GtkBuilder* builder, RygelConfiguration* config) {
	RygelFolderPrefSection * self;
	GtkTextView* _tmp1_;
	GtkTextView* _tmp0_;
	GtkTextBuffer* _tmp3_;
	GtkTextBuffer* _tmp2_;
	GeeArrayList* folders;
	char* text;
	g_return_val_if_fail (builder != NULL, NULL);
	g_return_val_if_fail (config != NULL, NULL);
	self = (RygelFolderPrefSection*) rygel_plugin_pref_section_construct (object_type, builder, config, RYGEL_FOLDER_PREF_SECTION_NAME);
	_tmp1_ = NULL;
	_tmp0_ = NULL;
	self->priv->text_view = (_tmp1_ = (_tmp0_ = GTK_TEXT_VIEW (gtk_builder_get_object (builder, RYGEL_FOLDER_PREF_SECTION_FOLDERS_TEXTVIEW)), (_tmp0_ == NULL) ? NULL : g_object_ref (_tmp0_)), (self->priv->text_view == NULL) ? NULL : (self->priv->text_view = (g_object_unref (self->priv->text_view), NULL)), _tmp1_);
	g_assert (self->priv->text_view != NULL);
	_tmp3_ = NULL;
	_tmp2_ = NULL;
	self->priv->text_buffer = (_tmp3_ = (_tmp2_ = GTK_TEXT_BUFFER (gtk_builder_get_object (builder, RYGEL_FOLDER_PREF_SECTION_FOLDERS_TEXTBUFFER)), (_tmp2_ == NULL) ? NULL : g_object_ref (_tmp2_)), (self->priv->text_buffer == NULL) ? NULL : (self->priv->text_buffer = (g_object_unref (self->priv->text_buffer), NULL)), _tmp3_);
	g_assert (self->priv->text_buffer != NULL);
	folders = rygel_configuration_get_string_list (config, ((RygelPreferencesSection*) self)->name, RYGEL_FOLDER_PREF_SECTION_FOLDERS_KEY);
	text = g_strdup ("");
	{
		GeeIterator* _folder_it;
		_folder_it = gee_iterable_iterator ((GeeIterable*) folders);
		while (gee_iterator_next (_folder_it)) {
			char* folder;
			char* _tmp5_;
			char* _tmp4_;
			folder = (char*) gee_iterator_get (_folder_it);
			_tmp5_ = NULL;
			_tmp4_ = NULL;
			text = (_tmp5_ = g_strconcat (text, _tmp4_ = g_strconcat (folder, "\n", NULL), NULL), text = (g_free (text), NULL), _tmp5_);
			_tmp4_ = (g_free (_tmp4_), NULL);
			folder = (g_free (folder), NULL);
		}
		(_folder_it == NULL) ? NULL : (_folder_it = (g_object_unref (_folder_it), NULL));
	}
	gtk_text_buffer_set_text (self->priv->text_buffer, text, -1);
	(folders == NULL) ? NULL : (folders = (g_object_unref (folders), NULL));
	text = (g_free (text), NULL);
	return self;
}
Пример #3
0
static void
new_window (GApplication *app,
            GFile        *file)
{
  GtkWidget *window, *grid, *scrolled, *view;

  window = gtk_application_window_new (GTK_APPLICATION (app));
  gtk_window_set_default_size ((GtkWindow*)window, 640, 480);
  g_action_map_add_action_entries (G_ACTION_MAP (window), win_entries, G_N_ELEMENTS (win_entries), window);
  gtk_window_set_title (GTK_WINDOW (window), "Plugman");

  grid = gtk_grid_new ();
  gtk_container_add (GTK_CONTAINER (window), grid);

  scrolled = gtk_scrolled_window_new (NULL, NULL);
  gtk_widget_set_hexpand (scrolled, TRUE);
  gtk_widget_set_vexpand (scrolled, TRUE);
  view = gtk_text_view_new ();

  g_object_set_data ((GObject*)window, "plugman-text", view);

  gtk_container_add (GTK_CONTAINER (scrolled), view);

  gtk_grid_attach (GTK_GRID (grid), scrolled, 0, 0, 1, 1);

  if (file != NULL)
    {
      gchar *contents;
      gsize length;

      if (g_file_load_contents (file, NULL, &contents, &length, NULL, NULL))
        {
          GtkTextBuffer *buffer;

          buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (view));
          gtk_text_buffer_set_text (buffer, contents, length);
          g_free (contents);
        }
    }

  gtk_widget_show_all (GTK_WIDGET (window));
}
Пример #4
0
static void
onAbsenceSelectionChanged (GtkTreeSelection *sel,gpointer user_data)
{
  GtkTreeIter  selected_row;
  GtkWidget *text_view;
  GtkWidget *view;
  GtkWidget *entry;
  GtkTreeModel *model;
  GtkTextBuffer *buffer;
  gint index;
  gchar *title;
  gchar *message;

  view=GTK_WIDGET(gtk_tree_selection_get_tree_view(sel));
  g_assert(view);
  g_assert(gtk_tree_selection_get_mode(sel) == GTK_SELECTION_SINGLE);
  entry=GTK_WIDGET(lookup_widget(view,"AbsenceTitleEntry"));
  g_assert(entry);
  text_view=GTK_WIDGET(lookup_widget(view,"fuzaiText"));
  g_assert(text_view);

  if (gtk_tree_selection_get_selected(sel, &model, &selected_row))
    {
      gtk_tree_model_get (model, &selected_row, 
                          1, &index,
                          -1);
      dbg_out("Selected index:%d\n",index);
      if (!hostinfo_get_absent_title(index,(const char **)&title)) {
	gtk_entry_set_text(GTK_ENTRY(entry), title); 
	g_free(title);
      }
      if (!hostinfo_get_absent_message(index, &message)) {
	buffer=gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_view));
	gtk_text_buffer_set_text(buffer,message,-1);
	g_free(message);
      }
    }
  else
    {
      g_assert_not_reached();
    }
}
Пример #5
0
void
load(GtkTextView *widget) {
	GtkTextBuffer *buffer;
	gchar *text;
	gsize length;

	if (path == NULL) {
		return;
	}

	if (g_file_get_contents(path, &text, &length, NULL) == FALSE) {
		length = 0;
		text = g_strdup("");
	}

	buffer = gtk_text_view_get_buffer(widget);
	gtk_text_buffer_set_text(buffer, text, length);

	g_free(text);
}
Пример #6
0
void
gimp_color_profile_view_set_error (GimpColorProfileView *view,
                                   const gchar          *message)
{
  GtkTextBuffer *buffer;
  GtkTextIter    iter;

  g_return_if_fail (GIMP_IS_COLOR_PROFILE_VIEW (view));
  g_return_if_fail (message != NULL);

  buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (view));

  gtk_text_buffer_set_text (buffer, "", 0);

  gtk_text_buffer_get_start_iter (buffer, &iter);

  gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
                                            message, -1,
                                            "emphasis", NULL);
}
Пример #7
0
static void
show_dialog(GncGWENGui *gui, gboolean clear_log)
{
    gboolean cache_pin;

    g_return_if_fail(gui);

    ENTER("gui=%p, clear_log=%d", gui, clear_log);

    gtk_widget_show(gui->dialog);

    /* Clear the log window */
    if (clear_log)
    {
        gtk_text_buffer_set_text(
            gtk_text_view_get_buffer(GTK_TEXT_VIEW(gui->log_text)), "", 0);
    }

    LEAVE(" ");
}
Пример #8
0
void read_result(GtkWidget *widget, gpointer data){
    FILE *f = fopen("ketqua.txt","r");
    char line[200];
    char *enter;
    // Xoa sach textbox ket qua
    gtk_text_buffer_set_text( buf_ketqua, "", 0);

    while( !feof(f) ){
        strcpy(line,"");
        fgets(line,200,f);
        enter = strchr(line,'\n');
        if(enter!=NULL) *enter='\0';

        if(strlen(line)>0){
            gtk_text_buffer_insert_at_cursor( buf_ketqua, line, strlen(line));
            gtk_text_buffer_insert_at_cursor( buf_ketqua, "\n", 1);
        }
    }
    fclose(f);
}
Пример #9
0
EXPORT void wTextClear(
		wText_p bt )
{
#ifdef USE_TEXTVIEW
	GtkTextBuffer * tb;
#endif
	if (bt->text == 0) abort();
#ifdef USE_TEXTVIEW
	tb = gtk_text_view_get_buffer( GTK_TEXT_VIEW(bt->text) );
	gtk_text_buffer_set_text( tb, "", -1 );
	if (bt->option & BO_READONLY)
		gtk_text_view_set_editable( GTK_TEXT_VIEW(bt->text), FALSE );
#else
	gtk_text_set_point( GTK_TEXT(bt->text), 0 );
	gtk_text_forward_delete( GTK_TEXT(bt->text), gtk_text_get_length( GTK_TEXT(bt->text) ) );
	if (bt->option & BO_READONLY)
		gtk_text_set_editable( GTK_TEXT(bt->text), FALSE );
#endif
	bt->changed = FALSE;
}
Пример #10
0
/* Helper function: search one documentation page */
static void
search_documentation(DocText *doctext, I7SearchWindow *self)
{
	I7_SEARCH_WINDOW_USE_PRIVATE(self, priv);
	GtkTreeIter result;
	GtkTextIter search_from, match_start, match_end;
	GtkTextBuffer *buffer = GTK_TEXT_BUFFER(gtk_source_buffer_new(NULL));
	gtk_text_buffer_set_text(buffer, doctext->body, -1);
	gtk_text_buffer_get_start_iter(buffer, &search_from);

	while(find_no_wrap(&search_from, priv->text, TRUE,
		GTK_SOURCE_SEARCH_TEXT_ONLY | (priv->ignore_case? GTK_SOURCE_SEARCH_CASE_INSENSITIVE : 0),
		priv->algorithm, &match_start, &match_end))
	{
		while(gtk_events_pending())
			gtk_main_iteration();

		search_from = match_end;

		gchar *context = extract_context(buffer, &match_start, &match_end);
		gchar *location = g_strconcat(doctext->section, ": ", doctext->title, NULL);

		gtk_list_store_append(priv->results, &result);
		gtk_list_store_set(priv->results, &result,
			I7_RESULT_CONTEXT_COLUMN, context,
			I7_RESULT_SORT_STRING_COLUMN, doctext->sort,
			I7_RESULT_FILE_COLUMN, doctext->file,
			I7_RESULT_ANCHOR_COLUMN, doctext->anchor,
			I7_RESULT_RESULT_TYPE_COLUMN, doctext->is_recipebook?
				I7_RESULT_TYPE_RECIPE_BOOK : I7_RESULT_TYPE_DOCUMENTATION,
			I7_RESULT_LOCATION_COLUMN, location,
			I7_RESULT_EXAMPLE_TITLE_COLUMN, doctext->example_title,
			I7_RESULT_BACKGROUND_COLOR_COLUMN, doctext->is_recipebook?
				"#ffffe0" : "#ffffff",
			-1);
		g_free(context);
		g_free(location);
	}

	g_object_unref(buffer);
}
Пример #11
0
static void
xfce_about_vendor (GtkBuilder *builder)
{
  gchar   *contents;
  gchar   *filename;
  GObject *object;
  gsize    length;

  g_return_if_fail (GTK_IS_BUILDER (builder));

  filename = g_build_filename (DATADIR, "vendorinfo", NULL);
  if (g_file_get_contents (filename, &contents, &length, NULL))
    {
      if (length > 0)
        {
          if (g_utf8_validate(contents, length, NULL))
            {
              object = gtk_builder_get_object (builder, "vendor-buffer");
              gtk_text_buffer_set_text (GTK_TEXT_BUFFER (object), contents, length);

              object = gtk_builder_get_object (builder, "vendor-label");
              gtk_label_set_text (GTK_LABEL (object), VENDOR_INFO);

              object = gtk_builder_get_object (builder, "vendor-tab");
              gtk_widget_show (GTK_WIDGET (object));
            }
          else
            {
              g_critical ("\"%s\" is not UTF-8 valid", filename);
            }
        }

      g_free (contents);
    }
  else
    {
      g_message ("No vendor information found in \"%s\".", filename);
    }

  g_free (filename);
}
Пример #12
0
/********************************************************************\
 * gnc_info2_dialog                                                 *
 *   displays an information dialog box (with scrollable text area) *
 *                                                                  *
 * NOTE: This function does not return until the dialog is closed   *
 *                                                                  *
 * Args:   parent  - the parent window or NULL                      *
 *         title   - the title of the dialog                        *
 *         msg     - the message to display                         *
 * Return: none                                                     *
\********************************************************************/
static void
gnc_info2_dialog (GtkWidget *parent, const gchar *title, const gchar *msg)
{
    GtkWidget *dialog, *scrolledwindow, *content_area;
    GtkWidget *view;
    GtkTextBuffer *buffer;
    gint width, height;

    /* Create the widgets */
    dialog = gtk_dialog_new_with_buttons (title, GTK_WINDOW (parent),
                                          GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT,
                                          GTK_STOCK_OK, GTK_RESPONSE_ACCEPT,
                                          NULL);
#ifdef HAVE_GTK_2_14
    content_area = gtk_dialog_get_content_area (GTK_DIALOG (dialog));
#else
    content_area = GTK_DIALOG (dialog)->vbox;
#endif

    // add a scroll area
    scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
    gtk_container_add (GTK_CONTAINER (content_area), scrolledwindow);

    // add a textview
    view = gtk_text_view_new ();
//    gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (view), GTK_WRAP_WORD_CHAR);
    gtk_text_view_set_editable (GTK_TEXT_VIEW (view), FALSE);
    buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (view));
    gtk_text_buffer_set_text (buffer, msg, -1);
    gtk_container_add (GTK_CONTAINER (scrolledwindow), view);

    // run the dialog
    if (parent)
    {
        gtk_window_get_size (GTK_WINDOW(parent), &width, &height);
        gtk_window_set_default_size (GTK_WINDOW(dialog), width, height);
    }
    gtk_widget_show_all (dialog);
    gtk_dialog_run (GTK_DIALOG (dialog));
    gtk_widget_destroy (dialog);
}
Пример #13
0
static GtkWidget* build_show_text(const gchar *text, int width, int height)
{
    GtkWidget *show_text, *textw, *scrollw;
    GtkTextBuffer *tb;
    gchar *utf8_text;
    GError *error = NULL;

    /*
        convert text to UTF-8 for GTK+. Try first using the locale, since that
        allows to display text translated by the translation system. Use
        ISO-8859-1 as a fallback if that fails.
     */
    utf8_text = g_locale_to_utf8(text, strlen(text), NULL, NULL, &error);
    if (utf8_text == NULL) {
        log_warning(LOG_DEFAULT, "Can not convert text to UTF-8 using locale, using ISO-8859-1 as fallback.");
        g_error_free(error);
        utf8_text = g_convert(text, strlen(text), "UTF-8", "ISO-8859-1", NULL, NULL, &error);
        if (utf8_text == NULL) {
            log_error(LOG_ERR, "Can not convert text to UTF-8.");
            g_error_free(error);
            util_string_set(&utf8_text, _("Text cannot be displayed.\n"));
        }
    }

    show_text = gtk_dialog_new_with_buttons("", NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE, NULL);
    gtk_widget_set_size_request(show_text, width, height);

    scrollw = gtk_scrolled_window_new(NULL, NULL);
    gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrollw), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);

    textw = gtk_text_view_new();
    gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW(textw), GTK_WRAP_WORD);
    tb = gtk_text_view_get_buffer(GTK_TEXT_VIEW(textw));
    gtk_text_buffer_set_text(tb, utf8_text, -1);
    gtk_container_add(GTK_CONTAINER(scrollw), textw);
    gtk_widget_show(textw);
    gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(show_text))), scrollw, TRUE, TRUE, 0);
    gtk_widget_show(scrollw);
    g_free(utf8_text);
    return show_text;
}
Пример #14
0
/* Fills the buffer with text and interspersed links. In any real
 * hypertext app, this method would parse a file to identify the links.
 */
static void
show_page (GtkTextBuffer *buffer,
           gint           page)
{
  GtkTextIter iter;

  gtk_text_buffer_set_text (buffer, "", 0);
  gtk_text_buffer_get_iter_at_offset (buffer, &iter, 0);
  if (page == 1)
    {
      gtk_text_buffer_insert (buffer, &iter, "Some text to show that simple ", -1);
      insert_link (buffer, &iter, "hypertext", 3);
      gtk_text_buffer_insert (buffer, &iter, " can easily be realized with ", -1);
      insert_link (buffer, &iter, "tags", 2);
      gtk_text_buffer_insert (buffer, &iter, ".", -1);
    }
  else if (page == 2)
    {
      gtk_text_buffer_insert (buffer, &iter,
                              "A tag is an attribute that can be applied to some range of text. "
                              "For example, a tag might be called \"bold\" and make the text inside "
                              "the tag bold. However, the tag concept is more general than that; "
                              "tags don't have to affect appearance. They can instead affect the "
                              "behavior of mouse and key presses, \"lock\" a range of text so the "
                              "user can't edit it, or countless other things.\n", -1);
      insert_link (buffer, &iter, "Go back", 1);
    }
  else if (page == 3)
    {
      GtkTextTag *tag;

      tag = gtk_text_buffer_create_tag (buffer, NULL,
                                        "weight", PANGO_WEIGHT_BOLD,
                                        NULL);
      gtk_text_buffer_insert_with_tags (buffer, &iter, "hypertext:\n", -1, tag, NULL);
      gtk_text_buffer_insert (buffer, &iter,
                              "machine-readable text that is not sequential but is organized "
                              "so that related items of information are connected.\n", -1);
      insert_link (buffer, &iter, "Go back", 1);
    }
}
Пример #15
0
/**
 *初始化右边主界面,所有不可见
 *@param str如果不为空,则弹出框显示str信息
 */
void init_right_main_view_hide_all(const char *str) {
    if(str != NULL) {
        dialog = gtk_message_dialog_new(GTK_WINDOW(mainWindow),
                                        GTK_DIALOG_MODAL,
                                        GTK_MESSAGE_INFO,
                                        GTK_BUTTONS_OK,
                                        str);
        gtk_message_dialog_set_markup(GTK_MESSAGE_DIALOG(dialog),str);
        gtk_dialog_run(GTK_DIALOG(dialog));
        gtk_widget_destroy(dialog);
    }
    gtk_entry_set_text(GTK_ENTRY(contentTitleEntry),"");
    gtk_text_buffer_set_text(textBuffer,"",0);
    gtk_text_view_set_buffer(GTK_TEXT_VIEW(contentContentTextView),textBuffer);

    gtk_widget_hide(contentTitleEntry);
    gtk_widget_hide(contentContentTextView);
    gtk_widget_hide(saveButton);
    gtk_widget_hide(deleteButton);
    gtk_widget_hide(modifyButton);
}
Пример #16
0
void
tbo_tool_text_set_selected (TboToolText *self, TboObjectText *text)
{
    char *str;

    if (self->text_selected) {
        g_object_unref (self->text_selected);
        self->text_selected = NULL;
    }

    if (!text) {
        return;
    }

    str = tbo_object_text_get_text (text);

    gtk_font_button_set_font_name (GTK_FONT_BUTTON (self->font), tbo_object_text_get_string (text));
    gtk_color_button_set_color (GTK_COLOR_BUTTON (self->font_color), text->font_color);
    gtk_text_buffer_set_text (self->text_buffer, str, -1);
    self->text_selected = g_object_ref (text);
}
Пример #17
0
static gboolean
delete_cb (GtkButton *button,
           gpointer user_data)
{
    GtkTextIter start, end;

    if (undo)
        g_free (undo);

    gtk_text_buffer_get_start_iter (text_buffer, &start);
    gtk_text_buffer_get_end_iter (text_buffer, &end);

    undo = gtk_text_buffer_get_text (text_buffer,
                                     &start,
                                     &end,
                                     FALSE);

    gtk_text_buffer_set_text (text_buffer, "", -1);

    return FALSE;
}
Пример #18
0
void  ugtk_plugin_form_set (struct UgtkPluginForm* psform, UgtkSetting* setting)
{
	gtk_combo_box_set_active ((GtkComboBox*) psform->order, setting->plugin_order);

	gtk_toggle_button_set_active (psform->launch, setting->aria2.launch);
	gtk_toggle_button_set_active (psform->shutdown, setting->aria2.shutdown);

	if (setting->aria2.uri)
		gtk_entry_set_text (psform->uri,  setting->aria2.uri);
	if (setting->aria2.token)
		gtk_entry_set_text (psform->token,  setting->aria2.token);
	if (setting->aria2.path)
		gtk_entry_set_text (psform->path, setting->aria2.path);
//	if (setting->aria2.args)
//		gtk_entry_set_text (psform->args, setting->aria2.args);
	if (setting->aria2.args)
		gtk_text_buffer_set_text (psform->args_buffer, setting->aria2.args, -1);

	gtk_spin_button_set_value (psform->upload, setting->aria2.limit.upload);
	gtk_spin_button_set_value (psform->download, setting->aria2.limit.download);
}
Пример #19
0
void cbt_move_changed(GtkWidget *obj, gpointer user_data)
{
	currMove = gtk_combo_box_get_active(GTK_COMBO_BOX(obj));
	if(currMove == -1) {
		toggleEditable(FALSE);
		return;
	} else {
		toggleEditable(TRUE);
	}
		
	gtk_entry_set_text(GTK_ENTRY(e_name), 
		gtk_combo_box_text_get_active_text(GTK_COMBO_BOX_TEXT(obj)));
	gtk_combo_box_set_active(GTK_COMBO_BOX(cbt_type), moveFile.moves[currMove].type);

	gtk_spin_button_set_value(GTK_SPIN_BUTTON(sb_pp), moveFile.moves[currMove].pp);

	if(moveFile.moves[currMove].script != NULL) {
		gtk_text_buffer_set_text(gtk_text_view_get_buffer(GTK_TEXT_VIEW(tv_script)),
			moveFile.moves[currMove].script, moveFile.moves[currMove].scriptLen);
	}
}
Пример #20
0
/* copied from uim-cand-win-gtk.c */
static gboolean
tree_selection_changed(GtkTreeSelection *selection,
                       gpointer data)
{
  GtkTreeModel *model;
  GtkTreeIter iter;
  /* UIMCandidateWindow *cwin = UIM_CANDIDATE_WINDOW(data); */

  if (gtk_tree_selection_get_selected(selection, &model, &iter)) {
    char *annotation = NULL;

    gtk_tree_model_get(model, &iter,
                       COLUMN_ANNOTATION, &annotation,
                       -1);

    if (annotation && *annotation) {
      if (!cwin->sub_window.window)
        uim_cand_win_gtk_create_sub_window(cwin);
      gtk_text_buffer_set_text(
        gtk_text_view_get_buffer(GTK_TEXT_VIEW(cwin->sub_window.text_view)),
        annotation, -1);
      uim_cand_win_gtk_layout_sub_window(cwin);
      gtk_widget_show(cwin->sub_window.window);
      cwin->sub_window.active = TRUE;
    } else {
      if (cwin->sub_window.window) {
        gtk_widget_hide(cwin->sub_window.window);
        cwin->sub_window.active = FALSE;
      }
    }
    free(annotation);
  } else {
    if (cwin->sub_window.window) {
      gtk_widget_hide(cwin->sub_window.window);
      cwin->sub_window.active = FALSE;
    }
  }

  return TRUE;
}
Пример #21
0
GtkWidget *gtk_mail_qr_new(void)
{
    GtkWidget *gtk_mail_label = gtk_label_new(NULL);
    GtkWidget *gtk_mail_vertical = gtk_box_new(GTK_ORIENTATION_VERTICAL, 15);
    GtkWidget *gtk_mail_scrolled = gtk_scrolled_window_new(NULL, NULL);
    GtkWidget *gtk_mail_button_clear = gtk_button_new_with_label("Clear and reset");
    GtkWidget *gtk_mail_horizontal_buttons = gtk_box_new(GTK_ORIENTATION_HORIZONTAL, 8);
    gtk_mail_entry_to = gtk_entry_new();
    gtk_mail_entry_subject = gtk_entry_new();
    GtkWidget *gtk_mail_text_view_scrolled_frame = gtk_frame_new(NULL);
    GtkWidget *gtk_mail_text_view_scrolled = gtk_scrolled_window_new(NULL, NULL);
    GtkWidget *gtk_mail_text_view = gtk_text_view_new();
    gtk_mail_text_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(gtk_mail_text_view));

    gtk_label_set_markup(GTK_LABEL(gtk_mail_label), "<span size=\"xx-large\">Generate from e-mail</span>");
    gtk_widget_set_halign(gtk_mail_label, GTK_ALIGN_START);
    gtk_entry_set_placeholder_text(GTK_ENTRY(gtk_mail_entry_to), "Recipient e-mail address");
    gtk_entry_set_placeholder_text(GTK_ENTRY(gtk_mail_entry_subject), "E-mail subject");
    gtk_container_set_border_width(GTK_CONTAINER(gtk_mail_vertical), 15);
    gtk_text_view_set_left_margin(GTK_TEXT_VIEW(gtk_mail_text_view), 5);
    gtk_text_view_set_right_margin(GTK_TEXT_VIEW(gtk_mail_text_view), 5);
    gtk_text_view_set_pixels_above_lines(GTK_TEXT_VIEW(gtk_mail_text_view), 2);
    gtk_text_view_set_pixels_below_lines(GTK_TEXT_VIEW(gtk_mail_text_view), 2);
    gtk_widget_set_size_request(gtk_mail_text_view_scrolled, -1, 200);
    gtk_text_buffer_set_text(gtk_mail_text_buffer, "E-mail message", -1);

    gtk_box_pack_start(GTK_BOX(gtk_mail_vertical), gtk_mail_label, FALSE, FALSE, 0);
    gtk_box_pack_start(GTK_BOX(gtk_mail_vertical), gtk_mail_entry_to, FALSE, FALSE, 0);
    gtk_box_pack_start(GTK_BOX(gtk_mail_vertical), gtk_mail_entry_subject, FALSE, FALSE, 0);
    gtk_container_add(GTK_CONTAINER(gtk_mail_text_view_scrolled), gtk_mail_text_view);
    gtk_container_add(GTK_CONTAINER(gtk_mail_text_view_scrolled_frame), gtk_mail_text_view_scrolled);
    gtk_box_pack_start(GTK_BOX(gtk_mail_vertical), gtk_mail_text_view_scrolled_frame, FALSE, FALSE, 0);
    gtk_box_pack_end(GTK_BOX(gtk_mail_horizontal_buttons), gtk_mail_button_clear, FALSE, FALSE, 0);
    gtk_box_pack_start(GTK_BOX(gtk_mail_vertical), gtk_mail_horizontal_buttons, FALSE, FALSE, 0);
    gtk_container_add(GTK_CONTAINER(gtk_mail_scrolled), gtk_mail_vertical);

    g_signal_connect(G_OBJECT(gtk_mail_button_clear), "clicked", G_CALLBACK(cb_clicked_mail_clear), NULL);

    return gtk_mail_scrolled;
}
Пример #22
0
static void
setup (void)
{
    GtkTextBuffer *buffer;
    GtkWidget *window;
    GtkWidget *scrolled_window;
    GtkWidget *text_view;
    gsize length = 0;
    char *contents = NULL;

    text_view = g_object_new(GTK_SOURCE_TYPE_VIEW,
                             "show-line-numbers", TRUE,
                             "visible", TRUE,
                             NULL);
    gtk_widget_override_font(GTK_WIDGET(text_view),
                             pango_font_description_from_string("Monospace"));
    buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text_view));
    g_file_get_contents("gb-animation.c", &contents, &length, NULL);
    gtk_text_buffer_set_text(GTK_TEXT_BUFFER(buffer), contents, length);
    g_free(contents);

    scrolled_window = g_object_new(GTK_TYPE_SCROLLED_WINDOW,
                                   "visible", TRUE,
                                   NULL);
    gtk_container_add(GTK_CONTAINER(scrolled_window), text_view);

    window = g_object_new(GTK_TYPE_WINDOW,
                          "default-width", 600,
                          "default-height", 600,
                          "window-position", GTK_WIN_POS_CENTER,
                          "title", "Scroll Test",
                          NULL);
    g_signal_connect(window, "delete-event", gtk_main_quit, NULL);
    gtk_container_add(GTK_CONTAINER(window), scrolled_window);
    gtk_window_present(GTK_WINDOW(window));

    g_timeout_add(500, begin_scroll, text_view);
    g_timeout_add(6000, begin_scroll2, text_view);
    g_timeout_add(10000, begin_scroll3, text_view);
}
Пример #23
0
static void
notebook_switch_page (GtkNotebook *notebook,
                      GtkWidget *page,
                      guint page_num,
                      GucharmapCharmap *charmap)
{
  GucharmapCharmapPrivate *priv = charmap->priv;

  priv->active_page = page_num;

  if (page_num == GUCHARMAP_CHARMAP_PAGE_DETAILS)
    set_details (charmap, gucharmap_chartable_get_active_character (priv->chartable));
  else if (page_num == GUCHARMAP_CHARMAP_PAGE_CHARTABLE)
    {
      GtkTextBuffer *buffer;

      buffer = gtk_text_view_get_buffer (priv->details_view);
      gtk_text_buffer_set_text (buffer, "", 0);
    }

  g_object_notify (G_OBJECT (charmap), "active-page");
}
Пример #24
0
/* affichage des commentaires dans la sous fenetre buffer text*/
void affiche_comment(GtkTextBuffer *buffer, type_noeud_comment *comment)
{
   GtkTextIter iter;

   if (comment == NULL)
   {
      return;
   }
   
   gtk_text_buffer_get_line_count(buffer);

   gtk_text_buffer_set_text(buffer, comment->chaine, -1);

   gtk_text_buffer_get_end_iter(buffer, &iter);
   comment = comment->suiv;

   while (comment != NULL)
   {
      gtk_text_buffer_insert(buffer, &iter, comment->chaine, -1);
      comment = comment->suiv;
   }
}
Пример #25
0
static void
popup_menu_selection_to_comment (GtkMenuItem *menuitem, gpointer storage)
{
	GtkWidget *entry_file, *entry_comment;
	GtkTextBuffer *buffer;
	gint start_sel, end_sel;
	gchar *clip = NULL;

	entry_file = g_object_get_data (storage, "entry_file");
	if (!gtk_editable_get_selection_bounds (GTK_EDITABLE(entry_file), &start_sel, &end_sel))
		return;
	clip = gtk_editable_get_chars (GTK_EDITABLE(entry_file), start_sel, end_sel);

	entry_comment = g_object_get_data (storage, "entry_comment");
	buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (entry_comment));

	gtk_text_buffer_set_text (buffer, clip, -1);

	gtk_widget_grab_focus(GTK_WIDGET(entry_comment));

	g_free(clip);
}
Пример #26
0
void disconnect_goagent(GtkWidget *widget,DATA *data)
{
	GtkTextBuffer *buffer=gtk_text_view_get_buffer(GTK_TEXT_VIEW(data->text));

	if(!data->off)
	{
		message_box(widget,_("No Connected Now!"));
		return;
	}

	/*断开连接设置off开关并杀死所调用的进程*/
	data->off=0;
	kill(data->pid,SIGKILL);
	//while(waitpid(-1,NULL,WNOHANG)!=-1);
	g_idle_remove_by_data(data);

	/*while(gtk_events_pending())
		gtk_main_iteration();*/

	/*清除主界面日志框内容*/
	gtk_text_buffer_set_text(buffer,"",0);
}
Пример #27
0
static void bar_pane_comment_update(PaneCommentData *pcd)
{
	gchar *comment = NULL;
	gchar *orig_comment = NULL;
	gchar *comment_not_null;
	GtkTextBuffer *comment_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(pcd->comment_view));

	orig_comment = text_widget_text_pull(pcd->comment_view);
	comment = metadata_read_string(pcd->fd, pcd->key, METADATA_PLAIN);
	comment_not_null = (comment) ? comment : "";

	if (strcmp(orig_comment, comment_not_null) != 0)
		{
		g_signal_handlers_block_by_func(comment_buffer, bar_pane_comment_changed, pcd);
		gtk_text_buffer_set_text(comment_buffer, comment_not_null, -1);
		g_signal_handlers_unblock_by_func(comment_buffer, bar_pane_comment_changed, pcd);
		}
	g_free(comment);
	g_free(orig_comment);

	gtk_widget_set_sensitive(pcd->comment_view, (pcd->fd != NULL));
}
Пример #28
0
/**
 * gail_text_util_text_setup:
 * @textutil: The #GailTextUtil to be initialized.
 * @text: A gchar* which points to the text to be stored in the GailTextUtil
 *
 * This function initializes the GailTextUtil with the specified character string,
 **/
void
gail_text_util_text_setup (GailTextUtil *textutil,
                           const gchar  *text)
{
  g_return_if_fail (GAIL_IS_TEXT_UTIL (textutil));

  if (textutil->buffer)
    {
      if (!text)
        {
          g_object_unref (textutil->buffer);
          textutil->buffer = NULL;
          return;
        }
    }
  else
    {
      textutil->buffer = gtk_text_buffer_new (NULL);
    }

  gtk_text_buffer_set_text (textutil->buffer, text, -1);
}
Пример #29
0
void
gimp_color_profile_view_set_profile (GimpColorProfileView *view,
                                     GimpColorProfile      profile)
{
  GtkTextBuffer *buffer;
  GtkTextIter    iter;
  gchar         *label;
  gchar         *summary;

  g_return_if_fail (GIMP_IS_COLOR_PROFILE_VIEW (view));

  buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (view));

  gtk_text_buffer_set_text (buffer, "", 0);

  view->priv->profile = profile;

  if (! profile)
    return;

  gtk_text_buffer_get_start_iter (buffer, &iter);

  label   = gimp_lcms_profile_get_label (profile);
  summary = gimp_lcms_profile_get_summary (profile);

  if (label && strlen (label))
    {
      gtk_text_buffer_insert_with_tags_by_name (buffer, &iter,
                                                label, -1,
                                                "strong", NULL);
      gtk_text_buffer_insert (buffer, &iter, "\n", 1);
    }

  if (summary)
    gtk_text_buffer_insert (buffer, &iter, summary, -1);

  g_free (label);
  g_free (summary);
}
Пример #30
0
void send_button_clicked(GtkWidget * widget, gpointer data)
{
	char *text;
    int num = (int) data;
	GtkTextIter start, end;

	gtk_text_buffer_get_bounds(GTK_TEXT_BUFFER(allmsg[num].buffer_down), &start, &end);	/*获得缓冲区开始和结束位置的Iter */
	const GtkTextIter s = start, e = end;
	text = (char *)gtk_text_buffer_get_text(GTK_TEXT_BUFFER(allmsg[num].buffer_down), &s, &e, FALSE);	/*获得文本框缓冲区文本 */
    char send_text[MAXLEN];
    sprintf(send_text, "to %s : ", allmsg[num].to_name);
    strcat(send_text, text);    
    printf("%s\n",send_text);

    client_parse_input(cli, send_text);    //发送信息
    
    sprintf(send_text, "%s : ", cli->name);
    strcat(send_text, text);   
    combochange_log(num, send_text);         //在聊天窗口显示
    
    gtk_text_buffer_set_text(GTK_TEXT_BUFFER(allmsg[num].buffer_down), "", -1);  //清空缓冲区
}