コード例 #1
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetPandaTable(
	GtkWidget	*widget,
	WidgetData	*wdata,
	_Table		*data)
{
	int				j;
	char			**rowdata;
	char			**fgrowdata;
	char			**bgrowdata;

ENTER_FUNC;
	SetCommon(widget,wdata);
	gtk_panda_table_set_xim_enabled(GTK_PANDA_TABLE(widget),data->ximenabled);
	for	( j = 0 ; j < g_list_length(data->tabledata) ; j ++ ) {
		rowdata = g_list_nth_data(data->tabledata,j);
		gtk_panda_table_set_row(GTK_PANDA_TABLE(widget),j,rowdata);
	}
	for	( j = 0 ; j < g_list_length(data->fgdata) ; j ++ ) {
		fgrowdata = g_list_nth_data(data->fgdata,j);
		gtk_panda_table_set_fgcolor(GTK_PANDA_TABLE(widget),j,fgrowdata);
	}
	for	( j = 0 ; j < g_list_length(data->bgdata) ; j ++ ) {
		bgrowdata = g_list_nth_data(data->bgdata,j);
		gtk_panda_table_set_bgcolor(GTK_PANDA_TABLE(widget),j,bgrowdata);
	}
	if (data->trow >= 0 && data->tcolumn >= 0) {
		gtk_panda_table_moveto(GTK_PANDA_TABLE(widget), 
			data->trow, data->tcolumn, TRUE, data->trowattr, 0.0); 
	} else {
		gtk_panda_table_stay(GTK_PANDA_TABLE(widget));
	}
	_AddChangedWidget(widget);
LEAVE_FUNC;
}
コード例 #2
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetFileEntry(
	GtkWidget			*widget,
	WidgetData	*wdata,
	_FileEntry			*data)
{
static GHashTable		*connectlist = NULL;

	GtkPandaFileEntry 	*fentry;
	GtkWidget			*subWidget;
	WidgetData			*subdata;
	char				*longname;
	char				*folder;

ENTER_FUNC;

	SetCommon(widget,wdata);
	fentry = GTK_PANDA_FILE_ENTRY(widget);
	g_return_if_fail(data->binary != NULL);
	longname = (char *)glade_get_widget_long_name(widget);

	if (connectlist == NULL) {
		connectlist = NewNameHash();
	}
    if (g_hash_table_lookup(connectlist, longname) == NULL) {
		g_hash_table_insert(connectlist, longname, longname);
		g_signal_connect_after(G_OBJECT(widget), "done_action", 
			G_CALLBACK(SavePreviousFolder), NULL);
	}

	folder = GetWidgetCache(longname);
	if (folder == NULL) {
		folder = "";
	}
	gtk_panda_file_entry_set_folder(fentry, folder);

	if (LBS_Size(data->binary) > 0) {
		//download
		gtk_panda_file_entry_set_mode(fentry, 
			GTK_FILE_CHOOSER_ACTION_SAVE);
		gtk_panda_file_entry_set_data(fentry,
			LBS_Size(data->binary), LBS_Body(data->binary));
		//set subwidget
		subdata = GetWidgetData(data->subname);
		subWidget = GetWidgetByLongName(data->subname);
		if (subdata != NULL || subWidget != NULL) {
			SetEntry(subWidget, subdata,(_Entry *)subdata->attrs);
		}
		g_signal_emit_by_name(G_OBJECT(widget), "browse_clicked", NULL);
	} else {
		//upload
		gtk_panda_file_entry_set_mode(GTK_PANDA_FILE_ENTRY(widget), 
			GTK_FILE_CHOOSER_ACTION_OPEN);
	}
LEAVE_FUNC;
}
コード例 #3
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetScrolledWindow(
	GtkWidget					*widget,
	WidgetData	*wdata,
	_ScrolledWindow				*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
LEAVE_FUNC;
}
コード例 #4
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetFrame(
	GtkWidget		*widget,
	WidgetData	*wdata,
	_Frame			*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	gtk_frame_set_label(GTK_FRAME(widget),data->label);
LEAVE_FUNC;
}
コード例 #5
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetPandaPreview(
	GtkWidget	*widget,
	WidgetData	*wdata,
	_PREVIEW	*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	gtk_panda_pdf_set(GTK_PANDA_PDF(widget), 
		LBS_Size(data->binary), LBS_Body(data->binary));
LEAVE_FUNC;
}
コード例 #6
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetPandaTimer(
	GtkWidget	*widget,
	WidgetData	*wdata,
	_Timer		*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	gtk_panda_timer_set(GTK_PANDA_TIMER(widget),
		data->duration);
LEAVE_FUNC;
}
コード例 #7
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetPandaHTML(
	GtkWidget		*widget,
	WidgetData	*wdata,
	_HTML			*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	if (data->uri != NULL) {
		gtk_panda_html_set_uri (GTK_PANDA_HTML(widget), data->uri);
	}
LEAVE_FUNC;
}
コード例 #8
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetPandaCombo(
	GtkWidget	*widget,
	WidgetData	*wdata,
	_Combo		*data)
{
	GtkPandaCombo	*combo;

ENTER_FUNC;
	SetCommon(widget,wdata);
	combo = GTK_PANDA_COMBO(widget);
	gtk_panda_combo_set_popdown_strings(combo,data->itemdata);
LEAVE_FUNC;
}
コード例 #9
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetNotebook(
	GtkWidget			*widget,
	WidgetData	*wdata,
	_Notebook			*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	if (!fV47) {
		g_object_set_data(G_OBJECT(widget),"pageno",
			GINT_TO_POINTER(data->pageno));
	}
	gtk_notebook_set_current_page(GTK_NOTEBOOK(widget),data->pageno);
LEAVE_FUNC;
}
コード例 #10
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetCalendar(
	GtkWidget			*widget,
	WidgetData	*wdata,
	_Calendar			*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	if (data->year > 0) {
		gtk_calendar_select_month(GTK_CALENDAR(widget),
			data->month - 1, data->year);
		gtk_calendar_select_day(GTK_CALENDAR(widget),data->day);
	}
LEAVE_FUNC;
}
コード例 #11
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetColorButton(
	GtkWidget		*widget,
	WidgetData		*wdata,
	_ColorButton	*data)
{
	GtkColorButton 	*cb;
	GdkColor color;
ENTER_FUNC;
	SetCommon(widget,wdata);
	cb = GTK_COLOR_BUTTON(widget);
	if (gdk_color_parse(data->color,&color)) {
		gtk_color_button_set_color(cb,&color);
	}
LEAVE_FUNC;
}
コード例 #12
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetProgressBar(
	GtkWidget				*widget,
	WidgetData	*wdata,
	_ProgressBar			*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
#ifdef LIBGTK_3_0_0
	gtk_panda_progress_bar_set_value(
      GTK_PANDA_PROGRESS_BAR(widget),data->value);
#else
	gtk_progress_set_value(GTK_PROGRESS(widget),data->value);
#endif
LEAVE_FUNC;
}
コード例 #13
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetNumberEntry(
	GtkWidget		*widget,
	WidgetData	*wdata,
	_NumberEntry	*data)
{
	Numeric	value;

ENTER_FUNC;
	SetCommon(widget,wdata);
	g_object_set(G_OBJECT(widget),"editable",data->editable,NULL);
	value = FixedToNumeric(data->fixed);
	gtk_number_entry_set_value(GTK_NUMBER_ENTRY(widget), value);
	NumericFree(value);
LEAVE_FUNC;
}
コード例 #14
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetPandaCList(
	GtkWidget	*widget,
	WidgetData	*wdata,
	_CList		*data)
{
	int j;
	char **rdata;

ENTER_FUNC;
	SetCommon(widget,wdata);

	// items
	gtk_widget_hide(widget);
	gtk_panda_clist_set_rows(GTK_PANDA_CLIST(widget),data->count);
	for	( j = 0 ; j < g_list_length(data->clistdata) ; j ++ ) {
		if (j < data->count) {
			rdata = g_list_nth_data(data->clistdata,j);
			gtk_panda_clist_set_row(GTK_PANDA_CLIST(widget),j,rdata);
		}
	}
	if (data->fgcolors != NULL) {
		for	(j = 0;data->fgcolors[j] != NULL;j ++) {
			gtk_panda_clist_set_fgcolor(GTK_PANDA_CLIST(widget),j,data->fgcolors[j]);
		}
	}
	if (data->bgcolors != NULL) {
		for	(j = 0;data->bgcolors[j] != NULL;j ++) {
			gtk_panda_clist_set_bgcolor(GTK_PANDA_CLIST(widget),j,data->bgcolors[j]);
		}
	}
	gtk_widget_show(widget);
	for	( j = 0 ; data->states[j] != NULL ; j ++ ) {
		if (j < data->count) {
			if (*(data->states[j]) == 'T') {
				gtk_panda_clist_select_row(GTK_PANDA_CLIST(widget),j,0);
			} else {
				gtk_panda_clist_unselect_row(GTK_PANDA_CLIST(widget),j,0);
			}
		}
	}
	if (data->count > 0 && data->row < data->count) {
		gtk_panda_clist_moveto(GTK_PANDA_CLIST(widget), 
			data->row, 0, data->rowattr, 0.0); 
	}
LEAVE_FUNC;
}
コード例 #15
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetText(
	GtkWidget	*widget,
	WidgetData	*wdata,
	_Text		*data)
{
	GtkTextBuffer	*buffer;
	GtkTextIter		iter;
ENTER_FUNC;
	SetCommon(widget,wdata);
	buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(widget));
	gtk_text_buffer_set_text(buffer, data->text, strlen(data->text));
	gtk_text_view_get_iter_at_location(GTK_TEXT_VIEW(widget), &iter, 0, 0);
	gtk_text_view_scroll_to_iter(GTK_TEXT_VIEW(widget), &iter, 
		0.0, TRUE, 0.0, 0.0);
