You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bluesky-commits@incubator.apache.org by pi...@apache.org on 2009/11/30 12:01:26 UTC
svn commit: r885392 [24/25] - in /incubator/bluesky/trunk/RealClass:
Student/src/ Teacher/ Teacher/autom4te.cache/ Teacher/src/
Teacher/src/.deps/ Teacher/src/pic/
Added: incubator/bluesky/trunk/RealClass/Teacher/src/interface.cc
URL: http://svn.apache.org/viewvc/incubator/bluesky/trunk/RealClass/Teacher/src/interface.cc?rev=885392&view=auto
==============================================================================
--- incubator/bluesky/trunk/RealClass/Teacher/src/interface.cc (added)
+++ incubator/bluesky/trunk/RealClass/Teacher/src/interface.cc Mon Nov 30 12:01:23 2009
@@ -0,0 +1,2019 @@
+/** \file interface.cc implemantaion for GUI gadgets
+*
+*
+*Licensed to the Apache Software Foundation (ASF) under one
+*or more contributor license agreements. See the NOTICE file
+*distributed with this work for additional information
+*regarding copyright ownership. The ASF licenses this file
+*to you under the Apache License, Version 2.0 (the
+*"License"); you may not use this file except in compliance
+*with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+*Unless required by applicable law or agreed to in writing,
+*software distributed under the License is distributed on an
+*"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+*KIND, either express or implied. See the License for the
+*specific language governing permissions and limitations
+*under the License.
+*/
+#ifdef HAVE_CONFIG_H
+# include <config.h>
+#endif
+
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
+#include <string.h>
+#include <stdio.h>
+
+#include <gdk/gdkkeysyms.h>
+#include <gtk/gtk.h>
+#include <stdlib.h>
+#include <iostream.h>
+
+#include "callbacks.hh"
+#include "interface.hh"
+#include "support.hh"
+#include "trcclient.hh"
+
+#include "languagechoose.h"
+#include "en_de_audio.h"
+#include "en_de_video.h"
+#include "en_de_screen.h"
+
+#include "errorinfo.h"
+
+#include <gdk/gdkx.h>
+
+extern CVideoReceiver g_studet_videoreceiver;
+extern CAudioReceiver g_student_audioreceiver;
+
+extern struct entry_setpara ncteacher_get_para;
+extern struct entry_usepara ncteacher_get_user;
+
+struct CRCLTeacherLogin teachlogin;
+
+GtkWidget *file_entry;//check
+GtkWidget *enlocalip;//localIP
+
+GtkWidget *enserverip;//serverIP
+GtkWidget *enserverport;//serverPort
+GtkWidget *username;
+GtkWidget *passport;
+GtkWidget *creatclass;
+GtkWidget *stopclass;
+GtkWidget *login;
+GtkWidget *exitsys;
+GtkWidget *set_item;
+GtkWidget *classEntry;
+GtkWidget *audioEntry;
+GtkWidget *videoEntry;
+GtkWidget *modetech;
+GtkWidget *modecomu;
+
+GtkWidget *set_toolbutton;
+GtkWidget *join_toolbutton;
+GtkWidget *exit_toolbutton;
+GtkWidget *creat_toolbutton;
+GtkWidget *cancel_toolbutton;
+GtkWidget *tech_toolbutton;
+GtkWidget *commu_toolbutton;
+GtkWidget *allow_chat_toolbutton;
+GtkWidget *rec_toolbutton;
+GtkWidget *student_list_label;
+GtkWidget *student_clist;
+
+GtkWidget *concentrate_add_button;
+GtkWidget *concentrate_concel_button;
+
+GtkTextBuffer *commu_buffer;
+GtkTextIter commu_end;
+GtkTextIter commu_start;
+GtkWidget *chat_button;
+
+GtkWidget *studentimage;
+GtkWidget *teacherimage;
+
+GtkWidget *chat_entry;
+GtkAdjustment *adj;
+GtkWidget *commu_textview;
+
+GtkWidget *review_image;
+GtkWidget *combobox4;
+GtkWidget *combobox5;
+GtkWidget *rec_delay_set_dialog;
+extern int g_work_mode;
+extern int g_video_mode;
+extern int g_VideoDevCount;
+extern char g_DevName[10][32];
+const char *classcenterIP;
+const char *classcenterport;
+int v4l_dev_num = 0;
+CRCLCreateGroup CreateGroup;
+
+GtkWidget*
+create_window1(void)
+{
+
+ GtkWidget *window1;
+ GtkWidget *vbox20;
+ GtkWidget *main_menubar;
+ GtkWidget *system;
+ GtkWidget *system_menu;
+ GtkWidget *_________1;
+ GtkWidget *modechge;
+ GtkWidget *modechge_menu;
+ GtkWidget *see;
+ GtkWidget *see_menu;
+ GtkWidget *stuimg;
+ GtkWidget *techimg;
+ GtkWidget *vbox21;
+ GtkWidget *main_toolbar;
+ GtkIconSize tmp_toolbar_icon_size;
+ GtkWidget *toolitem1;
+ GtkWidget *toolbar_label1;
+ GtkWidget *tmp_image;
+ GtkWidget *toolitem2;
+ GtkWidget *toolbar_label2;
+ GtkWidget *toolitem3;
+ GtkWidget *toolbar_label3;
+ GtkWidget *toolitem4;
+ GtkWidget *toolbar_label4;
+ GtkWidget *toolitem5;
+ GtkWidget *toolbar_label5;
+ GtkWidget *toolitem6;
+ GtkWidget *toolbar_label6;
+ GtkWidget *toolitem7;
+ GtkWidget *toolbar_label7;
+ GtkWidget *toolitem8;
+ GtkWidget *toolbar_label8;
+ GtkWidget *vbox22;
+ GtkWidget *hbox37;
+ GtkWidget *vbox25;
+ GtkWidget *student_frame;
+ GtkWidget *alignment14;
+ GtkWidget *scrolledwindow8;
+ GtkWidget *student_id_label;
+ GtkWidget *student_name_label;
+ GtkWidget *commu_status_label;
+ GtkWidget *vbox28;
+ GtkWidget *vbox29;
+ GtkWidget *vbox30;
+ GtkWidget *vbox31;
+ GtkWidget *vbox32;
+ GtkWidget *concentrate_label3;
+ GtkWidget *vbox33;
+ GtkWidget *hbox43;
+ GtkWidget *concentrate_label1;
+ GtkWidget *concentrate_label2;
+ GtkWidget *concentrate_label4;
+ GtkWidget *vbox24;
+ GtkWidget *text_frame;
+ GtkWidget *alignment13;
+ GtkWidget *scrolledwindow7;
+ GtkWidget *clearitem;
+ GtkWidget *clearitem_menu;
+ GtkWidget *clearchat_item;
+ GtkWidget *commu_text_label;
+ GtkWidget *hbox38;
+ GtkWidget *hbox39;
+ GtkWidget *commun_label1;
+ GtkWidget *hbox40;
+ GtkWidget *hbox41;
+ GtkWidget *commu_label2;
+ GtkWidget *vbox27;
+ GtkWidget *commu_label3;
+ GtkWidget *label61;
+ GtkWidget *vbox23;
+ GtkWidget *statusbar1;
+
+ GtkTooltips *tooltips;
+ GtkWidget *choose;
+ GtkWidget *choose_menu;
+ GtkWidget *choose_item;
+ GtkWidget *toolitem9;
+ GtkWidget *label87;
+ GtkWidget *work_mode;
+ GdkScreen *ServerScreen;
+ int iHeight;
+ int iWidth;
+ ServerScreen = gdk_screen_get_default();
+ iHeight = gdk_screen_get_height(ServerScreen);
+ iWidth = gdk_screen_get_width(ServerScreen);
+ if (iHeight > 600 || iWidth > 800)
+ {
+ printf("Error:screen's resolution is big!\n");
+ Error_dia(ERROR023, ERROR_S023);
+
+ }
+ if (iHeight < 600 || iWidth < 800)
+ {
+ printf("Error:screen's resolution is small!\n");
+ Error_dia(ERROR024, ERROR_S024);
+ return NULL;
+ }
+
+ tooltips = gtk_tooltips_new();
+
+ window1 = gtk_window_new(GTK_WINDOW_TOPLEVEL);
+ gtk_widget_set_size_request(window1, 770, 520);
+ gtk_window_set_title(GTK_WINDOW(window1), ptitle);
+ gtk_window_set_resizable(GTK_WINDOW(window1), FALSE);
+
+ vbox20 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox20);
+ gtk_container_add(GTK_CONTAINER(window1), vbox20);
+
+ main_menubar = gtk_menu_bar_new();
+ gtk_widget_show(main_menubar);
+ gtk_box_pack_start(GTK_BOX(vbox20), main_menubar, FALSE, FALSE, 0);
+
+ system = gtk_menu_item_new_with_mnemonic(psys);
+ gtk_widget_show(system);
+ gtk_container_add(GTK_CONTAINER(main_menubar), system);
+
+ system_menu = gtk_menu_new();
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(system), system_menu);
+
+ creatclass = gtk_menu_item_new_with_mnemonic(pcreat);
+ gtk_widget_show(creatclass);
+ gtk_container_add(GTK_CONTAINER(system_menu), creatclass);
+ gtk_widget_set_sensitive(creatclass, FALSE);
+
+ stopclass = gtk_menu_item_new_with_mnemonic(pstop);
+ gtk_widget_show(stopclass);
+ gtk_container_add(GTK_CONTAINER(system_menu), stopclass);
+ gtk_widget_set_sensitive(stopclass, FALSE);
+
+ set_item = gtk_menu_item_new_with_mnemonic(pset);
+ gtk_widget_show(set_item);
+ gtk_container_add(GTK_CONTAINER(system_menu), set_item);
+
+ login = gtk_menu_item_new_with_mnemonic(plogin);
+ gtk_widget_show(login);
+ gtk_container_add(GTK_CONTAINER(system_menu), login);
+ gtk_widget_set_sensitive(login, FALSE);
+
+ _________1 = gtk_separator_menu_item_new();
+ gtk_widget_show(_________1);
+ gtk_container_add(GTK_CONTAINER(system_menu), _________1);
+ gtk_widget_set_sensitive(_________1, FALSE);
+
+ exitsys = gtk_menu_item_new_with_mnemonic(pquit);
+ gtk_widget_show(exitsys);
+ gtk_container_add(GTK_CONTAINER(system_menu), exitsys);
+
+ modechge = gtk_menu_item_new_with_mnemonic(pmodechge);
+ gtk_widget_show(modechge);
+ gtk_container_add(GTK_CONTAINER(main_menubar), modechge);
+
+ modechge_menu = gtk_menu_new();
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(modechge), modechge_menu);
+
+ modetech = gtk_menu_item_new_with_mnemonic(pmodetech);
+ gtk_widget_show(modetech);
+ gtk_container_add(GTK_CONTAINER(modechge_menu), modetech);
+ gtk_widget_set_sensitive(modetech, FALSE);
+
+ modecomu = gtk_menu_item_new_with_mnemonic(pmodecomu);
+ gtk_widget_show(modecomu);
+ gtk_container_add(GTK_CONTAINER(modechge_menu), modecomu);
+ gtk_widget_set_sensitive(modecomu, FALSE);
+
+ see = gtk_menu_item_new_with_mnemonic(pview);
+ gtk_widget_show(see);
+ gtk_container_add(GTK_CONTAINER(main_menubar), see);
+
+ see_menu = gtk_menu_new();
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(see), see_menu);
+
+ stuimg = gtk_menu_item_new_with_mnemonic(pstuimg);
+ gtk_widget_show(stuimg);
+ gtk_container_add(GTK_CONTAINER(see_menu), stuimg);
+
+ techimg = gtk_menu_item_new_with_mnemonic(ptechimg);
+ gtk_widget_show(techimg);
+ gtk_container_add(GTK_CONTAINER(see_menu), techimg);
+
+ vbox21 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox21);
+ gtk_box_pack_start(GTK_BOX(vbox20), vbox21, TRUE, TRUE, 0);
+
+ main_toolbar = gtk_toolbar_new();
+ gtk_widget_show(main_toolbar);
+ gtk_box_pack_start(GTK_BOX(vbox21), main_toolbar, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(main_toolbar, -1, 48);
+ gtk_toolbar_set_style(GTK_TOOLBAR(main_toolbar), GTK_TOOLBAR_BOTH);
+ tmp_toolbar_icon_size
+ = gtk_toolbar_get_icon_size(GTK_TOOLBAR(main_toolbar));
+
+ toolitem1 = (GtkWidget*) gtk_tool_item_new();
+ gtk_widget_show(toolitem1);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), toolitem1);
+
+ toolbar_label1 = gtk_label_new("");
+ gtk_widget_show(toolbar_label1);
+ gtk_container_add(GTK_CONTAINER(toolitem1), toolbar_label1);
+ gtk_widget_set_size_request(toolbar_label1, 8, -1);
+
+ tmp_image = gtk_image_new_from_stock("gtk-properties",
+ tmp_toolbar_icon_size);
+ gtk_widget_show(tmp_image);
+ set_toolbutton = (GtkWidget*) gtk_tool_button_new(tmp_image, pstatrib);
+ gtk_widget_show(set_toolbutton);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), set_toolbutton);
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(set_toolbutton), tooltips, p, NULL);
+
+ toolitem2 = (GtkWidget*) gtk_tool_item_new();
+ gtk_widget_show(toolitem2);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), toolitem2);
+
+ toolbar_label2 = gtk_label_new("");
+ gtk_widget_show(toolbar_label2);
+ gtk_container_add(GTK_CONTAINER(toolitem2), toolbar_label2);
+ gtk_widget_set_size_request(toolbar_label2, 30, -1);
+
+ tmp_image = gtk_image_new_from_stock("gtk-go-forward",
+ tmp_toolbar_icon_size);
+ gtk_widget_show(tmp_image);
+
+ join_toolbutton = (GtkWidget*) gtk_tool_button_new(tmp_image, pjoin);
+ gtk_widget_show(join_toolbutton);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), join_toolbutton);
+ gtk_widget_set_sensitive(join_toolbutton, FALSE);
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(join_toolbutton), tooltips, pgtk,
+ NULL);
+ gtk_widget_set_sensitive(join_toolbutton, FALSE);
+
+ toolitem3 = (GtkWidget*) gtk_tool_item_new();
+ gtk_widget_show(toolitem3);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), toolitem3);
+
+ toolbar_label3 = gtk_label_new("");
+ gtk_widget_show(toolbar_label3);
+ gtk_container_add(GTK_CONTAINER(toolitem3), toolbar_label3);
+ gtk_widget_set_size_request(toolbar_label3, 5, -1);
+
+ tmp_image = gtk_image_new_from_stock("gtk-quit", tmp_toolbar_icon_size);
+ gtk_widget_show(tmp_image);
+
+ exit_toolbutton = (GtkWidget*) gtk_tool_button_new(tmp_image, pexit);
+ gtk_widget_show(exit_toolbutton);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), exit_toolbutton);
+ gtk_widget_set_sensitive(exit_toolbutton, FALSE);
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(exit_toolbutton), tooltips, pgtk1,
+ NULL);
+ gtk_widget_set_sensitive(exit_toolbutton, FALSE);
+
+ toolitem4 = (GtkWidget*) gtk_tool_item_new();
+ gtk_widget_show(toolitem4);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), toolitem4);
+
+ toolbar_label4 = gtk_label_new("");
+ gtk_widget_show(toolbar_label4);
+ gtk_container_add(GTK_CONTAINER(toolitem4), toolbar_label4);
+ gtk_widget_set_size_request(toolbar_label4, 30, -1);
+
+ tmp_image = gtk_image_new_from_stock("gtk-yes", tmp_toolbar_icon_size);
+ gtk_widget_show(tmp_image);
+
+ creat_toolbutton = (GtkWidget*) gtk_tool_button_new(tmp_image, pcrt);
+ gtk_widget_show(creat_toolbutton);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), creat_toolbutton);
+ gtk_widget_set_sensitive(creat_toolbutton, FALSE);
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(creat_toolbutton), tooltips, pgtk2,
+ NULL);
+ gtk_widget_set_sensitive(creat_toolbutton, FALSE);
+
+ toolitem5 = (GtkWidget*) gtk_tool_item_new();
+ gtk_widget_show(toolitem5);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), toolitem5);
+
+ toolbar_label5 = gtk_label_new("");
+ gtk_widget_show(toolbar_label5);
+ gtk_container_add(GTK_CONTAINER(toolitem5), toolbar_label5);
+ gtk_widget_set_size_request(toolbar_label5, 5, -1);
+
+ tmp_image = gtk_image_new_from_stock("gtk-stop", tmp_toolbar_icon_size);
+ gtk_widget_show(tmp_image);
+
+ cancel_toolbutton = (GtkWidget*) gtk_tool_button_new(tmp_image, pcancle);
+ gtk_widget_show(cancel_toolbutton);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), cancel_toolbutton);
+ gtk_widget_set_sensitive(cancel_toolbutton, FALSE);
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(cancel_toolbutton), tooltips,
+ pgtk3, NULL);
+ gtk_widget_set_sensitive(cancel_toolbutton, FALSE);
+
+ toolitem6 = (GtkWidget*) gtk_tool_item_new();
+ gtk_widget_show(toolitem6);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), toolitem6);
+
+ toolbar_label6 = gtk_label_new("");
+ gtk_widget_show(toolbar_label6);
+ gtk_container_add(GTK_CONTAINER(toolitem6), toolbar_label6);
+ gtk_widget_set_size_request(toolbar_label6, 30, -1);
+
+ tmp_image = gtk_image_new_from_stock("gtk-edit", tmp_toolbar_icon_size);
+ gtk_widget_show(tmp_image);
+
+ tech_toolbutton = (GtkWidget*) gtk_tool_button_new(tmp_image, pteach);
+ gtk_widget_show(tech_toolbutton);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), tech_toolbutton);
+ gtk_widget_set_sensitive(tech_toolbutton, FALSE);
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(tech_toolbutton), tooltips, pgtk4,
+ NULL);
+ gtk_widget_set_sensitive(tech_toolbutton, FALSE);
+
+ toolitem7 = (GtkWidget*) gtk_tool_item_new();
+ gtk_widget_show(toolitem7);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), toolitem7);
+
+ toolbar_label7 = gtk_label_new("");
+ gtk_widget_show(toolbar_label7);
+ gtk_container_add(GTK_CONTAINER(toolitem7), toolbar_label7);
+ gtk_widget_set_size_request(toolbar_label7, 5, -1);
+
+ tmp_image = gtk_image_new_from_stock("gtk-network", tmp_toolbar_icon_size);
+ gtk_widget_show(tmp_image);
+
+ commu_toolbutton = (GtkWidget*) gtk_tool_button_new(tmp_image, pcomu);
+ gtk_widget_show(commu_toolbutton);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), commu_toolbutton);
+ gtk_widget_set_sensitive(commu_toolbutton, FALSE);
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(commu_toolbutton), tooltips, pgtk5,
+ NULL);
+ gtk_widget_set_sensitive(commu_toolbutton, FALSE);
+
+ toolitem8 = (GtkWidget*) gtk_tool_item_new();
+ gtk_widget_show(toolitem8);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), toolitem8);
+
+ toolbar_label8 = gtk_label_new("");
+ gtk_widget_show(toolbar_label8);
+ gtk_container_add(GTK_CONTAINER(toolitem8), toolbar_label8);
+ gtk_widget_set_size_request(toolbar_label8, 9, -1);
+
+ tmp_image = gtk_image_new_from_stock("gtk-dialog-warning",
+ tmp_toolbar_icon_size);
+ gtk_widget_show(tmp_image);
+ allow_chat_toolbutton = (GtkWidget*) gtk_tool_button_new(tmp_image,
+ pmodeswich);
+ gtk_widget_show(allow_chat_toolbutton);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), allow_chat_toolbutton);
+ gtk_widget_set_sensitive(allow_chat_toolbutton, FALSE);
+ gtk_tool_item_set_tooltip(GTK_TOOL_ITEM(allow_chat_toolbutton), tooltips,
+ _(pchatchge), NULL);
+
+ vbox22 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox22);
+ gtk_box_pack_start(GTK_BOX(vbox21), vbox22, TRUE, TRUE, 0);
+
+ hbox37 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox37);
+ gtk_box_pack_start(GTK_BOX(vbox22), hbox37, TRUE, TRUE, 0);
+
+ vbox25 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox25);
+ gtk_box_pack_start(GTK_BOX(hbox37), vbox25, TRUE, TRUE, 0);
+
+ student_frame = gtk_frame_new(NULL);
+ gtk_widget_show(student_frame);
+ gtk_box_pack_start(GTK_BOX(vbox25), student_frame, TRUE, TRUE, 0);
+ gtk_widget_set_size_request(student_frame, 112, 384);
+ gtk_container_set_border_width(GTK_CONTAINER(student_frame), 4);
+
+ alignment14 = gtk_alignment_new(0.5, 0.5, 1, 1);
+ gtk_widget_show(alignment14);
+ gtk_container_add(GTK_CONTAINER(student_frame), alignment14);
+ gtk_alignment_set_padding(GTK_ALIGNMENT(alignment14), 0, 0, 12, 0);
+
+ scrolledwindow8 = gtk_scrolled_window_new(NULL, NULL);
+ gtk_widget_show(scrolledwindow8);
+ gtk_container_add(GTK_CONTAINER(alignment14), scrolledwindow8);
+ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow8),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow8),
+ GTK_SHADOW_IN);
+
+ student_clist = gtk_clist_new(3);
+ gtk_widget_show(student_clist);
+ gtk_container_add(GTK_CONTAINER(scrolledwindow8), student_clist);
+ gtk_clist_set_column_width(GTK_CLIST(student_clist), 0, 18);
+ gtk_clist_set_column_width(GTK_CLIST(student_clist), 1, 58);
+ gtk_clist_set_column_width(GTK_CLIST(student_clist), 2, 56);
+ gtk_clist_column_titles_show(GTK_CLIST(student_clist));
+
+ student_id_label = gtk_label_new(_("ID"));
+ gtk_widget_show(student_id_label);
+ gtk_clist_set_column_widget(GTK_CLIST(student_clist), 0, student_id_label);
+
+ student_name_label = gtk_label_new(pstuname);
+ gtk_widget_show(student_name_label);
+ gtk_clist_set_column_widget(GTK_CLIST(student_clist), 1, student_name_label);
+
+ commu_status_label = gtk_label_new(pcomustat);
+ gtk_widget_show(commu_status_label);
+ gtk_clist_set_column_widget(GTK_CLIST(student_clist), 2, commu_status_label);
+
+ student_list_label = gtk_label_new(pstulist);
+ gtk_widget_show(student_list_label);
+ gtk_frame_set_label_widget(GTK_FRAME(student_frame), student_list_label);
+ gtk_label_set_use_markup(GTK_LABEL(student_list_label), TRUE);
+
+ vbox28 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox28);
+ gtk_box_pack_start(GTK_BOX(vbox25), vbox28, TRUE, TRUE, 0);
+
+ vbox29 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox29);
+ gtk_box_pack_start(GTK_BOX(vbox28), vbox29, TRUE, TRUE, 0);
+
+ vbox30 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox30);
+ gtk_box_pack_start(GTK_BOX(vbox29), vbox30, TRUE, TRUE, 0);
+ gtk_widget_set_size_request(vbox30, 100, -1);
+
+ vbox31 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox31);
+ gtk_box_pack_start(GTK_BOX(vbox30), vbox31, TRUE, TRUE, 0);
+
+ vbox32 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox32);
+ gtk_box_pack_start(GTK_BOX(vbox31), vbox32, TRUE, TRUE, 0);
+
+ concentrate_label3 = gtk_label_new("");
+ gtk_widget_show(concentrate_label3);
+ gtk_box_pack_start(GTK_BOX(vbox32), concentrate_label3, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(concentrate_label3, -1, 9);
+
+ vbox33 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox33);
+ gtk_box_pack_start(GTK_BOX(vbox32), vbox33, TRUE, TRUE, 0);
+
+ hbox43 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox43);
+ gtk_box_pack_start(GTK_BOX(vbox33), hbox43, TRUE, TRUE, 0);
+
+ concentrate_label1 = gtk_label_new("");
+ gtk_widget_show(concentrate_label1);
+ gtk_box_pack_start(GTK_BOX(hbox43), concentrate_label1, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(concentrate_label1, 49, -1);
+
+ concentrate_add_button = gtk_button_new_with_mnemonic(padd);
+ gtk_widget_show(concentrate_add_button);
+ gtk_box_pack_start(GTK_BOX(hbox43), concentrate_add_button, FALSE, FALSE, 0);
+ gtk_widget_set_sensitive(concentrate_add_button, FALSE);
+
+ concentrate_label2 = gtk_label_new("");
+ gtk_widget_show(concentrate_label2);
+ gtk_box_pack_start(GTK_BOX(hbox43), concentrate_label2, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(concentrate_label2, 10, -1);
+
+ concentrate_concel_button = gtk_button_new_with_mnemonic(pgtk11);
+ gtk_widget_show(concentrate_concel_button);
+ gtk_box_pack_start(GTK_BOX(hbox43), concentrate_concel_button, FALSE,
+ FALSE, 0);
+ gtk_widget_set_sensitive(concentrate_concel_button, FALSE);
+
+ concentrate_label4 = gtk_label_new("");
+ gtk_widget_show(concentrate_label4);
+ gtk_box_pack_start(GTK_BOX(vbox33), concentrate_label4, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(concentrate_label4, -1, 9);
+
+ vbox24 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox24);
+ gtk_box_pack_start(GTK_BOX(hbox37), vbox24, TRUE, TRUE, 0);
+
+ text_frame = gtk_frame_new(NULL);
+ gtk_widget_show(text_frame);
+ gtk_box_pack_start(GTK_BOX(vbox24), text_frame, TRUE, TRUE, 0);
+ gtk_widget_set_size_request(text_frame, 141, 380);
+ gtk_container_set_border_width(GTK_CONTAINER(text_frame), 4);
+
+ alignment13 = gtk_alignment_new(0.5, 0.5, 1, 1);
+ gtk_widget_show(alignment13);
+ gtk_container_add(GTK_CONTAINER(text_frame), alignment13);
+ gtk_alignment_set_padding(GTK_ALIGNMENT(alignment13), 0, 0, 12, 0);
+
+ scrolledwindow7 = gtk_scrolled_window_new(NULL, NULL);
+ gtk_widget_show(scrolledwindow7);
+ gtk_container_add(GTK_CONTAINER(alignment13), scrolledwindow7);
+ gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(scrolledwindow7),
+ GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
+ gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(scrolledwindow7),
+ GTK_SHADOW_IN);
+
+ adj = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(
+ scrolledwindow7));
+
+ commu_textview = gtk_text_view_new();
+ gtk_widget_show(commu_textview);
+ gtk_container_add(GTK_CONTAINER(scrolledwindow7), commu_textview);
+ gtk_text_view_set_editable(GTK_TEXT_VIEW(commu_textview), FALSE);
+
+ commu_buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(commu_textview));
+ gtk_text_buffer_get_end_iter(commu_buffer, &commu_end);
+
+ commu_text_label = gtk_label_new(pcommu);
+ gtk_widget_show(commu_text_label);
+ gtk_frame_set_label_widget(GTK_FRAME(text_frame), commu_text_label);
+ gtk_label_set_use_markup(GTK_LABEL(commu_text_label), TRUE);
+
+ hbox38 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox38);
+ gtk_box_pack_start(GTK_BOX(vbox24), hbox38, TRUE, TRUE, 0);
+
+ hbox39 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox39);
+ gtk_box_pack_start(GTK_BOX(hbox38), hbox39, TRUE, TRUE, 0);
+
+ commun_label1 = gtk_label_new("");
+ gtk_widget_show(commun_label1);
+ gtk_box_pack_start(GTK_BOX(hbox39), commun_label1, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(commun_label1, 12, -1);
+
+ hbox40 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox40);
+ gtk_box_pack_start(GTK_BOX(hbox39), hbox40, TRUE, TRUE, 0);
+
+ hbox41 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox41);
+ gtk_box_pack_start(GTK_BOX(hbox40), hbox41, TRUE, TRUE, 0);
+
+ chat_entry = gtk_entry_new();
+ gtk_widget_show(chat_entry);
+ gtk_box_pack_start(GTK_BOX(hbox41), chat_entry, TRUE, TRUE, 0);
+
+ commu_label2 = gtk_label_new("");
+ gtk_widget_show(commu_label2);
+ gtk_box_pack_start(GTK_BOX(hbox41), commu_label2, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(commu_label2, 5, -1);
+
+ vbox27 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox27);
+ gtk_box_pack_start(GTK_BOX(hbox40), vbox27, FALSE, FALSE, 0);
+
+ commu_label3 = gtk_label_new("");
+ gtk_widget_show(commu_label3);
+ gtk_box_pack_start(GTK_BOX(vbox27), commu_label3, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(commu_label3, -1, 12);
+
+ chat_button = gtk_button_new_with_mnemonic(pchat);
+ gtk_widget_show(chat_button);
+ gtk_box_pack_start(GTK_BOX(vbox27), chat_button, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(chat_button, 50, 26);
+ gtk_widget_set_sensitive(chat_button, FALSE);
+
+ label61 = gtk_label_new("");
+ gtk_widget_show(label61);
+ gtk_box_pack_start(GTK_BOX(hbox40), label61, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label61, 6, -1);
+
+ vbox23 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox23);
+ gtk_box_pack_start(GTK_BOX(hbox37), vbox23, TRUE, TRUE, 0);
+
+ studentimage = create_pixmap(window1, NULL);
+ gtk_widget_show(studentimage);
+ gtk_box_pack_start(GTK_BOX(vbox23), studentimage, TRUE, TRUE, 0);
+ gtk_widget_set_size_request(studentimage, 170, -1);
+
+ teacherimage = create_pixmap(window1, NULL);
+ gtk_widget_show(teacherimage);
+ gtk_box_pack_start(GTK_BOX(vbox23), teacherimage, TRUE, TRUE, 0);
+ gtk_widget_set_size_request(teacherimage, 170, -1);
+
+ statusbar1 = gtk_statusbar_new();
+ gtk_widget_show(statusbar1);
+ gtk_box_pack_start(GTK_BOX(vbox22), statusbar1, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(statusbar1, -1, 3);
+
+ choose = gtk_menu_item_new_with_mnemonic(pchoose);
+ gtk_widget_show(choose);
+ gtk_container_add(GTK_CONTAINER(main_menubar), choose);
+
+ choose_menu = gtk_menu_new();
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(choose), choose_menu);
+
+ choose_item = gtk_menu_item_new_with_mnemonic(pchositm);
+ gtk_widget_show(choose_item);
+ gtk_container_add(GTK_CONTAINER(choose_menu), choose_item);
+
+ work_mode = gtk_menu_item_new_with_mnemonic(pwkmode);
+ gtk_widget_show(work_mode);
+ gtk_container_add(GTK_CONTAINER(choose_menu), work_mode);
+
+ clearitem = gtk_menu_item_new_with_mnemonic(pclear);
+ gtk_widget_show(clearitem);
+ gtk_container_add(GTK_CONTAINER(main_menubar), clearitem);
+
+ clearitem_menu = gtk_menu_new();
+ gtk_menu_item_set_submenu(GTK_MENU_ITEM(clearitem), clearitem_menu);
+
+ clearchat_item = gtk_menu_item_new_with_mnemonic(pclrchat);
+ gtk_widget_show(clearchat_item);
+ gtk_container_add(GTK_CONTAINER(clearitem_menu), clearchat_item);
+
+ toolitem9 = (GtkWidget*) gtk_tool_item_new();
+ gtk_widget_show(toolitem9);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), toolitem9);
+
+ label87 = gtk_label_new("");
+ gtk_widget_show(label87);
+ gtk_container_add(GTK_CONTAINER(toolitem9), label87);
+ gtk_widget_set_size_request(label87, 10, -1);
+
+ tmp_image = gtk_image_new_from_stock("gtk-media-record",
+ tmp_toolbar_icon_size);
+ gtk_widget_show(tmp_image);
+ rec_toolbutton = (GtkWidget*) gtk_tool_button_new(tmp_image, prec);
+ gtk_widget_show(rec_toolbutton);
+ gtk_container_add(GTK_CONTAINER(main_toolbar), rec_toolbutton);
+ gtk_widget_set_sensitive(rec_toolbutton, FALSE);
+
+ g_signal_connect(G_OBJECT(window1), "destroy", G_CALLBACK(gtk_main_quit),
+ NULL);
+
+ g_signal_connect((gpointer) creatclass, "activate", G_CALLBACK(
+ on_creatclass_activate), NULL);
+ g_signal_connect((gpointer) stopclass, "activate", G_CALLBACK(
+ on_stopclass_activate), NULL);
+ g_signal_connect((gpointer) set_item, "activate", G_CALLBACK(
+ on_set_activate), NULL);
+ g_signal_connect((gpointer) login, "activate",
+ G_CALLBACK(on_login_activate), NULL);
+ g_signal_connect((gpointer) exitsys, "activate", G_CALLBACK(
+ on_exitsys_activate), window1);
+ g_signal_connect((gpointer) modetech, "activate", G_CALLBACK(
+ on_modetech_activate), NULL);
+ g_signal_connect((gpointer) modecomu, "activate", G_CALLBACK(
+ on_modecomu_activate), NULL);
+ g_signal_connect((gpointer) stuimg, "activate", G_CALLBACK(
+ on_stuimg_activate), NULL);
+ g_signal_connect((gpointer) techimg, "activate", G_CALLBACK(
+ on_techimg_activate), NULL);
+ g_signal_connect((gpointer) set_toolbutton, "clicked", G_CALLBACK(
+ on_set_toolbutton_clicked), NULL);
+ g_signal_connect((gpointer) join_toolbutton, "clicked", G_CALLBACK(
+ on_join_toolbutton_clicked), NULL);
+ g_signal_connect((gpointer) exit_toolbutton, "clicked", G_CALLBACK(
+ on_exit_toolbutton_clicked), window1);
+ g_signal_connect((gpointer) creat_toolbutton, "clicked", G_CALLBACK(
+ on_creat_toolbutton_clicked), NULL);
+ g_signal_connect((gpointer) cancel_toolbutton, "clicked", G_CALLBACK(
+ on_cancel_toolbutton_clicked), NULL);
+ g_signal_connect((gpointer) tech_toolbutton, "clicked", G_CALLBACK(
+ on_tech_toolbutton_clicked), NULL);
+ g_signal_connect((gpointer) commu_toolbutton, "clicked", G_CALLBACK(
+ on_commu_toolbutton_clicked), NULL);
+ g_signal_connect((gpointer) concentrate_add_button, "clicked", G_CALLBACK(
+ on_concentrate_add_button_clicked), NULL);
+ g_signal_connect((gpointer) concentrate_concel_button, "clicked",
+ G_CALLBACK(on_concentrate_concel_button_clicked), NULL);
+ g_signal_connect((gpointer) chat_button, "clicked", G_CALLBACK(
+ on_chat_button_clicked), chat_entry);
+
+ g_signal_connect((gpointer) chat_entry, "activate", G_CALLBACK(
+ on_chat_entry_activate), NULL);
+
+ g_signal_connect((gpointer) student_clist, "select_row", G_CALLBACK(
+ on_student_clist_select_row), NULL);
+
+ g_signal_connect((gpointer) allow_chat_toolbutton, "clicked", G_CALLBACK(
+ on_allow_chat_toolbutton_clicked), allow_chat_toolbutton);
+ g_signal_connect((gpointer) choose_item, "activate", G_CALLBACK(
+ on_choose_activate), NULL);
+ g_signal_connect((gpointer) work_mode, "activate", G_CALLBACK(
+ on_work_mode_activate), NULL);
+ g_signal_connect((gpointer) rec_toolbutton, "clicked", G_CALLBACK(
+ on_rec_toolbutton_clicked), rec_toolbutton);
+ g_signal_connect((gpointer) clearchat_item, "activate", G_CALLBACK(
+ on_clearchatitem_activate), NULL);
+ g_signal_connect(G_OBJECT(window1), "delete_event", G_CALLBACK(
+ window1_delete_event), window1);
+ return window1;
+
+}
+
+GtkWidget*
+create_para_dialog(void)
+{
+ GtkWidget *dialog1;
+ GtkWidget *dialog_vbox6;
+ GtkWidget *vbox39;
+ GtkWidget *frame12;
+ GtkWidget *alignment16;
+ GtkWidget *vbox40;
+ GtkWidget *hbox51;
+ GtkWidget *label71;
+ GtkWidget *hbox52;
+ GtkWidget *label72;
+ GtkWidget *label70;
+ GtkWidget *frame13;
+ GtkWidget *alignment17;
+ GtkWidget *vbox41;
+ GtkWidget *hbox53;
+ GtkWidget *label74;
+ GtkWidget *hbox54;
+ GtkWidget *label75;
+ GtkWidget *label73;
+ GtkWidget *hbox55;
+ GtkWidget *hbox57;
+ GtkWidget *advance_button;
+ GtkWidget *alignment20;
+ GtkWidget *hbox60;
+ GtkWidget *image5;
+ GtkWidget *label80;
+ GtkWidget *label79;
+ GtkWidget *networkcancelbutton;
+ GtkWidget *alignment18;
+ GtkWidget *hbox58;
+ GtkWidget *image3;
+ GtkWidget *label76;
+ GtkWidget *networkokbutton;
+ GtkWidget *alignment19;
+ GtkWidget *hbox59;
+ GtkWidget *image4;
+ GtkWidget *label77;
+ GtkWidget *dialog_action_area6;
+
+ dialog1 = gtk_dialog_new();
+ gtk_widget_set_size_request(dialog1, 300, 200);
+ gtk_window_set_title(GTK_WINDOW(dialog1), pgtitle);
+ gtk_window_set_modal(GTK_WINDOW(dialog1), TRUE);
+ gtk_window_set_resizable(GTK_WINDOW(dialog1), FALSE);
+ gtk_window_set_default_size(GTK_WINDOW(dialog1), 300, 200);
+ gtk_window_set_type_hint(GTK_WINDOW(dialog1), GDK_WINDOW_TYPE_HINT_DIALOG);
+
+ dialog_vbox6 = GTK_DIALOG(dialog1)->vbox;
+ gtk_widget_show(dialog_vbox6);
+
+ vbox39 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox39);
+ gtk_box_pack_start(GTK_BOX(dialog_vbox6), vbox39, TRUE, TRUE, 0);
+
+ frame12 = gtk_frame_new(NULL);
+ gtk_widget_show(frame12);
+ gtk_box_pack_start(GTK_BOX(vbox39), frame12, TRUE, TRUE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame12), 2);
+
+ alignment16 = gtk_alignment_new(0.5, 0.5, 1, 1);
+ gtk_widget_show(alignment16);
+ gtk_container_add(GTK_CONTAINER(frame12), alignment16);
+ gtk_alignment_set_padding(GTK_ALIGNMENT(alignment16), 0, 0, 12, 0);
+
+ vbox40 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox40);
+ gtk_container_add(GTK_CONTAINER(alignment16), vbox40);
+
+ hbox51 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox51);
+ gtk_box_pack_start(GTK_BOX(vbox40), hbox51, TRUE, TRUE, 0);
+
+ label71 = gtk_label_new(plabe1);
+ gtk_widget_show(label71);
+ gtk_box_pack_start(GTK_BOX(hbox51), label71, FALSE, FALSE, 0);
+
+ enserverip = gtk_entry_new();
+ gtk_widget_show(enserverip);
+ gtk_box_pack_start(GTK_BOX(hbox51), enserverip, FALSE, TRUE, 0);
+ gtk_widget_set_size_request(enserverip, 120, -1);
+ gtk_entry_set_text(GTK_ENTRY(enserverip), ncteacher_get_para.serverip);
+
+ hbox52 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox52);
+ gtk_box_pack_start(GTK_BOX(vbox40), hbox52, TRUE, TRUE, 0);
+
+ label72 = gtk_label_new(plabe2);
+ gtk_widget_show(label72);
+ gtk_box_pack_start(GTK_BOX(hbox52), label72, FALSE, FALSE, 0);
+
+ enserverport = gtk_entry_new();
+ gtk_widget_show(enserverport);
+ gtk_box_pack_start(GTK_BOX(hbox52), enserverport, FALSE, TRUE, 0);
+ gtk_widget_set_size_request(enserverport, 118, -1);
+ gtk_widget_set_sensitive(enserverport, FALSE);
+ char port_tmp[50];
+ sprintf(port_tmp, "%d", ncteacher_get_para.serverport);
+ gtk_entry_set_text(GTK_ENTRY(enserverport), port_tmp);
+
+ label70 = gtk_label_new(plabe0);
+ gtk_widget_show(label70);
+ gtk_frame_set_label_widget(GTK_FRAME(frame12), label70);
+ gtk_label_set_use_markup(GTK_LABEL(label70), TRUE);
+
+ frame13 = gtk_frame_new(NULL);
+ gtk_widget_show(frame13);
+ gtk_box_pack_start(GTK_BOX(vbox39), frame13, TRUE, TRUE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame13), 2);
+
+ alignment17 = gtk_alignment_new(0.5, 0.5, 1, 1);
+ gtk_widget_show(alignment17);
+ gtk_container_add(GTK_CONTAINER(frame13), alignment17);
+ gtk_alignment_set_padding(GTK_ALIGNMENT(alignment17), 0, 0, 12, 0);
+
+ vbox41 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox41);
+ gtk_container_add(GTK_CONTAINER(alignment17), vbox41);
+
+ hbox53 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox53);
+ gtk_box_pack_start(GTK_BOX(vbox41), hbox53, TRUE, TRUE, 0);
+
+ label74 = gtk_label_new(plabe4);
+ gtk_widget_show(label74);
+ gtk_box_pack_start(GTK_BOX(hbox53), label74, FALSE, FALSE, 0);
+
+ audioEntry = gtk_entry_new();
+ gtk_widget_show(audioEntry);
+ gtk_box_pack_start(GTK_BOX(hbox53), audioEntry, FALSE, TRUE, 0);
+ gtk_widget_set_size_request(audioEntry, 118, -1);
+ gtk_widget_set_sensitive(audioEntry, FALSE);
+ char caport_tmp[50];
+ sprintf(caport_tmp, "%d", ncteacher_get_para.audioport);
+ gtk_entry_set_text(GTK_ENTRY(audioEntry), caport_tmp);
+
+ hbox54 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox54);
+ gtk_box_pack_start(GTK_BOX(vbox41), hbox54, TRUE, TRUE, 0);
+
+ label75 = gtk_label_new(plabe5);
+ gtk_widget_show(label75);
+ gtk_box_pack_start(GTK_BOX(hbox54), label75, FALSE, FALSE, 0);
+
+ videoEntry = gtk_entry_new();
+ gtk_widget_show(videoEntry);
+ gtk_box_pack_start(GTK_BOX(hbox54), videoEntry, FALSE, TRUE, 0);
+ gtk_widget_set_size_request(videoEntry, 118, -1);
+ gtk_widget_set_sensitive(videoEntry, FALSE);
+ char cvport_tmp[50];
+ sprintf(cvport_tmp, "%d", ncteacher_get_para.videoport);
+ gtk_entry_set_text(GTK_ENTRY(videoEntry), cvport_tmp);
+
+ label73 = gtk_label_new(plabe3);
+ gtk_widget_show(label73);
+ gtk_frame_set_label_widget(GTK_FRAME(frame13), label73);
+ gtk_label_set_use_markup(GTK_LABEL(label73), TRUE);
+
+ hbox55 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox55);
+ gtk_box_pack_start(GTK_BOX(vbox39), hbox55, FALSE, FALSE, 0);
+
+ hbox57 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox57);
+ gtk_box_pack_start(GTK_BOX(hbox55), hbox57, TRUE, TRUE, 0);
+
+ advance_button = gtk_button_new();
+ gtk_widget_show(advance_button);
+ gtk_box_pack_start(GTK_BOX(hbox57), advance_button, TRUE, FALSE, 0);
+ gtk_widget_set_size_request(advance_button, 60, 25);
+
+ alignment20 = gtk_alignment_new(0.5, 0.5, 0, 0);
+ gtk_widget_show(alignment20);
+ gtk_container_add(GTK_CONTAINER(advance_button), alignment20);
+
+ hbox60 = gtk_hbox_new(FALSE, 2);
+ gtk_widget_show(hbox60);
+ gtk_container_add(GTK_CONTAINER(alignment20), hbox60);
+
+ image5 = gtk_image_new_from_stock("gtk-add", GTK_ICON_SIZE_BUTTON);
+ gtk_widget_show(image5);
+ gtk_box_pack_start(GTK_BOX(hbox60), image5, FALSE, FALSE, 0);
+
+ label80 = gtk_label_new_with_mnemonic(plabe10);
+ gtk_widget_show(label80);
+ gtk_box_pack_start(GTK_BOX(hbox60), label80, FALSE, FALSE, 0);
+
+ label79 = gtk_label_new("");
+ gtk_widget_show(label79);
+ gtk_box_pack_start(GTK_BOX(hbox57), label79, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label79, 108, -1);
+
+ networkcancelbutton = gtk_button_new();
+ gtk_widget_show(networkcancelbutton);
+ gtk_box_pack_start(GTK_BOX(hbox57), networkcancelbutton, TRUE, FALSE, 0);
+
+ alignment18 = gtk_alignment_new(0.5, 0.5, 0, 0);
+ gtk_widget_show(alignment18);
+ gtk_container_add(GTK_CONTAINER(networkcancelbutton), alignment18);
+
+ hbox58 = gtk_hbox_new(FALSE, 2);
+ gtk_widget_show(hbox58);
+ gtk_container_add(GTK_CONTAINER(alignment18), hbox58);
+
+ image3 = gtk_image_new_from_stock("gtk-cancel", GTK_ICON_SIZE_BUTTON);
+ gtk_widget_show(image3);
+ gtk_box_pack_start(GTK_BOX(hbox58), image3, FALSE, FALSE, 0);
+
+ label76 = gtk_label_new_with_mnemonic(plabe6);
+ gtk_widget_show(label76);
+ gtk_box_pack_start(GTK_BOX(hbox58), label76, FALSE, FALSE, 0);
+
+ networkokbutton = gtk_button_new();
+ gtk_widget_show(networkokbutton);
+ gtk_box_pack_start(GTK_BOX(hbox57), networkokbutton, TRUE, FALSE, 0);
+
+ alignment19 = gtk_alignment_new(0.5, 0.5, 0, 0);
+ gtk_widget_show(alignment19);
+ gtk_container_add(GTK_CONTAINER(networkokbutton), alignment19);
+
+ hbox59 = gtk_hbox_new(FALSE, 2);
+ gtk_widget_show(hbox59);
+ gtk_container_add(GTK_CONTAINER(alignment19), hbox59);
+
+ image4 = gtk_image_new_from_stock("gtk-ok", GTK_ICON_SIZE_BUTTON);
+ gtk_widget_show(image4);
+ gtk_box_pack_start(GTK_BOX(hbox59), image4, FALSE, FALSE, 0);
+
+ label77 = gtk_label_new_with_mnemonic(plabe7);
+ gtk_widget_show(label77);
+ gtk_box_pack_start(GTK_BOX(hbox59), label77, FALSE, FALSE, 0);
+
+ dialog_action_area6 = GTK_DIALOG(dialog1)->action_area;
+ gtk_widget_show(dialog_action_area6);
+ gtk_widget_set_size_request(dialog_action_area6, -1, 0);
+ gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area6),
+ GTK_BUTTONBOX_END);
+
+ g_signal_connect((gpointer) advance_button, "clicked", G_CALLBACK(
+ on_advance_button_clicked), NULL);
+ g_signal_connect((gpointer) networkcancelbutton, "clicked", G_CALLBACK(
+ on_networkcancelbutton_clicked), dialog1);
+ g_signal_connect((gpointer) networkokbutton, "clicked", G_CALLBACK(
+ on_networkokbutton_clicked), dialog1);
+
+ return dialog1;
+}
+
+GtkWidget* //login dialog
+create_login_dialog(void)
+{
+ GtkWidget *dialog2;
+ GtkWidget *dialog_vbox2;
+ GtkWidget *hbox29;
+ GtkWidget *frame10;
+ GtkWidget *alignment10;
+ GtkWidget *vbox18;
+ GtkWidget *hbox31;
+ GtkWidget *label55;
+ GtkWidget *hbox32;
+ GtkWidget *label56;
+ GtkWidget *label54;
+ GtkWidget *dialog_action_area2;
+ GtkWidget *loginokbutton;
+ GtkWidget *login_cancelbutton;
+
+ dialog2 = gtk_dialog_new();
+ gtk_widget_set_size_request(dialog2, -1, 227);
+ gtk_window_set_title(GTK_WINDOW(dialog2), ptitle1); //_("\347\231\273\345\275\225\347\252\227\345\217\243"));
+ gtk_window_set_default_size(GTK_WINDOW(dialog2), 249, 158);
+ gtk_window_set_modal(GTK_WINDOW(dialog2), TRUE);
+ gtk_window_set_resizable(GTK_WINDOW(dialog2), FALSE);
+ gtk_window_set_type_hint(GTK_WINDOW(dialog2), GDK_WINDOW_TYPE_HINT_DIALOG);
+
+ dialog_vbox2 = GTK_DIALOG(dialog2)->vbox;
+ gtk_widget_show(dialog_vbox2);
+
+ hbox29 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox29);
+ gtk_box_pack_start(GTK_BOX(dialog_vbox2), hbox29, TRUE, TRUE, 0);
+
+ frame10 = gtk_frame_new(NULL);
+ gtk_widget_show(frame10);
+ gtk_box_pack_start(GTK_BOX(hbox29), frame10, TRUE, TRUE, 0);
+ gtk_widget_set_size_request(frame10, 301, 160);
+ gtk_container_set_border_width(GTK_CONTAINER(frame10), 20);
+
+ alignment10 = gtk_alignment_new(0.5, 0.5, 1, 1);
+ gtk_widget_show(alignment10);
+ gtk_container_add(GTK_CONTAINER(frame10), alignment10);
+ gtk_container_set_border_width(GTK_CONTAINER(alignment10), 20);
+ gtk_alignment_set_padding(GTK_ALIGNMENT(alignment10), 0, 0, 12, 0);
+
+ vbox18 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox18);
+ gtk_container_add(GTK_CONTAINER(alignment10), vbox18);
+
+ hbox31 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox31);
+ gtk_box_pack_start(GTK_BOX(vbox18), hbox31, TRUE, TRUE, 0);
+
+ label55 = gtk_label_new(plabe05);
+ gtk_widget_show(label55);
+ gtk_box_pack_start(GTK_BOX(hbox31), label55, FALSE, FALSE, 0);
+
+ username = gtk_entry_new();
+ gtk_widget_show(username);
+ gtk_box_pack_start(GTK_BOX(hbox31), username, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(username, 150, -1);
+ gtk_entry_set_text(GTK_ENTRY(username), ncteacher_get_user.username);
+
+ hbox32 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox32);
+ gtk_box_pack_start(GTK_BOX(vbox18), hbox32, TRUE, TRUE, 0);
+
+ label56 = gtk_label_new(plabe06);
+ gtk_widget_show(label56);
+ gtk_box_pack_start(GTK_BOX(hbox32), label56, FALSE, FALSE, 0);
+
+ passport = gtk_entry_new();
+ gtk_widget_show(passport);
+ gtk_box_pack_start(GTK_BOX(hbox32), passport, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(passport, 150, -1);
+ gtk_entry_set_visibility(GTK_ENTRY(passport), FALSE);
+ gtk_entry_set_visibility(GTK_ENTRY(passport), FALSE);
+ gtk_entry_set_text(GTK_ENTRY(passport), ncteacher_get_user.password);
+
+ label54 = gtk_label_new(plabe04);
+ gtk_widget_show(label54);
+ gtk_frame_set_label_widget(GTK_FRAME(frame10), label54);
+ gtk_label_set_use_markup(GTK_LABEL(label54), TRUE);
+
+ dialog_action_area2 = GTK_DIALOG(dialog2)->action_area;
+ gtk_widget_show(dialog_action_area2);
+ gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area2),
+ GTK_BUTTONBOX_END);
+
+ login_cancelbutton = gtk_button_new_from_stock("gtk-cancel");
+ gtk_widget_show(login_cancelbutton);
+ gtk_dialog_add_action_widget(GTK_DIALOG(dialog2), login_cancelbutton,
+ GTK_RESPONSE_CANCEL);
+ gtk_widget_set_size_request(login_cancelbutton, 79, 32);
+ GTK_WIDGET_SET_FLAGS(login_cancelbutton, GTK_CAN_DEFAULT);
+
+ loginokbutton = gtk_button_new_from_stock("gtk-ok");
+ gtk_widget_show(loginokbutton);
+ gtk_dialog_add_action_widget(GTK_DIALOG(dialog2), loginokbutton,
+ GTK_RESPONSE_OK);
+ GTK_WIDGET_SET_FLAGS(loginokbutton, GTK_CAN_DEFAULT);
+
+ g_signal_connect((gpointer) login_cancelbutton, "clicked", G_CALLBACK(
+ on_login_cancelbutton_destroy), dialog2);
+
+ g_signal_connect((gpointer) loginokbutton, "clicked", G_CALLBACK(
+ on_loginokbutton_clicked), dialog2);
+
+ return dialog2;
+}
+
+GtkWidget*
+creat_class_dialog(void)
+{
+
+ GtkWidget *creat_class;
+ GtkWidget *dialog_vbox7;
+ GtkWidget *frame14;
+ GtkWidget *alignment21;
+ GtkWidget *hbox62;
+ GtkWidget *label82;
+ GtkWidget *label81;
+ GtkWidget *dialog_action_area7;
+ GtkWidget *create_cancelbut;
+ GtkWidget *alignment22;
+ GtkWidget *hbox63;
+ GtkWidget *image6;
+ GtkWidget *label83;
+ GtkWidget *create_okbutton;
+ GtkWidget *alignment23;
+ GtkWidget *hbox64;
+ GtkWidget *image7;
+ GtkWidget *label84;
+
+ creat_class = gtk_dialog_new();
+ gtk_widget_set_size_request(creat_class, 286, 188);
+ gtk_window_set_title(GTK_WINDOW(creat_class), psttitl);
+ gtk_window_set_resizable(GTK_WINDOW(creat_class), FALSE);
+ gtk_window_set_modal(GTK_WINDOW(creat_class), TRUE);
+ gtk_window_set_destroy_with_parent(GTK_WINDOW(creat_class), TRUE);
+ gtk_window_set_type_hint(GTK_WINDOW(creat_class),
+ GDK_WINDOW_TYPE_HINT_DIALOG);
+
+ dialog_vbox7 = GTK_DIALOG(creat_class)->vbox;
+ gtk_widget_show(dialog_vbox7);
+
+ frame14 = gtk_frame_new(NULL);
+ gtk_widget_show(frame14);
+ gtk_box_pack_start(GTK_BOX(dialog_vbox7), frame14, TRUE, TRUE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame14), 10);
+
+ alignment21 = gtk_alignment_new(0.5, 0.5, 1, 1);
+ gtk_widget_show(alignment21);
+ gtk_container_add(GTK_CONTAINER(frame14), alignment21);
+ gtk_alignment_set_padding(GTK_ALIGNMENT(alignment21), 0, 0, 12, 0);
+
+ hbox62 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox62);
+ gtk_container_add(GTK_CONTAINER(alignment21), hbox62);
+
+ label82 = gtk_label_new(plabe12);
+ gtk_widget_show(label82);
+ gtk_box_pack_start(GTK_BOX(hbox62), label82, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label82, 88, -1);
+
+ classEntry = gtk_entry_new();
+ gtk_widget_show(classEntry);
+ gtk_box_pack_start(GTK_BOX(hbox62), classEntry, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(classEntry, 142, -1);
+ gtk_entry_set_text(GTK_ENTRY(classEntry), _("class"));
+
+ label81 = gtk_label_new(_("<b></b>"));
+ gtk_widget_show(label81);
+ gtk_frame_set_label_widget(GTK_FRAME(frame14), label81);
+ gtk_label_set_use_markup(GTK_LABEL(label81), TRUE);
+
+ dialog_action_area7 = GTK_DIALOG(creat_class)->action_area;
+ gtk_widget_show(dialog_action_area7);
+ gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area7),
+ GTK_BUTTONBOX_END);
+
+ create_cancelbut = gtk_button_new();
+ gtk_widget_show(create_cancelbut);
+ gtk_dialog_add_action_widget(GTK_DIALOG(creat_class), create_cancelbut, 0);
+ gtk_widget_set_size_request(create_cancelbut, 44, -1);
+ GTK_WIDGET_SET_FLAGS(create_cancelbut, GTK_CAN_DEFAULT);
+
+ alignment22 = gtk_alignment_new(0.5, 0.5, 0, 0);
+ gtk_widget_show(alignment22);
+ gtk_container_add(GTK_CONTAINER(create_cancelbut), alignment22);
+
+ hbox63 = gtk_hbox_new(FALSE, 2);
+ gtk_widget_show(hbox63);
+ gtk_container_add(GTK_CONTAINER(alignment22), hbox63);
+
+ image6 = gtk_image_new_from_stock("gtk-cancel", GTK_ICON_SIZE_BUTTON);
+ gtk_widget_show(image6);
+ gtk_box_pack_start(GTK_BOX(hbox63), image6, FALSE, FALSE, 0);
+
+ label83 = gtk_label_new_with_mnemonic(plabe13);
+ gtk_widget_show(label83);
+ gtk_box_pack_start(GTK_BOX(hbox63), label83, FALSE, FALSE, 0);
+
+ create_okbutton = gtk_button_new();
+ gtk_widget_show(create_okbutton);
+ gtk_dialog_add_action_widget(GTK_DIALOG(creat_class), create_okbutton, 0);
+ GTK_WIDGET_SET_FLAGS(create_okbutton, GTK_CAN_DEFAULT);
+
+ alignment23 = gtk_alignment_new(0.5, 0.5, 0, 0);
+ gtk_widget_show(alignment23);
+ gtk_container_add(GTK_CONTAINER(create_okbutton), alignment23);
+
+ hbox64 = gtk_hbox_new(FALSE, 2);
+ gtk_widget_show(hbox64);
+ gtk_container_add(GTK_CONTAINER(alignment23), hbox64);
+
+ image7 = gtk_image_new_from_stock("gtk-ok", GTK_ICON_SIZE_BUTTON);
+ gtk_widget_show(image7);
+ gtk_box_pack_start(GTK_BOX(hbox64), image7, FALSE, FALSE, 0);
+
+ label84 = gtk_label_new_with_mnemonic(plabe14);
+ gtk_widget_show(label84);
+ gtk_box_pack_start(GTK_BOX(hbox64), label84, FALSE, FALSE, 0);
+
+ g_signal_connect((gpointer) create_cancelbut, "clicked", G_CALLBACK(
+ on_creat_cancelbut_clicked), creat_class);
+ g_signal_connect((gpointer) create_okbutton, "clicked", G_CALLBACK(
+ on_creat_okbutton_clicked), creat_class);
+
+ return creat_class;
+}
+
+GtkWidget*
+create_choose_dialog(void)
+{
+ GtkWidget *choose_dialog;
+ GtkWidget *dialog_vbox11;
+ GtkWidget *hbox68;
+ GtkWidget *vbox46;
+ GtkWidget *vbox48;
+ GtkWidget *hbox71;
+ GtkWidget *hbox72;
+ GtkWidget *label103;
+ GtkWidget *vbox49;
+ GtkWidget *vbox50;
+ GtkWidget *label104;
+ GtkWidget *hbox74;
+ GtkWidget *label109;
+ GtkWidget *label108;
+ GtkWidget *vbox51;
+ GtkWidget *label105;
+ GtkWidget *hbox75;
+ GtkWidget *label110;
+ GtkWidget *label111;
+ GtkWidget *vbox52;
+ GtkWidget *label106;
+ GtkWidget *hbox73;
+ GtkWidget *hbox76;
+ GtkWidget *view_but;
+ GtkWidget *label112;
+ GtkWidget *frame17;
+ GtkWidget *alignment27;
+ GtkWidget *label97;
+ GtkWidget *dialog_action_area11;
+ GtkWidget *choose_cancel_but;
+ GtkWidget *choose_ok_but;
+
+ choose_dialog = gtk_dialog_new();
+ gtk_window_set_title(GTK_WINDOW(choose_dialog), ptitle2);
+ gtk_window_set_modal(GTK_WINDOW(choose_dialog), TRUE);
+ gtk_window_set_resizable(GTK_WINDOW(choose_dialog), FALSE);
+ gtk_window_set_type_hint(GTK_WINDOW(choose_dialog),
+ GDK_WINDOW_TYPE_HINT_DIALOG);
+
+ dialog_vbox11 = GTK_DIALOG(choose_dialog)->vbox;
+ gtk_widget_show(dialog_vbox11);
+
+ hbox68 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox68);
+ gtk_box_pack_start(GTK_BOX(dialog_vbox11), hbox68, TRUE, TRUE, 0);
+
+ vbox46 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox46);
+ gtk_box_pack_start(GTK_BOX(hbox68), vbox46, TRUE, TRUE, 0);
+
+ vbox48 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox48);
+ gtk_box_pack_start(GTK_BOX(vbox46), vbox48, FALSE, FALSE, 0);
+
+ hbox71 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox71);
+ gtk_box_pack_start(GTK_BOX(vbox48), hbox71, TRUE, TRUE, 0);
+
+ hbox72 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox72);
+ gtk_box_pack_start(GTK_BOX(hbox71), hbox72, TRUE, TRUE, 0);
+
+ label103 = gtk_label_new("");
+ gtk_widget_show(label103);
+ gtk_box_pack_start(GTK_BOX(hbox72), label103, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label103, 18, 8);
+
+ vbox49 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox49);
+ gtk_box_pack_start(GTK_BOX(hbox72), vbox49, TRUE, TRUE, 0);
+
+ vbox50 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox50);
+ gtk_box_pack_start(GTK_BOX(vbox49), vbox50, FALSE, FALSE, 0);
+
+ label104 = gtk_label_new("");
+ gtk_widget_show(label104);
+ gtk_box_pack_start(GTK_BOX(vbox50), label104, TRUE, TRUE, 0);
+ gtk_widget_set_size_request(label104, 66, 22);
+
+ hbox74 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox74);
+ gtk_box_pack_start(GTK_BOX(vbox50), hbox74, FALSE, FALSE, 0);
+
+ label109 = gtk_label_new(plabe09);
+ gtk_widget_show(label109);
+ gtk_box_pack_start(GTK_BOX(hbox74), label109, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label109, 56, 37);
+
+ label108 = gtk_label_new("");
+ gtk_widget_show(label108);
+ gtk_box_pack_start(GTK_BOX(hbox74), label108, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label108, 54, -1);
+
+ combobox4 = gtk_combo_box_new_text();
+ gtk_widget_show(combobox4);
+ gtk_box_pack_start(GTK_BOX(vbox49), combobox4, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(combobox4, 137, 30);
+ gtk_combo_box_insert_text(GTK_COMBO_BOX(combobox4), 0, "v4l");
+
+ vbox51 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox51);
+ gtk_box_pack_start(GTK_BOX(vbox49), vbox51, FALSE, FALSE, 0);
+
+ label105 = gtk_label_new("");
+ gtk_widget_show(label105);
+ gtk_box_pack_start(GTK_BOX(vbox51), label105, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label105, -1, 56);
+
+ hbox75 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox75);
+ gtk_box_pack_start(GTK_BOX(vbox51), hbox75, FALSE, FALSE, 0);
+
+ label110 = gtk_label_new(plabe00);
+ gtk_widget_show(label110);
+ gtk_box_pack_start(GTK_BOX(hbox75), label110, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label110, 56, 37);
+
+ label111 = gtk_label_new("");
+ gtk_widget_show(label111);
+ gtk_box_pack_start(GTK_BOX(hbox75), label111, FALSE, FALSE, 0);
+
+ combobox5 = gtk_combo_box_new_text();
+ gtk_widget_show(combobox5);
+ gtk_box_pack_start(GTK_BOX(vbox49), combobox5, TRUE, TRUE, 0);
+ gtk_widget_set_size_request(combobox5, 81, 30);
+
+ int i;
+ switch (g_video_mode)
+ {
+
+ case 1:
+
+ {
+ gtk_combo_box_set_active(GTK_COMBO_BOX(combobox4), 0);//v4l
+
+ for (i = 0; i < g_VideoDevCount; i++)
+ gtk_combo_box_insert_text(GTK_COMBO_BOX(combobox5), i, g_DevName[i]);
+
+ gtk_combo_box_set_active(GTK_COMBO_BOX(combobox5), v4l_dev_num);
+ break;
+ }
+ }
+
+ vbox52 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox52);
+ gtk_box_pack_start(GTK_BOX(vbox49), vbox52, TRUE, TRUE, 0);
+
+ label106 = gtk_label_new("");
+ gtk_widget_show(label106);
+ gtk_box_pack_start(GTK_BOX(vbox52), label106, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label106, -1, 41);
+
+ hbox73 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox73);
+ gtk_box_pack_start(GTK_BOX(vbox52), hbox73, FALSE, FALSE, 0);
+
+ hbox76 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox76);
+ gtk_box_pack_start(GTK_BOX(hbox73), hbox76, FALSE, FALSE, 0);
+
+ view_but = gtk_button_new_with_mnemonic(pviewbt); //(_("\351\242\204\350\247\210"));
+ gtk_widget_show(view_but);
+ gtk_box_pack_start(GTK_BOX(hbox76), view_but, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(view_but, 71, 30);
+
+ label112 = gtk_label_new("");
+ gtk_widget_show(label112);
+ gtk_box_pack_start(GTK_BOX(hbox76), label112, FALSE, FALSE, 0);
+
+ frame17 = gtk_frame_new(NULL);
+ gtk_widget_show(frame17);
+ gtk_box_pack_start(GTK_BOX(hbox68), frame17, TRUE, TRUE, 0);
+ gtk_widget_set_size_request(frame17, 347, 260);
+ gtk_container_set_border_width(GTK_CONTAINER(frame17), 10);
+
+ alignment27 = gtk_alignment_new(0.5, 0.5, 1, 1);
+ gtk_widget_show(alignment27);
+ gtk_container_add(GTK_CONTAINER(frame17), alignment27);
+ gtk_alignment_set_padding(GTK_ALIGNMENT(alignment27), 0, 0, 12, 0);
+
+ review_image = create_pixmap(choose_dialog, NULL);
+ gtk_widget_show(review_image);
+ gtk_container_add(GTK_CONTAINER(alignment27), review_image);
+ gtk_widget_set_size_request(review_image, 320, 240);
+
+ label97 = gtk_label_new(plabe17);
+ gtk_widget_show(label97);
+ gtk_frame_set_label_widget(GTK_FRAME(frame17), label97);
+ gtk_label_set_use_markup(GTK_LABEL(label97), TRUE);
+
+ dialog_action_area11 = GTK_DIALOG(choose_dialog)->action_area;
+ gtk_widget_show(dialog_action_area11);
+ gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area11),
+ GTK_BUTTONBOX_END);
+
+ choose_cancel_but = gtk_button_new_from_stock("gtk-cancel");
+ gtk_widget_show(choose_cancel_but);
+ gtk_dialog_add_action_widget(GTK_DIALOG(choose_dialog), choose_cancel_but,
+ GTK_RESPONSE_CANCEL);
+ GTK_WIDGET_SET_FLAGS(choose_cancel_but, GTK_CAN_DEFAULT);
+
+ choose_ok_but = gtk_button_new_from_stock("gtk-ok");
+ gtk_widget_show(choose_ok_but);
+ gtk_dialog_add_action_widget(GTK_DIALOG(choose_dialog), choose_ok_but,
+ GTK_RESPONSE_OK);
+ GTK_WIDGET_SET_FLAGS(choose_ok_but, GTK_CAN_DEFAULT);
+
+ g_signal_connect((gpointer) GTK_COMBO_BOX(combobox4), "changed",
+ G_CALLBACK(on_combo_box_choose1), combobox4);
+ g_signal_connect(G_OBJECT(choose_dialog), "delete_event", G_CALLBACK(
+ choose_dialog_delete_event), choose_dialog);
+ g_signal_connect((gpointer) view_but, "clicked", G_CALLBACK(
+ on_view_but_clicked), choose_dialog);
+ g_signal_connect((gpointer) choose_cancel_but, "clicked", G_CALLBACK(
+ on_choose_cancel_but_clicked), choose_dialog);
+ g_signal_connect((gpointer) choose_ok_but, "clicked", G_CALLBACK(
+ on_choose_ok_but_clicked), choose_dialog);
+
+ return choose_dialog;
+}
+
+GtkWidget*
+create_work_mode_dialog(void)
+{
+ GtkWidget *work_mode_dialog;
+ GtkWidget *dialog_vbox9;
+ GtkWidget *vbox43;
+ GtkWidget *label88;
+ GtkWidget *hbox67;
+ GtkWidget *radiobutton_tech;
+ GSList *radiobutton_tech_group = NULL;
+ GtkWidget *radiobutton_rec;
+ GtkWidget *label89;
+ GtkWidget *dialog_action_area9;
+ GtkWidget *work_cancel_but;
+ GtkWidget *work_ok_but;
+
+ work_mode_dialog = gtk_dialog_new();
+ gtk_window_set_title(GTK_WINDOW(work_mode_dialog), ptitle3);
+ gtk_window_set_resizable(GTK_WINDOW(work_mode_dialog), FALSE);
+ gtk_window_set_modal(GTK_WINDOW(work_mode_dialog), TRUE);
+ gtk_window_set_type_hint(GTK_WINDOW(work_mode_dialog),
+ GDK_WINDOW_TYPE_HINT_DIALOG);
+
+ dialog_vbox9 = GTK_DIALOG(work_mode_dialog)->vbox;
+ gtk_widget_show(dialog_vbox9);
+
+ vbox43 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox43);
+ gtk_box_pack_start(GTK_BOX(dialog_vbox9), vbox43, TRUE, TRUE, 0);
+
+ label88 = gtk_label_new("");
+ gtk_widget_show(label88);
+ gtk_box_pack_start(GTK_BOX(vbox43), label88, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label88, -1, 40);
+
+ hbox67 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox67);
+ gtk_box_pack_start(GTK_BOX(vbox43), hbox67, TRUE, TRUE, 0);
+
+ radiobutton_tech = gtk_radio_button_new_with_mnemonic(NULL, pradiobtnt);
+ gtk_widget_show(radiobutton_tech);
+ gtk_box_pack_start(GTK_BOX(hbox67), radiobutton_tech, FALSE, FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(radiobutton_tech), 6);
+ gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_tech),
+ radiobutton_tech_group);
+ radiobutton_tech_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(
+ radiobutton_tech));
+
+ radiobutton_rec = gtk_radio_button_new_with_mnemonic(NULL, pradiobtnr);
+ gtk_widget_show(radiobutton_rec);
+ gtk_box_pack_start(GTK_BOX(hbox67), radiobutton_rec, FALSE, FALSE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(radiobutton_rec), 6);
+ gtk_radio_button_set_group(GTK_RADIO_BUTTON(radiobutton_rec),
+ radiobutton_tech_group);
+ radiobutton_tech_group = gtk_radio_button_get_group(GTK_RADIO_BUTTON(
+ radiobutton_rec));
+
+ switch (g_work_mode)
+ {
+ case 0:
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_tech), TRUE);
+ break;
+ case 1:
+ gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(radiobutton_rec), TRUE);
+ break;
+ }
+
+ label89 = gtk_label_new("");
+ gtk_widget_show(label89);
+ gtk_box_pack_start(GTK_BOX(vbox43), label89, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label89, -1, 40);
+
+ dialog_action_area9 = GTK_DIALOG(work_mode_dialog)->action_area;
+ gtk_widget_show(dialog_action_area9);
+ gtk_widget_set_size_request(dialog_action_area9, 158, -1);
+ gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area9),
+ GTK_BUTTONBOX_END);
+
+ work_cancel_but = gtk_button_new_with_mnemonic(pwkcancl);
+ gtk_widget_show(work_cancel_but);
+ gtk_dialog_add_action_widget(GTK_DIALOG(work_mode_dialog), work_cancel_but,
+ 0);
+ GTK_WIDGET_SET_FLAGS(work_cancel_but, GTK_CAN_DEFAULT);
+
+ work_ok_but = gtk_button_new_with_mnemonic(pwkok);
+ gtk_widget_show(work_ok_but);
+ gtk_dialog_add_action_widget(GTK_DIALOG(work_mode_dialog), work_ok_but, 0);
+ GTK_WIDGET_SET_FLAGS(work_ok_but, GTK_CAN_DEFAULT);
+
+ g_signal_connect((gpointer) work_cancel_but, "clicked", G_CALLBACK(
+ on_work_cancel_but_clicked), work_mode_dialog);
+ g_signal_connect((gpointer) work_ok_but, "clicked", G_CALLBACK(
+ on_work_ok_but_clicked), work_mode_dialog);
+ g_signal_connect((gpointer) radiobutton_tech, "clicked", G_CALLBACK(
+ on_radiobutton_work_clicked), (gpointer) 0);
+ g_signal_connect((gpointer) radiobutton_rec, "clicked", G_CALLBACK(
+ on_radiobutton_work_clicked), (gpointer) 1);
+
+ return work_mode_dialog;
+}
+
+GtkWidget*
+create_exit_rec_dialog(void)
+{
+ GtkWidget *exit_rec_dialog;
+ GtkWidget *dialog_vbox10;
+ GtkWidget *vbox44;
+ GtkWidget *label90;
+ GtkWidget *label92;
+ GtkWidget *label91;
+ GtkWidget *dialog_action_area10;
+ GtkWidget *exit_rec_cancel;
+ GtkWidget *exit_rec_yes;
+
+ exit_rec_dialog = gtk_dialog_new();
+ gtk_window_set_title(GTK_WINDOW(exit_rec_dialog), _(""));
+
+ gtk_window_set_resizable(GTK_WINDOW(exit_rec_dialog), FALSE);
+ gtk_window_set_modal(GTK_WINDOW(exit_rec_dialog), TRUE);
+ gtk_window_set_position(GTK_WINDOW(exit_rec_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_type_hint(GTK_WINDOW(exit_rec_dialog),
+ GDK_WINDOW_TYPE_HINT_DIALOG);
+
+ dialog_vbox10 = GTK_DIALOG(exit_rec_dialog)->vbox;
+ gtk_widget_show(dialog_vbox10);
+
+ vbox44 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox44);
+ gtk_box_pack_start(GTK_BOX(dialog_vbox10), vbox44, FALSE, FALSE, 0);
+
+ label90 = gtk_label_new("");
+ gtk_widget_show(label90);
+ gtk_box_pack_start(GTK_BOX(vbox44), label90, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label90, 48, 24);
+
+ label92 = gtk_label_new(plabe22);
+ gtk_widget_show(label92);
+ gtk_box_pack_start(GTK_BOX(vbox44), label92, FALSE, FALSE, 0);
+
+ label91 = gtk_label_new("");
+ gtk_widget_show(label91);
+ gtk_box_pack_start(GTK_BOX(vbox44), label91, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label91, -1, 24);
+
+ dialog_action_area10 = GTK_DIALOG(exit_rec_dialog)->action_area;
+ gtk_widget_show(dialog_action_area10);
+ gtk_widget_set_size_request(dialog_action_area10, -1, 32);
+ gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area10),
+ GTK_BUTTONBOX_END);
+
+ exit_rec_cancel = gtk_button_new_with_mnemonic(pextcancl);
+ gtk_widget_show(exit_rec_cancel);
+ gtk_dialog_add_action_widget(GTK_DIALOG(exit_rec_dialog), exit_rec_cancel,
+ GTK_RESPONSE_CANCEL);
+ gtk_widget_set_size_request(exit_rec_cancel, -1, 20);
+ GTK_WIDGET_SET_FLAGS(exit_rec_cancel, GTK_CAN_DEFAULT);
+
+ exit_rec_yes = gtk_button_new_with_mnemonic(pextys);
+ gtk_widget_show(exit_rec_yes);
+ gtk_dialog_add_action_widget(GTK_DIALOG(exit_rec_dialog), exit_rec_yes,
+ GTK_RESPONSE_OK);
+ GTK_WIDGET_SET_FLAGS(exit_rec_yes, GTK_CAN_DEFAULT);
+
+ g_signal_connect((gpointer) exit_rec_cancel, "clicked", G_CALLBACK(
+ on_exit_rec_cancel_clicked), exit_rec_dialog);
+ g_signal_connect((gpointer) exit_rec_yes, "clicked", G_CALLBACK(
+ on_exit_rec_yes_clicked), exit_rec_dialog);
+
+ return exit_rec_dialog;
+}
+
+GtkWidget*
+create_cancle_class_dialog(void)
+{
+ GtkWidget *exit_class_dialog;
+ GtkWidget *dialog_vbox10;
+ GtkWidget *vbox44;
+ GtkWidget *label90;
+ GtkWidget *label92;
+ GtkWidget *label91;
+ GtkWidget *dialog_action_area10;
+ GtkWidget *exit_class_cancel;
+ GtkWidget *exit_class_yes;
+
+ exit_class_dialog = gtk_dialog_new();
+ gtk_window_set_title(GTK_WINDOW(exit_class_dialog), _(""));
+
+ gtk_window_set_resizable(GTK_WINDOW(exit_class_dialog), FALSE);
+ gtk_window_set_modal(GTK_WINDOW(exit_class_dialog), TRUE);
+ gtk_window_set_position(GTK_WINDOW(exit_class_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_type_hint(GTK_WINDOW(exit_class_dialog),
+ GDK_WINDOW_TYPE_HINT_DIALOG);
+
+ dialog_vbox10 = GTK_DIALOG(exit_class_dialog)->vbox;
+ gtk_widget_show(dialog_vbox10);
+
+ vbox44 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox44);
+ gtk_box_pack_start(GTK_BOX(dialog_vbox10), vbox44, FALSE, FALSE, 0);
+
+ label90 = gtk_label_new("");
+ gtk_widget_show(label90);
+ gtk_box_pack_start(GTK_BOX(vbox44), label90, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label90, 48, 24);
+
+ label92 = gtk_label_new(plabe32);
+ gtk_widget_show(label92);
+ gtk_box_pack_start(GTK_BOX(vbox44), label92, FALSE, FALSE, 0);
+
+ label91 = gtk_label_new("");
+ gtk_widget_show(label91);
+ gtk_box_pack_start(GTK_BOX(vbox44), label91, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label91, -1, 24);
+
+ dialog_action_area10 = GTK_DIALOG(exit_class_dialog)->action_area;
+ gtk_widget_show(dialog_action_area10);
+ gtk_widget_set_size_request(dialog_action_area10, -1, 32);
+ gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area10),
+ GTK_BUTTONBOX_END);
+
+ exit_class_cancel = gtk_button_new_with_mnemonic(pextclscancl);
+ gtk_widget_show(exit_class_cancel);
+ gtk_dialog_add_action_widget(GTK_DIALOG(exit_class_dialog),
+ exit_class_cancel, GTK_RESPONSE_CANCEL);
+ gtk_widget_set_size_request(exit_class_cancel, -1, 20);
+ GTK_WIDGET_SET_FLAGS(exit_class_cancel, GTK_CAN_DEFAULT);
+
+ exit_class_yes = gtk_button_new_with_mnemonic(pextclsys);
+ gtk_widget_show(exit_class_yes);
+ gtk_dialog_add_action_widget(GTK_DIALOG(exit_class_dialog), exit_class_yes,
+ GTK_RESPONSE_OK);
+ GTK_WIDGET_SET_FLAGS(exit_class_yes, GTK_CAN_DEFAULT);
+
+ g_signal_connect((gpointer) exit_class_cancel, "clicked", G_CALLBACK(
+ on_exit_class_cancel_clicked), exit_class_dialog);
+ g_signal_connect((gpointer) exit_class_yes, "clicked", G_CALLBACK(
+ on_exit_class_yes_clicked), exit_class_dialog);
+
+ return exit_class_dialog;
+}
+
+GtkWidget*
+create_exit_system_dialog(void)
+{
+ GtkWidget *exit_system_dialog;
+ GtkWidget *dialog_vbox10;
+ GtkWidget *vbox44;
+ GtkWidget *label90;
+ GtkWidget *label92;
+ GtkWidget *label91;
+ GtkWidget *dialog_action_area10;
+ GtkWidget *exit_system_cancel;
+ GtkWidget *exit_system_yes;
+
+ exit_system_dialog = gtk_dialog_new();
+ gtk_window_set_title(GTK_WINDOW(exit_system_dialog), _(""));
+
+ gtk_window_set_resizable(GTK_WINDOW(exit_system_dialog), FALSE);
+ gtk_window_set_modal(GTK_WINDOW(exit_system_dialog), TRUE);
+ gtk_window_set_position(GTK_WINDOW(exit_system_dialog), GTK_WIN_POS_CENTER);
+ gtk_window_set_type_hint(GTK_WINDOW(exit_system_dialog),
+ GDK_WINDOW_TYPE_HINT_DIALOG);
+
+ dialog_vbox10 = GTK_DIALOG(exit_system_dialog)->vbox;
+ gtk_widget_show(dialog_vbox10);
+
+ vbox44 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox44);
+ gtk_box_pack_start(GTK_BOX(dialog_vbox10), vbox44, FALSE, FALSE, 0);
+
+ label90 = gtk_label_new("");
+ gtk_widget_show(label90);
+ gtk_box_pack_start(GTK_BOX(vbox44), label90, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label90, 48, 24);
+
+ label92 = gtk_label_new(plabe42);
+ gtk_widget_show(label92);
+ gtk_box_pack_start(GTK_BOX(vbox44), label92, FALSE, FALSE, 0);
+
+ label91 = gtk_label_new("");
+ gtk_widget_show(label91);
+ gtk_box_pack_start(GTK_BOX(vbox44), label91, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label91, -1, 24);
+
+ dialog_action_area10 = GTK_DIALOG(exit_system_dialog)->action_area;
+ gtk_widget_show(dialog_action_area10);
+ gtk_widget_set_size_request(dialog_action_area10, -1, 32);
+ gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area10),
+ GTK_BUTTONBOX_END);
+
+ exit_system_cancel = gtk_button_new_with_mnemonic(pextsyscancl);
+ gtk_widget_show(exit_system_cancel);
+ gtk_dialog_add_action_widget(GTK_DIALOG(exit_system_dialog),
+ exit_system_cancel, GTK_RESPONSE_CANCEL);
+ gtk_widget_set_size_request(exit_system_cancel, -1, 20);
+ GTK_WIDGET_SET_FLAGS(exit_system_cancel, GTK_CAN_DEFAULT);
+
+ exit_system_yes = gtk_button_new_with_mnemonic(pextsysys);
+ gtk_widget_show(exit_system_yes);
+ gtk_dialog_add_action_widget(GTK_DIALOG(exit_system_dialog),
+ exit_system_yes, GTK_RESPONSE_OK);
+ GTK_WIDGET_SET_FLAGS(exit_system_yes, GTK_CAN_DEFAULT);
+
+ g_signal_connect((gpointer) exit_system_cancel, "clicked", G_CALLBACK(
+ on_exit_system_cancel_clicked), exit_system_dialog);
+ g_signal_connect((gpointer) exit_system_yes, "clicked", G_CALLBACK(
+ on_exit_system_yes_clicked), exit_system_dialog);
+
+ return exit_system_dialog;
+}
+
+GtkWidget*
+create_rec_delay_set_dialog(void)
+{
+ GtkWidget *dialog_vbox1;
+ GtkWidget *frame1;
+ GtkWidget *alignment1;
+ GtkWidget *vbox2;
+ GtkWidget *label10;
+ GtkWidget *hbox2;
+ GtkWidget *label12;
+ GtkWidget *delay_combobox;
+ GtkWidget *label13;
+ GtkWidget *label9;
+ GtkWidget *label11;
+ GtkWidget *label7;
+ GtkWidget *dialog_action_area1;
+ GtkWidget *rec_delay_cancel;
+ GtkWidget *rec_delay_yes;
+
+ rec_delay_set_dialog = gtk_dialog_new();
+ gtk_window_set_title(GTK_WINDOW(rec_delay_set_dialog), ptitle4);
+ gtk_window_set_modal(GTK_WINDOW(rec_delay_set_dialog), TRUE);
+ gtk_window_set_type_hint(GTK_WINDOW(rec_delay_set_dialog),
+ GDK_WINDOW_TYPE_HINT_DIALOG);
+
+ dialog_vbox1 = GTK_DIALOG(rec_delay_set_dialog)->vbox;
+ gtk_widget_show(dialog_vbox1);
+
+ frame1 = gtk_frame_new(NULL);
+ gtk_widget_show(frame1);
+ gtk_box_pack_start(GTK_BOX(dialog_vbox1), frame1, TRUE, TRUE, 0);
+ gtk_container_set_border_width(GTK_CONTAINER(frame1), 5);
+
+ alignment1 = gtk_alignment_new(0.5, 0.5, 1, 1);
+ gtk_widget_show(alignment1);
+ gtk_container_add(GTK_CONTAINER(frame1), alignment1);
+ gtk_alignment_set_padding(GTK_ALIGNMENT(alignment1), 0, 0, 12, 0);
+
+ vbox2 = gtk_vbox_new(FALSE, 0);
+ gtk_widget_show(vbox2);
+ gtk_container_add(GTK_CONTAINER(alignment1), vbox2);
+
+ label10 = gtk_label_new("");
+ gtk_widget_show(label10);
+ gtk_box_pack_start(GTK_BOX(vbox2), label10, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label10, -1, 45);
+
+ hbox2 = gtk_hbox_new(FALSE, 0);
+ gtk_widget_show(hbox2);
+ gtk_box_pack_start(GTK_BOX(vbox2), hbox2, TRUE, TRUE, 0);
+
+ label12 = gtk_label_new(plabex);
+ gtk_widget_show(label12);
+ gtk_box_pack_start(GTK_BOX(hbox2), label12, FALSE, FALSE, 0);
+
+ delay_combobox = gtk_combo_box_new_text();
+ gtk_widget_show(delay_combobox);
+ gtk_box_pack_start(GTK_BOX(hbox2), delay_combobox, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(delay_combobox, 56, -1);
+ char delaytime_num[][3] =
+ { "0", "3", "5", "10", "20", "30", "40", "50", "60" };
+ for (int i = 0; i < 9; i++)
+
+ gtk_combo_box_insert_text(GTK_COMBO_BOX(delay_combobox), i,
+ delaytime_num[i]);
+ gtk_combo_box_set_active(GTK_COMBO_BOX(delay_combobox), 2);
+
+ label13 = gtk_label_new(plabe013);
+ gtk_widget_show(label13);
+ gtk_box_pack_start(GTK_BOX(hbox2), label13, FALSE, FALSE, 0);
+
+ label9 = gtk_label_new("");
+ gtk_widget_show(label9);
+ gtk_box_pack_start(GTK_BOX(hbox2), label9, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label9, 18, -1);
+ gtk_misc_set_alignment(GTK_MISC(label9), 0.48, 0.49);
+
+ label11 = gtk_label_new("");
+ gtk_widget_show(label11);
+ gtk_box_pack_start(GTK_BOX(vbox2), label11, FALSE, FALSE, 0);
+ gtk_widget_set_size_request(label11, -1, 45);
+
+ label7 = gtk_label_new(plabe017);
+ gtk_widget_show(label7);
+ gtk_frame_set_label_widget(GTK_FRAME(frame1), label7);
+ gtk_label_set_use_markup(GTK_LABEL(label7), TRUE);
+
+ dialog_action_area1 = GTK_DIALOG(rec_delay_set_dialog)->action_area;
+ gtk_widget_show(dialog_action_area1);
+ gtk_button_box_set_layout(GTK_BUTTON_BOX(dialog_action_area1),
+ GTK_BUTTONBOX_END);
+
+ rec_delay_cancel = gtk_button_new_from_stock("gtk-cancel");
+ gtk_widget_show(rec_delay_cancel);
+ gtk_dialog_add_action_widget(GTK_DIALOG(rec_delay_set_dialog),
+ rec_delay_cancel, GTK_RESPONSE_CANCEL);
+ GTK_WIDGET_SET_FLAGS(rec_delay_cancel, GTK_CAN_DEFAULT);
+
+ rec_delay_yes = gtk_button_new_from_stock("gtk-ok");
+ gtk_widget_show(rec_delay_yes);
+ gtk_dialog_add_action_widget(GTK_DIALOG(rec_delay_set_dialog),
+ rec_delay_yes, GTK_RESPONSE_OK);
+ GTK_WIDGET_SET_FLAGS(rec_delay_yes, GTK_CAN_DEFAULT);
+
+ g_signal_connect((gpointer) rec_delay_cancel, "clicked", G_CALLBACK(
+ on_rec_delay_cancel_clicked), rec_delay_set_dialog);
+ g_signal_connect((gpointer) rec_delay_yes, "clicked", G_CALLBACK(
+ on_rec_delay_yes_clicked), delay_combobox);
+
+ return rec_delay_set_dialog;
+}
+
+void Error_dia(gchar *input, gchar *solution)
+{
+ GtkWidget *Message_dia;
+
+ gchar *message = new gchar[strlen(input) + strlen(solution)];
+
+ strcpy(message, input);
+ strcat(message, solution);
+
+ Message_dia = gtk_message_dialog_new(NULL, GTK_DIALOG_MODAL,
+ GTK_MESSAGE_ERROR, GTK_BUTTONS_CLOSE, message);
+
+ gtk_dialog_run(GTK_DIALOG(Message_dia));
+ gtk_widget_destroy(Message_dia);
+}
+
+void get_networkconfig()
+{
+
+ classcenterIP = gtk_entry_get_text(GTK_ENTRY(enserverip));
+ classcenterport = gtk_entry_get_text(GTK_ENTRY(enserverport));
+
+ strcpy(ncteacher_get_para.serverip, classcenterIP);
+ DWORD temp;
+ temp = atol(classcenterport);
+ ncteacher_get_para.serverport = temp;
+}
+
+int get_loadsys()
+{
+ const char *name = gtk_entry_get_text(GTK_ENTRY(username));
+ const char *psd = gtk_entry_get_text(GTK_ENTRY(passport));
+ strcpy(teachlogin.TeacherName, name);
+ strcpy(teachlogin.TeacherPass, psd);
+ if (strlen(teachlogin.TeacherName) == 0 | strlen(teachlogin.TeacherName)
+ > limitbit)
+ {
+ Error_dia(ERROR017, ERROR_S017);
+ return -1;
+ }
+ strcpy(ncteacher_get_user.username, name);
+ strcpy(ncteacher_get_user.password, psd);
+ return 1;
+}
+
+int get_classpara()
+{
+
+ //const char *classname=gtk_entry_get_text(GTK_ENTRY (classEntry));
+ const char *audio_port = gtk_entry_get_text(GTK_ENTRY(audioEntry));
+ const char *video_port = gtk_entry_get_text(GTK_ENTRY(videoEntry));
+ CreateGroup.CAPort = atol(audio_port);
+ CreateGroup.CVPort = atol(video_port);
+
+ if (CreateGroup.CAPort % 2 == 1)
+ {
+ Error_dia(ERROR014, ERROR_S014);
+ return -1;
+ }
+
+ if (CreateGroup.CVPort % 2 == 1)
+ {
+ Error_dia(ERROR015, ERROR_S015);
+ return -1;
+ }
+
+ if (CreateGroup.CAPort == CreateGroup.CVPort)
+ {
+ Error_dia(ERROR016, ERROR_S016);
+ return -1;
+ }
+ ncteacher_get_para.audioport = CreateGroup.CAPort;
+ ncteacher_get_para.videoport = CreateGroup.CVPort;
+
+ return 0;
+}
+
+int get_classname()
+{
+ const char *classname = gtk_entry_get_text(GTK_ENTRY(classEntry));
+ strcpy(CreateGroup.GroupName, classname);
+ printf("get group name is %s\n", CreateGroup.GroupName);
+ if (strlen(classname) == 0 | strlen(classname) > 128)
+ {
+ Error_dia(ERROR017, ERROR_S017);
+ return -1;
+ }
+ return 0;
+}
Added: incubator/bluesky/trunk/RealClass/Teacher/src/interface.hh
URL: http://svn.apache.org/viewvc/incubator/bluesky/trunk/RealClass/Teacher/src/interface.hh?rev=885392&view=auto
==============================================================================
--- incubator/bluesky/trunk/RealClass/Teacher/src/interface.hh (added)
+++ incubator/bluesky/trunk/RealClass/Teacher/src/interface.hh Mon Nov 30 12:01:23 2009
@@ -0,0 +1,61 @@
+/** \file interface.hh define GUI gadgets
+*
+*
+*Licensed to the Apache Software Foundation (ASF) under one
+*or more contributor license agreements. See the NOTICE file
+*distributed with this work for additional information
+*regarding copyright ownership. The ASF licenses this file
+*to you under the Apache License, Version 2.0 (the
+*"License"); you may not use this file except in compliance
+*with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+*Unless required by applicable law or agreed to in writing,
+*software distributed under the License is distributed on an
+*"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+*KIND, either express or implied. See the License for the
+*specific language governing permissions and limitations
+*under the License.
+*/
+
+#ifndef _INTERFACE_H
+#define _INTERFACE_H
+#include "stdafx.h"
+//!server settings params
+struct entry_setpara
+{
+ char serverip[16];
+ DWORD serverport;
+ DWORD audioport;
+ DWORD videoport;
+};
+//!user setting params
+struct entry_usepara
+{
+ char username[32];
+ char password[16];
+};
+
+GtkWidget* create_window1(void);
+GtkWidget* create_para_dialog(void);
+GtkWidget* create_login_dialog(void);
+GtkWidget* creat_class_dialog(void);
+GtkWidget* create_choose_dialog(void);
+GtkWidget* create_work_mode_dialog(void);
+GtkWidget* create_exit_rec_dialog(void);
+GtkWidget* create_cancle_class_dialog(void);
+GtkWidget* create_exit_system_dialog(void);
+GtkWidget*create_rec_delay_set_dialog(void);
+//!error output
+void Error_dia(gchar *, gchar *input);
+//!get network config
+void get_networkconfig();
+//!get load system
+int get_loadsys();
+//!get class params
+int get_classpara();
+//!get class name
+int get_classname();
+
+#endif
Added: incubator/bluesky/trunk/RealClass/Teacher/src/languagechoose.cpp
URL: http://svn.apache.org/viewvc/incubator/bluesky/trunk/RealClass/Teacher/src/languagechoose.cpp?rev=885392&view=auto
==============================================================================
--- incubator/bluesky/trunk/RealClass/Teacher/src/languagechoose.cpp (added)
+++ incubator/bluesky/trunk/RealClass/Teacher/src/languagechoose.cpp Mon Nov 30 12:01:23 2009
@@ -0,0 +1,207 @@
+/** \file languagechoose.cpp define various strings
+*
+*
+*Licensed to the Apache Software Foundation (ASF) under one
+*or more contributor license agreements. See the NOTICE file
+*distributed with this work for additional information
+*regarding copyright ownership. The ASF licenses this file
+*to you under the Apache License, Version 2.0 (the
+*"License"); you may not use this file except in compliance
+*with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+*Unless required by applicable law or agreed to in writing,
+*software distributed under the License is distributed on an
+*"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+*KIND, either express or implied. See the License for the
+*specific language governing permissions and limitations
+*under the License.
+*/
+#include "languagechoose.h"
+
+char *ptitle = "Teacher"; //teacher
+
+char *psys = "System";
+
+char *pcreat = "Creat Class"; //creatclass addde by ChenChen 2007.11.07
+
+char *pstop = "Stop Class"; //stopclass
+
+char *pset = "Option"; //Parameter Setting
+
+char *plogin = "Longin"; //longin
+
+char *pquit = "Quit"; //exit system
+
+char *pmodechge = "Choose Mode"; //Choose Mode
+
+char *pmodetech = "Teach"; //Teaching Mode
+
+char *pmodecomu = "Communicate"; //Teaching Model
+
+char *pview = "View"; //Teaching Model
+
+char *pstuimg = "Student Image"; //Student Image
+
+char *ptechimg = "Teacher Image"; //Teacher Image
+
+char *pstatrib = "Option"; //option
+
+char *p = "Setting";
+
+char *pjoin = "Longin";
+
+char *pgtk = "Teacher Longin";
+
+char *pexit = "Exit"; //exit
+
+char *pgtk1 = "Exit System"; //exit
+
+char *pcrt = "Creat"; //creat class
+
+char *pgtk2 = "Creat Class"; //creat class
+
+char *pcancle = "Cancel"; //exit
+
+char *pgtk3 = "Cancel Current Class"; //creat class
+
+char *pteach = "Teach"; //teaching
+
+char *pgtk4 = "Change to Teaching Mode";
+
+char *pcomu = "Commu"; //teaching
+
+char *pgtk5 = "Change to Interactive Mode";
+
+char *pmodeswich = "ForbChat";
+
+char *pchatchge = "Mode Switching";
+
+char *pstuname = "StudentName"; //student name
+
+char *pcomustat = "Status"; //teaching
+
+char *pstulist = "<b>Status List</b>"; //teaching
+
+char *padd = "Choose";
+
+char *pgtk11 = "Cancel";
+
+char *pcommu = "<b>Text Exchanges</b>"; //teaching
+
+char *pchat = "Chat"; //teaching
+
+char *pchoose = "Choose"; //teaching
+
+char *pchositm = "ChooseItem"; //teaching
+
+char *pwkmode = "Work Mode"; //teaching
+
+char *pclear = "Clear"; //teaching
+
+char *pclrchat = "ClearChat"; //teaching
+
+char *prec = "Record"; //teaching
+
+char *pgtitle = "Option";
+
+char *plabe1 = "ServerIP "; //teaching
+
+char *plabe2 = "Server Port "; //teaching
+
+char *plabe0 = "<b>Server Setting</b>"; //teaching
+
+char *plabe4 = "StudentAudio Port ";
+
+char *plabe5 = "StudentVideo Port ";
+
+char *plabe3 = "<b>Local Setting</b>";
+
+char *plabe10 = "Adv";
+
+char *plabe6 = "Cancel"; //teaching
+
+char *plabe7 = "OK"; //teaching
+
+char *ptitle1 = "Login Window"; //teaching
+
+char *plabe05 = "UserName";
+
+char *plabe06 = "Password"; //teaching
+
+char *plabe04 = "<b>User Login</b>";
+
+char *psttitl = "Creat Class";
+
+char *plabe12 = "ClassName"; //teaching
+
+char *plabe13 = "Cancel"; //teaching
+
+char *plabe14 = "OK"; //teaching
+
+char *ptitle2 = "Equipment Selection"; //teaching
+
+char *plabe09 = "Video Plug"; //teaching
+
+char *plabe00 = "Video Equipment"; //teaching
+
+char *pcombox = "No equipment found!"; //"Video equipment has not been found"; //teaching
+
+char *pviewbt = "Preview"; //teaching
+
+char *plabe17 = "<b>Video Preview</b>"; //teaching
+
+char *ptitle3 = "Work Mode Select";
+
+char *pradiobtnt = "Remote Real-time Teaching";
+
+char *pradiobtnr = "Local Record";
+
+char *pwkcancl = "Cancel";
+
+char *pwkok = "OK";
+
+char *plabe22 = "Exit Recording?"; //teaching
+
+char *pextcancl = "NO";
+
+char *pextys = "YES";
+
+char *plabe32 = "Do you want to cancel the class?";
+
+char *pextclscancl = "NO";
+
+char *pextclsys = "YES";
+
+char *plabe42 = "Do you want to quit from the system?";
+
+char *pextsyscancl = "NO";
+
+char *pextsysys = "YES";
+
+char *ptitle4 = "Recording Courseware Settings Dialog "; //teaching
+
+char *plabex = "After ";
+
+char *plabe013 = " secondes,it will start to record courseware";
+
+char *plabe017 = "Delay settings of recording courseware";
+
+char *palwcht = "AlowChat";
+
+char *pextrcd = "ExitRecrd";
+
+char *plistpre = "Student List";
+
+char *pnumb = "n)";
+
+char *pYES = "YES";
+
+char *pNO = "NO";
+
+char *pteacher_chat = "Teacher: ";
+
+char *ptext01 = "\nThe focus student apply for cancel focus,and the ID is: ";
+
+char *ptext = "\nOne student apply for focus,and the ID is";
Added: incubator/bluesky/trunk/RealClass/Teacher/src/languagechoose.h
URL: http://svn.apache.org/viewvc/incubator/bluesky/trunk/RealClass/Teacher/src/languagechoose.h?rev=885392&view=auto
==============================================================================
--- incubator/bluesky/trunk/RealClass/Teacher/src/languagechoose.h (added)
+++ incubator/bluesky/trunk/RealClass/Teacher/src/languagechoose.h Mon Nov 30 12:01:23 2009
@@ -0,0 +1,213 @@
+/** \file languagechoose.h define various strings
+*
+*
+*Licensed to the Apache Software Foundation (ASF) under one
+*or more contributor license agreements. See the NOTICE file
+*distributed with this work for additional information
+*regarding copyright ownership. The ASF licenses this file
+*to you under the Apache License, Version 2.0 (the
+*"License"); you may not use this file except in compliance
+*with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+*Unless required by applicable law or agreed to in writing,
+*software distributed under the License is distributed on an
+*"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+*KIND, either express or implied. See the License for the
+*specific language governing permissions and limitations
+*under the License.
+*/
+
+
+#ifndef _SOURCE_NAME_H_
+#define _SOURCE_NAME_H_
+
+// window titile
+extern char *ptitle; //teacher
+
+extern char *psys;
+
+extern char *pcreat; //creatclass
+
+extern char *pstop; //stopclass
+
+extern char *pset; //Parameter Setting
+
+extern char *plogin; //login
+
+extern char *pquit; //exit system
+
+extern char *pmodechge; //Choose Mode
+
+extern char *pmodetech; //Teaching Mode
+
+extern char *pmodecomu;
+
+extern char *pview; //Teaching Model
+
+extern char *pstuimg; //Student Image
+
+extern char *ptechimg; //Teacher Image
+
+extern char *pstatrib; //option
+
+extern char *p; //option
+
+extern char *pjoin; //option
+
+extern char *pgtk; //option
+
+extern char *pexit; //exit
+
+extern char *pgtk1; //exit
+
+extern char *pcrt; //creat class
+
+extern char *pgtk2; //creat class
+
+extern char *pcancle; //exit
+
+extern char *pgtk3; //creat class
+
+extern char *pteach; //teaching
+
+extern char *pgtk4; //creat class
+
+extern char *pcomu; //teaching
+
+extern char *pgtk5; //teaching
+
+extern char *pmodeswich; //teaching
+
+extern char *pchatchge;
+
+extern char *pstuname;
+
+extern char *pcomustat;
+
+extern char *pstulist;
+
+extern char *padd;
+
+extern char *pgtk11;
+
+extern char *pcommu;
+
+extern char *pchat;
+
+extern char *pchoose;
+
+extern char *pchositm;
+
+extern char *pwkmode;
+
+extern char *pclear;
+
+extern char *pclrchat;
+
+extern char *prec;
+
+extern char *pgtitle;
+
+extern char *plabe1;
+
+extern char *plabe2;
+
+extern char *plabe0;
+
+extern char *plabe4;
+
+extern char *plabe5;
+
+extern char *plabe05;
+
+extern char *plabe3;
+
+extern char *plabe10;
+
+extern char *plabe6;
+
+extern char *plabe7;
+
+extern char *ptitle1;
+
+extern char *plabe06;
+
+extern char *plabe04;
+
+extern char *psttitl;
+
+extern char *plabe12;
+
+extern char *plabe13;
+
+extern char *plabe14;
+
+extern char *ptitle2;
+
+extern char *plabe09;
+
+extern char *plabe00;
+
+extern char *pcombox;
+
+extern char *pviewbt;
+
+extern char *plabe17;
+
+extern char *ptitle3;
+
+extern char *pradiobtnt;
+
+extern char *pradiobtnr;
+
+extern char *pwkcancl;
+
+extern char *pwkok;
+
+extern char *plabe22;
+
+extern char *pextcancl;
+
+extern char *pextys;
+
+extern char *plabe32;
+
+extern char *pextclscancl;
+
+extern char *pextclsys;
+
+extern char *plabe42;
+
+extern char *pextsyscancl;
+
+extern char *pextsysys;
+
+extern char *ptitle4;
+
+extern char *plabex;
+
+extern char *plabe013;
+
+extern char *plabe017;
+
+extern char *palwcht;
+
+extern char *pextrcd;
+
+extern char *plistpre;
+
+extern char *pnumb;
+
+extern char *pYES;
+
+extern char *pNO;
+
+extern char *ptext;
+
+extern char *ptext01;
+
+extern char *pteacher_chat;
+
+#endif
Added: incubator/bluesky/trunk/RealClass/Teacher/src/pic/student.bmp
URL: http://svn.apache.org/viewvc/incubator/bluesky/trunk/RealClass/Teacher/src/pic/student.bmp?rev=885392&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/bluesky/trunk/RealClass/Teacher/src/pic/student.bmp
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: incubator/bluesky/trunk/RealClass/Teacher/src/pic/teacher.bmp
URL: http://svn.apache.org/viewvc/incubator/bluesky/trunk/RealClass/Teacher/src/pic/teacher.bmp?rev=885392&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/bluesky/trunk/RealClass/Teacher/src/pic/teacher.bmp
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: incubator/bluesky/trunk/RealClass/Teacher/src/singlecomm.cpp
URL: http://svn.apache.org/viewvc/incubator/bluesky/trunk/RealClass/Teacher/src/singlecomm.cpp?rev=885392&view=auto
==============================================================================
--- incubator/bluesky/trunk/RealClass/Teacher/src/singlecomm.cpp (added)
+++ incubator/bluesky/trunk/RealClass/Teacher/src/singlecomm.cpp Mon Nov 30 12:01:23 2009
@@ -0,0 +1,125 @@
+/** \file singlecomm.cpp interface for the CSingleComm class.
+*
+*
+*Licensed to the Apache Software Foundation (ASF) under one
+*or more contributor license agreements. See the NOTICE file
+*distributed with this work for additional information
+*regarding copyright ownership. The ASF licenses this file
+*to you under the Apache License, Version 2.0 (the
+*"License"); you may not use this file except in compliance
+*with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+*Unless required by applicable law or agreed to in writing,
+*software distributed under the License is distributed on an
+*"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+*KIND, either express or implied. See the License for the
+*specific language governing permissions and limitations
+*under the License.
+*/
+
+#include "asyncsocketex.h"
+#include "singlecomm.h"
+
+#define SOCKETMUTEX_LOCK {\
+ socketmutex.Lock(); \
+ }
+
+#define SOCKETMUTEX_UNLOCK { \
+ socketmutex.Unlock();}
+
+CSingleComm::CSingleComm()
+{
+
+ m_socket = 0;
+}
+
+CSingleComm::~CSingleComm()
+{
+
+ m_socket = 0;
+}
+
+bool CSingleComm::Init()
+{
+ if (!CTCPComm::Init())
+ return false;
+
+ if (!socketmutex.IsInitialized())
+ {
+ if (socketmutex.Init() < 0)
+ return false;
+ }
+
+ return true;
+}
+
+int CSingleComm::OnPollThreadError(int status)
+{
+
+ return -1;
+}
+
+int CSingleComm::Poll()
+{
+ int nRes;
+ SOCKETMUTEX_LOCK
+
+ if (m_socket == 0)
+ {
+ SOCKETMUTEX_UNLOCK
+ return 0;
+ }
+
+ nRes = m_socket->Poll();
+ if (nRes < 0)
+ {
+ SOCKETMUTEX_UNLOCK
+ return nRes;
+ }
+
+ m_socket->SetStatus(nRes);
+
+ SOCKETMUTEX_UNLOCK
+ return nRes;
+}
+
+int CSingleComm::PolledSocket()
+{
+
+ SOCKETMUTEX_LOCK
+
+ if (m_socket == 0)
+ {
+ SOCKETMUTEX_UNLOCK
+ return 0;
+ }
+
+ m_socket->OnEvent();
+
+ SOCKETMUTEX_UNLOCK
+ return 1;
+}
+
+void CSingleComm::Attach(CAsyncSocketEx* socket)
+{
+ SOCKETMUTEX_LOCK
+
+ m_socket = socket;
+ SOCKETMUTEX_UNLOCK
+}
+
+CAsyncSocketEx* CSingleComm::Detach()
+{
+ SOCKETMUTEX_LOCK
+ CAsyncSocketEx* p = m_socket;
+ m_socket = 0;
+ SOCKETMUTEX_UNLOCK
+ return p;
+}
+
+void CSingleComm::OnPollThreadStep()
+{
+ usleep(200000);
+}
Added: incubator/bluesky/trunk/RealClass/Teacher/src/singlecomm.h
URL: http://svn.apache.org/viewvc/incubator/bluesky/trunk/RealClass/Teacher/src/singlecomm.h?rev=885392&view=auto
==============================================================================
--- incubator/bluesky/trunk/RealClass/Teacher/src/singlecomm.h (added)
+++ incubator/bluesky/trunk/RealClass/Teacher/src/singlecomm.h Mon Nov 30 12:01:23 2009
@@ -0,0 +1,56 @@
+/** \file singlecomm.h interface for the CSingleComm class.
+*
+*
+*Licensed to the Apache Software Foundation (ASF) under one
+*or more contributor license agreements. See the NOTICE file
+*distributed with this work for additional information
+*regarding copyright ownership. The ASF licenses this file
+*to you under the Apache License, Version 2.0 (the
+*"License"); you may not use this file except in compliance
+*with the License. You may obtain a copy of the License at
+*
+* http://www.apache.org/licenses/LICENSE-2.0
+*
+*Unless required by applicable law or agreed to in writing,
+*software distributed under the License is distributed on an
+*"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+*KIND, either express or implied. See the License for the
+*specific language governing permissions and limitations
+*under the License.
+*/
+
+#if !defined(SINGLECOMM_H)
+#define SINGLECOMM_H
+
+#include <jmutex.h>
+#include "tcpcomm.h"
+//!single communication
+class CSingleComm: public CTCPComm
+{
+public:
+ //!Constructor
+ CSingleComm();
+ //!Destructor
+ virtual ~CSingleComm();
+ //!Detach socket
+ CAsyncSocketEx* Detach();
+ //Attach socket
+ void Attach(CAsyncSocketEx* socket);
+ //!Initialise the communication
+ virtual bool Init();
+
+protected:
+ //!time steps of polling
+ virtual void OnPollThreadStep();
+ //!if poll thread error return -1
+ virtual int OnPollThreadError(int status);
+ //!poll socket , return the status of socket
+ virtual int PolledSocket();
+ virtual int Poll();
+
+private:
+ JMutex socketmutex;
+ CAsyncSocketEx* m_socket;
+};
+
+#endif // !defined(SINGLECOMM_H)