/* Copyright (C) 2001-2002 Kenichi Suto
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* 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.
*/
#include "defs.h"
#include "global.h"
#include "dictbar.h"
#include "statusbar.h"
#include <gdk/gdkx.h>
extern GList *group_list;
extern GtkWidget *combo_group;
void next_dict_group(){
GList *group_item;
DICT_GROUP *group;
group_item = g_list_first(group_list);
while(group_item != NULL){
group = (DICT_GROUP *)(group_item->data);
if(group->active == TRUE){
if(g_list_next(group_item) == NULL){
group_item = g_list_first(group_list);
} else {
group_item = g_list_next(group_item);
}
break;
}
group_item = g_list_next(group_item);
}
if(group_item == NULL)
return;
group = (DICT_GROUP *)(group_item->data);
gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(combo_group)->entry), group->name);
}
void previous_dict_group(){
GList *group_item;
DICT_GROUP *group;
group_item = g_list_first(group_list);
while(group_item != NULL){
group = (DICT_GROUP *)(group_item->data);
if(group->active == TRUE){
if(g_list_previous(group_item) == NULL){
group_item = g_list_last(group_list);
} else {
group_item = g_list_previous(group_item);
}
break;
}
group_item = g_list_next(group_item);
}
if(group_item == NULL)
return;
group = (DICT_GROUP *)(group_item->data);
gtk_entry_set_text(GTK_ENTRY(GTK_COMBO(combo_group)->entry), group->name);
}
extern GtkWidget *dict_box;
void toggle_dictionary(gint number){
GList *children, *child;
GtkWidget *w;
gint idx;
gboolean active;
children = gtk_container_children(GTK_CONTAINER(dict_box));
idx = 0;
child = g_list_first(children);
while(child != NULL){
w = (GtkWidget *)(child->data);
if(GTK_IS_BUTTON(w)){
if((number - 1) == idx){
active = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w));
if(active == TRUE)
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(w), FALSE);
else
gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(w), TRUE);
break;
}
else
idx ++;
}
child = g_list_next(child);
}
}
void toggle_dictionary1(){
toggle_dictionary(1);
}
void toggle_dictionary2(){
toggle_dictionary(2);
}
void toggle_dictionary3(){
toggle_dictionary(3);
}
void toggle_dictionary4(){
toggle_dictionary(4);
}
void toggle_dictionary5(){
toggle_dictionary(5);
}
void toggle_dictionary6(){
toggle_dictionary(6);
}
void toggle_dictionary7(){
toggle_dictionary(7);
}
void toggle_dictionary8(){
toggle_dictionary(8);
}
void toggle_dictionary9(){
toggle_dictionary(9);
}
void toggle_dictionary10(){
toggle_dictionary(10);
}
extern CONTENT_AREA *dict_area;
void go_back(){
history_back(dict_area);
}
void go_forward(){
history_forward(dict_area);
}
void clear_word(){
gtk_entry_set_text(GTK_ENTRY(word_entry), "");
}
void quit(){
exit_program(NULL, NULL);
}
void iconify(){
XIconifyWindow (GDK_DISPLAY (),
GDK_WINDOW_XWINDOW(window->window),
DefaultScreen (GDK_DISPLAY ()));
}
syntax highlighted by Code2HTML, v. 0.9.1