controls.h
上传用户:riyaled888
上传日期:2009-03-27
资源大小:7338k
文件大小:3k
源码类别:

多媒体

开发平台:

MultiPlatform

  1. /*****************************************************************************
  2.  * controls.h: MacOS X interface module
  3.  *****************************************************************************
  4.  * Copyright (C) 2002-2003 VideoLAN
  5.  * $Id: controls.h 7178 2004-03-28 12:29:42Z bigben $
  6.  *
  7.  * Authors: Jon Lech Johansen <jon-vl@nanocrew.net>
  8.  *          Christophe Massiot <massiot@via.ecp.fr>
  9.  *          Derk-Jan Hartman <thedj@users.sourceforge.net>
  10.  *
  11.  * This program is free software; you can redistribute it and/or modify
  12.  * it under the terms of the GNU General Public License as published by
  13.  * the Free Software Foundation; either version 2 of the License, or
  14.  * (at your option) any later version.
  15.  * 
  16.  * This program is distributed in the hope that it will be useful,
  17.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  18.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  19.  * GNU General Public License for more details.
  20.  *
  21.  * You should have received a copy of the GNU General Public License
  22.  * along with this program; if not, write to the Free Software
  23.  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111, USA.
  24.  *****************************************************************************/
  25. /*****************************************************************************
  26.  * VLCControls interface 
  27.  *****************************************************************************/
  28. @interface VLCControls : NSObject
  29. {
  30.     IBOutlet id o_open;
  31.     IBOutlet id o_main;
  32.     IBOutlet id o_btn_fullscreen;
  33.     IBOutlet id o_volumeslider;
  34. }
  35. - (IBAction)play:(id)sender;
  36. - (IBAction)stop:(id)sender;
  37. - (IBAction)faster:(id)sender;
  38. - (IBAction)slower:(id)sender;
  39. - (IBAction)prev:(id)sender;
  40. - (IBAction)next:(id)sender;
  41. - (IBAction)random:(id)sender;
  42. - (IBAction)repeat:(id)sender;
  43. - (IBAction)loop:(id)sender;
  44. - (IBAction)forward:(id)sender;
  45. - (IBAction)backward:(id)sender;
  46. - (IBAction)volumeUp:(id)sender;
  47. - (IBAction)volumeDown:(id)sender;
  48. - (IBAction)mute:(id)sender;
  49. - (IBAction)volumeSliderUpdated:(id)sender;
  50. - (void)updateVolumeSlider;
  51. - (IBAction)windowAction:(id)sender;
  52. - (void)setupVarMenuItem:(NSMenuItem *)o_mi
  53.                     target:(vlc_object_t *)p_object
  54.                     var:(const char *)psz_variable
  55.                     selector:(SEL)pf_callback;
  56. - (void)setupVarMenu:(NSMenu *)o_menu
  57.                     forMenuItem: (NSMenuItem *)o_parent
  58.                     target:(vlc_object_t *)p_object
  59.                     var:(const char *)psz_variable
  60.                     selector:(SEL)pf_callback;
  61. - (IBAction)toggleVar:(id)sender;
  62. - (int)toggleVarThread:(id)_o_data;
  63. @end
  64. /*****************************************************************************
  65.  * VLCMenuExt interface 
  66.  *****************************************************************************
  67.  * This holds our data for autogenerated menus
  68.  *****************************************************************************/
  69. @interface VLCMenuExt : NSObject
  70. {
  71.     char *psz_name;
  72.     int i_object_id;
  73.     vlc_value_t value;
  74.     int i_type;
  75. }
  76. - (id)initWithVar: (const char *)_psz_name Object: (int)i_id
  77.         Value: (vlc_value_t)val ofType: (int)_i_type;
  78. - (char *)name;
  79. - (int)objectID;
  80. - (vlc_value_t)value;
  81. - (int)type;
  82. @end