Пример #1
0
static GtkWidget *create_misc_widget(void)
{
  GtkWidget *top_widget = gtk_vbox_new (FALSE, 5);
  gtk_orientable_set_orientation(GTK_ORIENTABLE(top_widget), GTK_ORIENTATION_VERTICAL);

  pack_start_new_button_with_callback(GTK_BOX(top_widget),
      _("Edit Alt-Shift phrases"), G_CALLBACK(cb_alt_shift), NULL);

  pack_start_new_button_with_callback(GTK_BOX(top_widget),
      _("Edit symbols"), G_CALLBACK(cb_symbol_table), NULL);

  if (!hime_status_tray)
  {
    pack_start_new_button_with_callback(GTK_BOX(top_widget),
      _("Toggle Simplified Chinese output"), G_CALLBACK(cb_gb_output_toggle), NULL);

    pack_start_new_button_with_callback(GTK_BOX(top_widget),
      _("Toggle virtual keyboard"), G_CALLBACK (cb_win_kbm_toggle), NULL);
  }

  pack_start_new_button_with_callback(GTK_BOX(top_widget),
    _("Convert clipboard's Simplified Chinese to Traditional Chinese"), G_CALLBACK (cb_gb_translate_toggle), NULL);

  pack_start_new_button_with_callback(GTK_BOX(top_widget),
    _("Lookup phonations of words in clipboard"), G_CALLBACK (cb_juying_learn), NULL);

  GtkWidget *frame_ts = gtk_frame_new (_("Options for Tsin's database"));
  gtk_box_pack_start (GTK_BOX (top_widget), frame_ts, FALSE, FALSE, 5);
  GtkWidget *vbox_ts = gtk_vbox_new (FALSE, 5);
  gtk_orientable_set_orientation(GTK_ORIENTABLE(vbox_ts), GTK_ORIENTATION_VERTICAL);
  gtk_container_add (GTK_CONTAINER (frame_ts), vbox_ts);

  pack_start_new_button_with_callback(GTK_BOX(vbox_ts),
    _("Export phrase database"), G_CALLBACK (cb_ts_export), NULL);

  pack_start_new_button_with_callback(GTK_BOX(vbox_ts),
    _("Import phrase database"), G_CALLBACK (cb_ts_import), NULL);

  pack_start_new_button_with_callback(GTK_BOX(vbox_ts),
    _("Edit phrase database"), G_CALLBACK (cb_ts_edit), NULL);

  pack_start_new_button_with_callback(GTK_BOX(vbox_ts),
    _("Learn phrases in articles"), G_CALLBACK (cb_tslearn), NULL);

  pack_start_new_button_with_callback(GTK_BOX(vbox_ts),
    _("Import global database"), G_CALLBACK (cb_ts_import_sys), NULL);

  int i;
  for (i=0; i < inmdN; i++) {
    INMD *pinmd = &inmd[i];
    if (pinmd->method_type != method_type_MODULE || pinmd->disabled)
      continue;

    HIME_module_callback_functions *f = init_HIME_module_callback_functions(pinmd->filename);
    if (!f)
      continue;

    if (!f->module_setup_window_create) {
      free(f);
      continue;
    }

    char tt[128];
    strcpy(tt, pinmd->cname);
    strcat(tt, _("Configuration"));
    pack_start_new_button_with_callback(GTK_BOX(top_widget),
        tt, G_CALLBACK (f->module_setup_window_create), GINT_TO_POINTER(hime_setup_window_type_utility));
  }

#if 0
  GtkWidget *button_about = gtk_button_new_from_stock (GTK_STOCK_ABOUT);
  gtk_box_pack_start (GTK_BOX (top_widget), button_about, TRUE, TRUE, 5);
  g_signal_connect (G_OBJECT (button_about), "clicked",
                    G_CALLBACK (create_about_window),  NULL);
#endif

  return top_widget;
}
Пример #2
0
static GtkWidget *create_misc_widget(void)
{
  GtkWidget *top_widget = gtk_vbox_new (FALSE, 5);
  gtk_orientable_set_orientation(GTK_ORIENTABLE(top_widget), GTK_ORIENTATION_VERTICAL);

  pack_start_new_button_with_callback(GTK_BOX(top_widget),
      _("alt-shift 片語編輯"), G_CALLBACK(cb_alt_shift), NULL);

  pack_start_new_button_with_callback(GTK_BOX(top_widget),
      _("符號表編輯"), G_CALLBACK(cb_symbol_table), NULL);

  if (!hime_status_tray)
  {
    pack_start_new_button_with_callback(GTK_BOX(top_widget),
      _("啟用/關閉簡體字輸出"), G_CALLBACK(cb_gb_output_toggle), NULL);

    pack_start_new_button_with_callback(GTK_BOX(top_widget),
      _("顯示/隱藏輸入法鍵盤"), G_CALLBACK (cb_win_kbm_toggle), NULL);
  }

  pack_start_new_button_with_callback(GTK_BOX(top_widget),
    _("剪貼區 簡體字->正體字"), G_CALLBACK (cb_gb_translate_toggle), NULL);

  pack_start_new_button_with_callback(GTK_BOX(top_widget),
    _("剪貼區 注音查詢"), G_CALLBACK (cb_juying_learn), NULL);

  GtkWidget *frame_ts = gtk_frame_new (_("詞庫選項"));
  gtk_box_pack_start (GTK_BOX (top_widget), frame_ts, FALSE, FALSE, 5);
  GtkWidget *vbox_ts = gtk_vbox_new (FALSE, 5);
  gtk_orientable_set_orientation(GTK_ORIENTABLE(vbox_ts), GTK_ORIENTATION_VERTICAL);
  gtk_container_add (GTK_CONTAINER (frame_ts), vbox_ts);

  pack_start_new_button_with_callback(GTK_BOX(vbox_ts),
    _("詞庫匯出"), G_CALLBACK (cb_ts_export), NULL);

  pack_start_new_button_with_callback(GTK_BOX(vbox_ts),
    _("詞庫匯入"), G_CALLBACK (cb_ts_import), NULL);

  pack_start_new_button_with_callback(GTK_BOX(vbox_ts),
    _("詞庫編輯"), G_CALLBACK (cb_ts_edit), NULL);

  pack_start_new_button_with_callback(GTK_BOX(vbox_ts),
    _("從文章學習詞"), G_CALLBACK (cb_tslearn), NULL);

  pack_start_new_button_with_callback(GTK_BOX(vbox_ts),
    _("匯入系統的詞庫"), G_CALLBACK (cb_ts_import_sys), NULL);

  int i;
  for (i=0; i < inmdN; i++) {
    INMD *pinmd = &inmd[i];
    if (pinmd->method_type != method_type_MODULE || pinmd->disabled)
      continue;

    HIME_module_callback_functions *f = init_HIME_module_callback_functions(pinmd->filename);
    if (!f)
      continue;

    if (!f->module_setup_window_create) {
      free(f);
      continue;
    }

    char tt[128];
    strcpy(tt, pinmd->cname);
    strcat(tt, _("設定"));
    pack_start_new_button_with_callback(GTK_BOX(top_widget),
        tt, G_CALLBACK (f->module_setup_window_create), GINT_TO_POINTER(hime_setup_window_type_utility));
  }

#if 0
  GtkWidget *button_about = gtk_button_new_from_stock (GTK_STOCK_ABOUT);
  gtk_box_pack_start (GTK_BOX (top_widget), button_about, TRUE, TRUE, 5);
  g_signal_connect (G_OBJECT (button_about), "clicked",
                    G_CALLBACK (create_about_window),  NULL);
#endif

  return top_widget;
}