00001 #include<glib.h>
00002 #include<gtk/gtk.h>
00003 #include<string.h>
00004 #include<stdlib.h>
00005 #include<stdio.h>
00006 #include <mysql/mysql.h>
00007
00015 MYSQL *connection1,*connection2;
00016 MYSQL_RES *result;
00017 MYSQL_ROW sqlrow;
00018
00019 int counter=0;
00020 char user[100];
00021 char ans[100],subans[100];
00022 char n[10];
00023 char r[100];
00024 char temp[100];
00025 char u[100];
00026 char p[100];
00027
00028
00034 void create_database()
00035 {
00036 int res,flg=0;
00037 connection1 = mysql_init(NULL);
00038 if (mysql_real_connect (connection1, "localhost", "user1", "project", "kidsquiz", 0,NULL, 0))
00039 {
00040 printf ("Connection successful\n");
00041
00042 res=mysql_query(connection1,"select 'quiz' from information_schema.tables where table_schema='kidsquiz'");
00043 if(res)
00044 {
00045 printf("Command failed");
00046 }
00047 else
00048 {
00049 result=mysql_use_result(connection1);
00050 while((sqlrow=mysql_fetch_row(result)))
00051 {
00052 flg=1;
00053 }
00054
00055 mysql_free_result(result);
00056 }
00057
00058 if(flg==0)
00059 {
00060 res = mysql_query (connection1, "create table quiz(roll_number varchar(10),name varchar(50),username varchar(50),password varchar(20),level1 varchar(50),level2 varchar(50),score integer)");
00061 if (res==0)
00062 {
00063 printf ("Table created successfully.\n");
00064 }
00065 else
00066 {
00067 fprintf (stderr, "Could not create table as %d: %s\n",mysql_errno (connection1),mysql_error (connection1));
00068 mysql_close (connection1);
00069 exit(EXIT_FAILURE);
00070 }
00071 }
00072
00073 }
00074 else
00075 {
00076 fprintf (stderr, "Connection failed\n");
00077 if (mysql_errno (connection1))
00078 {
00079 printf ( " \nConnection error");
00080 }
00081 }
00082 }
00083
00084
00089 void display_row ()
00090 {
00091 unsigned int field_count;
00092 field_count = 0;
00093 counter=1;
00094 printf("\n<");
00095 while (field_count < mysql_field_count (connection1))
00096 {
00097 if(field_count==0)
00098 {
00099 strcpy(temp,sqlrow[0]);
00100 break;
00101 }
00102
00103 }
00104 printf (">\n");
00105 }
00106
00107 static gboolean close_application( GtkWidget *widget,
00108 GdkEvent *event,
00109 gpointer data )
00110 {
00111 gtk_main_quit ();
00112 return FALSE;
00113 }
00114
00115
00116 GtkWidget *window;
00117 GtkWidget *button;
00118 GtkWidget *table;
00119 GtkWidget *entry;
00120 GtkWidget *entry_username,*entry_password;
00121 GtkWidget *label;
00122 GtkWidget *check;
00123 GtkWidget *entry_name,*entry_roll,*entry_usernamer,*entry_passwordr;
00124
00125
00126
00127 void destroy( GtkWidget *widget,
00128 gpointer data )
00129 {
00130 gtk_main_quit();
00131 }
00132
00133
00134
00135 char option_quiz1[50],option_quiz1_1[50],option_quiz1_2[50],option_quiz1_3[50],option_quiz1_4[50];
00136
00137
00138
00145 void answer_quiz1(GtkWidget *widget1, gpointer data)
00146 {
00147 int i=0, a;
00148
00149 GtkWidget *dialog;
00150
00151 if(strcmp(option_quiz1, "14th November")==0)
00152 {
00153 i++;
00154 }
00155
00156 if(strcmp(option_quiz1_1, "15th August 1947")==0)
00157 {
00158 i++;
00159 }
00160
00161 if(strcmp(option_quiz1_2, "Slow and Steady loses the race")==0)
00162 {
00163 i++;
00164 }
00165
00166 if(strcmp(option_quiz1_3, "Himachal Pradesh - Manali")==0)
00167 {
00168 i++;
00169 }
00170
00171 if(strcmp(option_quiz1_4, "Madagascar")==0)
00172 {
00173 i++;
00174 }
00175
00176
00177 if(i==0)
00178 a=0;
00179
00180 if(i==1)
00181 a=20;
00182
00183 if(i==2)
00184 a=40;
00185
00186 if(i==3)
00187 a=60;
00188
00189 if(i==4)
00190 a=80;
00191
00192 if(i==5)
00193 a=100;
00194
00195
00196 dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "Username --> %s Quiz --> %s Subquiz --> %s Score --> %d percent",user,ans,subans,a);
00197 gtk_dialog_run (GTK_DIALOG (dialog));
00198
00199 int return_value;
00200 char qry[100],qry1[100],l1[50],l2[50];
00201
00202 sprintf(qry,"select * from quiz where roll_number='%s'",temp);
00203
00204 return_value=mysql_query(connection1,qry);
00205 if(return_value)
00206 {
00207 printf("Select command failed");
00208 }
00209 else
00210 {
00211 result=mysql_use_result(connection1);
00212 if(result)
00213 {
00214 while((sqlrow=mysql_fetch_row(result)))
00215 {
00216 display_row();
00217 strcpy(l1,sqlrow[4]);
00218 strcpy(l2,sqlrow[5]);
00219
00220
00221 sprintf(qry1,"update quiz set level1='%s',level2='%s',score=%d where roll_number='%s'",ans,subans,a,temp);
00222
00223 }
00224
00225 }
00226 mysql_free_result(result);
00227 }
00228
00229
00230 int re=0;
00231 re=mysql_query(connection1,qry1);
00232 if(re==0)
00233 printf("Update succeded!!");
00234
00235 if(return_value)
00236 g_print("Update Failed");
00237
00238
00239 gtk_widget_destroy (dialog);
00240 }
00241
00242 void callback_quiz1(GtkWidget *widget, gpointer data)
00243 {
00244 strcpy(option_quiz1, (char *)data);
00245
00246 }
00247
00248 void callback_quiz1_1(GtkWidget *widget, gpointer data)
00249 {
00250 strcpy(option_quiz1_1, (char *)data);
00251
00252 }
00253
00254 void callback_quiz1_2(GtkWidget *widget, gpointer data)
00255 {
00256 strcpy(option_quiz1_2, (char *)data);
00257
00258 }
00259
00260 void callback_quiz1_3(GtkWidget *widget, gpointer data)
00261 {
00262 strcpy(option_quiz1_3, (char *)data);
00263
00264 }
00265
00266 void callback_quiz1_4(GtkWidget *widget, gpointer data)
00267 {
00268 strcpy(option_quiz1_4, (char *)data);
00269
00270 }
00271
00272
00278 void create_quiz1()
00279 {
00280
00281 static GtkWidget *window;
00282
00283 GtkWidget *button;
00284 GtkWidget *question;
00285 GtkWidget *scrolled_window;
00286 GtkWidget *table;
00287
00288
00289 window = gtk_dialog_new ();
00290 gtk_signal_connect (GTK_OBJECT (window), "destroy", (GtkSignalFunc) destroy, NULL);
00291 gtk_window_set_title (GTK_WINDOW (window), "Quiz1");
00292 gtk_container_set_border_width (GTK_CONTAINER (window), 0);
00293 gtk_widget_set_usize(window, 300, 300);
00294
00295
00296 scrolled_window = gtk_scrolled_window_new (NULL, NULL);
00297
00298 gtk_container_set_border_width (GTK_CONTAINER (scrolled_window), 10);
00299
00300
00301
00302
00303
00304
00305 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
00306
00307
00308 gtk_box_pack_start (GTK_BOX (GTK_DIALOG(window)->vbox), scrolled_window, TRUE, TRUE, 0);
00309 gtk_widget_show (scrolled_window);
00310
00311
00312 table = gtk_table_new (10, 10, FALSE);
00313
00314
00315 gtk_table_set_row_spacings (GTK_TABLE (table), 45);
00316 gtk_table_set_col_spacings (GTK_TABLE (table), 1);
00317
00318
00319 gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrolled_window), table);
00320 gtk_widget_show (table);
00321
00322
00323 question=gtk_label_new("1. Which of the following is the Children's Day in India?");
00324 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 1);
00325 gtk_widget_show(question);
00326
00327 button = gtk_radio_button_new_with_label (NULL, "14th November");
00328 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 2);
00329 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1), (gpointer) "14th November");
00330 gtk_widget_show (button);
00331
00332 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "15th December");
00333 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0,3);
00334 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1), (gpointer) "15th December");
00335 gtk_widget_show (button);
00336
00337 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "14th July");
00338 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 4);
00339 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1), (gpointer) "14th July");
00340 gtk_widget_show (button);
00341
00342 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "15th May");
00343 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 5);
00344 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1), (gpointer) "15th May");
00345 gtk_widget_show (button);
00346
00347 question=gtk_label_new("2. When was the Indian Independence Day?");
00348 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 6);
00349 gtk_widget_show(question);
00350
00351 button = gtk_radio_button_new_with_label (NULL, "15th August 1947");
00352 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 7);
00353 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_1), (gpointer) "15th August 1947");
00354 gtk_widget_show (button);
00355
00356 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "31st August 1957");
00357 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 8);
00358 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_1), (gpointer) "31st August 1957");
00359 gtk_widget_show (button);
00360
00361 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "23rd September 1947");
00362 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 9);
00363 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_1), (gpointer) "23rd September 1947");
00364 gtk_widget_show (button);
00365
00366 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "25th December 1957");
00367 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 10);
00368 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_1), (gpointer) "25th December 1957");
00369 gtk_widget_show (button);
00370
00371 question=gtk_label_new("3.Which proverb is WRONG?");
00372 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 11);
00373 gtk_widget_show(question);
00374
00375 button = gtk_radio_button_new_with_label (NULL, "Failure is the stepping stone to success");
00376 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 12);
00377 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_2), (gpointer) "Failure is the stepping stone to success");
00378 gtk_widget_show (button);
00379
00380 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Honesty is the best policy");
00381 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 13);
00382 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_2), (gpointer) "Honesty is the best policy");
00383 gtk_widget_show (button);
00384
00385 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Rome was not built in a day");
00386 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 14);
00387 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_2), (gpointer) "Rome was not built in a day");
00388 gtk_widget_show (button);
00389
00390 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Slow and Steady loses the race");
00391 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 15);
00392 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_2), (gpointer) "Slow and Steady loses the race");
00393 gtk_widget_show (button);
00394
00395 question=gtk_label_new("4. Which Indian state has the wrong capital city match?");
00396 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 16);
00397 gtk_widget_show(question);
00398
00399 button = gtk_radio_button_new_with_label (NULL, "Himachal Pradesh - Manali");
00400 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 17);
00401 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_3), (gpointer) "Himachal Pradesh - Manali");
00402 gtk_widget_show (button);
00403
00404 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Rajasthan - Jaipur");
00405 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 18);
00406 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_3), (gpointer) "Rajasthan - Jaipur");
00407 gtk_widget_show (button);
00408
00409 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Punjab - Chandigarh");
00410 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 19);
00411 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_3), (gpointer) "Punjab - Chandigarh");
00412 gtk_widget_show (button);
00413
00414 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Andhra Pradesh - Hyderabad");
00415 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 20);
00416 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_3), (gpointer) "Andhra Pradesh - Hyderabad");
00417 gtk_widget_show (button);
00418
00419 question=gtk_label_new("5. Which of the following is NOT a continent?");
00420 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 21);
00421 gtk_widget_show(question);
00422
00423 button = gtk_radio_button_new_with_label (NULL, "Africa");
00424 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 22);
00425 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_4), (gpointer) "Africa");
00426 gtk_widget_show (button);
00427
00428 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Antartica");
00429 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 23);
00430 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_4), (gpointer) "Antartica");
00431 gtk_widget_show (button);
00432
00433 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Madagascar");
00434 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 24);
00435 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_4), (gpointer) "Madagascar");
00436 gtk_widget_show (button);
00437
00438 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Asia");
00439 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 25);
00440 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz1_4), (gpointer) "Asia");
00441 gtk_widget_show (button);
00442
00443
00444
00445 button = gtk_button_new_with_label ("Enter");
00446
00447 GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
00448
00449 gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->action_area), button, TRUE, TRUE, 0);
00450
00451 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(answer_quiz1), (gpointer) "button");
00452 gtk_widget_grab_default (button);
00453 gtk_widget_show (button);
00454 gtk_widget_show (window);
00455
00456 gtk_main ();
00457
00458
00459 }
00460
00461 char option_quiz2[50],option_quiz2_1[50],option_quiz2_2[50],option_quiz2_3[50],option_quiz2_4[50];
00468 void answer_quiz2(GtkWidget *widget1, gpointer data)
00469 {
00470 int i=0, a;
00471
00472 GtkWidget *dialog;
00473
00474 if(strcmp(option_quiz2, "Cheetah")==0)
00475 {
00476 i++;
00477 }
00478
00479 if(strcmp(option_quiz2_1, "Clear glass")==0)
00480 {
00481 i++;
00482 }
00483
00484 if(strcmp(option_quiz2_2, "Burj Khalifa")==0)
00485 {
00486 i++;
00487 }
00488
00489 if(strcmp(option_quiz2_3, "Nile")==0)
00490 {
00491 i++;
00492 }
00493
00494 if(strcmp(option_quiz2_4, "Ankor Wat, Cambodia")==0)
00495 {
00496 i++;
00497 }
00498
00499
00500 if(i==0)
00501 a=0;
00502
00503 if(i==1)
00504 a=20;
00505
00506 if(i==2)
00507 a=40;
00508
00509 if(i==3)
00510 a=60;
00511
00512 if(i==4)
00513 a=80;
00514
00515 if(i==5)
00516 a=100;
00517
00518
00519 dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "Username --> %s Quiz --> %s Subquiz --> %s Score --> %d percent",user,ans,subans,a);
00520 gtk_dialog_run (GTK_DIALOG (dialog));
00521
00522 int return_value;
00523 char qry[100],qry1[100],l1[50],l2[50];
00524
00525 sprintf(qry,"select * from quiz where roll_number='%s'",temp);
00526
00527 return_value=mysql_query(connection1,qry);
00528 if(return_value)
00529 {
00530 printf("Select command failed");
00531 }
00532 else
00533 {
00534 result=mysql_use_result(connection1);
00535 if(result)
00536 {
00537 while((sqlrow=mysql_fetch_row(result)))
00538 {
00539 display_row();
00540 strcpy(l1,sqlrow[4]);
00541 strcpy(l2,sqlrow[5]);
00542
00543
00544 sprintf(qry1,"update quiz set level1='%s',level2='%s',score=%d where roll_number='%s'",ans,subans,a,temp);
00545 }
00546
00547 }
00548 mysql_free_result(result);
00549 }
00550
00551
00552 int re=0;
00553 re=mysql_query(connection1,qry1);
00554 if(re==0)
00555 printf("Update succeded!!");
00556
00557 if(return_value)
00558 g_print("Update Failed");
00559
00560
00561 gtk_widget_destroy (dialog);
00562 }
00563
00564 void callback_quiz2(GtkWidget *widget, gpointer data)
00565 {
00566 strcpy(option_quiz2, (char *)data);
00567
00568 }
00569
00570 void callback_quiz2_1(GtkWidget *widget, gpointer data)
00571 {
00572 strcpy(option_quiz2_1, (char *)data);
00573
00574 }
00575
00576 void callback_quiz2_2(GtkWidget *widget, gpointer data)
00577 {
00578 strcpy(option_quiz2_2, (char *)data);
00579
00580 }
00581
00582 void callback_quiz2_3(GtkWidget *widget, gpointer data)
00583 {
00584 strcpy(option_quiz2_3, (char *)data);
00585
00586 }
00587
00588 void callback_quiz2_4(GtkWidget *widget, gpointer data)
00589 {
00590 strcpy(option_quiz2_4, (char *)data);
00591
00592 }
00593
00594
00600 void create_quiz2()
00601 {
00602
00603 static GtkWidget *window;
00604
00605 GtkWidget *button;
00606 GtkWidget *question;
00607 GtkWidget *scrolled_window;
00608 GtkWidget *table;
00609
00610
00611 window = gtk_dialog_new ();
00612 gtk_signal_connect (GTK_OBJECT (window), "destroy", (GtkSignalFunc) destroy, NULL);
00613 gtk_window_set_title (GTK_WINDOW (window), "Quiz2");
00614 gtk_container_set_border_width (GTK_CONTAINER (window), 0);
00615 gtk_widget_set_usize(window, 300, 300);
00616
00617
00618 scrolled_window = gtk_scrolled_window_new (NULL, NULL);
00619
00620 gtk_container_set_border_width (GTK_CONTAINER (scrolled_window), 10);
00621
00622
00623
00624
00625
00626
00627 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
00628
00629
00630 gtk_box_pack_start (GTK_BOX (GTK_DIALOG(window)->vbox), scrolled_window, TRUE, TRUE, 0);
00631 gtk_widget_show (scrolled_window);
00632
00633
00634 table = gtk_table_new (10, 10, FALSE);
00635
00636
00637 gtk_table_set_row_spacings (GTK_TABLE (table), 45);
00638 gtk_table_set_col_spacings (GTK_TABLE (table), 1);
00639
00640
00641 gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrolled_window), table);
00642 gtk_widget_show (table);
00643
00644
00645 question=gtk_label_new("1. Which is the fastest animal on land?");
00646 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 1);
00647 gtk_widget_show(question);
00648
00649 button = gtk_radio_button_new_with_label (NULL, "Puma");
00650 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 2);
00651 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2), (gpointer) "Puma");
00652 gtk_widget_show (button);
00653
00654 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Tiger");
00655 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0,3);
00656 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2), (gpointer) "Tiger");
00657 gtk_widget_show (button);
00658
00659 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Cheetah");
00660 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 4);
00661 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2), (gpointer) "Cheetah");
00662 gtk_widget_show (button);
00663
00664 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "LIon");
00665 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 5);
00666 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2), (gpointer) "Lion");
00667 gtk_widget_show (button);
00668
00669 question=gtk_label_new("2. What is the great Taj Mahal NOT made from?");
00670 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 6);
00671 gtk_widget_show(question);
00672
00673 button = gtk_radio_button_new_with_label (NULL, "White marble");
00674 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 7);
00675 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_1), (gpointer) "White marble");
00676 gtk_widget_show (button);
00677
00678 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Clear glass");
00679 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 8);
00680 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_1), (gpointer) "Clear glass");
00681 gtk_widget_show (button);
00682
00683 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Precious stones");
00684 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 9);
00685 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_1), (gpointer) "Precious stones");
00686 gtk_widget_show (button);
00687
00688 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Precious gems");
00689 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 10);
00690 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_1), (gpointer) "Precious gems");
00691 gtk_widget_show (button);
00692
00693 question=gtk_label_new("3.Which is the tallest building in the world");
00694 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 11);
00695 gtk_widget_show(question);
00696
00697 button = gtk_radio_button_new_with_label (NULL, "Shanghai World Financial Center");
00698 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 12);
00699 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_2), (gpointer) "Shanghai World Financial Center");
00700 gtk_widget_show (button);
00701
00702 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Petronas Twin Towers");
00703 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 13);
00704 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_2), (gpointer) "Petronas Twin Towers");
00705 gtk_widget_show (button);
00706
00707 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Burj Khalifa");
00708 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 14);
00709 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_2), (gpointer) "Burj Khalifa");
00710 gtk_widget_show (button);
00711
00712 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Taipei 101");
00713 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 15);
00714 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_2), (gpointer) "Taipei 101");
00715 gtk_widget_show (button);
00716
00717 question=gtk_label_new("4. Which is the longest river on Earth?");
00718 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 16);
00719 gtk_widget_show(question);
00720
00721 button = gtk_radio_button_new_with_label (NULL, "Nile");
00722 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 17);
00723 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_3), (gpointer) "Nile");
00724 gtk_widget_show (button);
00725
00726 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Amazon");
00727 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 18);
00728 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_3), (gpointer) "Amazon");
00729 gtk_widget_show (button);
00730
00731 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Yangtze");
00732 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 19);
00733 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_3), (gpointer) "Yangtze");
00734 gtk_widget_show (button);
00735
00736 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Mississippi");
00737 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 20);
00738 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_3), (gpointer) "Mississippi");
00739 gtk_widget_show (button);
00740
00741 question=gtk_label_new("5. Which of the following is NOT the winners of 7 Wonders of the World?");
00742 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 21);
00743 gtk_widget_show(question);
00744
00745 button = gtk_radio_button_new_with_label (NULL, "Chichen Itza, Mexico");
00746 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 22);
00747 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_4), (gpointer) "Chichen Itza, Mexico");
00748 gtk_widget_show (button);
00749
00750 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Taj Mahal, India");
00751 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 23);
00752 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_4), (gpointer) "Taj Mahal, India");
00753 gtk_widget_show (button);
00754
00755 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Great Wall of China, China");
00756 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 24);
00757 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_4), (gpointer) "Great Wall of China, China");
00758 gtk_widget_show (button);
00759
00760 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Ankor Wat, Cambodia");
00761 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 25);
00762 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz2_4), (gpointer) "Ankor Wat, Cambodia");
00763 gtk_widget_show (button);
00764
00765 button = gtk_button_new_with_label ("Enter");
00766 g_signal_connect_swapped (G_OBJECT (button), "clicked", G_CALLBACK (close_application), G_OBJECT (window));
00767
00768 GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
00769
00770 gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->action_area), button, TRUE, TRUE, 0);
00771
00772 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(answer_quiz2), (gpointer) "button");
00773 gtk_widget_grab_default (button);
00774 gtk_widget_show (button);
00775 gtk_widget_show (window);
00776
00777 gtk_main ();
00778
00779
00780 }
00781
00782 char option_quiz3[50],option_quiz3_1[50],option_quiz3_2[50],option_quiz3_3[50],option_quiz3_4[50];
00783
00790 void answer_quiz3(GtkWidget *widget1, gpointer data)
00791 {
00792 int i=0, a;
00793
00794 GtkWidget *dialog;
00795
00796 if(strcmp(option_quiz3, "Chess")==0)
00797 {
00798 i++;
00799 }
00800
00801 if(strcmp(option_quiz3_1, "Agra")==0)
00802 {
00803 i++;
00804 }
00805
00806 if(strcmp(option_quiz3_2, "India")==0)
00807 {
00808 i++;
00809 }
00810
00811 if(strcmp(option_quiz3_3, "South Asia")==0)
00812 {
00813 i++;
00814 }
00815
00816 if(strcmp(option_quiz3_4, "Royal Bengal Tigers")==0)
00817 {
00818 i++;
00819 }
00820 if(i==0)
00821 a=0;
00822
00823 if(i==1)
00824 a=20;
00825
00826 if(i==2)
00827 a=40;
00828
00829 if(i==3)
00830 a=60;
00831
00832 if(i==4)
00833 a=80;
00834
00835 if(i==5)
00836 a=100;
00837
00838
00839 dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "Username --> %s Quiz --> %s Subquiz --> %s Score --> %d percent",user,ans,subans,a);
00840 gtk_dialog_run (GTK_DIALOG (dialog));
00841
00842 int return_value;
00843 char qry[100],qry1[100],l1[50],l2[50];
00844
00845 sprintf(qry,"select * from quiz where roll_number='%s'",temp);
00846
00847 return_value=mysql_query(connection1,qry);
00848 if(return_value)
00849 {
00850 printf("Select command failed");
00851 }
00852 else
00853 {
00854 result=mysql_use_result(connection1);
00855 if(result)
00856 {
00857 while((sqlrow=mysql_fetch_row(result)))
00858 {
00859 display_row();
00860 strcpy(l1,sqlrow[4]);
00861 strcpy(l2,sqlrow[5]);
00862
00863
00864 sprintf(qry1,"update quiz set level1='%s',level2='%s',score=%d where roll_number='%s'",ans,subans,a,temp);
00865
00866 }
00867
00868 }
00869 mysql_free_result(result);
00870 }
00871
00872
00873 int re=0;
00874 re=mysql_query(connection1,qry1);
00875 if(re==0)
00876 printf("Update succeded!!");
00877
00878 if(return_value)
00879 g_print("Update Failed");
00880
00881
00882 gtk_widget_destroy (dialog);
00883 }
00884
00885
00886
00887 void callback_quiz3(GtkWidget *widget, gpointer data)
00888 {
00889 strcpy(option_quiz3, (char *)data);
00890
00891 }
00892
00893 void callback_quiz3_1(GtkWidget *widget, gpointer data)
00894 {
00895 strcpy(option_quiz3_1, (char *)data);
00896
00897 }
00898
00899 void callback_quiz3_2(GtkWidget *widget, gpointer data)
00900 {
00901 strcpy(option_quiz3_2, (char *)data);
00902
00903 }
00904
00905 void callback_quiz3_3(GtkWidget *widget, gpointer data)
00906 {
00907 strcpy(option_quiz3_3, (char *)data);
00908
00909 }
00910
00911 void callback_quiz3_4(GtkWidget *widget, gpointer data)
00912 {
00913 strcpy(option_quiz3_4, (char *)data);
00914
00915 }
00916
00922 void create_quiz3()
00923 {
00924
00925 static GtkWidget *window;
00926
00927 GtkWidget *button;
00928 GtkWidget *question;
00929 GtkWidget *scrolled_window;
00930 GtkWidget *table;
00931
00932 window = gtk_dialog_new ();
00933 gtk_signal_connect (GTK_OBJECT (window), "destroy", (GtkSignalFunc) destroy, NULL);
00934 gtk_window_set_title (GTK_WINDOW (window), "Quiz3");
00935 gtk_container_set_border_width (GTK_CONTAINER (window), 0);
00936 gtk_widget_set_usize(window, 300, 300);
00937
00938
00939 scrolled_window = gtk_scrolled_window_new (NULL, NULL);
00940
00941 gtk_container_set_border_width (GTK_CONTAINER (scrolled_window), 10);
00942
00943
00944
00945
00946
00947
00948 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
00949
00950
00951 gtk_box_pack_start (GTK_BOX (GTK_DIALOG(window)->vbox), scrolled_window, TRUE, TRUE, 0);
00952 gtk_widget_show (scrolled_window);
00953
00954
00955 table = gtk_table_new (10, 10, FALSE);
00956
00957
00958 gtk_table_set_row_spacings (GTK_TABLE (table), 45);
00959 gtk_table_set_col_spacings (GTK_TABLE (table), 1);
00960
00961
00962 gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrolled_window), table);
00963 gtk_widget_show (table);
00964
00965 question=gtk_label_new("1.Which of the famous board game listed below was invented in India?");
00966 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 1);
00967 gtk_widget_show(question);
00968
00969 button = gtk_radio_button_new_with_label (NULL, "Monopoly");
00970 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 2);
00971 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3), (gpointer) "Monopoly");
00972 gtk_widget_show (button);
00973
00974 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Scrabble");
00975 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0,3);
00976 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3), (gpointer) "Scrabble");
00977 gtk_widget_show (button);
00978
00979 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Snake and Ladder");
00980 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 4);
00981 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3), (gpointer) "Snake and Ladder");
00982 gtk_widget_show (button);
00983
00984 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Chess");
00985 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 5);
00986 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3), (gpointer) "Chess");
00987 gtk_widget_show (button);
00988
00989 question=gtk_label_new("2. Where is the great Taj Mahal situated at?");
00990 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 6);
00991 gtk_widget_show(question);
00992
00993 button = gtk_radio_button_new_with_label (NULL, "Hyderabad");
00994 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 7);
00995 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_1), (gpointer) "Hyderabad");
00996 gtk_widget_show (button);
00997
00998 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Delhi");
00999 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 8);
01000 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_1), (gpointer) "Delhi");
01001 gtk_widget_show (button);
01002
01003 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Agra");
01004 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 9);
01005 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_1), (gpointer) "Agra");
01006 gtk_widget_show (button);
01007
01008 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Mumbai");
01009 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 10);
01010 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_1), (gpointer) "Mumbai");
01011 gtk_widget_show (button);
01012
01013 question=gtk_label_new("3. Where was Yoga orginated?");
01014 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 11);
01015 gtk_widget_show(question);
01016
01017 button = gtk_radio_button_new_with_label (NULL, "India");
01018 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 12);
01019 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_2), (gpointer) "India");
01020 gtk_widget_show (button);
01021
01022 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "United States of America");
01023 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 13);
01024 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_2), (gpointer) "United States of America");
01025 gtk_widget_show (button);
01026
01027 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Shri Lanka");
01028 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 14);
01029 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_2), (gpointer) "Shri Lanka");
01030 gtk_widget_show (button);
01031
01032 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Italy");
01033 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 15);
01034 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_2), (gpointer) "Italy");
01035 gtk_widget_show (button);
01036
01037 question=gtk_label_new("4. Where is India located on the World Map?");
01038 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 16);
01039 gtk_widget_show(question);
01040
01041 button = gtk_radio_button_new_with_label (NULL, "Central");
01042 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 17);
01043 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_3), (gpointer) "Central");
01044 gtk_widget_show (button);
01045
01046 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "South Asia");
01047 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 18);
01048 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_3), (gpointer) "South Asia");
01049 gtk_widget_show (button);
01050
01051 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Southeast Asia");
01052 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 19);
01053 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_3), (gpointer) "Southeast Asia");
01054 gtk_widget_show (button);
01055
01056 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "East Asia");
01057 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 20);
01058 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_3), (gpointer) "East Asia");
01059 gtk_widget_show (button);
01060
01061 question=gtk_label_new("5. Which types of tigers India has?");
01062 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 21);
01063 gtk_widget_show(question);
01064
01065 button = gtk_radio_button_new_with_label (NULL, "Amur Tigers");
01066 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 22);
01067 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_4), (gpointer) "Amur Tigers");
01068 gtk_widget_show (button);
01069
01070 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Royal Bengal Tigers");
01071 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 23);
01072 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_4), (gpointer) "Royal Bengal Tigers");
01073 gtk_widget_show (button);
01074
01075 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Indo-Chinese Tigers");
01076 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 24);
01077 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_4), (gpointer) "Indo-Chinese Tigers");
01078 gtk_widget_show (button);
01079
01080 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Sumatran Tigers");
01081 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 25);
01082 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz3_4), (gpointer) "Sumatran Tigers");
01083 gtk_widget_show (button);
01084
01085
01086 button = gtk_button_new_with_label ("Enter");
01087 g_signal_connect_swapped (G_OBJECT (button), "clicked", G_CALLBACK (close_application), G_OBJECT (window));
01088
01089 GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
01090
01091 gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->action_area), button, TRUE, TRUE, 0);
01092
01093 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(answer_quiz3), (gpointer) "button");
01094 gtk_widget_grab_default (button);
01095 gtk_widget_show (button);
01096 gtk_widget_show (window);
01097
01098 gtk_main ();
01099
01100 }
01101
01102
01103 char option_quiz4[50],option_quiz4_1[50],option_quiz4_2[50],option_quiz4_3[50],option_quiz4_4[50];
01104
01111 void answer_quiz4(GtkWidget *widget1, gpointer data)
01112 {
01113 int i=0, a;
01114
01115 GtkWidget *dialog;
01116
01117 if(strcmp(option_quiz4, "Spoon and Knife")==0)
01118 {
01119 i++;
01120 }
01121
01122 if(strcmp(option_quiz4_1, "Dogs - Bark")==0)
01123 {
01124 i++;
01125 }
01126
01127 if(strcmp(option_quiz4_2, "Crocodile")==0)
01128 {
01129 i++;
01130 }
01131
01132 if(strcmp(option_quiz4_3, "France")==0)
01133 {
01134 i++;
01135 }
01136
01137 if(strcmp(option_quiz4_4, "Butterfly")==0)
01138 {
01139 i++;
01140 }
01141
01142
01143 if(i==0)
01144 a=0;
01145
01146 if(i==1)
01147 a=20;
01148
01149 if(i==2)
01150 a=40;
01151
01152 if(i==3)
01153 a=60;
01154
01155 if(i==4)
01156 a=80;
01157
01158 if(i==5)
01159 a=100;
01160
01161 dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "Username --> %s Quiz --> %s Subquiz --> %s Score --> %d percent",user,ans,subans,a);
01162 gtk_dialog_run (GTK_DIALOG (dialog));
01163
01164 int return_value;
01165 char qry[100],qry1[100],l1[50],l2[50];
01166
01167 sprintf(qry,"select * from quiz where roll_number='%s'",temp);
01168
01169 return_value=mysql_query(connection1,qry);
01170 if(return_value)
01171 {
01172 printf("Select command failed");
01173 }
01174 else
01175 {
01176 result=mysql_use_result(connection1);
01177 if(result)
01178 {
01179 while((sqlrow=mysql_fetch_row(result)))
01180 {
01181 display_row();
01182 strcpy(l1,sqlrow[4]);
01183 strcpy(l2,sqlrow[5]);
01184
01185
01186 sprintf(qry1,"update quiz set level1='%s',level2='%s',score=%d where roll_number='%s'",ans,subans,a,temp);
01187
01188 }
01189
01190 }
01191 mysql_free_result(result);
01192 }
01193
01194
01195 int re=0;
01196 re=mysql_query(connection1,qry1);
01197 if(re==0)
01198 printf("Update succeded!!");
01199
01200 if(return_value)
01201 g_print("Update Failed");
01202
01203
01204 gtk_widget_destroy (dialog);
01205 }
01206
01207 void callback_quiz4(GtkWidget *widget, gpointer data)
01208 {
01209 strcpy(option_quiz4, (char *)data);
01210
01211 }
01212
01213 void callback_quiz4_1(GtkWidget *widget, gpointer data)
01214 {
01215 strcpy(option_quiz4_1, (char *)data);
01216
01217 }
01218
01219 void callback_quiz4_2(GtkWidget *widget, gpointer data)
01220 {
01221 strcpy(option_quiz4_2, (char *)data);
01222
01223 }
01224
01225 void callback_quiz4_3(GtkWidget *widget, gpointer data)
01226 {
01227 strcpy(option_quiz4_3, (char *)data);
01228
01229 }
01230
01231 void callback_quiz4_4(GtkWidget *widget, gpointer data)
01232 {
01233 strcpy(option_quiz4_4, (char *)data);
01234
01235 }
01236
01237
01243 void create_quiz4()
01244 {
01245
01246 static GtkWidget *window;
01247 GtkWidget *button;
01248 GtkWidget *question;
01249 GtkWidget *scrolled_window;
01250 GtkWidget *table;
01251
01252 window = gtk_dialog_new ();
01253 gtk_signal_connect (GTK_OBJECT (window), "destroy", (GtkSignalFunc) destroy, NULL);
01254 gtk_window_set_title (GTK_WINDOW (window), "Quiz4");
01255 gtk_container_set_border_width (GTK_CONTAINER (window), 0);
01256 gtk_widget_set_usize(window, 300, 300);
01257
01258
01259 scrolled_window = gtk_scrolled_window_new (NULL, NULL);
01260
01261 gtk_container_set_border_width (GTK_CONTAINER (scrolled_window), 10);
01262
01263
01264
01265
01266
01267
01268 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
01269
01270 gtk_box_pack_start (GTK_BOX (GTK_DIALOG(window)->vbox), scrolled_window, TRUE, TRUE, 0);
01271 gtk_widget_show (scrolled_window);
01272
01273 table = gtk_table_new (10, 10, FALSE);
01274
01275 gtk_table_set_row_spacings (GTK_TABLE (table), 45);
01276 gtk_table_set_col_spacings (GTK_TABLE (table), 1);
01277
01278 gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrolled_window), table);
01279 gtk_widget_show (table);
01280
01281 question=gtk_label_new("1. Which of the pairs listed below is WRONG?");
01282 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 1);
01283 gtk_widget_show(question);
01284
01285 button = gtk_radio_button_new_with_label (NULL, "Spoon and Knife");
01286 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 2);
01287 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4), (gpointer) "Spoon and Knife");
01288 gtk_widget_show (button);
01289
01290 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Badminton and Shuttlecock");
01291 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0,3);
01292 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4), (gpointer) "Badminton and Shuttlecock");
01293 gtk_widget_show (button);
01294
01295 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Shoes and Laces");
01296 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 4);
01297 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4), (gpointer) "Shoes and Laces");
01298 gtk_widget_show (button);
01299
01300 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Shirt and Pants");
01301 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 5);
01302 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4), (gpointer) "Shirt and Pants");
01303 gtk_widget_show (button);
01304
01305 question=gtk_label_new("2. Which of the following animal sounds is CORRECT?");
01306 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 6);
01307 gtk_widget_show(question);
01308
01309 button = gtk_radio_button_new_with_label (NULL, "Birds - Meow");
01310 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 7);
01311 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_1), (gpointer) "Birds - Meow");
01312 gtk_widget_show (button);
01313
01314 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Cows - Neigh");
01315 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 8);
01316 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_1), (gpointer) "Cows - Neigh");
01317 gtk_widget_show (button);
01318
01319 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Camels - Quack");
01320 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 9);
01321 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_1), (gpointer) "Camels - Quack");
01322 gtk_widget_show (button);
01323
01324 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Dogs - Bark");
01325 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 10);
01326 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_1), (gpointer) "Dogs - Bark");
01327 gtk_widget_show (button);
01328
01329 question=gtk_label_new("3. Which of the following is NOT a mammal");
01330 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 11);
01331 gtk_widget_show(question);
01332
01333 button = gtk_radio_button_new_with_label (NULL, "Zebra");
01334 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 12);
01335 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_2), (gpointer) "Zebra");
01336 gtk_widget_show (button);
01337
01338 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Crocodile");
01339 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 13);
01340 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_2), (gpointer) "Crocodile");
01341 gtk_widget_show (button);
01342
01343 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Whale");
01344 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 14);
01345 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_2), (gpointer) "Whale");
01346 gtk_widget_show (button);
01347
01348 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Panda");
01349 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 15);
01350 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_2), (gpointer) "Panda");
01351 gtk_widget_show (button);
01352
01353 question=gtk_label_new("4. Where is Eiffel Tower?");
01354 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 16);
01355 gtk_widget_show(question);
01356
01357 button = gtk_radio_button_new_with_label (NULL, "India");
01358 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 17);
01359 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_3), (gpointer) "India");
01360 gtk_widget_show (button);
01361
01362 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Italy");
01363 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 18);
01364 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_3), (gpointer) "Italy");
01365 gtk_widget_show (button);
01366
01367 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Malaysia");
01368 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 19);
01369 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_3), (gpointer) "Malaysia");
01370 gtk_widget_show (button);
01371
01372 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "France");
01373 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 20);
01374 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_3), (gpointer) "France");
01375 gtk_widget_show (button);
01376
01377 question=gtk_label_new("5. What does caterpillar changes into?");
01378 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 21);
01379 gtk_widget_show(question);
01380
01381 button = gtk_radio_button_new_with_label (NULL, "Worm");
01382 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 22);
01383 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_4), (gpointer) "Worm");
01384 gtk_widget_show (button);
01385
01386 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Lizard");
01387 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 23);
01388 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_4), (gpointer) "Lizard");
01389 gtk_widget_show (button);
01390
01391 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Butterfly");
01392 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 24);
01393 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_4), (gpointer) "Butterfly");
01394 gtk_widget_show (button);
01395
01396 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Dragonfly");
01397 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 25);
01398 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz4_4), (gpointer) "Dragonfly");
01399 gtk_widget_show (button);
01400
01401 button = gtk_button_new_with_label ("Enter");
01402 g_signal_connect_swapped (G_OBJECT (button), "clicked", G_CALLBACK (close_application), G_OBJECT (window));
01403
01404 GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
01405
01406 gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->action_area), button, TRUE, TRUE, 0);
01407
01408 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(answer_quiz4), (gpointer) "button");
01409 gtk_widget_grab_default (button);
01410 gtk_widget_show (button);
01411 gtk_widget_show (window);
01412
01413 gtk_main ();
01414
01415 }
01416
01417
01418
01419
01420
01421 char option_quiz5[50],option_quiz5_1[50],option_quiz5_2[50],option_quiz5_3[50],option_quiz5_4[50];
01428 void answer_quiz5(GtkWidget *widget1, gpointer data)
01429 {
01430 int i=0, a;
01431
01432 GtkWidget *dialog;
01433
01434 if(strcmp(option_quiz5, "Green")==0)
01435 {
01436 i++;
01437 }
01438
01439 if(strcmp(option_quiz5_1, "7")==0)
01440 {
01441 i++;
01442 }
01443
01444 if(strcmp(option_quiz5_2, "Brown")==0)
01445 {
01446 i++;
01447 }
01448
01449 if(strcmp(option_quiz5_3, "Apple")==0)
01450 {
01451 i++;
01452 }
01453
01454 if(strcmp(option_quiz5_4, "Yellow")==0)
01455 {
01456 i++;
01457 }
01458
01459
01460 if(i==0)
01461 a=0;
01462
01463 if(i==1)
01464 a=20;
01465
01466 if(i==2)
01467 a=40;
01468
01469 if(i==3)
01470 a=60;
01471
01472 if(i==4)
01473 a=80;
01474
01475 if(i==5)
01476 a=100;
01477
01478
01479 dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "Username --> %s Quiz --> %s Subquiz --> %s Score --> %d percent",user,ans,subans,a);
01480 gtk_dialog_run (GTK_DIALOG (dialog));
01481
01482 int return_value;
01483 char qry[100],qry1[100],l1[50],l2[50];
01484
01485 sprintf(qry,"select * from quiz where roll_number='%s'",temp);
01486
01487 return_value=mysql_query(connection1,qry);
01488 if(return_value)
01489 {
01490 printf("Select command failed");
01491 }
01492 else
01493 {
01494 result=mysql_use_result(connection1);
01495 if(result)
01496 {
01497 while((sqlrow=mysql_fetch_row(result)))
01498 {
01499 display_row();
01500 strcpy(l1,sqlrow[4]);
01501 strcpy(l2,sqlrow[5]);
01502
01503 sprintf(qry1,"update quiz set level1='%s',level2='%s',score=%d where roll_number='%s'",ans,subans,a,temp);
01504 }
01505
01506 }
01507 mysql_free_result(result);
01508 }
01509
01510
01511 int re=0;
01512 re=mysql_query(connection1,qry1);
01513 if(re==0)
01514 printf("Update succeded!!");
01515
01516 if(return_value)
01517 g_print("Update Failed");
01518
01519
01520 gtk_widget_destroy (dialog);
01521 }
01522
01523 void callback_quiz5(GtkWidget *widget, gpointer data)
01524 {
01525 strcpy(option_quiz5, (char *)data);
01526
01527 }
01528
01529 void callback_quiz5_1(GtkWidget *widget, gpointer data)
01530 {
01531 strcpy(option_quiz5_1, (char *)data);
01532
01533 }
01534
01535 void callback_quiz5_2(GtkWidget *widget, gpointer data)
01536 {
01537 strcpy(option_quiz5_2, (char *)data);
01538
01539 }
01540
01541 void callback_quiz5_3(GtkWidget *widget, gpointer data)
01542 {
01543 strcpy(option_quiz5_3, (char *)data);
01544
01545 }
01546
01547 void callback_quiz5_4(GtkWidget *widget, gpointer data)
01548 {
01549 strcpy(option_quiz5_4, (char *)data);
01550
01551 }
01552
01553
01559 void create_quiz5()
01560 {
01561
01562 static GtkWidget *window;
01563
01564 GtkWidget *button;
01565 GtkWidget *question;
01566 GtkWidget *scrolled_window;
01567 GtkWidget *table;
01568
01569
01570 window = gtk_dialog_new ();
01571 gtk_signal_connect (GTK_OBJECT (window), "destroy", (GtkSignalFunc) destroy, NULL);
01572 gtk_window_set_title (GTK_WINDOW (window), "Quiz5");
01573 gtk_container_set_border_width (GTK_CONTAINER (window), 0);
01574 gtk_widget_set_usize(window, 300, 300);
01575
01576
01577 scrolled_window = gtk_scrolled_window_new (NULL, NULL);
01578
01579 gtk_container_set_border_width (GTK_CONTAINER (scrolled_window), 10);
01580
01581
01582
01583
01584
01585
01586 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolled_window), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS);
01587
01588
01589 gtk_box_pack_start (GTK_BOX (GTK_DIALOG(window)->vbox), scrolled_window, TRUE, TRUE, 0);
01590 gtk_widget_show (scrolled_window);
01591
01592
01593 table = gtk_table_new (10, 10, FALSE);
01594
01595
01596 gtk_table_set_row_spacings (GTK_TABLE (table), 45);
01597 gtk_table_set_col_spacings (GTK_TABLE (table), 1);
01598
01599
01600 gtk_scrolled_window_add_with_viewport (GTK_SCROLLED_WINDOW (scrolled_window), table);
01601 gtk_widget_show (table);
01602
01603
01604 question=gtk_label_new("1. What do you get if you mix yellow and blue?");
01605 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 1);
01606 gtk_widget_show(question);
01607
01608 button = gtk_radio_button_new_with_label (NULL, "Red");
01609 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 2);
01610 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5), (gpointer) "Red");
01611 gtk_widget_show (button);
01612
01613 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Green");
01614 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0,3);
01615 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5), (gpointer) "Green");
01616 gtk_widget_show (button);
01617
01618 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Purple");
01619 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 4);
01620 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5), (gpointer) "Purple");
01621 gtk_widget_show (button);
01622
01623 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Brown");
01624 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 5);
01625 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5), (gpointer) "Brown");
01626 gtk_widget_show (button);
01627
01628
01629
01630 question=gtk_label_new("2. How many colours does the rainbow has?");
01631 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 6);
01632 gtk_widget_show(question);
01633
01634 button = gtk_radio_button_new_with_label (NULL, "7");
01635 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 7);
01636 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_1), (gpointer) "7");
01637 gtk_widget_show (button);
01638
01639 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "8");
01640 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 8);
01641 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_1), (gpointer) "8");
01642 gtk_widget_show (button);
01643
01644 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "6");
01645 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 9);
01646 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_1), (gpointer) "6");
01647 gtk_widget_show (button);
01648
01649 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "5");
01650 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 10);
01651 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_1), (gpointer) "5");
01652 gtk_widget_show (button);
01653
01654
01655
01656 question=gtk_label_new("3. Which is NOT the colour of the rainbow?");
01657 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 11);
01658 gtk_widget_show(question);
01659
01660 button = gtk_radio_button_new_with_label (NULL, "Red");
01661 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 12);
01662 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_2), (gpointer) "Red");
01663 gtk_widget_show (button);
01664
01665 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Indigo");
01666 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 13);
01667 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_2), (gpointer) "Indigo");
01668 gtk_widget_show (button);
01669
01670 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Brown");
01671 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 14);
01672 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_2), (gpointer) "Brown");
01673 gtk_widget_show (button);
01674
01675 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Orange");
01676 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 15);
01677 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_2), (gpointer) "Orange");
01678 gtk_widget_show (button);
01679
01680
01681
01682 question=gtk_label_new("4. Which fruit listed below is red in colour?");
01683 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 16);
01684 gtk_widget_show(question);
01685
01686 button = gtk_radio_button_new_with_label (NULL, "Pear");
01687 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 17);
01688 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_3), (gpointer) "Pear");
01689 gtk_widget_show (button);
01690
01691 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Banana");
01692 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 18);
01693 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_3), (gpointer) "Banana");
01694 gtk_widget_show (button);
01695
01696 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Grapes");
01697 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 19);
01698 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_3), (gpointer) "Grapes");
01699 gtk_widget_show (button);
01700
01701 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Apple");
01702 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 20);
01703 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_3), (gpointer) "Apple");
01704 gtk_widget_show (button);
01705
01706
01707
01708 question=gtk_label_new("5. Which is NOT the colour of the Indian flag");
01709 gtk_table_attach_defaults (GTK_TABLE (table), question, 0, 1, 0, 21);
01710 gtk_widget_show(question);
01711
01712 button = gtk_radio_button_new_with_label (NULL, "Green");
01713 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 22);
01714 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_4), (gpointer) "Green");
01715 gtk_widget_show (button);
01716
01717 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Orange");
01718 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 23);
01719 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_4), (gpointer) "Orange");
01720 gtk_widget_show (button);
01721
01722 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Yellow");
01723 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 24);
01724 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_4), (gpointer) "Yellow");
01725 gtk_widget_show (button);
01726
01727 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "white");
01728 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 0, 25);
01729 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_quiz5_4), (gpointer) "White");
01730 gtk_widget_show (button);
01731
01732
01733 button = gtk_button_new_with_label ("Enter");
01734 g_signal_connect_swapped (G_OBJECT (button), "clicked", G_CALLBACK (close_application), G_OBJECT (window));
01735
01736 GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
01737
01738 gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->action_area), button, TRUE, TRUE, 0);
01739
01740 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(answer_quiz5), (gpointer) "button");
01741 gtk_widget_grab_default (button);
01742 gtk_widget_show (button);
01743 gtk_widget_show (window);
01744
01745 gtk_main ();
01746
01747
01748 }
01749
01750 int flag_quiz=0;
01758 void answer_m(GtkWidget *widget1, gpointer data)
01759 {
01760 if(flag_quiz==0)
01761 {
01762 strcpy(subans,"Quiz1");
01763 printf("%s\n",subans);
01764 create_quiz1();
01765
01766 }
01767
01768 if(flag_quiz==1)
01769 {
01770 strcpy(subans,"Quiz2");
01771 printf("%s\n",subans);
01772 create_quiz2();
01773
01774 }
01775
01776 if(flag_quiz==2)
01777 {
01778 strcpy(subans,"Quiz3");
01779 printf("%s\n",subans);
01780 create_quiz3();
01781 }
01782
01783 if(flag_quiz==3)
01784 {
01785 strcpy(subans,"Quiz4");
01786 printf("%s\n",subans);
01787 create_quiz4();
01788 }
01789
01790 if(flag_quiz==4)
01791 {
01792 strcpy(subans,"Quiz5");
01793 printf("%s\n",subans);
01794 create_quiz5();
01795
01796 }
01797
01798
01799 }
01800
01807 void callback_m(GtkWidget *widget, gpointer data)
01808 {
01809
01810 char temp_m[50];
01811 strcpy(temp_m,(char *)data);
01812
01813 if(strcmp(temp_m,"Quiz1")==0)
01814 flag_quiz=0;
01815
01816 if(strcmp(temp_m,"Quiz2")==0)
01817 flag_quiz=1;
01818
01819 if(strcmp(temp_m,"Quiz3")==0)
01820 flag_quiz=2;
01821
01822 if(strcmp(temp_m,"Quiz4")==0)
01823 flag_quiz=3;
01824
01825 if(strcmp(temp_m,"Quiz5")==0)
01826 flag_quiz=4;
01827
01828 }
01829
01835 void create_story1()
01836 {
01837
01838 GtkWidget *window;
01839 GtkWidget *label1;
01840 GtkWidget *hseparator;
01841 GtkWidget *vbox;
01842
01843
01844
01845 window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
01846 gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
01847 gtk_window_set_title(GTK_WINDOW(window), "The Silent Passer-by");
01848 gtk_window_set_resizable(GTK_WINDOW(window), FALSE);
01849
01850 gtk_container_set_border_width(GTK_CONTAINER(window), 20);
01851
01852 FILE *fp;
01853 fp=fopen("story1","r");
01854 char line[600];
01855 int i=1;
01856 vbox = gtk_vbox_new(FALSE, 10);
01857 gtk_container_add(GTK_CONTAINER(window), vbox);
01858
01859
01860 while(!feof(fp))
01861 {
01862 fgets(line,500,fp);
01863
01864 label1 = gtk_label_new(line);
01865
01866 gtk_label_set_line_wrap(GTK_LABEL(label1), TRUE);
01867 hseparator = gtk_hseparator_new();
01868 gtk_box_pack_start(GTK_BOX(vbox), label1, FALSE, TRUE, 2*(i-1));
01869 gtk_box_pack_start(GTK_BOX(vbox), hseparator, FALSE, TRUE, 2*i);
01870
01871 i++;
01872 }
01873
01874 g_signal_connect_swapped(G_OBJECT(window), "destroy",
01875 G_CALLBACK(gtk_main_quit), G_OBJECT(window));
01876 gtk_widget_show_all(window);
01877 gtk_main();
01878 }
01884 void create_story2()
01885 {
01886
01887 GtkWidget *window;
01888 GtkWidget *label1;
01889 GtkWidget *hseparator;
01890 GtkWidget *vbox;
01891
01892
01893
01894 window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
01895 gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
01896 gtk_window_set_title(GTK_WINDOW(window), "The Asse's Shadow");
01897 gtk_window_set_resizable(GTK_WINDOW(window), FALSE);
01898 gtk_container_set_border_width(GTK_CONTAINER(window), 20);
01899
01900 FILE *fp;
01901 fp=fopen("story2","r");
01902 char line[600];
01903 int i=1;
01904 vbox = gtk_vbox_new(FALSE, 10);
01905 gtk_container_add(GTK_CONTAINER(window), vbox);
01906
01907
01908 while(!feof(fp))
01909 {
01910 fgets(line,500,fp);
01911
01912 label1 = gtk_label_new(line);
01913
01914
01915 gtk_label_set_line_wrap(GTK_LABEL(label1), TRUE);
01916 hseparator = gtk_hseparator_new();
01917 gtk_box_pack_start(GTK_BOX(vbox), label1, FALSE, TRUE, 2*(i-1));
01918 gtk_box_pack_start(GTK_BOX(vbox), hseparator, FALSE, TRUE, 2*i);
01919
01920 i++;
01921 }
01922
01923
01924 g_signal_connect_swapped(G_OBJECT(window), "destroy",
01925 G_CALLBACK(gtk_main_quit), G_OBJECT(window));
01926 gtk_widget_show_all(window);
01927 gtk_main();
01928 }
01929
01935 void create_story3()
01936 {
01937
01938
01939 GtkWidget *window;
01940 GtkWidget *label1;
01941 GtkWidget *hseparator;
01942 GtkWidget *vbox;
01943
01944
01945
01946 window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
01947 gtk_window_set_position(GTK_WINDOW(window), GTK_WIN_POS_CENTER);
01948 gtk_window_set_title(GTK_WINDOW(window), "The Two Frog");
01949 gtk_window_set_resizable(GTK_WINDOW(window), FALSE);
01950
01951 gtk_container_set_border_width(GTK_CONTAINER(window), 20);
01952
01953 FILE *fp;
01954 fp=fopen("story3","r");
01955 char line[600];
01956 int i=1;
01957 vbox = gtk_vbox_new(FALSE, 10);
01958 gtk_container_add(GTK_CONTAINER(window), vbox);
01959
01960
01961 while(!feof(fp))
01962 {
01963 fgets(line,500,fp);
01964
01965 label1 = gtk_label_new(line);
01966
01967
01968 gtk_label_set_line_wrap(GTK_LABEL(label1), TRUE);
01969 hseparator = gtk_hseparator_new();
01970 gtk_box_pack_start(GTK_BOX(vbox), label1, FALSE, TRUE, 2*(i-1));
01971 gtk_box_pack_start(GTK_BOX(vbox), hseparator, FALSE, TRUE, 2*i);
01972
01973 i++;
01974 }
01975
01976
01977
01978 g_signal_connect_swapped(G_OBJECT(window), "destroy",
01979 G_CALLBACK(gtk_main_quit), G_OBJECT(window));
01980
01981 gtk_widget_show_all(window);
01982
01983 gtk_main();
01984 }
01985
01986 int flag_story=0;
01987
01988 void answer_story(GtkWidget *widget1, gpointer data)
01989 {
01990 if(flag_story==0)
01991 {
01992 create_story1();
01993
01994 }
01995
01996 if(flag_story==1)
01997 {
01998 create_story2();
01999 }
02000
02001 if(flag_story==2)
02002 {
02003 create_story3();
02004 }
02005
02006 }
02007
02008
02015 void callback_story(GtkWidget *widget, gpointer data)
02016 {
02017 char temp_s[50];
02018 strcpy(temp_s,(char *)data);
02019
02020 if(strcmp(temp_s,"Story1")==0)
02021 flag_story=0;
02022
02023 if(strcmp(temp_s,"Story2")==0)
02024 flag_story=1;
02025
02026 if(strcmp(temp_s,"Story3")==0)
02027 flag_story=2;
02028
02029 }
02030
02037 void create_story()
02038 {
02039 GtkWidget *window = NULL;
02040 GtkWidget *box1;
02041 GtkWidget *box2;
02042 GtkWidget *button;
02043 GtkWidget *separator;
02044 GtkWidget *question;
02045
02046 window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
02047
02048 gtk_window_set_default_size(GTK_WINDOW(window),340,200);
02049 gtk_window_set_title (GTK_WINDOW (window), "Story");
02050 gtk_container_set_border_width (GTK_CONTAINER (window), 0);
02051
02052 box1 = gtk_vbox_new (FALSE, 0);
02053 gtk_container_add (GTK_CONTAINER (window), box1);
02054 gtk_widget_show (box1);
02055
02056 box2 = gtk_vbox_new (FALSE, 10);
02057 gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
02058 gtk_box_pack_start (GTK_BOX (box1), box2, TRUE, TRUE, 0);
02059 gtk_widget_show (box2);
02060
02061 question=gtk_label_new("Choose Story");
02062 gtk_box_pack_start (GTK_BOX (box2), question, TRUE, TRUE, 0);
02063 gtk_widget_show(question);
02064
02065 button = gtk_radio_button_new_with_label (NULL, "Story1");
02066 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02067 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_story), (gpointer) "Story1");
02068 gtk_widget_show (button);
02069
02070 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Story2");
02071 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02072 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_story), (gpointer) "Story2");
02073 gtk_widget_show (button);
02074
02075 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Story3");
02076 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02077 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_story), (gpointer) "Story3");
02078 gtk_widget_show (button);
02079
02080 separator = gtk_hseparator_new ();
02081 gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0);
02082 gtk_widget_show (separator);
02083
02084 box2 = gtk_vbox_new (FALSE, 10);
02085 gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
02086 gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0);
02087 gtk_widget_show (box2);
02088
02089 button = gtk_button_new_with_label ("Enter");
02090 g_signal_connect_swapped (G_OBJECT (button), "clicked",
02091 G_CALLBACK (close_application),
02092 G_OBJECT (window));
02093
02094 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02095 GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
02096 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(answer_story), (gpointer) "button");
02097 gtk_widget_grab_default (button);
02098 gtk_widget_show (button);
02099 gtk_widget_show (window);
02100
02101 gtk_main ();
02102
02103 }
02104
02111 void create_quiz_main()
02112 {
02113 GtkWidget *window = NULL;
02114 GtkWidget *box1;
02115 GtkWidget *box2;
02116 GtkWidget *button;
02117 GtkWidget *separator;
02118 GtkWidget *question;
02119
02120 window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
02121
02122 gtk_window_set_default_size(GTK_WINDOW(window),340,200);
02123 gtk_window_set_title (GTK_WINDOW (window), "Quizzes");
02124 gtk_container_set_border_width (GTK_CONTAINER (window), 0);
02125
02126 box1 = gtk_vbox_new (FALSE, 0);
02127 gtk_container_add (GTK_CONTAINER (window), box1);
02128 gtk_widget_show (box1);
02129
02130 box2 = gtk_vbox_new (FALSE, 10);
02131 gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
02132 gtk_box_pack_start (GTK_BOX (box1), box2, TRUE, TRUE, 0);
02133 gtk_widget_show (box2);
02134
02135 question=gtk_label_new("Choose Quiz");
02136 gtk_box_pack_start (GTK_BOX (box2), question, TRUE, TRUE, 0);
02137 gtk_widget_show(question);
02138
02139 button = gtk_radio_button_new_with_label (NULL, "Quiz1");
02140 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02141 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_m), (gpointer) "Quiz1");
02142 gtk_widget_show (button);
02143
02144 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Quiz2");
02145 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02146 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_m), (gpointer) "Quiz2");
02147 gtk_widget_show (button);
02148
02149 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Quiz3");
02150 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02151 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_m), (gpointer) "Quiz3");
02152 gtk_widget_show (button);
02153
02154 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Quiz4");
02155 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02156 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_m), (gpointer) "Quiz4");
02157 gtk_widget_show (button);
02158
02159 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Quiz5");
02160 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02161 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_m), (gpointer) "Quiz5");
02162 gtk_widget_show (button);
02163
02164 separator = gtk_hseparator_new ();
02165 gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0);
02166 gtk_widget_show (separator);
02167
02168 box2 = gtk_vbox_new (FALSE, 10);
02169 gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
02170 gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0);
02171 gtk_widget_show (box2);
02172
02173 button = gtk_button_new_with_label ("Enter");
02174 g_signal_connect_swapped (G_OBJECT (button), "clicked",
02175 G_CALLBACK (close_application),
02176 G_OBJECT (window));
02177
02178 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02179 GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
02180 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(answer_m), (gpointer) "button");
02181 gtk_widget_grab_default (button);
02182 gtk_widget_show (button);
02183 gtk_widget_show (window);
02184
02185 gtk_main ();
02186
02187 }
02188
02189 int flag_cat=0;
02190
02197 void callback_cat(GtkWidget *widget1, gpointer data)
02198 {
02199 char temp_cat[50];
02200 strcpy(temp_cat,(char *)data);
02201 if(strcmp(temp_cat,"Quiz")==0)
02202 {
02203 flag_cat=0;
02204 strcpy(ans,"Quiz");
02205 }
02206 if(strcmp(temp_cat,"Story")==0)
02207 {
02208 flag_cat=1;
02209 strcpy(ans,"Story");
02210 }
02211
02212 }
02213
02220 void answer_cat(GtkWidget *widget, gpointer data)
02221 {
02222 if(flag_cat==0)
02223 create_quiz_main();
02224 if(flag_cat==1)
02225 create_story();
02226 }
02227
02228
02234 void create_main()
02235 {
02236 GtkWidget *window = NULL;
02237 GtkWidget *box1;
02238 GtkWidget *box2;
02239 GtkWidget *button;
02240 GtkWidget *separator;
02241 GtkWidget *question;
02242
02243 window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
02244
02245 gtk_window_set_default_size(GTK_WINDOW(window),340,200);
02246 gtk_window_set_title (GTK_WINDOW (window), "Quiz or Story");
02247 gtk_container_set_border_width (GTK_CONTAINER (window), 0);
02248
02249 box1 = gtk_vbox_new (FALSE, 0);
02250 gtk_container_add (GTK_CONTAINER (window), box1);
02251 gtk_widget_show (box1);
02252
02253 box2 = gtk_vbox_new (FALSE, 10);
02254 gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
02255 gtk_box_pack_start (GTK_BOX (box1), box2, TRUE, TRUE, 0);
02256 gtk_widget_show (box2);
02257
02258 question=gtk_label_new("Choose Category");
02259 gtk_box_pack_start (GTK_BOX (box2), question, TRUE, TRUE, 0);
02260 gtk_widget_show(question);
02261
02262 button = gtk_radio_button_new_with_label (NULL, "Quiz");
02263 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02264 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_cat), (gpointer) "Quiz");
02265 gtk_widget_show (button);
02266
02267 button = gtk_radio_button_new_with_label_from_widget (GTK_RADIO_BUTTON (button), "Story");
02268 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02269 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(callback_cat), (gpointer) "Story");
02270 gtk_widget_show (button);
02271
02272 separator = gtk_hseparator_new ();
02273 gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0);
02274 gtk_widget_show (separator);
02275
02276 box2 = gtk_vbox_new (FALSE, 10);
02277 gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
02278 gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0);
02279 gtk_widget_show (box2);
02280
02281 button = gtk_button_new_with_label ("Enter");
02282 g_signal_connect_swapped (G_OBJECT (button), "clicked",
02283 G_CALLBACK (close_application),
02284 G_OBJECT (window));
02285
02286 gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
02287 GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
02288 gtk_signal_connect(GTK_OBJECT(button),"clicked",GTK_SIGNAL_FUNC(answer_cat), (gpointer) "button");
02289 gtk_widget_grab_default (button);
02290 gtk_widget_show (button);
02291 gtk_widget_show (window);
02292
02293 gtk_main ();
02294 }
02295
02296 GtkWidget *window;
02297
02306 static void callback_reg( GtkWidget *widget,
02307 gpointer data )
02308 {
02309 GtkWidget *dialog;
02310 int r1=0,flag=0;
02311 const char *name,*roll,*usernamer,*passwordr;
02312
02313 name=gtk_entry_get_text (GTK_ENTRY(entry_name));
02314 roll=gtk_entry_get_text (GTK_ENTRY(entry_roll));
02315 usernamer=gtk_entry_get_text (GTK_ENTRY(entry_usernamer));
02316 passwordr=gtk_entry_get_text (GTK_ENTRY(entry_passwordr));
02317
02318 strcpy(n,name);
02319 strcpy(temp,roll);
02320 strcpy(u,usernamer);
02321 strcpy(p,passwordr);
02322
02323 g_print ("Name Roll Uname Password %s %s %s %s\n",n,temp,u,p);
02324 char query[1000];
02325
02326 if(strlen(n)==0 ||strlen(temp)==0||strlen(u)==0||strlen(p)==0)
02327 {
02328 flag=1;
02329 }
02330 if(flag==0)
02331 {
02332 sprintf(query,"insert into quiz values('%s','%s','%s','%s','empty','empty',0)",temp,n,u,p);
02333
02334 connection1 = mysql_init(NULL);
02335 if (mysql_real_connect (connection1, "localhost", "user1", "project", "kidsquiz", 0, NULL, 0))
02336
02337 {
02338 r1=mysql_query(connection1,query);
02339 if(r1==0)
02340 printf("success");
02341 else
02342 fprintf (stderr, "could not insert data as %d: %s\n",
02343 mysql_errno (connection1),
02344 mysql_error (connection1));
02345 }
02346
02347 g_print("QUERY %s",query);
02348 gtk_widget_destroy(window);
02349
02350
02351 }
02352 else
02353 {
02354 dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "Null entries not allowed \n");
02355 gtk_dialog_run (GTK_DIALOG (dialog));
02356 gtk_widget_destroy (dialog);
02357 }
02358 }
02359
02363 static gboolean delete_event_reg( GtkWidget *widget,
02364 GdkEvent *event,
02365 gpointer data )
02366 {
02367 gtk_main_quit();
02368 return FALSE;
02369 }
02370
02371
02372 gboolean delete_cancel(GtkWidget *widget,gpointer data)
02373 {
02374 gtk_widget_destroy (window);
02375 return FALSE;
02376 }
02377
02383 static void enter_callback_register( GtkWidget *widget,
02384 GtkWidget *entry )
02385 {
02386 const gchar *entry_text;
02387 entry_text = gtk_entry_get_text (GTK_ENTRY (entry));
02388 printf ("Entry contents: %s\n", entry_text);
02389 }
02390
02396 static void callback_clear( GtkWidget *widget,
02397 GtkWidget *entry )
02398 {
02399 gtk_entry_set_text (GTK_ENTRY (entry_name), "");
02400 gtk_entry_set_text (GTK_ENTRY (entry_roll), "");
02401 gtk_entry_set_text (GTK_ENTRY (entry_usernamer), "");
02402 gtk_entry_set_text (GTK_ENTRY (entry_passwordr), "");
02403 gtk_main();
02404 }
02405
02406
02407
02408
02413 void create_register()
02414 {
02415
02416 GtkWidget *button;
02417 GtkWidget *table;
02418 GtkWidget *label;
02419
02420 window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
02421
02422 gtk_window_set_default_size(GTK_WINDOW(window),50,50);
02423
02424 gtk_window_set_title (GTK_WINDOW (window), "Login");
02425
02426 g_signal_connect (G_OBJECT (window), "delete_event", G_CALLBACK (delete_event_reg), NULL);
02427
02428 gtk_container_set_border_width (GTK_CONTAINER (window), 10);
02429
02430 table = gtk_table_new (2, 2, TRUE);
02431
02432 gtk_container_add (GTK_CONTAINER (window), table);
02433
02434 label=gtk_label_new("Name:");
02435 gtk_table_attach_defaults (GTK_TABLE (table), label, 0, 1, 0, 1);
02436 gtk_widget_show (label);
02437 label=gtk_label_new("Roll No.:");
02438 gtk_table_attach_defaults (GTK_TABLE (table), label, 0, 1, 1, 2);
02439 gtk_widget_show (label);
02440
02441 label=gtk_label_new("Username:");
02442 gtk_table_attach_defaults (GTK_TABLE (table), label, 0, 1, 2, 3);
02443 gtk_widget_show (label);
02444
02445 label=gtk_label_new("Password:");
02446 gtk_table_attach_defaults (GTK_TABLE (table), label, 0, 1, 3, 4);
02447 gtk_widget_show (label);
02448
02449 entry_name = gtk_entry_new ();
02450 g_signal_connect (G_OBJECT (entry_name), "activate", G_CALLBACK (enter_callback_register), (gpointer) entry_name);
02451 gtk_table_attach_defaults (GTK_TABLE (table), entry_name, 1, 2, 0, 1);
02452 gtk_widget_show (entry_name);
02453
02454 entry_roll = gtk_entry_new ();
02455 g_signal_connect (G_OBJECT (entry_roll), "activate", G_CALLBACK (enter_callback_register), (gpointer) entry_roll);
02456 gtk_table_attach_defaults (GTK_TABLE (table), entry_roll, 1, 2, 1, 2);
02457 gtk_widget_show (entry_roll);
02458
02459 entry_usernamer = gtk_entry_new ();
02460 g_signal_connect (G_OBJECT (entry_usernamer), "activate", G_CALLBACK (enter_callback_register), (gpointer) entry_usernamer);
02461 gtk_table_attach_defaults (GTK_TABLE (table), entry_usernamer, 1, 2, 2, 3);
02462 gtk_widget_show (entry_usernamer);
02463
02464 entry_passwordr = gtk_entry_new ();
02465 g_signal_connect (G_OBJECT (entry_passwordr), "activate", G_CALLBACK (gtk_entry_set_visibility), (gpointer) entry_passwordr);
02466 gtk_entry_set_text (GTK_ENTRY (entry_passwordr), "");
02467 gtk_editable_select_region (GTK_EDITABLE (entry_passwordr), 0, GTK_ENTRY (entry_passwordr)->text_length);
02468 gtk_table_attach_defaults (GTK_TABLE (table), entry_passwordr, 1, 2, 3, 4);
02469 gtk_widget_show (entry_passwordr);
02470
02471 button = gtk_button_new_with_label ("Register");
02472 g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (callback_reg), (gpointer) "Register");
02473 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 5, 6);
02474 gtk_widget_show (button);
02475
02476 button = gtk_button_new_with_label ("Clear");
02477 g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (callback_clear), (gpointer) "Clear");
02478 gtk_table_attach_defaults (GTK_TABLE (table), button, 1, 2, 5, 6);
02479 gtk_widget_show (button);
02480
02481 g_signal_connect_swapped (G_OBJECT (button), "clicked",
02482 G_CALLBACK (close_application),
02483 G_OBJECT (window));
02484
02485 button = gtk_button_new_with_label ("Cancel");
02486 g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (delete_cancel), (gpointer) "Cancel");
02487 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 6, 7);
02488 gtk_widget_show (button);
02489
02490
02491 gtk_widget_show (table);
02492 gtk_widget_show (window);
02493
02494
02495 }
02496
02502 static void callback_login( GtkWidget *widget,
02503 gpointer data )
02504 {
02505
02506
02507 int r1=0;
02508 char u[100];
02509 char p[100];
02510
02511 strcpy(u,gtk_entry_get_text (GTK_ENTRY(entry_username)));
02512 strcpy(p,gtk_entry_get_text (GTK_ENTRY(entry_password)));
02513
02514 g_print ("Uname, Password %s %s\n",u,p);
02515 char query[1000];
02516 sprintf(query,"select * from quiz where username='%s' and password='%s'",u,p);
02517 printf("QUERY %s",query);
02518
02519 connection1 = mysql_init(NULL);
02520 if (mysql_real_connect (connection1, "localhost", "user1", "project", "kidsquiz", 0, NULL, 0))
02521
02522 {
02523
02524 r1=mysql_query(connection1,query);
02525 if(r1!=0)
02526 {
02527 printf("Failure");
02528 }
02529 else
02530 {
02531 result = mysql_use_result (connection1);
02532 if (result)
02533 {
02534 while ((sqlrow = mysql_fetch_row (result)))
02535 display_row ();
02536
02537 if (mysql_errno (connection1))
02538 {
02539 printf ("Error occurred while retrieving data : %s\n", mysql_error (connection1));
02540 }
02541 }
02542 if(counter==0)
02543
02544 {
02545 printf("No records exist in the table!!\n");
02546
02547 GtkWidget *dialog;
02548 dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, GTK_MESSAGE_INFO, GTK_BUTTONS_OK, "Wrong Details.Re-Enter \n");
02549 gtk_dialog_run (GTK_DIALOG (dialog));
02550 gtk_widget_destroy (dialog);
02551 gtk_main();
02552 }
02553 else
02554 {
02555
02556 create_main();
02557
02558 }
02559 counter=0;
02560 }
02561
02562 }
02563 mysql_close (connection1);
02564
02565 g_print("QUERY %s",query);
02566
02571 }
02572 static void callback_register( GtkWidget *widget,
02573 gpointer data )
02574 {
02575 g_print (" %s \n", (char *) data);
02576 create_register();
02577 }
02578
02585 static gboolean delete_event( GtkWidget *widget,
02586 GdkEvent *event,
02587 gpointer data )
02588 {
02589 gtk_main_quit ();
02590 return FALSE;
02591 }
02592
02593 static void enter_callback( GtkWidget *widget,
02594 GtkWidget *entry )
02595 {
02596 const gchar *entry_text;
02597 entry_text = gtk_entry_get_text (GTK_ENTRY (entry));
02598 }
02599
02610 int main( int argc,
02611 char *argv[] )
02612 {
02613 create_database();
02614
02615 gtk_init (&argc, &argv);
02616
02617 window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
02618
02619
02620 gtk_window_set_default_size(GTK_WINDOW(window),50,50);
02621
02622
02623 gtk_window_set_title (GTK_WINDOW (window), "Login");
02624
02625
02626
02627 g_signal_connect (G_OBJECT (window), "delete_event", G_CALLBACK (delete_event), NULL);
02628
02629
02630 gtk_container_set_border_width (GTK_CONTAINER (window), 10);
02631
02632 table = gtk_table_new (2, 2, TRUE);
02633
02634
02635 gtk_container_add (GTK_CONTAINER (window), table);
02636
02637
02638
02639 entry_username = gtk_entry_new ();
02640 g_signal_connect (G_OBJECT (entry_username), "activate", G_CALLBACK (enter_callback), (gpointer) entry_username);
02641 gtk_entry_set_text (GTK_ENTRY (entry_username), "");
02642 gtk_editable_select_region (GTK_EDITABLE (entry_username), 0, GTK_ENTRY (entry_username)->text_length);
02643 gtk_table_attach_defaults (GTK_TABLE (table), entry_username, 1, 2, 0, 1);
02644 gtk_widget_show (entry_username);
02645
02646
02647 entry_password = gtk_entry_new ();
02648 g_signal_connect (G_OBJECT (entry_password), "activate", G_CALLBACK (gtk_entry_set_visibility), (gpointer) entry_password);
02649 gtk_entry_set_text (GTK_ENTRY (entry_password), "");
02650 gtk_editable_select_region (GTK_EDITABLE (entry_password), 0, GTK_ENTRY (entry_password)->text_length);
02651 gtk_table_attach_defaults (GTK_TABLE (table), entry_password, 1, 2, 1, 2);
02652 gtk_widget_show (entry_password);
02653
02654 label=gtk_label_new("Username");
02655 gtk_table_attach_defaults (GTK_TABLE (table), label, 0, 1, 0, 1);
02656 gtk_widget_show (label);
02657
02658 label=gtk_label_new("Password");
02659 gtk_table_attach_defaults (GTK_TABLE (table), label, 0, 1, 1, 2);
02660 gtk_widget_show (label);
02661
02662
02663
02664 button = gtk_button_new_with_label ("Login");
02665 g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (callback_login), (gpointer) "Login");
02666 gtk_table_attach_defaults (GTK_TABLE (table), button, 0, 1, 3, 4);
02667 gtk_widget_show (button);
02668
02669 g_signal_connect_swapped (G_OBJECT (button), "clicked",
02670 G_CALLBACK (close_application),
02671 G_OBJECT (window));
02672
02673 button = gtk_button_new_with_label ("Register");
02674 g_signal_connect (G_OBJECT (button), "clicked", G_CALLBACK (callback_register), (gpointer) "Register");
02675 gtk_table_attach_defaults (GTK_TABLE (table), button, 1, 2, 3, 4);
02676 gtk_widget_show (button);
02677
02678
02679 gtk_widget_show (table);
02680 gtk_widget_show (window);
02681
02682 gtk_main ();
02683
02684 return 0;
02685 }