Programming/GTK+
g_signal_connect의 폐해?
Lowid
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
뭐 어쩔수 업지멀.. 호좁이라 이정도 밖에 머리를 못쓰겠는걸,.
(그렇다고 전역변수 쓰기도 그렇고........).