LEAVE_FUNC;
}
コード例 #16
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetButton(
	GtkWidget			*widget,
	WidgetData	*wdata,
	_Button				*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	if (data->label != NULL) {
		SetWidgetLabelRecursive(widget,data->label);
	}
	if (data->have_button_state == TRUE) {
		gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(widget), 
			data->button_state);
	}
LEAVE_FUNC;
}
コード例 #17
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetLabel(
	GtkWidget		*widget,
	WidgetData	*wdata,
	_Label			*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	if (data->text != NULL) {
		if (pango_parse_markup(data->text,-1,0,NULL,NULL,NULL,NULL)) {
			gtk_label_set_markup(GTK_LABEL(widget),data->text);
		} else {
			gtk_label_set_text(GTK_LABEL(widget),data->text);
		}
	}
LEAVE_FUNC;
}
コード例 #18
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetPandaDownload(
	GtkWidget	*widget,
	WidgetData	*wdata,
	_Download	*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	g_return_if_fail(data->binary != NULL);
	if (LBS_Size(data->binary) > 0) {
		ShowDownloadDialog(widget,
			data->filename,
			data->description,
			data->binary);
	}
LEAVE_FUNC;
}
コード例 #19
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static void
SetPixmap(
	GtkWidget			*widget,
	WidgetData	*wdata,
	_Pixmap				*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	if ( LBS_Size(data->binary) <= 0) {
		gtk_widget_hide(widget); 
	} else {
		gtk_widget_show(widget); 
		gtk_panda_pixmap_set_image(GTK_PANDA_PIXMAP(widget), 
			(gchar*)LBS_Body(data->binary),(gsize)LBS_Size(data->binary));
	}
LEAVE_FUNC;
}
コード例 #20
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetEntry(
	GtkWidget		*widget,
	WidgetData		*wdata,
	_Entry			*data)
{
ENTER_FUNC;
	SetCommon(widget,wdata);
	g_object_set(G_OBJECT(widget),"editable",data->editable,NULL);
	if (strcmp (gtk_entry_get_text(GTK_ENTRY(widget)), data->text)) {
		gtk_entry_set_text(GTK_ENTRY(widget), data->text);
	}
	if (!gtk_widget_has_focus(widget)
		&& (gtk_editable_get_position (GTK_EDITABLE(widget)) != 0)) {
		gtk_editable_set_position (GTK_EDITABLE(widget), 0);
	}
LEAVE_FUNC;
}
コード例 #21
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetWindow(
	GtkWidget			*widget,
	WidgetData	*wdata,
	_Window				*data)
{
ENTER_FUNC;
#if 0
	SetCommon(widget,wdata);
#endif
	if (data->title != NULL && strlen(data->title) > 0) {
		SetSessionTitle(data->title);
		SetTitle(TopWindow);
	}
	if (data->summary != NULL && strlen(data->summary) > 0 &&
		data->body != NULL && strlen(data->body) > 0) {
		Notify(data->summary,data->body,data->icon,data->timeout);
	}
LEAVE_FUNC;
}
コード例 #22
0
ファイル: widgetOPS.c プロジェクト: authorNari/panda
static	void
SetFileChooserButton(
	GtkWidget			*widget,
	WidgetData			*wdata,
	_FileChooserButton	*data)
{
	GtkFileChooserButton 	*fcb;
	gchar *folder;
	char *longname;
ENTER_FUNC;
	SetCommon(widget,wdata);
	fcb = GTK_FILE_CHOOSER_BUTTON(widget);
	gtk_file_chooser_unselect_all(GTK_FILE_CHOOSER(fcb));
	longname = (char *)glade_get_widget_long_name(widget);
	folder = GetWidgetCache(longname);
	if (folder == NULL) {
		folder = "";
	}
	gtk_file_chooser_set_current_folder(GTK_FILE_CHOOSER(fcb),folder);
	_AddChangedWidget(widget);
LEAVE_FUNC;
}
コード例 #23
0
ファイル: STEEL.HPP プロジェクト: tchv71/ScadViewer
void           SetSteelData( STEEL_DATA &SD ) { SetCommon(&SD);  };