亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ports.c

?? Aqualung is an advanced music player primarily targeted for the GNU/Linux operating system, but als
?? C
?? 第 1 頁 / 共 2 頁
字號:
/*                                                     -*- linux-c -*-    Copyright (C) 2004 Tom Szilagyi    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., 675 Mass Ave, Cambridge, MA 02139, USA.    $Id: ports.c,v 1.5 2006/08/11 08:04:08 tszilagyi Exp $*/#include <config.h>#ifdef HAVE_JACK#include <errno.h>#include <math.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <unistd.h>#include <gtk/gtk.h>#include <jack/jack.h>#include "common.h"#include "i18n.h"#include "ports.h"#define LIST_WIDTH 200#define LIST_HEIGHT 100extern GtkWidget* gui_stock_label_button(gchar *blabel, const gchar *bstock);extern GtkWidget * main_window;/* JACK data */extern jack_port_t * out_L_port;extern jack_port_t * out_R_port;extern jack_client_t * jack_client;GtkWidget * ports_window = NULL;GtkWidget * nb_outs;GtkWidget * nb_out_labels[MAX_JACK_CLIENTS];GtkWidget * vbox_dl; /* down-left */GtkWidget * vbox_dr; /* down-right */GtkWidget * tree_out_L;GtkWidget * tree_out_R;GtkListStore * store_out_L;GtkListStore * store_out_R;GtkTreeViewColumn * column_out_L;GtkTreeViewColumn * column_out_R;int n_clients;GtkListStore * store_out_nb[MAX_JACK_CLIENTS];gint timeout_tag;int out_selector = 0;void scan_connections(jack_port_t * port, GtkListStore * store);void setup_notebook_out(void);gintports_timeout_callback(gpointer data) {	switch((int)data) {	case 1:		gtk_list_store_clear(store_out_L);		scan_connections(out_L_port, store_out_L);		break;	case 2:		gtk_list_store_clear(store_out_R);		scan_connections(out_R_port, store_out_R);		break;	}	return 0;}intport_window_close(GtkWidget *widget, gpointer * data) {	ports_window = NULL;	return 0;}voidclicked_rescan(GtkWidget * widget, gpointer * data) {	gtk_list_store_clear(store_out_L);	scan_connections(out_L_port, store_out_L);	gtk_list_store_clear(store_out_R);	scan_connections(out_R_port, store_out_R);	/* re-build notebook */	gtk_widget_destroy(nb_outs);	n_clients = 0;	nb_outs = gtk_notebook_new();        gtk_box_pack_start(GTK_BOX(vbox_dr), nb_outs, TRUE, TRUE, 2);	setup_notebook_out();        gtk_widget_show(nb_outs);}voidports_clicked_close(GtkWidget * widget, gpointer * data) {	gtk_widget_destroy(ports_window);	ports_window = NULL;}voidset_active(GtkWidget * widget, int sel) {	GdkColor color_normal;	GdkColor color_active;	GdkColor color_prelight;	if (sel == 0) {		color_normal.red = 40000;		color_normal.green = 40000;		color_normal.blue = 40000;		color_active.red = 30000;		color_active.green = 30000;		color_active.blue = 30000;		color_prelight.red = 50000;		color_prelight.green = 50000;		color_prelight.blue = 50000;	} else {		color_normal.red = 40000;		color_normal.green = 40000;		color_normal.blue = 65535;		color_active.red = 30000;		color_active.green = 30000;		color_active.blue = 45000;		color_prelight.red = 50000;		color_prelight.green = 50000;		color_prelight.blue = 65535;	}	gtk_widget_modify_bg(widget, GTK_STATE_NORMAL, &color_normal);	gtk_widget_modify_bg(widget, GTK_STATE_ACTIVE, &color_active);	gtk_widget_modify_bg(widget, GTK_STATE_PRELIGHT, &color_prelight);}voidclicked_out_L_header(GtkWidget * widget, gpointer * data) {	out_selector = 0;	set_active(GTK_WIDGET(column_out_L->button), 1);	set_active(GTK_WIDGET(column_out_R->button), 0);}voidclicked_out_R_header(GtkWidget * widget, gpointer * data) {	out_selector = 1;	set_active(GTK_WIDGET(column_out_L->button), 0);	set_active(GTK_WIDGET(column_out_R->button), 1);}voidtree_out_nb_selection_changed(GtkObject * tree, gpointer * data) {	GtkTreeIter iter;        GtkTreeModel * model;	GtkTreeSelection * selection;        gchar * str;	const gchar * label;	char fullname[MAXLEN];	selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(tree));        if (gtk_tree_selection_get_selected(selection, &model, &iter)) {                gtk_tree_model_get(model, &iter, 0, &str, -1);		label = gtk_label_get_text(GTK_LABEL(nb_out_labels[(int)data]));		sprintf(fullname, "%s:%s", label, str);		g_free(str);		if (out_selector == 0) {			if (jack_connect(jack_client, jack_port_name(out_L_port), fullname)) {				fprintf(stderr, "Cannot connect %s to out_L. "					"These ports are probably already connected.\n", fullname);			} else {				gtk_list_store_clear(store_out_L);				scan_connections(out_L_port, store_out_L);				out_selector = 1;				set_active(GTK_WIDGET(column_out_L->button), 0);				set_active(GTK_WIDGET(column_out_R->button), 1);			}		} else {			if (jack_connect(jack_client, jack_port_name(out_R_port), fullname)) {				fprintf(stderr, "Cannot connect %s to out_R. "					"These ports are probably already connected.\n", fullname);			} else {				gtk_list_store_clear(store_out_R);				scan_connections(out_R_port, store_out_R);				out_selector = 0;				set_active(GTK_WIDGET(column_out_L->button), 1);				set_active(GTK_WIDGET(column_out_R->button), 0);			}		}        }}voidtree_out_L_selection_changed(GtkTreeSelection * selection, gpointer * data) {	GtkTreeIter iter;        GtkTreeModel * model;        gchar * str;	int res;        if (gtk_tree_selection_get_selected(selection, &model, &iter)) {                gtk_tree_model_get(model, &iter, 0, &str, -1);		if ((res = jack_disconnect(jack_client, jack_port_name(out_L_port), str)) != 0) {			fprintf(stderr, "ERROR: jack_disconnect() returned %d\n", res);		}		g_free(str);		timeout_tag = g_timeout_add(100, ports_timeout_callback, (gpointer)1);        }}voidtree_out_R_selection_changed(GtkTreeSelection *selection, gpointer * data) {	GtkTreeIter iter;        GtkTreeModel * model;        gchar * str;	int res;        if (gtk_tree_selection_get_selected(selection, &model, &iter)) {                gtk_tree_model_get(model, &iter, 0, &str, -1);		if ((res = jack_disconnect(jack_client, jack_port_name(out_R_port), str)) != 0) {			fprintf(stderr, "ERROR: jack_disconnect() returned %d\n", res);		}		g_free(str);		timeout_tag = g_timeout_add(100, ports_timeout_callback, (gpointer)2);        }}voidclear_outs(GtkWidget * widget, gpointer * data) {	const char ** ports;	int i = 0;	int res;	ports = jack_port_get_connections(out_L_port);	if (ports) {		while (ports[i] != NULL) {			if ((res = jack_disconnect(jack_client, jack_port_name(out_L_port), ports[i])) != 0) {				fprintf(stderr, "ERROR: jack_disconnect() returned %d\n", res);			}			i++;		}		free(ports);	}	i = 0;	ports = jack_port_get_connections(out_R_port);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产精品麻豆| 国产精品理伦片| 波多野结衣中文字幕一区二区三区| 亚洲天堂福利av| 日韩欧美视频在线| 色呦呦国产精品| 国产伦精品一区二区三区在线观看 | 丰满白嫩尤物一区二区| 亚洲午夜国产一区99re久久| 日本一区二区三级电影在线观看| 91.com在线观看| 在线免费观看一区| 成人午夜av电影| 国产一区福利在线| 毛片一区二区三区| 亚洲一二三四久久| 中文字幕亚洲精品在线观看| 2023国产精品自拍| 欧美一区二区三区免费观看视频| 色嗨嗨av一区二区三区| 不卡区在线中文字幕| 狠狠色狠狠色综合日日91app| 五月婷婷久久综合| 一二三区精品福利视频| 亚洲欧洲国产日韩| 国产精品人成在线观看免费| 国产亚洲综合在线| 2021久久国产精品不只是精品| 欧美一区二区不卡视频| 在线播放日韩导航| 欧美三级日韩三级国产三级| 91国产精品成人| 99r精品视频| 9久草视频在线视频精品| 国产成人丝袜美腿| 国产福利一区二区三区视频在线| 激情综合色丁香一区二区| 日韩avvvv在线播放| 亚洲成人综合在线| 亚洲成人综合网站| 亚洲成av人片一区二区梦乃| 亚洲国产精品视频| 亚洲成人高清在线| 天堂影院一区二区| 日韩黄色免费电影| 久久精品国产一区二区三 | 欧美在线|欧美| 在线视频欧美精品| 欧美色综合影院| 欧美三级在线视频| 激情成人综合网| 日韩综合在线视频| 奇米在线7777在线精品 | av高清不卡在线| 91女人视频在线观看| 在线观看日韩av先锋影音电影院| 色成年激情久久综合| 欧洲av一区二区嗯嗯嗯啊| 欧美日韩一区二区三区高清 | 日韩一级片在线播放| 91精品国产综合久久久久久久久久 | 天天综合网 天天综合色| 亚洲图片一区二区| 免费黄网站欧美| 国产在线看一区| 91片黄在线观看| 欧美日本免费一区二区三区| 日韩欧美区一区二| 中文字幕第一区综合| 亚洲精品一二三| 免费人成黄页网站在线一区二区| 国产精品原创巨作av| 99国产精品久久久久久久久久 | 欧美一级高清片在线观看| 精品国产一区二区精华| 国产精品你懂的| 亚洲第四色夜色| 国产精品小仙女| 在线免费视频一区二区| 精品国产免费一区二区三区香蕉| 国产精品色在线观看| 亚洲成av人影院| 国产一区三区三区| 在线免费观看日本一区| 精品久久久久久久久久久久久久久久久 | 国产性做久久久久久| 亚洲丝袜制服诱惑| 青青青伊人色综合久久| av午夜精品一区二区三区| 欧美精选午夜久久久乱码6080| 国产欧美一区二区精品性色 | 国产aⅴ精品一区二区三区色成熟| 色吊一区二区三区| 久久精品亚洲精品国产欧美 | 高清久久久久久| 717成人午夜免费福利电影| 亚洲国产精品99久久久久久久久| 五月激情六月综合| 成人黄色小视频在线观看| 欧美一级久久久久久久大片| 亚洲精品午夜久久久| 国产精品99久久久久久宅男| 欧美精品 日韩| 亚洲日本一区二区| 国产传媒日韩欧美成人| 91精品欧美久久久久久动漫 | 欧美性受xxxx黑人xyx| 久久精品一二三| 蜜臂av日日欢夜夜爽一区| 91小视频免费观看| 欧美精品一区二区三区高清aⅴ | 久久久久国产成人精品亚洲午夜 | 成人av在线播放网站| 日韩视频免费观看高清完整版 | 国产成人啪午夜精品网站男同| 欧美一区二区三区影视| 夜夜精品浪潮av一区二区三区| 成人做爰69片免费看网站| 精品久久国产字幕高潮| 手机精品视频在线观看| 欧美怡红院视频| 中文字幕一区二区在线观看| 国产69精品久久久久毛片| 精品久久五月天| 精品一区二区国语对白| 欧美一区二区久久久| 午夜影视日本亚洲欧洲精品| 欧美在线综合视频| 亚洲免费在线电影| 99精品热视频| 综合久久久久久| 99re这里只有精品6| 成人欧美一区二区三区| 成人免费视频免费观看| 久久综合av免费| 国产精品香蕉一区二区三区| 国产色产综合产在线视频| 国内外成人在线| 国产午夜亚洲精品午夜鲁丝片| 国产伦理精品不卡| 国产欧美一区二区精品忘忧草| 国产成人精品www牛牛影视| 久久久九九九九| 成人av一区二区三区| 亚洲视频在线观看一区| 色系网站成人免费| 亚洲综合一区二区| 欧美日韩精品一二三区| 天堂精品中文字幕在线| 日韩欧美在线影院| 国内精品伊人久久久久av一坑| 久久久久久久精| www.欧美日韩| 伊人一区二区三区| 欧美男男青年gay1069videost| 免费观看在线综合| 久久品道一品道久久精品| 成人综合在线视频| 一区二区三国产精华液| 91麻豆精品国产91久久久资源速度 | 欧美三级中文字幕| 免费成人在线观看| 久久蜜桃av一区精品变态类天堂| 成人一区二区三区中文字幕| ●精品国产综合乱码久久久久 | 国产日韩欧美精品在线| av中文字幕亚洲| 亚洲成人av免费| 欧美成人video| 成人18视频在线播放| 亚洲成人中文在线| 欧美成人综合网站| www.99精品| 青青草97国产精品免费观看无弹窗版 | 国产午夜精品久久久久久免费视 | 欧美亚洲动漫制服丝袜| 美女视频免费一区| 国产精品美女久久久久久久久久久 | 国产清纯白嫩初高生在线观看91| 一本久久精品一区二区| 蜜桃久久久久久久| 国产精品福利av| 日韩一二三区视频| 99r精品视频| 韩国精品主播一区二区在线观看 | 亚洲综合一区二区| 精品国产一区a| 欧美亚洲日本一区| 国产麻豆精品一区二区| 亚洲一区二区视频在线观看| 2020国产精品久久精品美国| 欧美亚州韩日在线看免费版国语版| 国产美女在线精品| 午夜精品福利一区二区三区av| 国产欧美日韩不卡免费| 欧美一卡在线观看| 色偷偷成人一区二区三区91| 国产一区欧美二区| 日韩中文字幕一区二区三区| 成人欧美一区二区三区|