g_signal_connect의 폐해?
Programming/GTK+ 2007. 3. 30. 00:54
왜그런진 모르겠으나..
이상하게 gtk signal을 연결해줄때 쓰는 함수
g_signal_connect 힘수 (또는 그 외에도 많지만은..)
이상하게 인자를 하나만 받아들이게 되어있어서
결국엔 구조체를 만든다음 한꺼번에 인자하나로 넘겨줄수 밖에 없는데
그러다보니...
/*header*/
59 struct st_quit
60 {
61 GtkWidget *window;
62 GtkWidget *terminal;
63 int terminal_number;
64 int *S_term;
65 };
/*main*/
25 static struct st_quit Quit_Data[TERM_LIMIT];
30 static int terminal_onoff[TERM_LIMIT];
51 Quit_Data[terminal_num].S_term=terminal_onoff;
/*func*/
8 //혹시 함수 잘못 불러올까봐서 ...;
9 if(G_st->S_term[G_st->terminal_number]==ON){
10 //받은 위젯 파괴, 그리고 플래그 OFF시킴
11 gtk_widget_destroy(G_st->window);
12 G_st->S_term[G_st->terminal_number]=OFF;
13 }
if(G_st->S_term[G_st->terminal_number]==ON)
라는 복잡한놈으로 변한다..
와 gtk 함수들은(일부?) 는 인자를 여러게 받게 안만들어 놨을까..?
(함수의 갯수가 유한하지만(8개였나??) 그래도 좀 많이 만들어 놓지 불편하잖아..)
이거...한 한달만 안보고 있다가 이거 보면 과연 내가 짜논거 제대로 이해나 할수 있을런지 모르겠다 -_-a
뭐 어쩔수 업지멀.. 호좁이라 이정도 밖에 머리를 못쓰겠는걸,.
(그렇다고 전역변수 쓰기도 그렇고........).
이상하게 gtk signal을 연결해줄때 쓰는 함수
g_signal_connect 힘수 (또는 그 외에도 많지만은..)
이상하게 인자를 하나만 받아들이게 되어있어서
결국엔 구조체를 만든다음 한꺼번에 인자하나로 넘겨줄수 밖에 없는데
그러다보니...
/*header*/
59 struct st_quit
60 {
61 GtkWidget *window;
62 GtkWidget *terminal;
63 int terminal_number;
64 int *S_term;
65 };
/*main*/
25 static struct st_quit Quit_Data[TERM_LIMIT];
30 static int terminal_onoff[TERM_LIMIT];
51 Quit_Data[terminal_num].S_term=terminal_onoff;
/*func*/
8 //혹시 함수 잘못 불러올까봐서 ...;
9 if(G_st->S_term[G_st->terminal_number]==ON){
10 //받은 위젯 파괴, 그리고 플래그 OFF시킴
11 gtk_widget_destroy(G_st->window);
12 G_st->S_term[G_st->terminal_number]=OFF;
13 }
if(G_st->S_term[G_st->terminal_number]==ON)
라는 복잡한놈으로 변한다..
와 gtk 함수들은(일부?) 는 인자를 여러게 받게 안만들어 놨을까..?
(함수의 갯수가 유한하지만(8개였나??) 그래도 좀 많이 만들어 놓지 불편하잖아..)
이거...한 한달만 안보고 있다가 이거 보면 과연 내가 짜논거 제대로 이해나 할수 있을런지 모르겠다 -_-a
뭐 어쩔수 업지멀.. 호좁이라 이정도 밖에 머리를 못쓰겠는걸,.
(그렇다고 전역변수 쓰기도 그렇고........).
'Programming > GTK+' 카테고리의 다른 글
외부 Thread에서 GTK 위젯 제어할시 동기화 문제 해결 (5) | 2010.07.30 |
---|---|
윈도우 메니져 설정 무시하고 윈도우 만들기 (2) | 2007.06.14 |
xlib 에러 해결! (2) | 2007.02.28 |
gtk Thread (2) | 2007.02.27 |
vte를 이용한 간단한 터미널 (2) | 2007.01.14 |