broadcast_win.h
上传用户:psq1974
上传日期:2007-01-06
资源大小:1195k
文件大小:2k
源码类别:

mpeg/mp3

开发平台:

C/C++

  1. /* Copyright (C) 1998, 1999 State University of New York at Stony Brook
  2.    Author: Andrew V. Shuvalov ( andrew@ecsl.cs.sunysb.edu )
  3.    Software license is located in file "COPYING"
  4. */
  5. #ifndef _broadcast_win_h_
  6. #define _broadcast_win_h_
  7. #include "session.h"
  8. #include "channel_info.h"
  9. class BroadcastWindow : public Gtk_Window {
  10.   
  11.   /** session */
  12.   Session &session;
  13.   /** top menu */
  14.   Gtk_MenuBar *menuBar;
  15.   /** bottom status bar */
  16.   Gtk_Statusbar *statusBar;
  17.   /** list channels by title, let select the current channel */
  18.   Gtk_CList *channelList;
  19.   /** keep descriptions for all channels; the Gtk list of channels 
  20.       should keep the Id of channel as "key" to access this data */
  21.   channel_infos_mapT channel_infos_map;
  22.   /** in this case the text is updated on-the fly, when new data comes from 
  23.       UDP  */
  24.   Gtk_CList *movieText;
  25.   /** channel is selected by selecting the row in channel list */
  26.   int current_channel_id;
  27.   /** indicate that yes, we acknowledge the interest to receive this channel */
  28.   bool playing;
  29.   static const int topWindowInitSizeX;
  30.   static const int topWindowInitSizeY;
  31.   static const int channelListColumns;
  32. public:
  33.   BroadcastWindow( Session &s );
  34.   void callback_play();
  35.   void callback_stop();
  36.   /** tell databse server that we should strt the recording of 
  37.       current_channel_id
  38.   */
  39.   void callback_record();
  40.   void callback_stop_recording();
  41.   void callback_channel_select_row( gint row, gint col, GdkEvent *button );
  42.   void callback_update_channellist();
  43. };
  44. #endif // _broadcast_win_h_