dnl Autoconf settings for vlc
-dnl $Id: configure.ac,v 1.42 2003/07/25 11:33:24 gbazin Exp $
+dnl $Id: configure.ac,v 1.43 2003/07/27 12:31:50 ipkiss Exp $
AC_INIT(vlc,0.6.1-test1)
modules/gui/qnx/Makefile
modules/gui/qt/Makefile
modules/gui/skins/Makefile
- modules/gui/win32/Makefile
modules/gui/wxwindows/Makefile
modules/misc/Makefile
modules/misc/dummy/Makefile
+++ /dev/null
-.deps
-.dirstamp
-*.lo
-*.la
-*.dll
-*.dylib
-*.sl
-*.so
-Makefile.am
-Makefile.in
-Makefile
+++ /dev/null
-#
-# Borland C++ project
-# This module is only available as a plugin. Don't try to fiddle with it!
-#
-
-EXTRA_DIST += $(BORLAND_win32)
-
-# We have private rules! We do whatever we want! Don't mess with us!
-SOURCES_win32 = PRIVATE
-
-libwin32_plugin.dll: $(BORLAND_win32)
- cd && \
- rm -f win32.mak && \
- $(BPR2MAK) win32.bpr -s | \
- sed -e 's@^LIBPATH = .*@&;$$(RELEASELIBPATH)@' \
- -e 's@^USERDEFINES = .*@& -DMODULE_NAME=win32@' \
- > win32.mak && \
- $(BCMAKE) -f win32.mak -b
-
-BORLAND_win32 = \
- win32.bpr \
- win32.bpf \
- \
- about.cpp \
- disc.cpp \
- dragdrop.cpp \
- mainframe.cpp \
- menu.cpp \
- messages.cpp \
- network.cpp \
- playlist.cpp \
- preferences.cpp \
- win32.cpp \
- misc.cpp \
- sout.cpp \
- subtitles.cpp \
- \
- about.dfm \
- disc.dfm \
- mainframe.dfm \
- messages.dfm \
- network.dfm \
- playlist.dfm \
- preferences.dfm \
- sout.dfm \
- subtitles.dfm \
- \
- about.h \
- disc.h \
- dragdrop.h \
- mainframe.h \
- menu.h \
- messages.h \
- network.h \
- playlist.h \
- preferences.h \
- win32_common.h \
- misc.h \
- sout.h \
- subtitles.h \
- $(NULL)
-
+++ /dev/null
-/*****************************************************************************\r
- * about.cpp: The "About" dialog box\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#pragma hdrstop\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-\r
-#include "about.h"\r
-#include "misc.h"\r
-#include "win32_common.h"\r
-\r
-//---------------------------------------------------------------------------\r
-//#pragma package(smart_init)\r
-#pragma resource "*.dfm"\r
-\r
-//---------------------------------------------------------------------------\r
-__fastcall TAboutDlg::TAboutDlg( TComponent* Owner, intf_thread_t *_p_intf )\r
- : TForm( Owner )\r
-{\r
- p_intf = _p_intf;\r
- Image1->Picture->Icon = p_intf->p_sys->p_window->Icon;\r
- LabelVersion->Caption = "Version " VERSION;\r
- Translate( this );\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
+++ /dev/null
-object AboutDlg: TAboutDlg\r
- Tag = 3\r
- Left = 442\r
- Top = 281\r
- BorderStyle = bsDialog\r
- Caption = 'About'\r
- ClientHeight = 222\r
- ClientWidth = 282\r
- Color = clBtnFace\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clWindowText\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- Icon.Data = {\r
- 0000010001003030000001001800A81C00001600000028000000300000006000\r
- 00000100180000000000001B0000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000069375900000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000120E0A4011253E0F18000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000F0B\r
- 084143CA08070016430F08040800000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000003127291203174647E8464AE808010840E54039E6390B0C06\r
- 0E0A1C0000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0070CD0079DD0079DD0070CD0000000000000000000C1008261D6E4647E54547\r
- E64748E105040039E6393AE53939E63936D33308030100000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000070CD0079DD0079DE007DE40088F9008CFF008CFF0088F9007CE302\r
- 6EC70B09124641DC4444DF4546E34446E54847E003040040E6403AEA3A3EE33E\r
- 3CE33C39E639080F010801050000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000070CD0079DD0077D90070CB0078D8007BDC007BDC007BDC\r
- 007BDC007BDC007BDD007EE32E232D0804084553F14250F34252ED4449DB4844\r
- DC4645E208010540E5401C78150D18053CE63C3AE63A39EA393CD83C241A2006\r
- 0402000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000070CD0079DD007ADF007BDE007BDC0072\r
- CC005188004877004876004876004876034976054A760B4D7731434221175B42\r
- 54EC4253EE4252F60B05104250F44252EB4546DA08010539E6392BAA2B080105\r
- 3CE63C39E7393AE63A39E93939E839081208181C080000000000000000000000\r
- 000000000000000000000000000000000000000070CD0079DD0079DD007CE300\r
- 88F90089F90075D2005188004877005188008CFF008CFF008CFF008CFF008CFF\r
- 1092FF2099FF31A0FF1408294840DB4550E1464EEA0C060B0B05084654F64653\r
- F64453EF080E033AE63A2BAA2B03030339E33939DF3939E639080F083DDB3D24\r
- 9C24434B3B000000000000000000000000000000000000000000000000000000\r
- 0063B60085F3008BFE0088F9007FE90088F90080E8005CA0008CFF008CFF008C\r
- FF008CFF008CFF008CFF008CFF048DFF1594FF259BFF35A2FF0C04103F38C754\r
- 5AF7505BF10C08100801084352F64652F44253F30813053AE63A39E639030403\r
- 1C521826A1250812010807032454131558150000000000000000000000000000\r
- 000000000000000000000000000000000000000070CD007CE30079DD00000000\r
- 7CE30089FA008CFF0089FA008CFF008CFF008CFF008CFF008CFF008CFF098FFF\r
- 1996FF2A9DFF3AA4FF0804103A2AA34E58F74E58F40B0B120803054652F34548\r
- E64451F305130532CA323AE23A03070308070307040008040139E63939E43931\r
- B42F5E1347000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000061B10000000079DD008CFF008CFF008CFF008CFF008C\r
- FF008CFF008CFF008CFF008CFF0E91FF1E98FF2E9FFF3FA6FF040408382BAF4D\r
- 5AEF555AF70F12250501050F04160804074250F3121A123AE93A39E239080803\r
- 0D2F08010401268C2539E7393DE63D3FE23E0804100000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 79DD008CFF008CFF008CFF008CFF008CFF008CFF008CFF008CFF028CFF1293FF\r
- 239AFF33A1FF43A8FF0802083A2AA3565BF7555AF71714330501050104000801\r
- 07424FF12828203AEA3A39E639030703182F1008340801040139E7393DE83D39\r
- E939080400000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000070CD0088F9008CFF008CFF008CFF008C\r
- FF008CFF008CFF008CFF078EFF1795FF279CFF38A3FF48AAFF0808005151F155\r
- 5AF30804030804000504050800082E358E0E0C1F1D192439E53940E640080400\r
- 2AA12739E63908020708010539E8393BE93B0804080000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000007CE3008CFF008CFF008CFF058EFD1D96F92398F8269AFA31A0FC42A8FF\r
- 4FAEFF5CB3FF65B7FF0C08084F5AF14E57F50B04080804043639A54647E81C13\r
- 49363AA70804080F120835953439E7393EE63E39DF3939EA39081105308A2B3F\r
- E73F080601000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000047BDB1D96F92398F82498F83BA0\r
- F399C1E1B1C9DDBCD4E7CBE0F3D9EDFFDCEEFFDEEFFFCDE8FF080808575BF750\r
- 58F624125A5057F34845DF4A41E0150E30C55734E3723EC56E33A23D27050105\r
- 39E43939E63939E6393CE63C14420C3BE03B192A090000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000004\r
- 04042D88D399C1E1B1C9DDB1C9DCB7CBDBCFD3D7D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFEFEFFF9FCFF0C08085D61F15B61EF555AF64A4FE13937BB0E0A12DE74\r
- 39E1733CDE713CDF753AE67541C36B342C231F17141B3AE63A39E7393DE83D39\r
- E93939DE39000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000001818186893B8C3CCD2D5D5D6D5D5D6D5D5\r
- D6D6D6D6D6D6D6E3E3E3F1F1F1FFFFFFFFFFFFFFFFFFFFFFFF140C145C5EF668\r
- 63F75555EA10061CC3673FDF713A0C1104080403080105080007070407D56F36\r
- DE743EDE72401C200C29452939E63939E73939EA390000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000343434A2B4C2D5D5D6D6D6D6D6D6D6D6D6D6D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFEFEFFFEFEFF20161C5C5EF6373EAE0E0413E2713DE1763CCD6A3C2A0D\r
- 08A44B2CDE743EBD612F080401030403E1713CDE7239DE713AE1723C22201139\r
- C13341E641000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000001B1B1B99AEBED5D5D6D5D5D6D5D5\r
- D6CFD3D7B8CBDBBFD5E7CEE2F3DCEFFFDFF0FFE2F1FFE9F4FF10100C3639A46E\r
- 4540DE7239DE713DE1713C07000784261CDE7639E3743E0812001F0407D86E36\r
- E3753EE57540E57541DE763CDE733DD26637493C387E2F7B0000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00001B1B1B99AEBFCED3D7B7CBDBB1C9DD99C1E140A2F339A2FA49AAFC59B2FF\r
- 66B8FF74BEFF92CBFFD9ECFF0F0402C66531DE7139E2733D854B1E0A01084D11\r
- 0DE3733EE1723CDF713ADF753AE1763C1D0A08290708E57140E1763CDE733DC7\r
- 6B34080408000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000001818187FA5C399C1E13BA0F32498\r
- F81D96F91091FD1C97FF2C9EFF3CA5FF4DACFF5DB3FF71BBFF8DC8FF9FD0FF08\r
- 0400080406B95C2EDE7239070B070803014D1615DE723CDE7540E5714030090D\r
- 0504003A120FE67541DE75390808044A0C290000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000707071778C81C92F3058EFD008CFF008CFF1092FF2099FF31A0FF41A7FF\r
- 51AEFF62B5FF72BCFF7BBFFF7BBBF96E9FCD0808080806041D0508E571403E22\r
- 0C200708080405070407070007080303B05F31DE723967301908010500000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000007CE3008CFF008C\r
- FF048DFF1594FF259BFF35A2FF46A9FF56B0FF66B7FF77BEFF7BBFFF6DAAE300\r
- 0000000000000000000000080401200C088D4024E17141E57140DF713ADE713E\r
- DE76390801070000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000079DD008CFF008CFF098FFF1996FF2A9DFF3AA4FF4AABFF\r
- 5BB2FF6BB9FF7BBFFF7BBFFF6AA5DD0000000000000000000000000000001D1A\r
- 0C1A0F08110903441912E57140623B1E08020300000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000079DD008CFF008C\r
- FF0E91FF1E98FF2E9FFF3FA6FF4FADFF5FB4FF70BBFF7BBFFF78BAF96299CD00\r
- 00000000000000000000000000000000000000003914100000005A2411000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000070CD0088F9078EFD2C9CF940A3F850ACFA60B4FC70BCFF\r
- 7DC2FF87C6FF7EC0FF6DAAE30000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000707071A85DD40A2\r
- F3A0C3E1B7CBDDC6D8E7D4E5F3E2F1FFE5F2FFD9ECFF9FD0FF7AACDD05050500\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000001818187FA5C3B8CBDBD0D4D7D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFAFCFFE2EDF99FB7CD1C1C1C0000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000001B1B1B99AEBFD4D5\r
- D6D6D6D6D6D6D6E3E3E3F1F1F1FFFFFFFFFFFFFEFEFFD1DAE33E3E3E00000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000001D1D1D7B9BB4CACED1D6D6D6D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFEFEFFC9D2DD2121210000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000343434A5B5\r
- C2CFD3D7BFCEDBC9D9E7D7E6F3E6F3FFECF5FFF0F4F9AEBDCD23232300000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000018181887A8C3A6C6E169B3F367B6FA77BEFC88C6FF\r
- 9FD0FFB4CBE33939390000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000040404338C\r
- D749A8F947A9FD54AFFF64B6FF74BDFF7EC0FF76ABDD05050500000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000001F7DCD369FF948AAFF58B1FF69B8FF79BFFF\r
- 78BAF96299CD0000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 003592E34DACFF5DB3FF6DBAFF7BBFFF6DAAE300000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000003890DD51AEFF62B5FF72BCFF7BBFFF\r
- 6AA5DD0000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 003B8FD84C9CE3589FDE69A9E375B6F46299CD00000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000003376B00000000000000000005788B6\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000006CC61A83DD247FCC00000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000006DC71A83DD2686D71F6EB1\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000FFFF\r
- FFFFFFFF0000FFFFFFFFFFFF0000FFFFFE1FDFFF0000FFFFE0078FFF0000FFFE\r
- 000007FF0000FFF0000001FF0000FF80000000FF0000FF000000003F0000FF00\r
- 0000000F0000FE00000000070000F800000000070000F8000000000F0000FC00\r
- 000000070000FE00000000070000FF80000000070000FFC0000000070000FFE0\r
- 000000070000FFE0000000070000FFE0000000070000FFE0000000070000FFF0\r
- 000000070000FFF0000000030000FFF0000000070000FFF00000000F0000FFF0\r
- 0000003F0000FFF8000E00FF0000FFF8000F01FF0000FFF8000FD7FF0000FFF8\r
- 001FFFFF0000FFFC001FFFFF0000FFFC001FFFFF0000FFFC003FFFFF0000FFFC\r
- 003FFFFF0000FFFE003FFFFF0000FFFE007FFFFF0000FFFE007FFFFF0000FFFE\r
- 007FFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF\r
- 01FFFFFF0000FFFF01FFFFFF0000FFFF81FFFFFF0000FFFFC3FFFFFF0000FFFF\r
- FFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000}\r
- OldCreateOrder = False\r
- PixelsPerInch = 96\r
- TextHeight = 13\r
- object Label1: TLabel\r
- Tag = 3\r
- Left = 82\r
- Top = 13\r
- Width = 141\r
- Height = 20\r
- Caption = 'VLC media player'\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clWindowText\r
- Font.Height = -16\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = [fsBold]\r
- ParentFont = False\r
- end\r
- object Label2: TLabel\r
- Tag = 3\r
- Left = 14\r
- Top = 64\r
- Width = 161\r
- Height = 13\r
- Caption = '(c) 1996-2003 the VideoLAN team'\r
- end\r
- object Label4: TLabel\r
- Tag = 3\r
- Left = 14\r
- Top = 131\r
- Width = 253\r
- Height = 39\r
- Caption = \r
- 'This is the VideoLAN Client, a DVD, MPEG and DivX player. It can' +\r
- ' play MPEG and MPEG2 files from a file or from a network source.'\r
- WordWrap = True\r
- end\r
- object Label3: TLabel\r
- Tag = 3\r
- Left = 14\r
- Top = 88\r
- Width = 216\r
- Height = 13\r
- Caption = 'the VideoLAN team <videolan@videolan.org>'\r
- end\r
- object Image1: TImage\r
- Left = 16\r
- Top = 8\r
- Width = 49\r
- Height = 49\r
- end\r
- object Label5: TLabel\r
- Tag = 3\r
- Left = 14\r
- Top = 104\r
- Width = 121\r
- Height = 13\r
- Caption = 'http://www.videolan.org/'\r
- end\r
- object LabelVersion: TLabel\r
- Tag = 3\r
- Left = 82\r
- Top = 35\r
- Width = 59\r
- Height = 13\r
- Caption = 'Version x.y.z'\r
- end\r
- object ButtonOK: TButton\r
- Tag = 3\r
- Left = 69\r
- Top = 188\r
- Width = 145\r
- Height = 24\r
- Anchors = [akLeft, akBottom]\r
- Caption = 'OK'\r
- Default = True\r
- ModalResult = 1\r
- TabOrder = 0\r
- end\r
-end\r
+++ /dev/null
-/*****************************************************************************\r
- * about.h: The "About" dialog box\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef aboutH\r
-#define aboutH\r
-//---------------------------------------------------------------------------\r
-#include <Classes.hpp>\r
-#include <Controls.hpp>\r
-#include <StdCtrls.hpp>\r
-#include <Forms.hpp>\r
-#include <Buttons.hpp>\r
-#include <ExtCtrls.hpp>\r
-#include <Graphics.hpp>\r
-//---------------------------------------------------------------------------\r
-class TAboutDlg : public TForm\r
-{\r
-__published: // IDE-managed Components\r
- TLabel *Label1;\r
- TLabel *Label2;\r
- TLabel *Label4;\r
- TLabel *Label3;\r
- TImage *Image1;\r
- TLabel *Label5;\r
- TLabel *LabelVersion;\r
- TButton *ButtonOK;\r
-private: // User declarations\r
- intf_thread_t *p_intf;\r
-public: // User declarations\r
- __fastcall TAboutDlg( TComponent* Owner, intf_thread_t *_p_intf );\r
-};\r
-//---------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * disc.cpp: "Open disc" dialog box.\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#pragma hdrstop\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-\r
-#include "disc.h"\r
-#include "misc.h"\r
-#include "win32_common.h"\r
-\r
-//---------------------------------------------------------------------------\r
-//#pragma package(smart_init)\r
-#pragma link "CSPIN"\r
-#pragma resource "*.dfm"\r
-\r
-//---------------------------------------------------------------------------\r
-__fastcall TDiscDlg::TDiscDlg( TComponent* Owner, intf_thread_t *_p_intf )\r
- : TForm( Owner )\r
-{\r
- p_intf = _p_intf;\r
- /* Simulate a click to get the correct device name */\r
- RadioGroupTypeClick( RadioGroupType );\r
- Translate( this );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TDiscDlg::FormShow( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_window->OpenDiscAction->Checked = true;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TDiscDlg::FormHide( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_window->OpenDiscAction->Checked = false;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TDiscDlg::ButtonCancelClick( TObject *Sender )\r
-{\r
- Hide();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TDiscDlg::ButtonOkClick( TObject *Sender )\r
-{\r
- AnsiString Device, Source;\r
-\r
- Hide();\r
-\r
- Device = EditDevice->Text;\r
-\r
- /* Build source name and add it to playlist */\r
- if ( CheckBoxMenus->Checked && RadioGroupType->ItemIndex == 0 )\r
- {\r
- Source = "dvdplay://" + Device;\r
- }\r
- else\r
- {\r
- AnsiString Method, Title, Chapter;\r
- /* Select title and chapter */\r
- Title.sprintf( "%d", SpinEditTitle->Value );\r
- Chapter.sprintf( "%d", SpinEditChapter->Value );\r
-\r
- /* Select access method */\r
- if( RadioGroupType->ItemIndex == 0 )\r
- Method = "dvdold";\r
- else\r
- Method = "vcd";\r
-\r
- /* build the MRL */\r
- Source = Method + "://" + Device + "@" + Title + "," + Chapter;\r
- }\r
- msg_Dbg (p_intf , Source.c_str());\r
-\r
- p_intf->p_sys->p_playwin->Add( Source, PLAYLIST_APPEND\r
- | ( p_intf->p_sys->b_play_when_adding ? PLAYLIST_GO : 0 ),\r
- PLAYLIST_END );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TDiscDlg::RadioGroupTypeClick( TObject *Sender )\r
-{\r
- TRadioGroup *RadioGroupType = (TRadioGroup *)Sender;\r
- char *psz_device;\r
-\r
- if( RadioGroupType->ItemIndex == 0 )\r
- {\r
- psz_device = config_GetPsz( p_intf, "dvd" );\r
- CheckBoxMenus->Enabled = true;\r
- DisableTitles( CheckBoxMenus->Checked );\r
- }\r
- else\r
- {\r
- psz_device = config_GetPsz( p_intf, "vcd" );\r
- CheckBoxMenus->Enabled = false;\r
- /* We don't support menus for vcds, so we use titles and chapters */\r
- DisableTitles( false );\r
- }\r
-\r
- if( psz_device )\r
- {\r
- EditDevice->Text = psz_device;\r
- free( psz_device );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TDiscDlg::CheckBoxMenusClick( TObject *Sender )\r
-{\r
- DisableTitles( CheckBoxMenus->Checked );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TDiscDlg::DisableTitles( Boolean disable )\r
-{\r
- if( disable )\r
- {\r
- GroupBoxPosition->Enabled = false;\r
- LabelTitle->Enabled = false;\r
- LabelChapter->Enabled = false;\r
- SpinEditTitle->Enabled = false;\r
- SpinEditTitle->Color = clBtnFace;\r
- SpinEditChapter->Enabled = false;\r
- SpinEditChapter->Color = clBtnFace;\r
- }\r
- else\r
- {\r
- GroupBoxPosition->Enabled = true;\r
- LabelTitle->Enabled = true;\r
- LabelChapter->Enabled = true;\r
- SpinEditTitle->Enabled = true;\r
- SpinEditTitle->Color = clWindow;\r
- SpinEditChapter->Enabled = true;\r
- SpinEditChapter->Color = clWindow;\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
+++ /dev/null
-object DiscDlg: TDiscDlg\r
- Tag = 3\r
- Left = 465\r
- Top = 337\r
- BorderIcons = [biSystemMenu, biMinimize]\r
- BorderStyle = bsDialog\r
- Caption = 'Open Disc'\r
- ClientHeight = 173\r
- ClientWidth = 248\r
- Color = clBtnFace\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clWindowText\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- OldCreateOrder = False\r
- OnHide = FormHide\r
- OnShow = FormShow\r
- PixelsPerInch = 96\r
- TextHeight = 13\r
- object LabelDevice: TLabel\r
- Tag = 3\r
- Left = 8\r
- Top = 117\r
- Width = 66\r
- Height = 13\r
- Caption = 'Device &name:'\r
- end\r
- object CheckBoxMenus: TCheckBox\r
- Left = 96\r
- Top = 8\r
- Width = 97\r
- Height = 17\r
- Caption = '&Menus'\r
- TabOrder = 1\r
- OnClick = CheckBoxMenusClick\r
- end\r
- object GroupBoxPosition: TGroupBox\r
- Tag = 3\r
- Left = 96\r
- Top = 33\r
- Width = 144\r
- Height = 72\r
- Caption = 'Starting position'\r
- TabOrder = 2\r
- object LabelTitle: TLabel\r
- Tag = 3\r
- Left = 8\r
- Top = 19\r
- Width = 23\r
- Height = 13\r
- Caption = '&Title:'\r
- end\r
- object LabelChapter: TLabel\r
- Tag = 3\r
- Left = 8\r
- Top = 47\r
- Width = 40\r
- Height = 13\r
- Caption = '&Chapter:'\r
- end\r
- object SpinEditTitle: TCSpinEdit\r
- Left = 56\r
- Top = 14\r
- Width = 80\r
- Height = 22\r
- TabStop = True\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clWindowText\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- MaxValue = 65535\r
- MinValue = 1\r
- ParentColor = False\r
- ParentFont = False\r
- TabOrder = 1\r
- Value = 1\r
- end\r
- object SpinEditChapter: TCSpinEdit\r
- Left = 56\r
- Top = 42\r
- Width = 80\r
- Height = 22\r
- TabStop = True\r
- MaxValue = 65535\r
- MinValue = 1\r
- ParentColor = False\r
- TabOrder = 0\r
- Value = 1\r
- end\r
- end\r
- object RadioGroupType: TRadioGroup\r
- Tag = 3\r
- Left = 8\r
- Top = 8\r
- Width = 80\r
- Height = 97\r
- Caption = 'Disc type'\r
- ItemIndex = 0\r
- Items.Strings = (\r
- '&DVD'\r
- '&VCD')\r
- TabOrder = 0\r
- OnClick = RadioGroupTypeClick\r
- end\r
- object ButtonOk: TButton\r
- Tag = 3\r
- Left = 82\r
- Top = 142\r
- Width = 75\r
- Height = 23\r
- Caption = 'OK'\r
- Default = True\r
- ModalResult = 1\r
- TabOrder = 4\r
- OnClick = ButtonOkClick\r
- end\r
- object ButtonCancel: TButton\r
- Tag = 3\r
- Left = 165\r
- Top = 142\r
- Width = 75\r
- Height = 23\r
- Cancel = True\r
- Caption = 'Cancel'\r
- ModalResult = 2\r
- TabOrder = 5\r
- OnClick = ButtonCancelClick\r
- end\r
- object EditDevice: TEdit\r
- Tag = 5\r
- Left = 96\r
- Top = 113\r
- Width = 144\r
- Height = 21\r
- TabOrder = 3\r
- Text = 'F:\'\r
- end\r
-end\r
+++ /dev/null
-/*****************************************************************************\r
- * disc.h: "Open disc" dialog box.\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef discH\r
-#define discH\r
-//---------------------------------------------------------------------------\r
-#include <Classes.hpp>\r
-#include <Controls.hpp>\r
-#include <StdCtrls.hpp>\r
-#include <Forms.hpp>\r
-#include <Buttons.hpp>\r
-#include <ComCtrls.hpp>\r
-#include <ExtCtrls.hpp>\r
-#include "CSPIN.h"\r
-//---------------------------------------------------------------------------\r
-class TDiscDlg : public TForm\r
-{\r
-__published: // IDE-managed Components\r
- TLabel *LabelDevice;\r
- TGroupBox *GroupBoxPosition;\r
- TLabel *LabelTitle;\r
- TLabel *LabelChapter;\r
- TRadioGroup *RadioGroupType;\r
- TButton *ButtonOk;\r
- TButton *ButtonCancel;\r
- TEdit *EditDevice;\r
- TCSpinEdit *SpinEditTitle;\r
- TCSpinEdit *SpinEditChapter;\r
- TCheckBox *CheckBoxMenus;\r
- void __fastcall FormShow( TObject *Sender );\r
- void __fastcall FormHide( TObject *Sender );\r
- void __fastcall ButtonCancelClick( TObject *Sender );\r
- void __fastcall ButtonOkClick( TObject *Sender);\r
- void __fastcall RadioGroupTypeClick( TObject *Sender );\r
- void __fastcall CheckBoxMenusClick( TObject *Sender );\r
-private: // User declarations\r
- intf_thread_t *p_intf;\r
- void __fastcall DisableTitles( Boolean disable );\r
-public: // User declarations\r
- __fastcall TDiscDlg( TComponent* Owner, intf_thread_t *_p_intf );\r
-};\r
-//---------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * dragdrop.cpp: drag and drop management\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#pragma hdrstop\r
-\r
-#include "dragdrop.h"\r
-\r
-//---------------------------------------------------------------------------\r
-__fastcall TDropTarget::TDropTarget( HWND HForm ) : IDropTarget()\r
-{\r
- FormHandle = HForm;\r
- References = 1;\r
-}\r
-//---------------------------------------------------------------------------\r
-__fastcall TDropTarget::~TDropTarget()\r
-{\r
-}\r
-//---------------------------------------------------------------------------\r
-/* helper routine to notify Form of drop on target */\r
-void __fastcall TDropTarget::HandleDrop( HDROP HDrop )\r
-{\r
- SendMessage( FormHandle, WM_OLEDROP, (WPARAM)HDrop, 0 );\r
-}\r
-//---------------------------------------------------------------------------\r
-STDMETHODIMP TDropTarget::QueryInterface( REFIID iid, void FAR* FAR* ppv )\r
-{\r
- /* tell other objects about our capabilities */\r
- if( iid == IID_IUnknown || iid == IID_IDropTarget )\r
- {\r
- *ppv = this;\r
- AddRef();\r
- return S_OK;\r
- }\r
- *ppv = NULL;\r
- return ResultFromScode( E_NOINTERFACE );\r
-}\r
-//---------------------------------------------------------------------------\r
-STDMETHODIMP_(ULONG) TDropTarget::AddRef()\r
-{\r
- return ++References;\r
-}\r
-//---------------------------------------------------------------------------\r
-STDMETHODIMP_(ULONG) TDropTarget::Release()\r
-{\r
- if( --References == 0 )\r
- {\r
- delete this;\r
- return 0;\r
- }\r
- return References;\r
-}\r
-//---------------------------------------------------------------------------\r
-/* Indicates whether a drop can be accepted, and, if so,\r
- * the effect of the drop */\r
-STDMETHODIMP TDropTarget::DragEnter( LPDATAOBJECT pDataObj, DWORD grfKeyState,\r
- POINTL pt, DWORD *pdwEffect )\r
-{\r
- FORMATETC fmtetc;\r
-\r
- fmtetc.cfFormat = CF_HDROP;\r
- fmtetc.ptd = NULL;\r
- fmtetc.dwAspect = DVASPECT_CONTENT;\r
- fmtetc.lindex = -1;\r
- fmtetc.tymed = TYMED_HGLOBAL;\r
-\r
- /* Check that the drag source provides CF_HDROP,\r
- * which is the only format we accept */\r
- if( pDataObj->QueryGetData( &fmtetc ) == S_OK )\r
- *pdwEffect = DROPEFFECT_COPY;\r
- else\r
- *pdwEffect = DROPEFFECT_NONE;\r
-\r
- return S_OK;\r
-}\r
-//---------------------------------------------------------------------------\r
-/* for visual feedback */\r
-STDMETHODIMP TDropTarget::DragOver( DWORD grfKeyState, POINTL pt,\r
- DWORD *pdwEffect )\r
-{\r
- return S_OK;\r
-}\r
-//---------------------------------------------------------------------------\r
-/* remove visual feedback */\r
-STDMETHODIMP TDropTarget::DragLeave()\r
-{\r
- return S_OK;\r
-}\r
-//---------------------------------------------------------------------------\r
-/* something has been dropped */\r
-STDMETHODIMP TDropTarget::Drop( LPDATAOBJECT pDataObj, DWORD grfKeyState,\r
- POINTL pt, DWORD *pdwEffect )\r
-{\r
- /* user has dropped on us -- get the CF_HDROP data from drag source */\r
- FORMATETC fmtetc;\r
- fmtetc.cfFormat = CF_HDROP;\r
- fmtetc.ptd = NULL;\r
- fmtetc.dwAspect = DVASPECT_CONTENT;\r
- fmtetc.lindex = -1;\r
- fmtetc.tymed = TYMED_HGLOBAL;\r
-\r
- STGMEDIUM medium;\r
- HRESULT hr = pDataObj->GetData( &fmtetc, &medium );\r
-\r
- if( !FAILED(hr) )\r
- {\r
- /* grab a pointer to the data */\r
- HGLOBAL HFiles = medium.hGlobal;\r
- HDROP HDrop = (HDROP)GlobalLock( HFiles );\r
-\r
- /* call the helper routine which will notify the Form of the drop */\r
- HandleDrop( HDrop );\r
-\r
- /* release the pointer to the memory */\r
- GlobalUnlock( HFiles );\r
- ReleaseStgMedium( &medium );\r
- }\r
- else\r
- {\r
- *pdwEffect = DROPEFFECT_NONE;\r
- return hr;\r
- }\r
- return S_OK;\r
-}\r
-\r
+++ /dev/null
-/*****************************************************************************\r
- * dragdrop.h: drag and drop management\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef dragdropH\r
-#define dragdropH\r
-//---------------------------------------------------------------------------\r
-#include <ole2.h>\r
-\r
-#define WM_OLEDROP WM_USER + 1\r
-//---------------------------------------------------------------------------\r
-\r
-class TDropTarget : public IDropTarget\r
-{\r
-public:\r
- __fastcall TDropTarget( HWND HForm );\r
- __fastcall ~TDropTarget();\r
-\r
-protected:\r
- /* IUnknown methods */\r
- STDMETHOD(QueryInterface)( REFIID riid, void FAR* FAR* ppvObj );\r
- STDMETHOD_(ULONG, AddRef)();\r
- STDMETHOD_(ULONG, Release)();\r
-\r
- /* IDropTarget methods */\r
- STDMETHOD(DragEnter)( LPDATAOBJECT pDataObj, DWORD grfKeyState,\r
- POINTL pt, DWORD *pdwEffect );\r
- STDMETHOD(DragOver)( DWORD grfKeyState, POINTL pt, DWORD *pdwEffect );\r
- STDMETHOD(DragLeave)();\r
- STDMETHOD(Drop)( LPDATAOBJECT pDataObj, DWORD grfKeyState,\r
- POINTL pt, DWORD *pdwEffect );\r
-\r
-private:\r
- unsigned long References;\r
- HWND FormHandle;\r
-\r
- /* helper function */\r
- void __fastcall HandleDrop( HDROP HDrop );\r
-};\r
-//---------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * mainframe.cpp: Win32 interface plugin for vlc\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teulière <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#pragma hdrstop\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-#include <vlc/vout.h>\r
-#include <vlc/aout.h>\r
-\r
-#include "dragdrop.h"\r
-#include "mainframe.h"\r
-#include "menu.h"\r
-#include "disc.h"\r
-#include "network.h"\r
-#include "about.h"\r
-#include "preferences.h"\r
-#include "messages.h"\r
-#include "playlist.h"\r
-#include "sout.h"\r
-#include "subtitles.h"\r
-#include "misc.h"\r
-#include "win32_common.h"\r
-\r
-/*****************************************************************************\r
- * BORLAND SUCKS\r
- * If the following pragma doesn't end with \r\n instead of \n, the file\r
- * doesn't compile anymore... Funny, isn't it?\r
- * With vim, you can use ":set ff=dos" to correct it\r
- *****************************************************************************/\r
-#pragma link "CSPIN"\r
-#pragma resource "*.dfm"\r
-\r
-extern int Win32Manage( intf_thread_t *p_intf );\r
-\r
-//---------------------------------------------------------------------------\r
-__fastcall TMainFrameDlg::TMainFrameDlg(\r
- TComponent* Owner, intf_thread_t *_p_intf ) : TForm( Owner )\r
-{\r
- p_intf = _p_intf;\r
-\r
- Application->ShowHint = true;\r
- Application->OnHint = DisplayHint;\r
-\r
- TimerManage->Interval = INTF_IDLE_SLEEP / 1000;\r
-\r
- TrackBar->Max = SLIDER_MAX_VALUE;\r
-\r
- /* do we need to show the captions of the toolbuttons? */\r
- if( config_GetInt( p_intf, "intfwin-show-captions" ) )\r
- {\r
- ToolBar->ShowCaptions = true;\r
- /* Add enough room for the text */\r
- ToolBar->Height += 9;\r
- }\r
-\r
- /* default height and caption */\r
- ClientHeight = 37 + ToolBar->Height;\r
- Caption = VOUT_TITLE " (Win32 interface)";\r
-\r
- StringListPref = new TStringList();\r
-\r
- Translate( this );\r
-\r
- /* drag and drop stuff */\r
-\r
- /* initialize the OLE library */\r
- OleInitialize( NULL );\r
- /* TDropTarget will send the WM_OLEDROP message to the form */\r
- lpDropTarget = (LPDROPTARGET)new TDropTarget( this->Handle );\r
- CoLockObjectExternal( lpDropTarget, true, true );\r
- /* register the form as a drop target */\r
- RegisterDragDrop( this->Handle, lpDropTarget );\r
-}\r
-//---------------------------------------------------------------------------\r
-__fastcall TMainFrameDlg::~TMainFrameDlg()\r
-{\r
- delete StringListPref;\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * Event handlers\r
- ****************************************************************************/\r
-void __fastcall TMainFrameDlg::TimerManageTimer( TObject *Sender )\r
-{\r
- Win32Manage( p_intf );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::DisplayHint( TObject *Sender )\r
-{\r
- StatusBar->SimpleText = GetLongHint( Application->Hint );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::TrackBarChange( TObject *Sender )\r
-{\r
- /* This function displays the current date related to the position in\r
- * the stream. It is called whenever the slider changes its value.\r
- * The lock has to be taken before the function is called */\r
-\r
- if( p_intf->p_sys->p_input != NULL )\r
- {\r
-#define p_area p_intf->p_sys->p_input->stream.p_selected_area\r
- char psz_time[ OFFSETTOTIME_MAX_SIZE ];\r
- off_t Value = TrackBar->Position;\r
-\r
- GroupBoxSlider->Caption =\r
- input_OffsetToTime( p_intf->p_sys->p_input, psz_time,\r
- ( p_area->i_size * Value ) / (off_t)SLIDER_MAX_VALUE );\r
-#undef p_area\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::FormClose( TObject *Sender,\r
- TCloseAction &Action )\r
-{\r
- vlc_mutex_lock( &p_intf->change_lock );\r
- p_intf->p_vlc->b_die = VLC_TRUE;\r
- vlc_mutex_unlock( &p_intf->change_lock );\r
-\r
- /* remove the form from the list of drop targets */\r
- RevokeDragDrop( this->Handle );\r
- lpDropTarget->Release();\r
- CoLockObjectExternal( lpDropTarget, false, true );\r
-\r
- /* uninitialize the OLE library */\r
- OleUninitialize();\r
-\r
- /* we don't destroy the form immediatly */\r
- Action = caHide;\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * Main callbacks\r
- ****************************************************************************/\r
-void __fastcall TMainFrameDlg::OpenFileActionExecute( TObject *Sender )\r
-{\r
- if( OpenDialog1->Execute() )\r
- {\r
- /* add the new file to the interface playlist */\r
- for( int i = 0; i < OpenDialog1->Files->Count; i++ )\r
- p_intf->p_sys->p_playwin->Add( OpenDialog1->Files->Strings[i],\r
- PLAYLIST_APPEND\r
- | ( p_intf->p_sys->b_play_when_adding ? PLAYLIST_GO : 0 ),\r
- PLAYLIST_END );\r
- };\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::OpenDiscActionExecute( TObject *Sender )\r
-{\r
- TDiscDlg *p_disc = p_intf->p_sys->p_disc;\r
- if( p_disc == NULL )\r
- {\r
- p_disc = new TDiscDlg( this, p_intf );\r
- p_intf->p_sys->p_disc = p_disc;\r
- }\r
- p_disc->Show();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::NetworkStreamActionExecute( TObject *Sender )\r
-{\r
- TNetworkDlg *p_network = p_intf->p_sys->p_network;\r
- if( p_network == NULL )\r
- {\r
- p_network = new TNetworkDlg( this, p_intf );\r
- p_intf->p_sys->p_network = p_network;\r
- }\r
- p_network->Show();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::AddSubtitlesActionsExecute( TObject *Sender )\r
-{\r
- TSubtitlesDlg *p_subtitles = new TSubtitlesDlg( this, p_intf );\r
- p_subtitles->ShowModal();\r
- delete p_subtitles;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::StreamOutputActionExecute( TObject *Sender )\r
-{\r
- TSoutDlg *p_sout = new TSoutDlg( this, p_intf );\r
- p_sout->ShowModal();\r
- delete p_sout;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::ExitActionExecute( TObject *Sender )\r
-{\r
- Close();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::FullscreenActionExecute( TObject *Sender )\r
-{\r
- vout_thread_t *p_vout;\r
-\r
- if( p_intf->p_sys->p_input == NULL )\r
- {\r
- return;\r
- }\r
-\r
- p_vout = (vout_thread_t *)vlc_object_find( p_intf->p_sys->p_input,\r
- VLC_OBJECT_VOUT, FIND_CHILD );\r
- if( p_vout == NULL )\r
- {\r
- return;\r
- }\r
-\r
- p_vout->i_changes |= VOUT_FULLSCREEN_CHANGE;\r
- vlc_object_release( p_vout );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::OnTopActionExecute( TObject *Sender )\r
-{\r
- vlc_object_t *p_vout;\r
- p_vout = (vlc_object_t *)vlc_object_find( p_intf, VLC_OBJECT_VOUT,\r
- FIND_ANYWHERE );\r
- if( p_vout != NULL )\r
- {\r
- vlc_value_t val;\r
- if( var_Get( p_vout, "directx-on-top", &val ) >= 0 )\r
- {\r
- val.b_bool = ! val.b_bool;\r
- var_Set( p_vout, "directx-on-top", val );\r
- MenuOnTop->Checked = val.b_bool;\r
- PopupOnTop->Checked = val.b_bool;\r
- }\r
- vlc_object_release( p_vout );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::PlaylistActionExecute( TObject *Sender )\r
-{\r
- TPlaylistDlg *p_playwin = p_intf->p_sys->p_playwin;\r
- if( p_playwin->Visible )\r
- {\r
- p_playwin->Hide();\r
- }\r
- else\r
- {\r
- p_playwin->UpdateGrid();\r
- p_playwin->Show();\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::MessagesActionExecute( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_messages->Show();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::PreferencesActionExecute( TObject *Sender )\r
-{\r
- CreatePreferences( "main" );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::AboutActionExecute( TObject *Sender )\r
-{\r
- TAboutDlg *AboutDlg = new TAboutDlg( this, p_intf );\r
- AboutDlg->ShowModal();\r
- delete AboutDlg;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::BackActionExecute( TObject *Sender )\r
-{\r
- /* TODO */\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::PlayActionExecute( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_playwin->Play();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::PauseActionExecute( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_playwin->Pause();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::StopActionExecute( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_playwin->Stop();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::SlowActionExecute( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_playwin->Slow();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::FastActionExecute( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_playwin->Fast();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::PreviousActionExecute(TObject *Sender)\r
-{\r
- p_intf->p_sys->p_playwin->Previous();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::NextActionExecute(TObject *Sender)\r
-{\r
- p_intf->p_sys->p_playwin->Next();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::EjectActionExecute( TObject *Sender )\r
-{\r
- AnsiString Device = "";\r
- char * psz_current;\r
- playlist_t * p_playlist;\r
-\r
- p_playlist = (playlist_t *)vlc_object_find( p_intf,\r
- VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );\r
- if( p_playlist == NULL )\r
- {\r
- return;\r
- }\r
-\r
- /*\r
- * Get the active input\r
- * Determine whether we can eject a media, ie it's a VCD or DVD\r
- * If it's neither a VCD nor a DVD, then return\r
- */\r
-\r
- vlc_mutex_lock( &p_playlist->object_lock );\r
- psz_current = p_playlist->pp_items[ p_playlist->i_index ]->psz_name;\r
-\r
- if( psz_current != NULL )\r
- {\r
- if( strncmp( psz_current, "dvd", 3 )\r
- || strncmp( psz_current, "vcd", 3 ) )\r
- {\r
- /* Determine the device name by omitting the first 4 characters\r
- * and keeping 3 characters */\r
- Device = strdup( ( psz_current + 4 ) );\r
- Device = Device.SubString( 1, 2 );\r
- }\r
- }\r
-\r
- vlc_mutex_unlock( &p_playlist->object_lock );\r
- vlc_object_release( p_playlist );\r
-\r
- if( Device == "" )\r
- {\r
- return;\r
- }\r
-\r
- /* If there's a stream playing, we aren't allowed to eject ! */\r
- if( p_intf->p_sys->p_input == NULL )\r
- {\r
- msg_Dbg( p_intf, "ejecting %s", Device.c_str() );\r
-\r
- intf_Eject( p_intf, Device.c_str() );\r
- }\r
-}\r
-//--------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::VolumeUpActionExecute( TObject *Sender )\r
-{\r
- aout_VolumeUp( p_intf, 1, NULL );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::VolumeDownActionExecute( TObject *Sender )\r
-{\r
- aout_VolumeDown( p_intf, 1, NULL );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::MuteActionExecute( TObject *Sender )\r
-{\r
- aout_VolumeMute( p_intf, NULL );\r
-// MenuMute->Checked = ! MenuMute->Checked;\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * External drop handling\r
- *****************************************************************************/\r
-void __fastcall TMainFrameDlg::OnDrop( TMessage &Msg )\r
-{\r
- /* find the number of files dropped */\r
- int num_files = DragQueryFile( (HDROP)Msg.WParam, 0xFFFFFFFF,\r
- (LPSTR)NULL, NULL );\r
-\r
- /* append each file to the playlist */\r
- for( int i = 0; i < num_files; i++ )\r
- {\r
- /* find the length of the filename */\r
- int name_length = DragQueryFile( (HDROP)Msg.WParam, i, NULL, NULL ) + 1;\r
-\r
- /* get the filename */\r
- char *FileName = new char[name_length];\r
- DragQueryFile( (HDROP)Msg.WParam, i, FileName, name_length );\r
-\r
- /* add the new file to the playlist */\r
- if( config_GetInt( p_intf, "enqueue" ) )\r
- {\r
- p_intf->p_sys->p_playwin->Add( FileName,\r
- PLAYLIST_APPEND, PLAYLIST_END );\r
- }\r
- else\r
- {\r
- p_intf->p_sys->p_playwin->Add( FileName,\r
- PLAYLIST_APPEND | PLAYLIST_GO, PLAYLIST_END );\r
- }\r
-\r
- delete[] FileName;\r
- }\r
-\r
- DragFinish( (HDROP)Msg.WParam );\r
- Msg.Result = 0;\r
-}\r
-//--------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * Menu and popup callbacks\r
- *****************************************************************************/\r
-void __fastcall TMainFrameDlg::MenuHideinterfaceClick( TObject *Sender )\r
-{\r
- this->SendToBack();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::PopupToggleInterfaceClick( TObject *Sender )\r
-{\r
- this->BringToFront();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::PopupCloseClick( TObject *Sender )\r
-{\r
- /* We do nothing, we just need a click on a menu item\r
- * to close the popup. Don't ask me why... */\r
- return;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::PopupJumpClick( TObject *Sender )\r
-{\r
- /* TODO */\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * Callbacks for DVD/VCD navigation\r
- ****************************************************************************/\r
-void __fastcall TMainFrameDlg::PrevTitleActionExecute( TObject *Sender )\r
-{\r
- input_area_t * p_area;\r
- int i_id;\r
-\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- i_id = p_intf->p_sys->p_input->stream.p_selected_area->i_id - 1;\r
-\r
- /* Disallow area 0 since it is used for video_ts.vob */\r
- if( i_id > 0 )\r
- {\r
- p_area = p_intf->p_sys->p_input->stream.pp_areas[i_id];\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-\r
- input_ChangeArea( p_intf->p_sys->p_input, p_area );\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PLAY );\r
-\r
- p_intf->p_sys->b_title_update = VLC_TRUE;\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- p_intf->p_sys->p_menus->SetupMenus();\r
- }\r
-\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::NextTitleActionExecute( TObject *Sender )\r
-{\r
- input_area_t * p_area;\r
- unsigned int i_id;\r
-\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- i_id = p_intf->p_sys->p_input->stream.p_selected_area->i_id + 1;\r
-\r
- if( i_id < p_intf->p_sys->p_input->stream.i_area_nb )\r
- {\r
- p_area = p_intf->p_sys->p_input->stream.pp_areas[i_id];\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-\r
- input_ChangeArea( p_intf->p_sys->p_input, p_area );\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PLAY );\r
-\r
- p_intf->p_sys->b_title_update = VLC_TRUE;\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- p_intf->p_sys->p_menus->SetupMenus();\r
- }\r
-\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::PrevChapterActionExecute( TObject *Sender )\r
-{\r
- input_area_t * p_area;\r
-\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- p_area = p_intf->p_sys->p_input->stream.p_selected_area;\r
-\r
- if( p_area->i_part - 1 > 0 )\r
- {\r
- p_area->i_part--;\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-\r
- input_ChangeArea( p_intf->p_sys->p_input, p_area );\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PLAY );\r
-\r
- p_intf->p_sys->b_chapter_update = VLC_TRUE;\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- p_intf->p_sys->p_menus->SetupMenus();\r
- }\r
-\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMainFrameDlg::NextChapterActionExecute( TObject *Sender )\r
-{\r
- input_area_t * p_area;\r
-\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- p_area = p_intf->p_sys->p_input->stream.p_selected_area;\r
-\r
- if( p_area->i_part + 1 < p_area->i_part_nb )\r
- {\r
- p_area->i_part++;\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-\r
- input_ChangeArea( p_intf->p_sys->p_input, p_area );\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PLAY );\r
-\r
- p_intf->p_sys->b_chapter_update = VLC_TRUE;\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- p_intf->p_sys->p_menus->SetupMenus();\r
- }\r
-\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * Callback for the 'go!' button\r
- ****************************************************************************/\r
-void __fastcall TMainFrameDlg::ButtonGoClick( TObject *Sender )\r
-{\r
- msg_Err( p_intf, "Deprecated, doesn't do anything" );\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * ModeManage: actualise the aspect of the interface whenever the input\r
- * changes.\r
- *****************************************************************************\r
- * The lock has to be taken before you call the function.\r
- *****************************************************************************/\r
-void __fastcall TMainFrameDlg::ModeManage()\r
-{\r
- TGroupBox * ActiveGB;\r
- int i_Height;\r
- bool b_control;\r
-\r
- /* hide all boxes */\r
- GroupBoxFile->Visible = false;\r
- GroupBoxNetwork->Visible = false;\r
- GroupBoxDisc->Visible = false;\r
-\r
- /* hide slider */\r
- GroupBoxSlider->Hide();\r
-\r
- /* controls unavailable */\r
- b_control = 0;\r
-\r
- /* show the box related to current input mode */\r
- if( p_intf->p_sys->p_input != NULL )\r
- {\r
- switch( p_intf->p_sys->p_input->stream.i_method & 0xf0 )\r
- {\r
- case INPUT_METHOD_FILE:\r
- GroupBoxFile->Visible = true;\r
- ActiveGB = GroupBoxFile;\r
- LabelFileName->Caption = p_intf->p_sys->p_input->psz_source;\r
- break;\r
- case INPUT_METHOD_DISC:\r
- GroupBoxDisc->Visible = true;\r
- ActiveGB = GroupBoxDisc;\r
- break;\r
- case INPUT_METHOD_NETWORK:\r
- GroupBoxNetwork->Visible = true;\r
- ActiveGB = GroupBoxNetwork;\r
- LabelServer->Caption = p_intf->p_sys->p_input->psz_source;\r
- if( config_GetInt( p_intf, "network-channel" ) )\r
- {\r
- LabelChannel->Visible = true;\r
- }\r
- else\r
- {\r
- LabelChannel->Visible = false;\r
- }\r
- break;\r
- default:\r
- msg_Warn( p_intf, "cannot determine input method" );\r
- GroupBoxFile->Visible = true;\r
- ActiveGB = GroupBoxFile;\r
- LabelFileName->Caption = p_intf->p_sys->p_input->psz_source;\r
- break;\r
- }\r
-\r
- i_Height = StatusBar->Height + ActiveGB->Height + ToolBar->Height + 54;\r
-\r
- /* initialize and show slider for seekable streams */\r
- if( p_intf->p_sys->p_input->stream.b_seekable )\r
- {\r
- TrackBar->Position = p_intf->p_sys->OldValue = 0;\r
- GroupBoxSlider->Show();\r
- i_Height += GroupBoxSlider->Height;\r
- }\r
-\r
- /* control buttons for free pace streams */\r
- b_control = p_intf->p_sys->p_input->stream.b_pace_control;\r
-\r
- /* get ready for menu regeneration */\r
- p_intf->p_sys->b_program_update = 1;\r
- p_intf->p_sys->b_title_update = 1;\r
- p_intf->p_sys->b_chapter_update = 1;\r
- p_intf->p_sys->b_audio_update = 1;\r
- p_intf->p_sys->b_spu_update = 1;\r
- p_intf->p_sys->i_part = 0;\r
-\r
- p_intf->p_sys->p_input->stream.b_changed = 0;\r
- msg_Dbg( p_intf, "stream has changed, refreshing interface" );\r
- }\r
- else\r
- {\r
- i_Height = StatusBar->Height + ToolBar->Height + 47;\r
-\r
- if( config_GetInt( p_intf, "network-channel" ) )\r
- {\r
- GroupBoxNetwork->Visible = true;\r
- LabelChannel->Visible = true;\r
- i_Height += GroupBoxNetwork->Height + 7;\r
- }\r
- else\r
- {\r
- /* add space between tolbar and statusbar when\r
- * nothing is displayed; isn't it nicer ? :) */\r
- i_Height += 17;\r
- }\r
-\r
- /* unsensitize menus */\r
- MenuProgram->Enabled = false;\r
- MenuTitle->Enabled = false;\r
- MenuChapter->Enabled = false;\r
- MenuLanguage->Enabled = false;\r
- MenuSubtitles->Enabled = false;\r
- PopupNavigation->Enabled = false;\r
- PopupLanguage->Enabled = false;\r
- PopupSubtitles->Enabled = false;\r
- }\r
-\r
- /* resize main window */\r
- this->Height = i_Height;\r
-\r
- /* set control items */\r
- EjectAction->Enabled = !b_control;\r
- StopAction->Enabled = true;\r
- PauseAction->Enabled = b_control;\r
- SlowAction->Enabled = b_control;\r
- FastAction->Enabled = b_control;\r
- PopupBack->Enabled = false;\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * CreateConfig: create a configuration dialog and save it for further use\r
- *****************************************************************************\r
- * Check if the dialog box is already opened, if so this will save us\r
- * quite a bit of work. (the interface will be destroyed when you actually\r
- * close the main window, but remember that it is only hidden if you\r
- * clicked on the action buttons). This trick also allows us not to\r
- * duplicate identical dialog windows.\r
- *****************************************************************************/\r
-void __fastcall TMainFrameDlg::CreatePreferences( AnsiString Name )\r
-{\r
- TPreferencesDlg *Preferences;\r
- int i_index, i_pos;\r
-\r
- i_index = StringListPref->IndexOf( Name );\r
- if( i_index != -1 )\r
- {\r
- /* config dialog already exists */\r
- Preferences = (TPreferencesDlg *)StringListPref->Objects[i_index];\r
- }\r
- else\r
- {\r
- /* create the config dialog */\r
- Preferences = new TPreferencesDlg( this, p_intf );\r
- Preferences->CreateConfigDialog( Name.c_str() );\r
-\r
- /* save it */\r
- i_pos = StringListPref->Add( Name );\r
- StringListPref->Objects[i_pos] = Preferences;\r
- }\r
-\r
- /* display the dialog */\r
- Preferences->Show();\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
+++ /dev/null
-object MainFrameDlg: TMainFrameDlg\r
- Tag = 3\r
- Left = 356\r
- Top = 227\r
- Width = 462\r
- Height = 306\r
- BorderIcons = [biSystemMenu, biMinimize]\r
- Caption = 'VLC media player'\r
- Color = clBtnFace\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clWindowText\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- Icon.Data = {\r
- 0000010001003030000001000800A80E00001600000028000000300000006000\r
- 00000100080000000000800A0000000000000000000000010000000000000402\r
- 04002486D4009CC2E4007CA6C400E4E2E40004528C003CA2F4001C82DC0054B2\r
- FC003C8EDC00B4CADC00046EC4001C92F40034363400D4D6D400FFFFFF006CAA\r
- E4006CB2F4000476DC0044AAFC009CD2FC00A4B6C4001C6EB4001C9AFC00548A\r
- B4007CC2FC000486F400B4CAE4001416140034A2FC00CCD2D400147ACC006CBA\r
- FC006CA6DC00CCE2F400045EA400349EFC00044A7400FCFEFC0064BAFC005C9E\r
- DC00C4CED4000C92FC00BCD6E400F4F2F4007C9AB4008CCAFC0044A2FC007CBA\r
- FC00CCEAFC001C5E8C000482EC0064B6FC000472D400047EEC002C9EFC00048E\r
- FC001C1E1C001C96FC00CCDAE4000C0A0C00348ED400A4C6E4009CAEBC00248A\r
- E4005CB6FC003492E400BCCEDC003C3E3C00047EE4004CAEFC00ACBECC00447A\r
- A400249EFC008CC6FC003CA6FC00247ECC0074BEFC007CAEDC001C5674001496\r
- FC00ECF6FC00649ACC00DCEEFC00040604002C8AD400A4C2E40084AAC400145A\r
- 8C0044A2F4001C86DC005CB2FC003C92DC00BCCADC000472CC003C3A3C00E4F2\r
- FC0054AEFC0074B6F400047ADC004CAAFC009CB6CC00249AFC006C92BC0084C6\r
- FC00048AFC001C1A1C003CA2FC00CCD2DC001C7ECC0074BAFC0074AADC00D4E6\r
- F4000462B4000C4E74004C9EE400CCCED4001492FC00C4DAE40094CAFC0044A6\r
- FC007CBEFC002C628C000476D4000C8EFC0024222400D4DAE4003476B400F4F6\r
- FC006C9ECC00E4EEFC0000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000008383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 838383831C1C1C1C838383838383838383838383838383838383838383838383\r
- 838383838383838383838383838383831C1C1C1C5E12635E1C1C1C8383838383\r
- 838383838383838383838383838383838383838383838383838383831C1C1C1C\r
- 5E6312456969691A455E1C1C1C83838383838383838383838383838383838383\r
- 8383838383838383831C1C1C5E127B5E7B63636363636345691A45125E1C1C83\r
- 8383838383838383838383838383838383838383831C1C1C1C5E126363635E05\r
- 25252525252572585E6345691A455E1C1C838383838383838383838383838383\r
- 8383831C1C5E1263451A697B05250569696969692A17244B584F7A5E69696963\r
- 5E1C83838383838383838383838383838383831C711A69694525252369696969\r
- 3869383875661D785B344D4825694569695E1C1C838383838383838383838383\r
- 838383831C5E45121C45696969383869386938383A376B645B206E795B250045\r
- 691A711C83838383838383838383838383838383831C1C231C63696938696938\r
- 6938692A17374B46412079796E520012455E1C83838383838383838383838383\r
- 838383838383831C1C1238386938386938693875661D1361344D7919101C230B\r
- 1C1C838383838383838383838383838383838383838383831C5E696938693869\r
- 38693850666B135B20797979211C1C1C83838383838383838383838383838383\r
- 83838383838383831C1C45693869383A17662413465B34342079796E521C8383\r
- 838383838383838383838383838383838383838383838383831C633A663A0602\r
- 0A2B22535382312E684A19101C83838383838383838383838383838383838383\r
- 8383838383838383831C01020A0A0A1E1E042C26262626606053146F54838383\r
- 838383838383838383838383838383838383838383838383831C67290E1E0E0E\r
- 0E042C2626262626262682656A83838383838383838383838383838383838383\r
- 8383838383838383831C0D3F0E0E0E0E0E042C262626262626267E4483838383\r
- 83838383838383838383838383838383838383838383838383836A3F0E0E0E6C\r
- 5D2B22538260602626266C7D8383838383838383838383838383838383838383\r
- 838383838383838383836A3F6C5D1B025924645B274D77536080477D83838383\r
- 83838383838383838383838383838383838383838383838383831C0302590C3A\r
- 753A376B465B6E4A141B0D838383838383838383838383838383838383838383\r
- 83838383838383838383541F0C3838382A661D4B61344D7930813C8383838383\r
- 8383838383838383838383838383838383838383838383838383831C45386938\r
- 75661D1308344D7910101C838383838383838383838383838383838383838383\r
- 83838383838383838383831C126938383A376B645B207979211C838383838383\r
- 8383838383838383838383838383838383838383838383838383831C6338692A\r
- 17374B463420796E521C83838383838383838383838383838383838383838383\r
- 83838383838383838383831C5E6938662F615B4D19681910101C838383838383\r
- 838383838383838383838383838383838383838383838383838383835407593E\r
- 5D2B70608253144E1C8383838383838383838383838383838383838383838383\r
- 8383838383838383838383831C030A1E0E042C26262682656A83838383838383\r
- 838383838383838383838383838383838383838383838383838383836A3F0E0E\r
- 0E042C2626267E446A8383838383838383838383838383838383838383838383\r
- 838383838383838383838383392D740E0E042C2626266C7D8383838383838383\r
- 838383838383838383838383838383838383838383838383838383831C0D156C\r
- 433B70606080477D838383838383838383838383838383838383838383838383\r
- 838383838383838383838383831C573E1134794A141B5F6A8383838383838383\r
- 83838383838383838383838383838383838383838383838383838383831C3D78\r
- 6461344D796F1C83838383838383838383838383838383838383838383838383\r
- 838383838383838383838383831C4C24645B347930521C838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383831C42\r
- 465B2079101C8383838383838383838383838383838383838383838383838383\r
- 83838383838383838383838383831C0946344D79211C83838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383831C3D\r
- 73731062521C8383838383838383838383838383838383838383838383838383\r
- 83838383838383838383838383831C7F0000001C1C8383838383838383838383\r
- 838383838383838383838383838383838383838383838383838383838383831C\r
- 0B074C4C1C838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383831C0B0701161C8383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 1C1C1C1C83838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 8383838383838383838383838383838383838383838383838383838383838383\r
- 838383838383838383838383838383838383838383838383838383838383FFFF\r
- FFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000FFFF\r
- FFFFFFFF0000FFFFFC3FFFFF0000FFFFC007FFFF0000FFFC0001FFFF0000FFE0\r
- 00007FFF0000FE0000001FFF0000F80000000FFF0000F800000003FF0000FC00\r
- 000003FF0000FE00000007FF0000FF8000000FFF0000FFC000003FFF0000FFC0\r
- 0000FFFF0000FFE00001FFFF0000FFE00001FFFF0000FFE00001FFFF0000FFE0\r
- 0003FFFF0000FFF00003FFFF0000FFF00003FFFF0000FFF00007FFFF0000FFF0\r
- 0007FFFF0000FFF80007FFFF0000FFF8000FFFFF0000FFF8000FFFFF0000FFF8\r
- 000FFFFF0000FFFC001FFFFF0000FFFC001FFFFF0000FFFC001FFFFF0000FFFC\r
- 003FFFFF0000FFFC003FFFFF0000FFFE003FFFFF0000FFFE007FFFFF0000FFFE\r
- 007FFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF\r
- 01FFFFFF0000FFFF81FFFFFF0000FFFF81FFFFFF0000FFFFC3FFFFFF0000FFFF\r
- FFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000}\r
- Menu = MainMenu1\r
- OldCreateOrder = False\r
- PopupMenu = PopupMenuMain\r
- ShowHint = True\r
- OnClose = FormClose\r
- PixelsPerInch = 96\r
- TextHeight = 13\r
- object ToolBar: TToolBar\r
- Left = 0\r
- Top = 0\r
- Width = 454\r
- Height = 41\r
- ButtonHeight = 37\r
- ButtonWidth = 39\r
- Caption = 'ToolBar'\r
- EdgeBorders = [ebTop, ebBottom]\r
- Flat = True\r
- Images = ImageListToolbar\r
- TabOrder = 0\r
- object ToolButtonFile: TToolButton\r
- Tag = 3\r
- Left = 0\r
- Top = 0\r
- Action = OpenFileAction\r
- end\r
- object ToolButtonDisc: TToolButton\r
- Tag = 3\r
- Left = 39\r
- Top = 0\r
- Action = OpenDiscAction\r
- end\r
- object ToolButtonNet: TToolButton\r
- Tag = 3\r
- Left = 78\r
- Top = 0\r
- Action = NetworkStreamAction\r
- end\r
- object ToolButtonSep1: TToolButton\r
- Left = 117\r
- Top = 0\r
- Width = 8\r
- Caption = 'ToolButtonSep1'\r
- ImageIndex = 3\r
- Style = tbsSeparator\r
- end\r
- object ToolButtonPlay: TToolButton\r
- Tag = 3\r
- Left = 125\r
- Top = 0\r
- Action = PlayAction\r
- end\r
- object ToolButtonPause: TToolButton\r
- Tag = 3\r
- Left = 164\r
- Top = 0\r
- Action = PauseAction\r
- end\r
- object ToolButtonStop: TToolButton\r
- Tag = 3\r
- Left = 203\r
- Top = 0\r
- Action = StopAction\r
- end\r
- object ToolButtonSep2: TToolButton\r
- Left = 242\r
- Top = 0\r
- Width = 8\r
- Caption = 'ToolButtonSep2'\r
- ImageIndex = 13\r
- Style = tbsSeparator\r
- end\r
- object ToolButtonSlow: TToolButton\r
- Tag = 3\r
- Left = 250\r
- Top = 0\r
- Action = SlowAction\r
- end\r
- object ToolButtonFast: TToolButton\r
- Tag = 3\r
- Left = 289\r
- Top = 0\r
- Action = FastAction\r
- end\r
- object ToolButtonSep3: TToolButton\r
- Left = 328\r
- Top = 0\r
- Width = 8\r
- Caption = 'ToolButtonSep3'\r
- ImageIndex = 9\r
- Style = tbsSeparator\r
- end\r
- object ToolButtonPlaylist: TToolButton\r
- Tag = 3\r
- Left = 336\r
- Top = 0\r
- Action = PlaylistAction\r
- Style = tbsCheck\r
- end\r
- object ToolButtonPrev: TToolButton\r
- Tag = 3\r
- Left = 375\r
- Top = 0\r
- Action = PreviousAction\r
- end\r
- object ToolButtonNext: TToolButton\r
- Tag = 3\r
- Left = 414\r
- Top = 0\r
- Action = NextAction\r
- end\r
- end\r
- object StatusBar: TStatusBar\r
- Left = 0\r
- Top = 241\r
- Width = 454\r
- Height = 19\r
- Panels = <>\r
- ParentShowHint = False\r
- ShowHint = False\r
- SimplePanel = True\r
- end\r
- object GroupBoxFile: TGroupBox\r
- Tag = 3\r
- Left = 0\r
- Top = 81\r
- Width = 454\r
- Height = 32\r
- Align = alTop\r
- TabOrder = 2\r
- Visible = False\r
- object LabelFileName: TLabel\r
- Tag = 3\r
- Left = 2\r
- Top = 15\r
- Width = 450\r
- Height = 15\r
- Align = alClient\r
- Alignment = taCenter\r
- Caption = 'File read'\r
- end\r
- end\r
- object GroupBoxNetwork: TGroupBox\r
- Left = 0\r
- Top = 145\r
- Width = 454\r
- Height = 40\r
- Align = alTop\r
- TabOrder = 3\r
- Visible = False\r
- object LabelChannel: TLabel\r
- Tag = 3\r
- Left = 288\r
- Top = 16\r
- Width = 42\r
- Height = 13\r
- Caption = 'Channel:'\r
- end\r
- object LabelServer: TLabel\r
- Tag = 3\r
- Left = 64\r
- Top = 16\r
- Width = 46\r
- Height = 13\r
- Caption = 'No server'\r
- end\r
- object ButtonGo: TButton\r
- Tag = 3\r
- Left = 384\r
- Top = 10\r
- Width = 25\r
- Height = 25\r
- Caption = 'Go!'\r
- TabOrder = 0\r
- OnClick = ButtonGoClick\r
- end\r
- object SpinEditChannel: TCSpinEdit\r
- Left = 336\r
- Top = 11\r
- Width = 41\r
- Height = 22\r
- TabStop = True\r
- MaxValue = 99\r
- ParentColor = False\r
- TabOrder = 1\r
- end\r
- end\r
- object GroupBoxDisc: TGroupBox\r
- Left = 0\r
- Top = 113\r
- Width = 454\r
- Height = 32\r
- Align = alTop\r
- TabOrder = 4\r
- Visible = False\r
- object LabelDisc: TLabel\r
- Tag = 3\r
- Left = 24\r
- Top = 11\r
- Width = 21\r
- Height = 13\r
- Caption = 'Disc'\r
- end\r
- object LabelTitle: TLabel\r
- Tag = 3\r
- Left = 96\r
- Top = 11\r
- Width = 23\r
- Height = 13\r
- Caption = 'Title:'\r
- end\r
- object LabelChapter: TLabel\r
- Tag = 3\r
- Left = 296\r
- Top = 11\r
- Width = 40\r
- Height = 13\r
- Caption = 'Chapter:'\r
- end\r
- object LabelTitleCurrent: TLabel\r
- Left = 126\r
- Top = 11\r
- Width = 9\r
- Height = 13\r
- Caption = '---'\r
- end\r
- object LabelChapterCurrent: TLabel\r
- Left = 342\r
- Top = 11\r
- Width = 9\r
- Height = 13\r
- Caption = '---'\r
- end\r
- object ButtonTitlePrev: TButton\r
- Tag = 3\r
- Left = 152\r
- Top = 8\r
- Width = 33\r
- Height = 19\r
- Action = PrevTitleAction\r
- TabOrder = 0\r
- end\r
- object ButtonTitleNext: TButton\r
- Tag = 3\r
- Left = 184\r
- Top = 8\r
- Width = 33\r
- Height = 19\r
- Action = NextTitleAction\r
- TabOrder = 1\r
- end\r
- object ButtonChapterPrev: TButton\r
- Tag = 3\r
- Left = 368\r
- Top = 8\r
- Width = 33\r
- Height = 19\r
- Action = PrevChapterAction\r
- TabOrder = 2\r
- end\r
- object ButtonChapterNext: TButton\r
- Tag = 3\r
- Left = 400\r
- Top = 8\r
- Width = 33\r
- Height = 19\r
- Action = NextChapterAction\r
- TabOrder = 3\r
- end\r
- end\r
- object GroupBoxSlider: TGroupBox\r
- Tag = 3\r
- Left = 0\r
- Top = 41\r
- Width = 454\r
- Height = 40\r
- Align = alTop\r
- Caption = '0:00:00'\r
- TabOrder = 5\r
- Visible = False\r
- object TrackBar: TTrackBar\r
- Left = 2\r
- Top = 15\r
- Width = 450\r
- Height = 21\r
- Align = alTop\r
- Orientation = trHorizontal\r
- Frequency = 1\r
- Position = 0\r
- SelEnd = 0\r
- SelStart = 0\r
- TabOrder = 0\r
- TickMarks = tmBottomRight\r
- TickStyle = tsNone\r
- OnChange = TrackBarChange\r
- end\r
- end\r
- object MainMenu1: TMainMenu\r
- Left = 40\r
- Top = 208\r
- object MenuFile: TMenuItem\r
- Tag = 3\r
- Caption = '&File'\r
- object MenuOpenFile: TMenuItem\r
- Tag = 3\r
- Action = OpenFileAction\r
- Caption = 'Open &file...'\r
- end\r
- object MenuOpenDisc: TMenuItem\r
- Tag = 3\r
- Action = OpenDiscAction\r
- Caption = 'Open &disc...'\r
- end\r
- object MenuNetworkStream: TMenuItem\r
- Tag = 3\r
- Action = NetworkStreamAction\r
- Caption = '&Network stream...'\r
- end\r
- object MenuAddSubtitles: TMenuItem\r
- Tag = 3\r
- Action = AddSubtitlesAction\r
- end\r
- object MenuStreamOuput: TMenuItem\r
- Tag = 3\r
- Action = StreamOutputAction\r
- end\r
- object N2: TMenuItem\r
- Caption = '-'\r
- end\r
- object MenuEjectDisc: TMenuItem\r
- Tag = 3\r
- Action = EjectAction\r
- end\r
- object N8: TMenuItem\r
- Caption = '-'\r
- end\r
- object MenuExit: TMenuItem\r
- Tag = 3\r
- Action = ExitAction\r
- end\r
- end\r
- object MenuView: TMenuItem\r
- Tag = 3\r
- Caption = '&View'\r
- object MenuFullscreen: TMenuItem\r
- Tag = 3\r
- Action = FullscreenAction\r
- end\r
- object MenuOnTop: TMenuItem\r
- Tag = 3\r
- Action = OnTopAction\r
- end\r
- object MenuHideinterface: TMenuItem\r
- Tag = 3\r
- Caption = '&Hide interface'\r
- Hint = 'Hide the main interface window'\r
- OnClick = MenuHideinterfaceClick\r
- end\r
- object N3: TMenuItem\r
- Caption = '-'\r
- end\r
- object MenuPlaylist: TMenuItem\r
- Tag = 3\r
- Action = PlaylistAction\r
- Caption = '&Playlist...'\r
- end\r
- object MenuMessages: TMenuItem\r
- Tag = 3\r
- Action = MessagesAction\r
- end\r
- object MenuPreferences: TMenuItem\r
- Tag = 3\r
- Action = PreferencesAction\r
- end\r
- object N4: TMenuItem\r
- Caption = '-'\r
- end\r
- object MenuAddInterface: TMenuItem\r
- Tag = 3\r
- Caption = '&Add interface'\r
- Hint = 'Spawn a new interface'\r
- end\r
- end\r
- object MenuControls: TMenuItem\r
- Tag = 3\r
- Caption = '&Controls'\r
- object MenuADevice: TMenuItem\r
- Tag = 3\r
- Caption = 'Audio device'\r
- Enabled = False\r
- end\r
- object MenuVolumeUp: TMenuItem\r
- Tag = 3\r
- Action = VolumeUpAction\r
- end\r
- object MenuVolumeDown: TMenuItem\r
- Tag = 3\r
- Action = VolumeDownAction\r
- end\r
- object MenuMute: TMenuItem\r
- Tag = 3\r
- Action = MuteAction\r
- end\r
- object MenuChannel: TMenuItem\r
- Tag = 3\r
- Caption = 'C&hannels'\r
- Enabled = False\r
- Hint = 'Select audio channel'\r
- end\r
- object MenuVDevice: TMenuItem\r
- Tag = 3\r
- Caption = 'Sc&reen'\r
- Enabled = False\r
- end\r
- object N11: TMenuItem\r
- Caption = '-'\r
- end\r
- object MenuProgram: TMenuItem\r
- Tag = 3\r
- Caption = '&Program'\r
- Enabled = False\r
- Hint = 'Choose the program'\r
- end\r
- object MenuTitle: TMenuItem\r
- Tag = 3\r
- Caption = '&Title'\r
- Enabled = False\r
- Hint = 'Choose title'\r
- end\r
- object MenuChapter: TMenuItem\r
- Tag = 3\r
- Caption = '&Chapter'\r
- Enabled = False\r
- Hint = 'Choose chapter'\r
- end\r
- object MenuAngle: TMenuItem\r
- Tag = 3\r
- Caption = '&Angle'\r
- Enabled = False\r
- Hint = 'Select angle'\r
- end\r
- object MenuLanguage: TMenuItem\r
- Tag = 3\r
- Caption = '&Language'\r
- Enabled = False\r
- Hint = 'Select audio channel'\r
- end\r
- object MenuSubtitles: TMenuItem\r
- Tag = 3\r
- Caption = '&Subtitles'\r
- Enabled = False\r
- Hint = 'Select subtitles channel'\r
- end\r
- end\r
- object MenuHelp: TMenuItem\r
- Tag = 3\r
- Caption = '&Help'\r
- object MenuAbout: TMenuItem\r
- Tag = 3\r
- Action = AboutAction\r
- end\r
- end\r
- end\r
- object OpenDialog1: TOpenDialog\r
- Filter = 'All Files (*.*)|*.*'\r
- Options = [ofHideReadOnly, ofAllowMultiSelect, ofEnableSizing]\r
- Left = 8\r
- Top = 208\r
- end\r
- object ImageListToolbar: TImageList\r
- Height = 26\r
- Width = 32\r
- Left = 104\r
- Top = 208\r
- Bitmap = {\r
- 494C01010D000E00040020001A00FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600\r
- 00000000000036000000280000008000000068000000010020000000000000D0\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000034653F00000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000034653F0034653F000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000007AA9830054855D00325B\r
- 3A00000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000007AA983007AA983000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000080AC88007AA983006B9A\r
- 7400497C5300325B3A0000000000000000000000000000000000000000000000\r
- 000000000000000000008CB896008CB896000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000090BB9D007AA983007AA9\r
- 83007AA983006B9A7400497C530040704B000000000000000000000000000000\r
- 0000000000000000000090BB9D008CB896000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000090BB9D007AA983007AA9\r
- 83007AA983007AA983007AA983006B9A7400497C530040584400000000000000\r
- 0000000000000000000090BB9D0090BB9D000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000090BB9D0080AC88007AA9\r
- 830080AC88007AA983007AA9830076A47E007AA983006B9A740054855D00325B\r
- 3A00000000000000000090BB9D0090BB9D000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000FCFDFC00EFF4F000EFF4\r
- F000EFF4F000ECF2ED00D7E4D900D7E4D900D7E4D900D7E4D900EFF4F000ACC7\r
- B1000000000000000000FCFDFC00FCFDFC000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000FCFDFC00EFF4F000EFF4\r
- F000ECF2ED00ECF2ED00ECF2ED00E2EBE400EFF4F000C7DACB00181818000000\r
- 00000000000000000000FCFDFC00FCFDFC000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000FCFDFC00FCFDFC00EFF4\r
- F000EFF4F000ECF2ED00EFF4F000C7DACB000000000000000000000000000000\r
- 00000000000000000000FCFDFC00FCFDFC000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000FCFDFC00EFF4F000ECF2\r
- ED00EFF4F000C7DACB0000000000000000000000000000000000000000000000\r
- 00000000000000000000FCFDFC00FCFDFC000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000FCFDFC00EFF4F000D7E4\r
- D900000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000FCFDFC00FCFDFC000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E2EBE400000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000DFEAE100E2EBE4000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000084A8B40091B1BB009BB8C1009BB8\r
- C10084A8B40084A8B40043555C00000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000006B63\r
- C0003D359000000000000000000000000000463DA40000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000006986900091B1BB009BB8C1009BB8C10091B1\r
- BB0084A8B40084A8B400546B7300000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00006158BC003D3590000000000000000000463DA40000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000004861490000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000546B730084A8B40084A8B4009BB8C1009BB8C1009BB8\r
- C10084A8B40084A8B4006986900043555C000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000006158BC004E44B5004E44B5000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000005977\r
- 5A0059775A0059775A0059775A0059775A006D926E0059775A00000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000698690009BB8C1009BB8C1009BB8C1009BB8C10091B1\r
- BB0084A8B40084A8B40069869000546B73000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000004E44B5004E44B5000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000006D92\r
- 6E006D926E006D926E006D926E006D926E008E9594006D926E00000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E000E0E4\r
- E00000000000546B730084A8B40091B1BB009BB8C1009BB8C10091B1BB009BB8\r
- C10084A8B40084A8B40084A8B400698690000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000B3B5B500B3B5B500B3B5B500B3B5B5007A7A7A0000000000000000000000\r
- 000000000000000000004E44B5006158BC003D35900000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000B2B5B500B2B5B500B2B5B500B2B5B5007A7A7A0000000000000000000000\r
- 0000000000000000000000000000000000006D926E0000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E000E0E4\r
- E000000000006986900084A8B4009BB8C1009BB8C1009BB8C1009BB8C10091B1\r
- BB0084A8B40084A8B40084A8B400698690003342460000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000003059370030593700000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000030593700000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000B3B5B500E5E8\r
- E800D5D7D700FDFDFD00FDFDFD00E5E8E800D5D7D700ABB3B200939796000000\r
- 0000000000004E44B50000000000000000006158BC00362F8100000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000B2B5B500E5E8\r
- E800D5D7D700FDFDFD00FDFDFD00E5E8E800D5D7D700ABB3B200939796000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E0000000\r
- 000069869000708F990091B1BB009BB8C1009BB8C1009BB8C10091B1BB009BB8\r
- C10091B1BB0084A8B40084A8B40084A8B40043555C0000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000051885B0051885B00000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00003D73470063A76F0051885B00000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000B9C0BF00D5D7D700FDFD\r
- FD00BCC4C200BCC4C200BCC4C200BCC4C200D5D7D700D5D7D700D5D7D700ABB3\r
- B2000C0B1500443C9F000000000000000000000000004E44B500000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000B9C0BF00D5D7D700FDFD\r
- FD00BCC4C200BCC4C200BCC4C200BCC4C200D5D7D700D5D7D700D5D7D700ABB3\r
- B200000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000084A8B4000000000084A8B4009BB8C1009BB8C10091B1BB009BB8C10084A8\r
- B40084A8B40084A8B40084A8B40084A8B400546B730000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000568C6000568C6000000000000000\r
- 00000000000000000000000000000000000000000000000000003D734700447C\r
- 4E00679A710079A98200568C6000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000ABB3B200D5D7D700E5E8E800ABB3\r
- B200B9C0BF00B9C0BF00BCC4C200CCD4D200BCC4C200CCD4D200D5D7D700D5D7\r
- D7004F4F4F000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000ABB3B200D5D7D700E5E8E800ABB3\r
- B200B9C0BF00B9C0BF00BCC4C200CCD4D200BCC4C200CCD4D200D5D7D700D5D7\r
- D700B2B5B5000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E0000000\r
- 000084A8B400000000009BB8C1009BB8C1009BB8C10091B1BB0091B1BB0084A8\r
- B40084A8B40084A8B40084A8B40084A8B400546B730000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000005C9267005C926700000000000000\r
- 00000000000000000000000000000000000030593700447C4E00679A710079A9\r
- 820073A47D0079A982005C926700000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000CCD4D200FDFDFD00A3ABA900ABB3\r
- B200BCC4C200BCC4C200BCC4C200CCD4D200CCD4D200CCD4D200CCD4D200CCD4\r
- D200D5D7D7000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000CCD4D200FDFDFD00A3ABA900ABB3\r
- B200BCC4C200BCC4C200BCC4C200CCD4D200CCD4D200CCD4D200CCD4D200CCD4\r
- D200D5D7D7000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E0000000\r
- 0000698690000000000091B1BB0091B1BB006986900084A8B40084A8B4006986\r
- 900084A8B40084A8B40084A8B40084A8B4006986900000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000005C9267005C926700000000000000\r
- 000000000000000000004A6F5100447C4E00679A710079A9820079A9820079A9\r
- 820079A9820079A982005C926700000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000B3B5B500D5D7D700BCC4C200A3ABA900B3B5\r
- B500BCC4C200CCD4D200ABB3B200D5D7D700D5D7D700D5D7D700CCD4D200E5E8\r
- E800D5D7D7008E95940000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000B2B5B500D5D7D700BCC4C200A3ABA900B2B5\r
- B500BCC4C200CCD4D200ABB3B200D5D7D700D5D7D700D5D7D700CCD4D200E5E8\r
- E800D5D7D7008E95940000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E0000000\r
- 0000546B7300000000009BB8C100698690000000000084A8B400698690000000\r
- 000084A8B400698690000000000069869000546B730000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000005C9267005C926700000000000000\r
- 00003059370049815400679A710079A9820073A47D0079A9820079A9820079A9\r
- 820079A9820079A98200679A7100000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000D5D7D700FDFDFD00A3ABA900A3ABA900B3B5\r
- B500C3CBC9008E9594000000000093979600D5D7D700D5D7D700D5D7D700D5D7\r
- D700D5D7D7009397960000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000D5D7D700FDFDFD00A3ABA900A3ABA900B2B5\r
- B500C3CBC9008E9594000000000093979600D5D7D700D5D7D700D5D7D700D5D7\r
- D700D5D7D7009397960000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000091B1BB00698690000000000084A8B4005A737A000000\r
- 0000708F9900546B730000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000C3D7C600C3D7C600000000000000\r
- 0000ACC7B100F8FAF800E4ECE500DAE6DC00DAE6DC00E4ECE500ECF2ED00ECF2\r
- ED00ECF2ED00ECF2ED00C3D7C600000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000D5D7D700FDFDFD0093979600A3ABA900B3B5\r
- B500C3CBC900000000000000000000000000CCD4D200CCD4D200CCD4D200CCD4\r
- D200D5D7D7008E95940000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000D5D7D700FDFDFD0093979600A3ABA900B2B5\r
- B500C3CBC900000000000000000000000000CCD4D200CCD4D200CCD4D200CCD4\r
- D200D5D7D7008E95940000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E000E0E4\r
- E000E0E4E00000000000AAC3CA0069869000000000005A737A00334246000000\r
- 000000000000000000008C9C9400E0E4E000E0E4E00000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000C3D7C600C3D7C600000000000000\r
- 000000000000121B1200E4ECE500F8FAF800ECF2ED00E4ECE500ECF2ED00ECF2\r
- ED00ECF2ED00ECF2ED00C3D7C600000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000D5D7D700FDFDFD0099A09F009BA3A100B3B5\r
- B5000000000000000000C9D0CF000000000000000000C9D0CF00C3CBC900C9D0\r
- CF00D5D7D7009397960000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000D5D7D700FDFDFD0099A09F009BA3A100B2B5\r
- B5000000000000000000C9D0CF000000000000000000C9D0CF00C3CBC900C9D0\r
- CF00D5D7D7008E95940000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E000E0E4\r
- E000E0E4E00000000000AAC3CA0069869000000000000000000000000000A3A5\r
- A300E0E4E000E0E4E000E0E4E000E0E4E000E0E4E00000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000C3D7C600C3D7C600000000000000\r
- 000000000000000000000000000000000000DAE6DC00F8FAF800F8FAF800ECF2\r
- ED00ECF2ED00F8FAF800C3D7C600000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000B3B5B500D5D7D700ABB3B2009BA3A1000000\r
- 000000000000BCC4C200C9D0CF00C3CBC9000000000000000000BCC4C200E5E8\r
- E800D5D7D7008E95940000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000B2B5B500D5D7D700ABB3B2009BA3A1000000\r
- 000000000000BCC4C200C9D0CF00C3CBC9000000000000000000BCC4C200E5E8\r
- E800D5D7D7008E95940000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E000E0E4\r
- E000E0E4E00000000000B8CDD30069869000000000008C9C9400E0E4E000E0E4\r
- E000E0E4E000E0E4E000E0E4E000E0E4E000E0E4E00000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000C3D7C600C3D7C600000000000000\r
- 0000000000000000000000000000000000000000000000000000E4ECE500F8FA\r
- F800F8FAF800ECF2ED00C3D7C600000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000D5D7D700E5E8E800939796009BA3\r
- A100ABB3B200B3B5B500B9C0BF00B9C0BF00C3CBC9000000000000000000C9D0\r
- CF00D5D7D7000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000D5D7D700E5E8E800939796009BA3\r
- A100ABB3B200B2B5B500B9C0BF00B9C0BF00C3CBC9000000000000000000C9D0\r
- CF00D5D7D7000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000AAC3CA00698690000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000C3D7C600C3D7C600000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000E4ECE500F8FAF800C3D7C600000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000ABB3B200FDFDFD00CCD4D2009397\r
- 960099A09F00A3ABA900A3ABA900ABB3B200B3B5B500B3B5B5000F111100D5D7\r
- D700B3B5B5000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000ABB3B200FDFDFD00CCD4D2009397\r
- 960099A09F00A3ABA900A3ABA900ABB3B200B2B5B500B2B5B5000F111100D5D7\r
- D700B2B5B5000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E000E0E4\r
- E000E0E4E0000000000069869000546B7300000000008C9C9400E0E4E000E0E4\r
- E000E0E4E000E0E4E000E0E4E000E0E4E000E0E4E00000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000C3D7C600C3D7C600000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000C3D7C600000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000D5D7D700FDFDFD00E5E8\r
- E800B3B5B5009BA3A1009BA3A100A3ABA900C3CBC900FDFDFD00D5D7D700D5D7\r
- D700000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000D5D7D700FDFDFD00E5E8\r
- E800B2B5B5009BA3A1009BA3A100A3ABA900C3CBC900FDFDFD00D5D7D700D5D7\r
- D700000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E000E0E4\r
- E000E0E4E000E0E4E00000000000000000008C9C9400E0E4E000E0E4E000E0E4\r
- E000E0E4E000E0E4E000E0E4E000E0E4E000E0E4E00000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000D5D7D700FDFD\r
- FD00FDFDFD00FDFDFD00FDFDFD00FDFDFD00FDFDFD00CCD4D200ABB3B2000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000D5D7D700FDFD\r
- FD00FDFDFD00FDFDFD00FDFDFD00FDFDFD00FDFDFD00CCD4D200ABB3B2000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000E0E4E000E0E4E000E0E4\r
- E000E0E4E000E0E4E000E0E4E000E0E4E000E0E4E000E0E4E000E0E4E000E0E4\r
- E000E0E4E000E0E4E000E0E4E000E0E4E000E0E4E00000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000D5D7D700FDFDFD00FDFDFD00D5D7D700ABB3B20000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000D5D7D700FDFDFD00FDFDFD00D5D7D700ABB3B20000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000060616000A0927000A0927000A0927000D0D31000D0D31000A0927000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000B4BEBD00B4BE\r
- BD00BDC2BD00BDC2C500BDC2BD00BDC2BD006493750064937500649375006493\r
- 75005A8568005A85680000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000060616000A09\r
- 27006E6DA0008B89B8008B89B8007E7CB2006E6DA0004F4E82003F3E63000A09\r
- 2700060616000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000003465\r
- 3F00000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000002E5836002E58\r
- 36002E583600000000000000000000000000000000002E5836002E5836002E58\r
- 3600000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000D8D9\r
- DA00EEEEF600EBE7EB00EEEEF600EBE7EB0083AB8B0078A8870078A8870078A8\r
- 87005A8568000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000060616007775A6009A99\r
- C400A09FC7009A99C4009A99C4009A99C4009A99C4007775A6007775A6005F5E\r
- 9000484775000A09270000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000000000000080AC\r
- 880054855D00325B3A0000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000051885B005188\r
- 5B0051885B000000000000000000000000000000000051885B0051885B005188\r
- 5B00000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000EBE7\r
- EB00EBE7EB00F6F2F600F6F2F600F6F2F60078A8870078A8870083AB8B00739D\r
- 7B005A8568000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000060616008B89B8009A99\r
- C400B6B5CC00B9B7D700A9A7C900B9B7D700A9A7C9009A99C4008B89B8006968\r
- 9F00484775000A09270000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000008CB8\r
- 96007AA883006B9A7400497C5300325B3A000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000568C6000568C\r
- 6000568C600000000000000000000000000000000000568C6000568C6000568C\r
- 6000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000EBE7EB00F6EEF600F6F2F600F6F2F60078A8870078A88700739D83006493\r
- 7500000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000606160071719900A9A7C900B9B7\r
- D700C7C7DB0006061600C8C7E000C8C7E000B0AFC9000A0927008B89B8009A99\r
- C4006E6DA000484775000A092700000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000008CB8\r
- 960080AC88007AA883007AA883006B9A7400497C530040704B00000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000005C9267005C92\r
- 67005C926700000000000000000000000000000000005C9267005C9267005C92\r
- 6700000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000EBE7EB00EBE7EB00F6F2F600F6F2F60078A8870078A88700739D83005A85\r
- 6800000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000060616008D8CAD00C7C7DB00D1D1\r
- DE00060616000606160006061600DBDBE60006061600060616000A0927009A99\r
- C4007E7CB20069689F000A092700000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000000000000090BB\r
- 9D007AA883007AA883007AA883007AA883007AA883006B9A7400497C53004058\r
- 4400000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000005C9267005C92\r
- 67005C926700000000000000000000000000000000005C9267005C9267005C92\r
- 6700000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000EBE7EB00EEEEF600F6F2F60078A88700739D8300739D7B000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000A092700B0AFC900DBDBE600DBDB\r
- E600DBDBE6000000000000000000060616000000000006061600B6B5CC00A9A7\r
- C9009B9AB8006E6DA0000D0D3100000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000000000000090BB\r
- 9D0080AC88007AA883007AA883007AA883007AA883007AA883007AA883006B9A\r
- 74004F815900325B3A0000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000005C9267005C92\r
- 67005C926700000000000000000000000000000000005C9267005C9267005C92\r
- 6700000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000EBE7EB00EEEEF600F6F2F60083AB8B00739D7B005A8568000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000006061600B6B5CC00DBDBE600DBDB\r
- E600E1E1ED00D1D1DE00060616000000000006061600D1D1DE00D1D1DE00B0AF\r
- C900A9A7C9008B89B8000A092700000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000002B2B2B00F9FB\r
- F900ECF2ED00ECF2ED00ECF2ED00ECF2ED00E2EBE400D7E4D900D7E4D900D7E4\r
- D900EFF4F000ACC7B10000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000C3D7C600C3D7\r
- C600C3D7C60000000000000000000000000000000000C3D7C600C3D7C600C3D7\r
- C600000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000EBE7EB00EBE7EB0083AB8B0064937500000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000006061600C7C7DB00E1E1ED00DBDB\r
- E600E1E1ED000606160000000000060616000000000006061600A5A5B500C7C7\r
- DB00A9A7C9008B89B8000A092700000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000F9FB\r
- F900ECF2ED00EFF4F000EFF4F000ECF2ED00ECF2ED00E2EBE400EFF4F000C7DA\r
- CB00181818000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000C3D7C600C3D7\r
- C600C3D7C60000000000000000000000000000000000C3D7C600C3D7C600C3D7\r
- C600000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000EBE7EB00EBE7EB0078A887005A856800000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000B0AFC900E8E8F200E1E1\r
- ED00060616000606160006061600E1E1ED00000000000606160006061600B3B2\r
- BF00A9A7C9007775A6000D0D3100000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000F9FB\r
- F900F9FBF900EFF4F000ECF2ED00ECF2ED00EFF4F000C7DACB00000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000C3D7C600C3D7\r
- C600C3D7C60000000000000000000000000000000000C3D7C600C3D7C600C3D7\r
- C600000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000010101000D8D9DA0078A8870000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000009797A200E8E8F200E1E1\r
- ED00DBDBE60006061600DBDBE600DBDBE600DBDBE60000000000B6B5CC00C7C7\r
- DB008B89B800403F700006061600000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000F9FB\r
- F900EFF4F000ECF2ED00ECF2ED00C7DACB000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000C3D7C600C3D7\r
- C600C3D7C60000000000000000000000000000000000C3D7C600C3D7C600C3D7\r
- C600000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000010101000D8D9DA00739D830000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000DBDBE600E8E8\r
- F200E8E8F200DBDBE600DBDBE600DBDBE600DBDBE600DBDBE600B9B7D700B9B7\r
- D700717199000D0D310000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000F9FB\r
- F900ECF2ED00D7E4D90000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000C3D7C600C3D7\r
- C600C3D7C60000000000000000000000000000000000C3D7C600C3D7C600C3D7\r
- C600000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000009797A200D1D1\r
- DE00E8E8F200E1E1ED00DBDBE600DBDBE600DBDBE600D1D1DE00C8C7E0007E7C\r
- B2003F3E63000D0D310000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000E2EB\r
- E400000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000C3D7C600C3D7\r
- C600C3D7C60000000000000000000000000000000000C3D7C600C3D7C600C3D7\r
- C600000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000101010000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000A5A5B500B6B5CC00C7C7DB00C8C7E000B6B5CC009B9AB800615E7D000606\r
- 16000A0927000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000CDD2CD00D8D9\r
- DA00D8D9DA00D8D9DA00D8D9DA00D8D9DA0078A8870078A88700739D7B0078A8\r
- 8700649375006493750000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000006061600060616000606160006061600060616000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000CDD2CD00D8D9\r
- DA00D8D9DA00D8D9DA00D8D9DA00D8D9DA0087B2940087B2940087B2940087B2\r
- 940078A887006493750000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000007B909900000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000007B9099007B9099007B90990000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000AAA7A700B4C2BD00B4D6D500B5D6E600AABBE700ACB9DA000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00007B909900000000007B9099007B9099007B9099007B9099007B9099000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000ACAE\r
- CD00B7B6C800B6B6B800A8B8B600B4D6D500B5D6E600AABBE700ACB9DA009C91\r
- DE00AA8AC6000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000003C604C0035554300000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00007B909900000000007B9099007B9099007B9099007B9099007B9099007B90\r
- 9900000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000A8B8B600ACB9\r
- DA00B7B6C800B7B6C800A8B8B600B4D2CD00B5D6E600AABBE700A4A7E600AC89\r
- D500A47DB400A885BD0000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000416752004167520047725B00416752003C604C00416752000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000305937000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000007B90\r
- 99007B909900000000007B9099007B9099007B9099007B9099007B9099007B90\r
- 99007B9099007B90990000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000009CA8A400A8B8B600ACAE\r
- CD00ACCED500ACAECD00B6B6B800ABC8C800B5D6E600B4CAEB009C91DE00A885\r
- BD00AA8AC600B491CD00B489C500000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000003555\r
- 43003C604C000000000000000000000000004167520035554300000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000003D73470063A7\r
- 6F0051885B000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000007B90\r
- 9900F7FEFF00000000007B9099007B9099007B9099007B9099007B9099007B90\r
- 99007B9099007B9099007B9099007B9099000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000009C9D9C009CA79C00A7B4\r
- AA00A8B8B600ACB9DA00B7B6C800A7B4AA00B5D6E600ACB9DA00AA8AC600AA8A\r
- C600B491CD00B48DD500CD95D500000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000003555\r
- 4300000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000003D73470049815400679A710079A9\r
- 8200568C60000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000007B9099007B90\r
- 9900F7FEFF00000000007B9099007B9099007B9099007B9099007B9099007B90\r
- 99007B9099007B9099007B9099007B9099000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000AAA7A700AAA7A700AAA7A7009C9D\r
- 9C00AAA7A700A8B8B6006A696A0000000000000000006A696A00B491CD00B491\r
- CD00CD95D500DEA1D500E6AAD500DEA5CD000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000355543000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000030593700447C4E00679A710079A9820079A9820079A9\r
- 82005C9267000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000007B909900F7FE\r
- FF00F7FEFF00000000007B9099007B9099007B9099007B9099007B9099007B90\r
- 99007B9099007B9099007B9099007B9099000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000D5CACD00CDC8C500C7BBBA00C7BB\r
- BA00B4B2AC006A696A00000000000000000000000000000000006A696A00F6BE\r
- DE00EEB6DE00EEB6DE00F6BEDE00F6BEDE000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00004A6F5100447C4E00679A710079A9820073A47D0079A9820079A9820079A9\r
- 82005C9267000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000007B9099007B909900F7FE\r
- FF00F7FEFF00F7FEFF0000000000000000007B9099007B9099007B9099007B90\r
- 99007B9099007B9099007B9099007B9099000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000F6DAEB00F6DAEB00F6DAEB00F6DA\r
- EB00F6DAEB00000000000000000000000000000000000000000000000000F6DA\r
- EB00F6BEDE00EED2EA00F6DAEB00F6DAEB000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000305937004981\r
- 5400679A710079A9820073A47D0079A9820079A9820079A9820079A9820079A9\r
- 82005C9267000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000007B9099007B909900F7FE\r
- FF00F7FEFF00F7FEFF00F7FEFF00F7FEFF0000000000000000007B9099007B90\r
- 99007B9099007B9099007B9099007B9099000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000E8C8E900EED2EA00EED2EA00EED2\r
- EA00E8C8E900000000000000000000000000000000000000000000000000AAA7\r
- A700B4AEA800C7BBBA00C7BBBA00D5BEBD000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000002B45370000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000ACC7B100F8FA\r
- F800ECF2ED00DAE6DC00DAE6DC00E4ECE500ECF2ED00ECF2ED00ECF2ED00F8FA\r
- F800C3D7C6002132240000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000007B9099007B9099007B9099007B90\r
- 99007B909900F7FEFF00F7FEFF00F7FEFF00F7FEFF00F7FEFF00000000000000\r
- 00007B9099007B9099007B9099007B9099000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000E8C8E900E8C8E900E8C8E900CDB2\r
- E600CDB2E6006A696A00000000000000000000000000000000006A696A00A7B4\r
- AA0094938B0094938B00A49D9400AAA7A7000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00002B4537000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000121B\r
- 1200DAE6DC00F8FAF800ECF2ED00ECF2ED00ECF2ED00ECF2ED00ECF2ED00ECF2\r
- ED00C3D7C6000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000007B9099007B909900000000000000\r
- 00007B9099007B9099007B9099007B909900F7FEFF00F7FEFF00F7FEFF00F7FE\r
- FF0000000000000000007B9099007B9099000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000CDB2E600CDB2E600CDB2E600B7AA\r
- E600AABBE700ABC8C8006A696A0000000000000000006A696A00B5D6E600B4D6\r
- D500A7B4AA00A49D940094938B0083857B000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000041675200416752000000000000000000000000003555\r
- 4300355543000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000DAE6DC00F8FAF800ECF2ED00ECF2ED00ECF2ED00ECF2\r
- ED00C3D7C6000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000007B9099007B9099007B9099007B909900F7FE\r
- FF00F7FEFF00F7FEFF0000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000C5ACE600A4A7E600ACB9\r
- DA00ABC8C800ACC2BD00A7B4AA00CDC8C500F6DAEB00D8B9E600B7AAE600B5D6\r
- E600ABC8C800A7B4AA009CA79C00000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000004167520047725B0041675200416752003C604C00355543000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000E4ECE500F8FAF800F8FAF800F8FA\r
- F800C3D7C6000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000000000000000000000007B9099007B90\r
- 9900000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000009CA5DE00ACB9DA00ABC8\r
- C800ACC2BD00A7B4AA00B4C2BD00D5CACD00F6DAEB00E8C8E900C5ACE600B4CA\r
- EB00B5D6E600ABC8C8009CA8A400000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000416752003C604C000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000E4ECE500F8FA\r
- F800C3D7C6000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000ACB9DA00ABC8\r
- C800ACC2BD00B4B2AC00C5C2BD00DED3D500F6DAEB00E8C8E900CDB2E600B7AA\r
- E600B5D6E600ACCED50000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000C3D7C6000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000A8B8\r
- B600ACC2BD00B6B6B800CDC8C500DED3D500F6DAEB00EED2EA00D8B9E600C5AC\r
- E600A4A7E6000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000B4B2AC00CDC8C500DED3D500F6DAEB00E8C8E900D5B6DE000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000424D3E000000000000003E000000\r
- 2800000080000000680000000100010000000000800600000000000000000000\r
- 000000000000000000000000FFFFFF00FFFFFFFF000000000000000000000000\r
- FFFFFFFF000000000000000000000000FFFFFFFF000000000000000000000000\r
- FFFFFFFF000000000000000000000000FFFFFFFF000000000000000000000000\r
- FFFFFFFF000000000000000000000000FF3FF87F000000000000000000000000\r
- FF0FF87F000000000000000000000000FF03F87F000000000000000000000000\r
- FF00F87F000000000000000000000000FF00387F000000000000000000000000\r
- FF00087F000000000000000000000000FF00007F000000000000000000000000\r
- FF00007F000000000000000000000000FF00087F000000000000000000000000\r
- FF00387F000000000000000000000000FF00F87F000000000000000000000000\r
- FF03F87F000000000000000000000000FF0FF87F000000000000000000000000\r
- FF3FF87F000000000000000000000000FFFFFFFF000000000000000000000000\r
- FFFFFFFF000000000000000000000000FFFFFFFF000000000000000000000000\r
- FFFFFFFF000000000000000000000000FFFFFFFF000000000000000000000000\r
- FFFFFFFF000000000000000000000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC73FFFFFFEFFFFFE00FFFFFFFFFF\r
- FFFFC23FFFFFFE7FFFFC00FFFFFFFFFFFFFFE03FFFFFC03FFFF8007FFFFFFFFF\r
- FFFFF07FFFFFC01FFF00007FFFFFFFFFFFF0787FFFF0401FFF00007FFE1FFCFF\r
- FFC0183FFFC0003FFF00003FFE1FF0FFFF80001FFF800E7FFF00003FFE1FC0FF\r
- FF00011FFF0006FFFF00003FFE1F00FFFE00039FFE0003FFFF00003FFE1C00FF\r
- FE0003FFFE0003FFFF00003FFE1000FFFC0001FFFC0001FFFF00003FFE0000FF\r
- FC0001FFFC0001FFFF00003FFE0000FFFC0001FFFC0001FFFF00003FFE1000FF\r
- FC0001FFFC0001FFFF00003FFE1C00FFFC0001FFFC0001FFFF00003FFE1F00FF\r
- FE0003FFFE0003FFFF00003FFE1FC0FFFE0003FFFE0003FFFF00003FFE1FF0FF\r
- FF0007FFFF0007FFFF00003FFE1FFCFFFF800FFFFF800FFFFF00003FFFFFFFFF\r
- FFC01FFFFFC01FFFFF00003FFFFFFFFFFFF07FFFFFF07FFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFF8001FFFFF01FFFFFCFFFFFFF8307FFFF8001FF\r
- FFC007FFFFC3FFFFFF8307FFFFC003FFFF8003FFFFC0FFFFFF8307FFFFC003FF\r
- FF8003FFFFC03FFFFF8307FFFFE007FFFF0001FFFFC00FFFFF8307FFFFE007FF\r
- FF0001FFFFC003FFFF8307FFFFF00FFFFF0001FFFFC000FFFF8307FFFFF00FFF\r
- FF0001FFFFC000FFFF8307FFFFF81FFFFF0001FFFFC003FFFF8307FFFFF81FFF\r
- FF0001FFFFC00FFFFF8307FFFFFC3FFFFF0001FFFFC03FFFFF8307FFFFFC3FFF\r
- FF8003FFFFC0FFFFFF8307FFFFFE7FFFFF8003FFFFC3FFFFFF8307FFFF8001FF\r
- FFC007FFFFCFFFFFFF8307FFFF8001FFFFF01FFFFFFFFFFFFFFFFFFFFF8001FF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFF8001FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9FFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFF07FFFFFF81FFFFFFF7FFFFFFFFFFFFFF01FFFFFE007FFFFFF3FFFFFFFFFFF\r
- FFE00FFFFFC003FFFFF81FFFFFFFF3FFFFE003FFFF8001FFFFE00FFFFFFFC3FF\r
- FFC000FFFF0000FFFFC01FFFFFFF03FFFFC0007FFF0000FFFFC737FFFFFC03FF\r
- FF80007FFE00007FFF8F7BFFFFF003FFFF80007FFE01807FFF9FF9FFFFC003FF\r
- FF00007FFE03C07FFF9FF9FFFF0003FFFF00007FFE03C07FFFDEF1FFFF0003FF\r
- FE00007FFE01807FFFECE3FFFFC003FFFE00007FFE00007FFFF803FFFFF003FF\r
- FF30007FFF0000FFFFF007FFFFFC03FFFFFE07FFFF0000FFFFF81FFFFFFF03FF\r
- FFFFCFFFFF8001FFFFFCFFFFFFFFC3FFFFFFFFFFFFC003FFFFFEFFFFFFFFF3FF\r
- FFFFFFFFFFE007FFFFFFFFFFFFFFFFFFFFFFFFFFFFF81FFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF\r
- FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00000000000000000000000000000000\r
- 000000000000}\r
- end\r
- object PopupMenuMain: TPopupMenu\r
- AutoPopup = False\r
- TrackButton = tbLeftButton\r
- Left = 72\r
- Top = 208\r
- object PopupClose: TMenuItem\r
- Tag = 3\r
- Caption = 'Close this popup'\r
- OnClick = PopupCloseClick\r
- end\r
- object PopupToggleInterface: TMenuItem\r
- Tag = 3\r
- Caption = 'Show interface'\r
- OnClick = PopupToggleInterfaceClick\r
- end\r
- object N9: TMenuItem\r
- Caption = '-'\r
- end\r
- object Control1: TMenuItem\r
- Tag = 3\r
- Caption = 'Controls'\r
- object PopupBack: TMenuItem\r
- Tag = 3\r
- Action = BackAction\r
- end\r
- object PopupPlay: TMenuItem\r
- Tag = 3\r
- Action = PlayAction\r
- end\r
- object PopupPause: TMenuItem\r
- Tag = 3\r
- Action = PauseAction\r
- end\r
- object PopupStop: TMenuItem\r
- Tag = 3\r
- Action = StopAction\r
- end\r
- object PopupSlow: TMenuItem\r
- Tag = 3\r
- Action = SlowAction\r
- end\r
- object PopupFast: TMenuItem\r
- Tag = 3\r
- Action = FastAction\r
- end\r
- object N5: TMenuItem\r
- Caption = '-'\r
- end\r
- object PopupPrev: TMenuItem\r
- Tag = 3\r
- Action = PreviousAction\r
- end\r
- object PopupNext: TMenuItem\r
- Tag = 3\r
- Action = NextAction\r
- end\r
- object PopupJump: TMenuItem\r
- Tag = 3\r
- Caption = '&Jump...'\r
- Enabled = False\r
- OnClick = PopupJumpClick\r
- end\r
- end\r
- object PopupAudioSettings: TMenuItem\r
- Tag = 3\r
- Caption = 'Audio settings'\r
- object PopupADevice: TMenuItem\r
- Tag = 3\r
- Caption = 'Device'\r
- Enabled = False\r
- end\r
- object VolumeUp1: TMenuItem\r
- Tag = 3\r
- Action = VolumeUpAction\r
- end\r
- object VolumeDown1: TMenuItem\r
- Tag = 3\r
- Action = VolumeDownAction\r
- end\r
- object Mute1: TMenuItem\r
- Tag = 3\r
- Action = MuteAction\r
- end\r
- object PopupChannel: TMenuItem\r
- Tag = 3\r
- Caption = 'Channels'\r
- Enabled = False\r
- end\r
- end\r
- object Videosettings1: TMenuItem\r
- Tag = 3\r
- Caption = 'Video settings'\r
- object PopupFullscreen: TMenuItem\r
- Tag = 3\r
- Action = FullscreenAction\r
- end\r
- object PopupOnTop: TMenuItem\r
- Tag = 3\r
- Action = OnTopAction\r
- end\r
- object PopupVDevice: TMenuItem\r
- Tag = 3\r
- Caption = 'Screen'\r
- Enabled = False\r
- end\r
- end\r
- object N1: TMenuItem\r
- Caption = '-'\r
- end\r
- object PopupNavigation: TMenuItem\r
- Tag = 3\r
- Caption = 'Navigation'\r
- end\r
- object PopupProgram: TMenuItem\r
- Tag = 3\r
- Caption = 'Program'\r
- end\r
- object PopupLanguage: TMenuItem\r
- Tag = 3\r
- Caption = 'Language'\r
- end\r
- object PopupSubtitles: TMenuItem\r
- Tag = 3\r
- Caption = 'Subtitles'\r
- end\r
- object N10: TMenuItem\r
- Caption = '-'\r
- end\r
- object PopupPlaylist: TMenuItem\r
- Tag = 3\r
- Action = PlaylistAction\r
- Caption = 'Playlist...'\r
- end\r
- object PopupPreferences: TMenuItem\r
- Tag = 3\r
- Action = PreferencesAction\r
- end\r
- object PopupFile: TMenuItem\r
- Tag = 3\r
- Caption = 'New stream'\r
- object PopupOpenFile: TMenuItem\r
- Tag = 3\r
- Action = OpenFileAction\r
- Caption = 'Open File...'\r
- end\r
- object PopupOpenDisc: TMenuItem\r
- Tag = 3\r
- Action = OpenDiscAction\r
- Caption = 'Open Disc...'\r
- end\r
- object PopupNetworkStream: TMenuItem\r
- Tag = 3\r
- Action = NetworkStreamAction\r
- Caption = 'Network Stream...'\r
- end\r
- end\r
- object N7: TMenuItem\r
- Caption = '-'\r
- end\r
- object PopupExit: TMenuItem\r
- Tag = 3\r
- Action = ExitAction\r
- end\r
- end\r
- object TimerManage: TTimer\r
- OnTimer = TimerManageTimer\r
- Left = 136\r
- Top = 208\r
- end\r
- object ActionList1: TActionList\r
- Left = 168\r
- Top = 208\r
- object OpenFileAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = 'File'\r
- Hint = 'Open a file'\r
- ImageIndex = 0\r
- ShortCut = 114\r
- OnExecute = OpenFileActionExecute\r
- end\r
- object OpenDiscAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = 'Disc'\r
- Hint = 'Open a DVD or VCD'\r
- ImageIndex = 1\r
- ShortCut = 115\r
- OnExecute = OpenDiscActionExecute\r
- end\r
- object NetworkStreamAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = 'Net'\r
- Hint = 'Select a network stream'\r
- ImageIndex = 2\r
- ShortCut = 116\r
- OnExecute = NetworkStreamActionExecute\r
- end\r
- object BackAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Back'\r
- Enabled = False\r
- ImageIndex = 3\r
- OnExecute = BackActionExecute\r
- end\r
- object PlayAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Play'\r
- Hint = 'Play stream'\r
- ImageIndex = 5\r
- OnExecute = PlayActionExecute\r
- end\r
- object PauseAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Pause'\r
- Enabled = False\r
- Hint = 'Pause stream'\r
- ImageIndex = 6\r
- ShortCut = 32\r
- OnExecute = PauseActionExecute\r
- end\r
- object StopAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Stop'\r
- Enabled = False\r
- Hint = 'Stop stream'\r
- ImageIndex = 4\r
- OnExecute = StopActionExecute\r
- end\r
- object EjectAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Eject disc'\r
- Enabled = False\r
- Hint = 'Eject disc'\r
- ImageIndex = 7\r
- OnExecute = EjectActionExecute\r
- end\r
- object SlowAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Slow'\r
- Enabled = False\r
- Hint = 'Play slower'\r
- ImageIndex = 8\r
- OnExecute = SlowActionExecute\r
- end\r
- object FastAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Fast'\r
- Enabled = False\r
- Hint = 'Play faster'\r
- ImageIndex = 9\r
- OnExecute = FastActionExecute\r
- end\r
- object PreviousAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Prev'\r
- Hint = 'Previous file'\r
- ImageIndex = 11\r
- OnExecute = PreviousActionExecute\r
- end\r
- object NextAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Next'\r
- Hint = 'Next file'\r
- ImageIndex = 12\r
- OnExecute = NextActionExecute\r
- end\r
- object StreamOutputAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = '&Stream output...'\r
- Hint = 'Open the stream output'\r
- OnExecute = StreamOutputActionExecute\r
- end\r
- object AddSubtitlesAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = '&Add subtitles...'\r
- Hint = 'Add a subtitle file'\r
- OnExecute = AddSubtitlesActionsExecute\r
- end\r
- object PlaylistAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = 'Playlist'\r
- Hint = 'Open the playlist window'\r
- ImageIndex = 10\r
- ShortCut = 16464\r
- OnExecute = PlaylistActionExecute\r
- end\r
- object ExitAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = 'Exit'\r
- Hint = 'Exit the program'\r
- ShortCut = 16465\r
- OnExecute = ExitActionExecute\r
- end\r
- object FullscreenAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = '&Fullscreen'\r
- Hint = 'Toggle fullscreen mode'\r
- ShortCut = 70\r
- OnExecute = FullscreenActionExecute\r
- end\r
- object PreferencesAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = 'Preferences...'\r
- Hint = 'Configure the application'\r
- OnExecute = PreferencesActionExecute\r
- end\r
- object MessagesAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = 'Messages...'\r
- Hint = 'Open the messages window'\r
- ShortCut = 16460\r
- OnExecute = MessagesActionExecute\r
- end\r
- object AboutAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = 'About...'\r
- Hint = 'About this application'\r
- OnExecute = AboutActionExecute\r
- end\r
- object PrevTitleAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Prev'\r
- Hint = 'Select previous title'\r
- OnExecute = PrevTitleActionExecute\r
- end\r
- object NextTitleAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Next'\r
- Hint = 'Select next title'\r
- OnExecute = NextTitleActionExecute\r
- end\r
- object PrevChapterAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Prev'\r
- Hint = 'Select previous chapter'\r
- OnExecute = PrevChapterActionExecute\r
- end\r
- object NextChapterAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Next'\r
- Hint = 'Select next chapter'\r
- OnExecute = NextChapterActionExecute\r
- end\r
- object VolumeUpAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Volume &Up'\r
- Hint = 'Increase the volume'\r
- ShortCut = 16469\r
- OnExecute = VolumeUpActionExecute\r
- end\r
- object VolumeDownAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = 'Volume &Down'\r
- Hint = 'Decrease the volume'\r
- ShortCut = 16452\r
- OnExecute = VolumeDownActionExecute\r
- end\r
- object MuteAction: TAction\r
- Tag = 3\r
- Category = 'Control'\r
- Caption = '&Mute'\r
- Hint = 'Toggle mute'\r
- ShortCut = 16461\r
- OnExecute = MuteActionExecute\r
- end\r
- object OnTopAction: TAction\r
- Tag = 3\r
- Category = 'Menu'\r
- Caption = 'Always on top...'\r
- Hint = 'Set the window on top'\r
- ShortCut = 16468\r
- OnExecute = OnTopActionExecute\r
- end\r
- end\r
-end\r
+++ /dev/null
-/*****************************************************************************\r
- * mainframe.h: Prototype for main window\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-\r
-#ifndef mainframeH\r
-#define mainframeH\r
-//---------------------------------------------------------------------------\r
-#include <Classes.hpp>\r
-#include <Controls.hpp>\r
-#include <StdCtrls.hpp>\r
-#include <Forms.hpp>\r
-#include <ComCtrls.hpp>\r
-#include <Dialogs.hpp>\r
-#include <ImgList.hpp>\r
-#include <Menus.hpp>\r
-#include <ToolWin.hpp>\r
-#include <AppEvnts.hpp>\r
-#include <ExtCtrls.hpp>\r
-#include "CSPIN.h"\r
-#include <ActnList.hpp>\r
-\r
-#include <oleidl.h> /* for drag and drop */\r
-\r
-/*****************************************************************************\r
- * This message is sent to the controls registered as drop targets\r
- *****************************************************************************/\r
-#define WM_OLEDROP WM_USER + 1\r
-\r
-//---------------------------------------------------------------------------\r
-class TMainFrameDlg : public TForm\r
-{\r
-__published: // IDE-managed Components\r
- TToolBar *ToolBar;\r
- TToolButton *ToolButtonFile;\r
- TToolButton *ToolButtonDisc;\r
- TToolButton *ToolButtonNet;\r
- TToolButton *ToolButtonSep1;\r
- TToolButton *ToolButtonStop;\r
- TToolButton *ToolButtonPlay;\r
- TToolButton *ToolButtonPause;\r
- TToolButton *ToolButtonSep2;\r
- TToolButton *ToolButtonSlow;\r
- TToolButton *ToolButtonFast;\r
- TToolButton *ToolButtonSep3;\r
- TToolButton *ToolButtonPlaylist;\r
- TToolButton *ToolButtonPrev;\r
- TToolButton *ToolButtonNext;\r
- TMainMenu *MainMenu1;\r
- TMenuItem *MenuFile;\r
- TMenuItem *MenuOpenFile;\r
- TMenuItem *MenuOpenDisc;\r
- TMenuItem *MenuNetworkStream;\r
- TMenuItem *MenuExit;\r
- TMenuItem *MenuView;\r
- TMenuItem *MenuHideinterface;\r
- TMenuItem *MenuTitle;\r
- TMenuItem *MenuChapter;\r
- TMenuItem *MenuAngle;\r
- TMenuItem *N3;\r
- TMenuItem *MenuPlaylist;\r
- TMenuItem *MenuMessages;\r
- TMenuItem *MenuControls;\r
- TMenuItem *MenuLanguage;\r
- TMenuItem *MenuSubtitles;\r
- TMenuItem *MenuPreferences;\r
- TMenuItem *MenuHelp;\r
- TMenuItem *MenuAbout;\r
- TOpenDialog *OpenDialog1;\r
- TImageList *ImageListToolbar;\r
- TPopupMenu *PopupMenuMain;\r
- TMenuItem *PopupPlay;\r
- TMenuItem *PopupPause;\r
- TMenuItem *PopupStop;\r
- TMenuItem *PopupBack;\r
- TMenuItem *PopupSlow;\r
- TMenuItem *PopupFast;\r
- TMenuItem *PopupToggleInterface;\r
- TMenuItem *PopupNext;\r
- TMenuItem *PopupPrev;\r
- TMenuItem *PopupJump;\r
- TMenuItem *PopupNavigation;\r
- TMenuItem *PopupProgram;\r
- TMenuItem *PopupLanguage;\r
- TMenuItem *PopupSubtitles;\r
- TMenuItem *PopupFile;\r
- TMenuItem *PopupPlaylist;\r
- TMenuItem *PopupPreferences;\r
- TMenuItem *N7;\r
- TMenuItem *PopupExit;\r
- TStatusBar *StatusBar;\r
- TGroupBox *GroupBoxFile;\r
- TLabel *LabelFileName;\r
- TGroupBox *GroupBoxNetwork;\r
- TLabel *LabelChannel;\r
- TLabel *LabelServer;\r
- TGroupBox *GroupBoxDisc;\r
- TMenuItem *N8;\r
- TMenuItem *MenuProgram;\r
- TLabel *LabelDisc;\r
- TLabel *LabelTitle;\r
- TButton *ButtonTitlePrev;\r
- TButton *ButtonTitleNext;\r
- TButton *ButtonChapterPrev;\r
- TButton *ButtonChapterNext;\r
- TLabel *LabelChapter;\r
- TLabel *LabelTitleCurrent;\r
- TLabel *LabelChapterCurrent;\r
- TButton *ButtonGo;\r
- TGroupBox *GroupBoxSlider;\r
- TTrackBar *TrackBar;\r
- TTimer *TimerManage;\r
- TMenuItem *PopupOpenFile;\r
- TMenuItem *PopupOpenDisc;\r
- TMenuItem *PopupNetworkStream;\r
- TMenuItem *PopupClose;\r
- TMenuItem *N9;\r
- TCSpinEdit *SpinEditChannel;\r
- TActionList *ActionList1;\r
- TAction *OpenFileAction;\r
- TAction *OpenDiscAction;\r
- TAction *NetworkStreamAction;\r
- TAction *PlayAction;\r
- TAction *PauseAction;\r
- TAction *StopAction;\r
- TAction *EjectAction;\r
- TAction *SlowAction;\r
- TAction *FastAction;\r
- TAction *PreviousAction;\r
- TAction *NextAction;\r
- TAction *BackAction;\r
- TAction *PlaylistAction;\r
- TAction *ExitAction;\r
- TAction *FullscreenAction;\r
- TAction *PreferencesAction;\r
- TAction *MessagesAction;\r
- TAction *AboutAction;\r
- TAction *PrevTitleAction;\r
- TAction *NextTitleAction;\r
- TAction *PrevChapterAction;\r
- TAction *NextChapterAction;\r
- TAction *VolumeUpAction;\r
- TAction *VolumeDownAction;\r
- TAction *MuteAction;\r
- TAction *StreamOutputAction;\r
- TAction *AddSubtitlesAction;\r
- TMenuItem *Control1;\r
- TMenuItem *N5;\r
- TMenuItem *N10;\r
- TMenuItem *N11;\r
- TMenuItem *MenuChannel;\r
- TMenuItem *PopupChannel;\r
- TMenuItem *MenuVolumeUp;\r
- TMenuItem *MenuVolumeDown;\r
- TMenuItem *MenuMute;\r
- TMenuItem *MenuADevice;\r
- TMenuItem *PopupAudioSettings;\r
- TMenuItem *PopupADevice;\r
- TMenuItem *VolumeDown1;\r
- TMenuItem *VolumeUp1;\r
- TMenuItem *Mute1;\r
- TMenuItem *MenuVDevice;\r
- TMenuItem *N1;\r
- TMenuItem *PopupVDevice;\r
- TMenuItem *MenuStreamOuput;\r
- TMenuItem *MenuAddSubtitles;\r
- TMenuItem *N4;\r
- TMenuItem *MenuAddInterface;\r
- TAction *OnTopAction;\r
- TMenuItem *MenuFullscreen;\r
- TMenuItem *MenuOnTop;\r
- TMenuItem *PopupFullscreen;\r
- TMenuItem *Videosettings1;\r
- TMenuItem *PopupOnTop;\r
- TMenuItem *N2;\r
- TMenuItem *MenuEjectDisc;\r
- void __fastcall TimerManageTimer( TObject *Sender );\r
- void __fastcall TrackBarChange( TObject *Sender );\r
- void __fastcall FormClose( TObject *Sender, TCloseAction &Action );\r
- void __fastcall MenuHideinterfaceClick( TObject *Sender );\r
- void __fastcall PopupCloseClick( TObject *Sender );\r
- void __fastcall PopupToggleInterfaceClick( TObject *Sender );\r
- void __fastcall PopupJumpClick( TObject *Sender );\r
- void __fastcall ButtonGoClick( TObject *Sender );\r
- void __fastcall OpenFileActionExecute( TObject *Sender );\r
- void __fastcall OpenDiscActionExecute( TObject *Sender );\r
- void __fastcall NetworkStreamActionExecute( TObject *Sender );\r
- void __fastcall StreamOutputActionExecute( TObject *Sender );\r
- void __fastcall ExitActionExecute( TObject *Sender );\r
- void __fastcall PlaylistActionExecute( TObject *Sender );\r
- void __fastcall MessagesActionExecute( TObject *Sender );\r
- void __fastcall AboutActionExecute( TObject *Sender );\r
- void __fastcall BackActionExecute( TObject *Sender );\r
- void __fastcall PlayActionExecute( TObject *Sender );\r
- void __fastcall PauseActionExecute( TObject *Sender );\r
- void __fastcall StopActionExecute( TObject *Sender );\r
- void __fastcall SlowActionExecute( TObject *Sender );\r
- void __fastcall FastActionExecute( TObject *Sender );\r
- void __fastcall PreviousActionExecute( TObject *Sender );\r
- void __fastcall NextActionExecute( TObject *Sender );\r
- void __fastcall EjectActionExecute( TObject *Sender );\r
- void __fastcall VolumeUpActionExecute( TObject *Sender );\r
- void __fastcall VolumeDownActionExecute( TObject *Sender );\r
- void __fastcall MuteActionExecute( TObject *Sender );\r
- void __fastcall FullscreenActionExecute( TObject *Sender );\r
- void __fastcall PreferencesActionExecute( TObject *Sender );\r
- void __fastcall PrevTitleActionExecute( TObject *Sender );\r
- void __fastcall NextTitleActionExecute( TObject *Sender );\r
- void __fastcall PrevChapterActionExecute( TObject *Sender );\r
- void __fastcall NextChapterActionExecute( TObject *Sender );\r
- void __fastcall AddSubtitlesActionsExecute( TObject *Sender );\r
- void __fastcall OnTopActionExecute( TObject *Sender );\r
-private: // User declarations\r
- intf_thread_t *p_intf;\r
- /* drag and drop handling */\r
- LPDROPTARGET lpDropTarget;\r
- BEGIN_MESSAGE_MAP\r
- MESSAGE_HANDLER( WM_OLEDROP, TMessage, OnDrop )\r
- END_MESSAGE_MAP( TForm )\r
-public: // User declarations\r
- TStringList *StringListPref; /* stores config dialogs */\r
- __fastcall TMainFrameDlg( TComponent* Owner, intf_thread_t *_p_intf );\r
- virtual __fastcall ~TMainFrameDlg();\r
- void __fastcall DisplayHint( TObject *Sender );\r
- void __fastcall ModeManage();\r
- void __fastcall CreatePreferences( AnsiString Name );\r
- void __fastcall MenuProgramClick( TObject *Sender );\r
- void __fastcall MenuAudioClick( TObject *Sender );\r
- void __fastcall MenuSubtitleClick( TObject *Sender );\r
- void __fastcall MenuTitleClick( TObject *Sender );\r
- void __fastcall MenuChapterClick( TObject *Sender );\r
- void __fastcall PopupProgramClick( TObject *Sender );\r
- void __fastcall PopupAudioClick( TObject *Sender );\r
- void __fastcall PopupSubtitleClick( TObject *Sender );\r
- void __fastcall PopupNavigationClick( TObject *Sender );\r
- void __fastcall OnDrop( TMessage &Msg );\r
-};\r
-//---------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * menu.cpp: functions to handle menu items\r
- *****************************************************************************\r
- * Copyright (C) 2002-2003 VideoLAN\r
- * $Id: menu.cpp,v 1.16 2003/05/05 22:23:39 gbazin Exp $\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-\r
-#include "menu.h"\r
-#include "win32_common.h"\r
-\r
-/*****************************************************************************\r
- * TMenusGen::*Click: callbacks for the menuitems\r
- ****************************************************************************/\r
-\r
-/*\r
- * Variables\r
- */\r
-\r
-/* variables of the audio output */\r
-void __fastcall TMenusGen::AoutVarClick( TObject *Sender )\r
-{\r
- TMenuItem * Item = (TMenuItem *)Sender;\r
-\r
- vlc_object_t * p_aout;\r
- p_aout = (vlc_object_t *)vlc_object_find( p_intf, VLC_OBJECT_AOUT,\r
- FIND_ANYWHERE );\r
- if( p_aout == NULL )\r
- {\r
- msg_Warn( p_intf, "cannot set variable (%s)", Item->Caption.c_str() );\r
- return;\r
- }\r
-\r
-#error fixme! look at rc.c line 823\r
- if( Item->Parent == MenuADevice || Item->Parent == PopupADevice )\r
- {\r
- VarChange( p_aout, "audio-device", MenuADevice, PopupADevice, Item );\r
- }\r
- else if( Item->Parent == MenuChannel || Item->Parent == PopupChannel )\r
- {\r
- VarChange( p_aout, "audio-channels", MenuChannel, PopupChannel, Item );\r
- }\r
-\r
- vlc_object_release( p_aout );\r
-}\r
-\r
-/* variables of the video output */\r
-void __fastcall TMenusGen::VoutVarClick( TObject *Sender )\r
-{\r
- TMenuItem * Item = (TMenuItem *)Sender;\r
-\r
- vlc_object_t * p_vout;\r
- p_vout = (vlc_object_t *)vlc_object_find( p_intf, VLC_OBJECT_VOUT,\r
- FIND_ANYWHERE );\r
- if( p_vout == NULL )\r
- {\r
- msg_Warn( p_intf, "cannot set variable (%s)", Item->Caption.c_str() );\r
- return;\r
- }\r
-\r
- if( Item->Parent == MenuVDevice || Item->Parent == PopupVDevice )\r
- {\r
- VarChange( p_vout, "video-device", MenuVDevice, PopupVDevice, Item );\r
- }\r
-\r
- vlc_object_release( p_vout );\r
-}\r
-\r
-/*\r
- * Modules\r
- */\r
-\r
-/* Interface modules: we spawn a new interface */\r
-void __fastcall TMenusGen::InterfaceModuleClick( TObject *Sender )\r
-{\r
- TMenuItem * Item = (TMenuItem *)Sender;\r
-\r
- AnsiString IntfName = CleanCaption( Item->Caption );\r
-\r
- intf_thread_t *p_newintf;\r
-\r
- p_newintf = intf_Create( p_intf->p_vlc, IntfName.c_str() );\r
-\r
- if( p_newintf )\r
- {\r
- p_newintf->b_block = VLC_FALSE;\r
- if( intf_RunThread( p_newintf ) )\r
- {\r
- vlc_object_detach( p_newintf );\r
- intf_Destroy( p_newintf );\r
- }\r
- }\r
-}\r
-\r
-/*\r
- * Audio\r
- */\r
-\r
-void __fastcall TMenusGen::MenuLanguageClick( TObject *Sender )\r
-{\r
- LangChange( MenuLanguage, (TMenuItem *)Sender, PopupLanguage, AUDIO_ES );\r
-}\r
-\r
-void __fastcall TMenusGen::PopupLanguageClick( TObject *Sender )\r
-{\r
- LangChange( PopupLanguage, (TMenuItem *)Sender, MenuLanguage, AUDIO_ES );\r
-}\r
-\r
-/*\r
- * Subtitles\r
- */\r
-\r
-void __fastcall TMenusGen::MenuSubtitleClick( TObject *Sender )\r
-{\r
- LangChange( MenuSubtitles, (TMenuItem *)Sender, PopupSubtitles, SPU_ES );\r
-}\r
-\r
-void __fastcall TMenusGen::PopupSubtitleClick( TObject *Sender )\r
-{\r
- LangChange( PopupSubtitles, (TMenuItem *)Sender, MenuSubtitles, SPU_ES );\r
-}\r
-\r
-/*\r
- * Program\r
- */\r
-\r
-void __fastcall TMenusGen::MenuProgramClick( TObject *Sender )\r
-{\r
- ProgramChange( (TMenuItem *)Sender, PopupProgram );\r
-}\r
-\r
-void __fastcall TMenusGen::PopupProgramClick( TObject *Sender )\r
-{\r
- ProgramChange( (TMenuItem *)Sender, MenuProgram );\r
-}\r
-\r
-/*\r
- * Title\r
- */\r
-\r
-void __fastcall TMenusGen::MenuTitleClick( TObject *Sender )\r
-{\r
- TMenuItem * Item = (TMenuItem *)Sender;\r
- TMenuItem * ItemTitle;\r
- input_area_t * p_area;\r
- unsigned int i_title = Item->Tag;\r
-\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- i_title = __MIN( i_title,\r
- p_intf->p_sys->p_input->stream.i_area_nb - 1 );\r
- i_title = __MAX( i_title, 1 );\r
- p_area = p_intf->p_sys->p_input->stream.pp_areas[i_title];\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-\r
- input_ChangeArea( p_intf->p_sys->p_input, p_area );\r
-\r
- Item->Checked = true;\r
- ItemTitle = Index2Item( PopupNavigation, i_title - 1, false );\r
- Index2Item( ItemTitle, 0, false )->Checked = true;\r
-\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PLAY );\r
-}\r
-\r
-/*\r
- * Chapter\r
- */\r
-\r
-void __fastcall TMenusGen::MenuChapterClick( TObject *Sender )\r
-{\r
- TMenuItem * Item = (TMenuItem *)Sender;\r
- TMenuItem * ItemTitle;\r
- input_area_t * p_area;\r
- unsigned int i_title;\r
- unsigned int i_chapter = Item->Tag;\r
-\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- p_area = p_intf->p_sys->p_input->stream.p_selected_area;\r
- i_chapter = __MIN( i_chapter, p_area->i_part_nb - 1 );\r
- i_chapter = __MAX( i_chapter, 1 );\r
- p_area->i_part = i_chapter;\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-\r
- input_ChangeArea( p_intf->p_sys->p_input, p_area );\r
-\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- i_title = p_intf->p_sys->p_input->stream.p_selected_area->i_id;\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-\r
- ItemTitle = Index2Item( PopupNavigation, i_title, false );\r
- Index2Item( ItemTitle, i_chapter, false )->Checked = true;\r
-\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PLAY );\r
-}\r
-\r
-/*\r
- * Navigation\r
- */\r
-\r
-void __fastcall TMenusGen::PopupNavigationClick( TObject *Sender )\r
-{\r
- TMenuItem * Item = (TMenuItem *)Sender;\r
- TMenuItem * ItemTitle;\r
- input_area_t * p_area;\r
- unsigned int i_title = Data2Title( Item->Tag );\r
- unsigned int i_chapter = Data2Chapter( Item->Tag );\r
-\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- i_title = __MIN( i_title,\r
- p_intf->p_sys->p_input->stream.i_area_nb - 1 );\r
- i_title = __MAX( i_title, 1 );\r
- p_area = p_intf->p_sys->p_input->stream.pp_areas[i_title];\r
- i_chapter = __MIN( i_chapter, p_area->i_part_nb - 1 );\r
- i_chapter = __MAX( i_chapter, 1 );\r
- p_area->i_part = i_chapter;\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-\r
- input_ChangeArea( p_intf->p_sys->p_input, p_area );\r
-\r
- Item->Checked = true;\r
- ItemTitle = Index2Item( MenuTitle, i_title, false );\r
- if( ItemTitle->Checked )\r
- {\r
- /* same title, new chapter */\r
- Index2Item( MenuChapter, i_chapter, false )->Checked = true;\r
- }\r
- else\r
- {\r
- /* new title => we must rebuild the chapter menu */\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- RadioMenu(\r
- MenuChapter, "Chapter",\r
- p_intf->p_sys->p_input->stream.p_selected_area->i_part_nb,\r
- i_chapter, MenuChapterClick );\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- }\r
-\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PLAY );\r
-}\r
-\r
-\r
-__fastcall TMenusGen::TMenusGen( intf_thread_t *_p_intf ) : TObject()\r
-{\r
- p_intf = _p_intf;\r
-\r
- /* Initialize local pointers to menu items of the main window */\r
- TMainFrameDlg * p_window = p_intf->p_sys->p_window;\r
- if( p_window == NULL )\r
- {\r
- msg_Warn( p_intf, "Main window wasn't created, expect problems..." );\r
- return;\r
- }\r
-\r
- MenuChannel = p_window->MenuChannel;\r
- PopupChannel = p_window->PopupChannel;\r
- MenuADevice = p_window->MenuADevice;\r
- PopupADevice = p_window->PopupADevice;\r
- MenuVDevice = p_window->MenuVDevice;\r
- PopupVDevice = p_window->PopupVDevice;\r
- MenuLanguage = p_window->MenuLanguage;\r
- PopupLanguage = p_window->PopupLanguage;\r
- MenuSubtitles = p_window->MenuSubtitles;\r
- PopupSubtitles = p_window->PopupSubtitles;\r
- MenuProgram = p_window->MenuProgram;\r
- PopupProgram = p_window->PopupProgram;\r
- MenuTitle = p_window->MenuTitle;\r
- MenuChapter = p_window->MenuChapter;\r
- PopupNavigation = p_window->PopupNavigation;\r
- MenuAddInterface = p_window->MenuAddInterface;\r
-\r
- /* Create the "Add interface" menu */\r
- SetupModuleMenu( "interface", MenuAddInterface, InterfaceModuleClick );\r
-}\r
-\r
-\r
-/*****************************************************************************\r
- * SetupMenus: This function dynamically generates some menus\r
- *****************************************************************************\r
- * The lock on p_input->stream must be taken before you call this function\r
- *****************************************************************************/\r
-void __fastcall TMenusGen::SetupMenus()\r
-{\r
- TMainFrameDlg * p_window = p_intf->p_sys->p_window;\r
- input_thread_t * p_input = p_intf->p_sys->p_input;\r
- es_descriptor_t * p_audio_es;\r
- es_descriptor_t * p_spu_es;\r
-\r
- p_intf->p_sys->b_chapter_update |= p_intf->p_sys->b_title_update;\r
- p_intf->p_sys->b_audio_update |= p_intf->p_sys->b_program_update |\r
- p_intf->p_sys->b_title_update;\r
- p_intf->p_sys->b_spu_update |= p_intf->p_sys->b_program_update |\r
- p_intf->p_sys->b_title_update;\r
-\r
- if( p_intf->p_sys->b_program_update )\r
- {\r
- pgrm_descriptor_t * p_pgrm;\r
-\r
- if( p_input->stream.p_new_program )\r
- {\r
- p_pgrm = p_input->stream.p_new_program;\r
- }\r
- else\r
- {\r
- p_pgrm = p_input->stream.p_selected_program;\r
- }\r
-\r
- ProgramMenu( MenuProgram, p_pgrm, MenuProgramClick );\r
- ProgramMenu( PopupProgram, p_pgrm, PopupProgramClick );\r
-\r
- p_intf->p_sys->b_program_update = VLC_FALSE;\r
- }\r
-\r
- if( p_intf->p_sys->b_title_update )\r
- {\r
-// why "-1" ?\r
-// because if the titles go from 1 to X-1, there are X-1 titles\r
- RadioMenu( MenuTitle, "Title",\r
- p_input->stream.i_area_nb - 1,\r
- p_input->stream.p_selected_area->i_id,\r
- MenuTitleClick );\r
-\r
- AnsiString CurrentTitle;\r
- CurrentTitle.sprintf( "%d", p_input->stream.p_selected_area->i_id );\r
- p_window->LabelTitleCurrent->Caption = CurrentTitle;\r
-\r
- p_intf->p_sys->b_title_update = VLC_FALSE;\r
- }\r
-\r
- if( p_intf->p_sys->b_chapter_update )\r
- {\r
- RadioMenu( MenuChapter, "Chapter",\r
- p_input->stream.p_selected_area->i_part_nb - 1,\r
- p_input->stream.p_selected_area->i_part,\r
- MenuChapterClick );\r
-\r
- NavigationMenu( PopupNavigation, PopupNavigationClick );\r
-\r
- AnsiString CurrentChapter;\r
- CurrentChapter.sprintf( "%d", p_input->stream.p_selected_area->i_part );\r
- p_window->LabelChapterCurrent->Caption = CurrentChapter;\r
-\r
- p_intf->p_sys->i_part = p_input->stream.p_selected_area->i_part;\r
-\r
- p_intf->p_sys->b_chapter_update = VLC_FALSE;\r
- }\r
-\r
- /* look for selected ES */\r
- p_audio_es = NULL;\r
- p_spu_es = NULL;\r
-\r
- for( unsigned int i = 0; i < p_input->stream.i_selected_es_number; i++ )\r
- {\r
- if( p_input->stream.pp_selected_es[i]->i_cat == AUDIO_ES )\r
- {\r
- p_audio_es = p_input->stream.pp_selected_es[i];\r
- }\r
-\r
- if( p_input->stream.pp_selected_es[i]->i_cat == SPU_ES )\r
- {\r
- p_spu_es = p_input->stream.pp_selected_es[i];\r
- }\r
- }\r
- this->p_audio_es_old = p_audio_es;\r
- this->p_spu_es_old = p_spu_es;\r
-\r
- vlc_mutex_unlock( &p_input->stream.stream_lock );\r
-\r
- /* audio menus */\r
- if( p_intf->p_sys->b_audio_update )\r
- {\r
- LanguageMenu( MenuLanguage, p_audio_es, AUDIO_ES, MenuLanguageClick );\r
- LanguageMenu( PopupLanguage, p_audio_es, AUDIO_ES, PopupLanguageClick );\r
-\r
- p_intf->p_sys->b_audio_update = VLC_FALSE;\r
- }\r
-\r
- /* sub picture menus */\r
- if( p_intf->p_sys->b_spu_update )\r
- {\r
- LanguageMenu( PopupSubtitles, p_spu_es, SPU_ES, PopupSubtitleClick );\r
- LanguageMenu( MenuSubtitles, p_spu_es, SPU_ES, MenuSubtitleClick );\r
-\r
- p_intf->p_sys->b_spu_update = VLC_FALSE;\r
- }\r
-\r
- if( p_intf->p_sys->b_aout_update )\r
- {\r
- aout_instance_t * p_aout;\r
- p_aout = (aout_instance_t *)vlc_object_find( p_intf, VLC_OBJECT_AOUT,\r
- FIND_ANYWHERE );\r
-\r
- if( p_aout != NULL )\r
- {\r
- vlc_value_t val;\r
- val.b_bool = VLC_FALSE;\r
-\r
- var_Set( (vlc_object_t *)p_aout, "intf-change", val );\r
-\r
-#error fixme! look at rc.c line 823\r
- SetupVarMenu( (vlc_object_t *)p_aout, "audio-channels",\r
- MenuChannel, AoutVarClick );\r
- SetupVarMenu( (vlc_object_t *)p_aout, "audio-channels",\r
- PopupChannel, AoutVarClick );\r
-\r
- SetupVarMenu( (vlc_object_t *)p_aout, "audio-device",\r
- MenuADevice, AoutVarClick );\r
- SetupVarMenu( (vlc_object_t *)p_aout, "audio-device",\r
- PopupADevice, AoutVarClick );\r
-\r
- vlc_object_release( (vlc_object_t *)p_aout );\r
- }\r
-\r
- p_intf->p_sys->b_aout_update = VLC_FALSE;\r
- }\r
-\r
- if( p_intf->p_sys->b_vout_update )\r
- {\r
- vout_thread_t * p_vout;\r
- p_vout = (vout_thread_t *)vlc_object_find( p_intf, VLC_OBJECT_VOUT,\r
- FIND_ANYWHERE );\r
-\r
- if( p_vout != NULL )\r
- {\r
- vlc_value_t val;\r
- val.b_bool = VLC_FALSE;\r
-\r
- var_Set( (vlc_object_t *)p_vout, "intf-change", val );\r
-\r
- SetupVarMenu( (vlc_object_t *)p_vout, "video-device",\r
- MenuVDevice, VoutVarClick );\r
- SetupVarMenu( (vlc_object_t *)p_vout, "video-device",\r
- PopupVDevice, VoutVarClick );\r
-\r
- vlc_object_release( (vlc_object_t *)p_vout );\r
- }\r
-\r
- p_intf->p_sys->b_vout_update = VLC_FALSE;\r
- }\r
-\r
- vlc_mutex_lock( &p_input->stream.stream_lock );\r
-}\r
-\r
-\r
-/*****************************************************************************\r
- * Private functions\r
- *****************************************************************************/\r
-TMenuItem * TMenusGen::Index2Item( TMenuItem *Root, int i_index,\r
- bool SingleColumn )\r
-{\r
- if( SingleColumn || ( i_index < 20 ) )\r
- return Root->Items[i_index];\r
- else\r
- return Root->Items[i_index / 10]->Items[i_index % 10];\r
-}\r
-\r
-int TMenusGen::Item2Index( TMenuItem *Root, TMenuItem *Item )\r
-{\r
- if( Item->Parent == Root )\r
- return Item->MenuIndex;\r
- else\r
- return( 10 * Item->Parent->MenuIndex + Item->MenuIndex );\r
-}\r
-\r
-int __fastcall TMenusGen::Data2Title( int data )\r
-{\r
- return (int) (data >> 16 );\r
-}\r
-\r
-int __fastcall TMenusGen::Data2Chapter( int data )\r
-{\r
- return (int) (data & 0xffff);\r
-}\r
-\r
-int __fastcall TMenusGen::Pos2Data( int title, int chapter )\r
-{\r
- return (int) (( title << 16 ) | ( chapter & 0xffff ));\r
-}\r
-\r
-/* This function deletes all the '&' characters in the caption string,\r
- * because Borland automatically adds one when (and only when!) you click on\r
- * the menuitem. Grrrrr... */\r
-AnsiString __fastcall TMenusGen::CleanCaption( AnsiString Caption )\r
-{\r
- while( Caption.LastDelimiter( "&" ) != 0 )\r
- {\r
- Caption.Delete( Caption.LastDelimiter( "&" ), 1 );\r
- }\r
-\r
- return Caption;\r
-}\r
-\r
-/****************************************************************************\r
- * VarChange: change a variable in a vlc_object_t\r
- ****************************************************************************\r
- * Change the variable and update the menuitems.\r
- ****************************************************************************/\r
-void __fastcall TMenusGen::VarChange( vlc_object_t *p_object,\r
- const char *psz_variable, TMenuItem *RootMenu, TMenuItem *RootPopup,\r
- TMenuItem *Item )\r
-{\r
- vlc_value_t val;\r
- int i_index;\r
-\r
- AnsiString Caption = CleanCaption( Item->Caption );\r
- val.psz_string = Caption.c_str();\r
-\r
- /* set the new value */\r
- if( var_Set( p_object, psz_variable, val ) < 0 )\r
- {\r
- msg_Warn( p_object, "cannot set variable (%s)", val.psz_string );\r
- }\r
-\r
- i_index = Item->MenuIndex;\r
- RootMenu->Items[i_index]->Checked = true;\r
- RootPopup->Items[i_index]->Checked = true;\r
-}\r
-\r
-/****************************************************************************\r
- * LangChange: change audio or subtitles languages\r
- ****************************************************************************\r
- * Toggle the language, and update the selected menuitems.\r
- ****************************************************************************/\r
-void __fastcall TMenusGen::LangChange( TMenuItem *RootCurrent, TMenuItem *Item,\r
- TMenuItem *RootOther, int i_cat )\r
-{\r
- es_descriptor_t * p_es;\r
- es_descriptor_t * p_es_old;\r
- int i_index;\r
- int i_es;\r
-\r
- /* find the selected ES */\r
- i_es = Item->Tag;\r
-\r
- /* find selected menu item */\r
- i_index = Item2Index( RootCurrent, Item ) - 1;\r
- if( i_index < 0 )\r
- {\r
- /* 'None' was selected */\r
- p_es = NULL;\r
- }\r
- else\r
- {\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- p_es = p_intf->p_sys->p_input->stream.pp_es[i_es];\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- }\r
-\r
- /* find the current ES */\r
- if( i_cat == AUDIO_ES )\r
- {\r
- p_es_old = this->p_audio_es_old;\r
- this->p_audio_es_old = p_es;\r
- }\r
- else\r
- {\r
- p_es_old = this->p_spu_es_old;\r
- this->p_spu_es_old = p_es;\r
- }\r
-\r
- /* exchange them */\r
- input_ToggleES( p_intf->p_sys->p_input, p_es_old, false );\r
- input_ToggleES( p_intf->p_sys->p_input, p_es, true );\r
-\r
- Item->Checked = true;\r
- Index2Item( RootOther, i_index + 1, true )->Checked = true;\r
-}\r
-\r
-/****************************************************************************\r
- * ProgramChange: change the program\r
- ****************************************************************************\r
- * Toggle the program, and update the selected menuitems.\r
- ****************************************************************************/\r
-void __fastcall TMenusGen::ProgramChange( TMenuItem *Item,\r
- TMenuItem *RootOther )\r
-{\r
- int i_program = Item->Tag;\r
-\r
- /* toggle the program */\r
- input_ChangeProgram( p_intf->p_sys->p_input, (uint16_t)i_program );\r
-\r
- /* check selected menu items */\r
- Item->Checked = true;\r
- Index2Item( RootOther, i_program - 1, true )->Checked = true;\r
-\r
- /* update audio/subtitles menus */\r
- p_intf->p_sys->b_audio_update = VLC_TRUE;\r
- p_intf->p_sys->b_spu_update = VLC_TRUE;\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- SetupMenus();\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
- p_intf->p_sys->b_audio_update = VLC_FALSE;\r
- p_intf->p_sys->b_spu_update = VLC_FALSE;\r
-\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PLAY );\r
-}\r
-\r
-/*****************************************************************************\r
- * SetupVarMenu: build a menu allowing to change a variable\r
- *****************************************************************************/\r
-void __fastcall TMenusGen::SetupVarMenu( vlc_object_t *p_object,\r
- const char *psz_variable, TMenuItem *Root, TNotifyEvent MenuItemClick )\r
-{\r
- TMenuItem * Item;\r
- vlc_value_t val;\r
- char * psz_value = NULL;\r
- int i;\r
-\r
- /* remove previous menu */\r
- Root->Clear();\r
-\r
- /* get the current value */\r
- if( var_Get( p_object, psz_variable, &val ) < 0 )\r
- {\r
- return;\r
- }\r
- psz_value = val.psz_string;\r
-\r
- if( var_Change( p_object, psz_variable, VLC_VAR_GETLIST, &val, NULL ) < 0 )\r
- {\r
- free( psz_value );\r
- return;\r
- }\r
-\r
- /* append a menuitem for each option */\r
- for( i = 0; i < val.p_list->i_count; i++ )\r
- {\r
- Item = new TMenuItem( Root );\r
- Item->Caption = val.p_list->p_values[i].psz_string;\r
- Item->Hint = val.p_list->p_values[i].psz_string;\r
- Item->RadioItem = true;\r
- Item->OnClick = MenuItemClick;\r
- if( !strcmp( psz_value, val.p_list->p_values[i].psz_string ) )\r
- Item->Checked = true;\r
-\r
- /* Add the item to the submenu */\r
- Root->Add( Item );\r
- }\r
-\r
- /* enable the menu if there is at least 1 item */\r
- Root->Enabled = ( val.p_list->i_count > 0 );\r
-\r
- /* clean up everything */\r
- var_Change( p_object, psz_variable, VLC_VAR_FREELIST, &val, NULL );\r
-// free( psz_value );\r
-}\r
-\r
-/*****************************************************************************\r
- * SetupModuleMenu: build a menu listing all the modules of a given\r
- capability\r
- *****************************************************************************/\r
-void __fastcall TMenusGen::SetupModuleMenu( const char *psz_capability,\r
- TMenuItem *Root, TNotifyEvent MenuItemClick )\r
-{\r
- module_t * p_parser;\r
- vlc_list_t *p_list;\r
- int i_index;\r
-\r
- /* remove previous menu */\r
- Root->Clear();\r
- Root->Enabled = false;\r
-\r
- p_list = vlc_list_find( p_intf, VLC_OBJECT_MODULE, FIND_ANYWHERE );\r
- for( i_index = 0; i_index < p_list->i_count; i_index++ )\r
- {\r
- p_parser = (module_t *)p_list->p_values[i_index].p_object ;\r
-\r
- if( !strcmp( p_parser->psz_capability, psz_capability ) )\r
- {\r
- TMenuItem *Item = new TMenuItem( Root );\r
- Item->Caption = p_parser->psz_object_name;\r
- Item->Hint = Item->Caption;\r
- Item->OnClick = MenuItemClick;\r
- Root->Add( Item );\r
- }\r
- }\r
-\r
- vlc_list_release( p_list );\r
-\r
- /* be sure that menu is enabled, if there is at least one item */\r
- if( i_index > 0 )\r
- Root->Enabled = true;\r
-}\r
-\r
-/*****************************************************************************\r
- * ProgramMenu: update the programs menu of the interface\r
- *****************************************************************************\r
- * Builds the program menu according to what have been found in the PAT\r
- * by the input. Useful for multi-programs streams such as DVB ones.\r
- *****************************************************************************/\r
-void __fastcall TMenusGen::ProgramMenu( TMenuItem *Root,\r
- pgrm_descriptor_t *p_pgrm, TNotifyEvent MenuItemClick )\r
-{\r
- TMenuItem * Item;\r
-\r
- /* remove previous menu */\r
- Root->Clear();\r
- Root->Enabled = false;\r
-\r
- /* create a set of program buttons and append them to the container */\r
- for( unsigned int i = 0; i < p_intf->p_sys->p_input->stream.i_pgrm_number;\r
- i++ )\r
- {\r
- AnsiString Name;\r
- Name.sprintf( "id %d",\r
- p_intf->p_sys->p_input->stream.pp_programs[i]->i_number );\r
-\r
- Item = new TMenuItem( Root );\r
- Item->Caption = Name;\r
- Item->Hint = Name;\r
- Item->RadioItem = true;\r
- Item->OnClick = MenuItemClick;\r
-\r
- /* FIXME: temporary hack to save the program id with the Item\r
- * It will be used in the callback. */\r
- Item->Tag = i + 1;\r
-\r
- /* check the currently selected program */\r
- if( p_pgrm == p_intf->p_sys->p_input->stream.pp_programs[i] )\r
- Item->Checked = true;\r
-\r
- /* add the item to the submenu */\r
- Root->Add( Item );\r
- }\r
-\r
- /* be sure that menu is enabled if more than 1 program */\r
- if( p_intf->p_sys->p_input->stream.i_pgrm_number > 1 )\r
- Root->Enabled = true;\r
-}\r
-\r
-/*****************************************************************************\r
- * RadioMenu: update interactive menus of the interface\r
- *****************************************************************************\r
- * Sets up menus with information from input\r
- * Warning: since this function is designed to be called by management\r
- * function, the interface lock has to be taken\r
- *****************************************************************************/\r
-void __fastcall TMenusGen::RadioMenu( TMenuItem *Root, AnsiString ItemName,\r
- int i_nb, int i_selected, TNotifyEvent MenuItemClick )\r
-{\r
- TMenuItem * ItemGroup;\r
- TMenuItem * Item;\r
- AnsiString Name;\r
-\r
- /* remove previous menu */\r
- Root->Enabled = false;\r
- Root->Clear();\r
-\r
- for( int i_item = 1; i_item <= i_nb; i_item++ )\r
- {\r
- /* we group titles/chapters in packets of ten for small screens */\r
- if( ( i_item % 10 == 1 ) && ( i_nb > 20 ) )\r
- {\r
- if( i_item != 1 )\r
- Root->Add( ItemGroup );\r
-\r
- Name.sprintf( "%ss %d to %d", ItemName, i_item, i_item + 9 );\r
- ItemGroup = new TMenuItem( Root );\r
- ItemGroup->Hint = Name;\r
- ItemGroup->RadioItem = true;\r
-\r
- /* set the accelerator character */\r
- Name.Insert( "&", Name.Length() - 1 );\r
- ItemGroup->Caption = Name;\r
- }\r
-\r
- Name.sprintf( "%s %d", ItemName, i_item );\r
- Item = new TMenuItem( Root );\r
- Item->RadioItem = true;\r
- Item->Hint = Name;\r
-\r
- /* set the accelerator character */\r
- Name.Insert( "&", Name.Length() );\r
- Item->Caption = Name;\r
-\r
- /* FIXME: temporary hack to save i_item with the Item\r
- * It will be used in the callback. */\r
- Item->Tag = i_item;\r
-\r
- /* check the currently selected chapter */\r
- if( i_selected == i_item )\r
- Item->Checked = true;\r
-\r
- /* setup signal handling */\r
- Item->OnClick = MenuItemClick;\r
-\r
- if( i_nb > 20 )\r
- ItemGroup->Add( Item );\r
- else\r
- Root->Add( Item );\r
- }\r
-\r
-// if( ( i_nb > 20 ) && ( i_item % 10 ) ) ?\r
- if( i_nb > 20 )\r
- Root->Add( ItemGroup );\r
-\r
- /* be sure that menu is enabled, if there are several items */\r
- if( i_nb > 1 )\r
- Root->Enabled = true;\r
-}\r
-\r
-/*****************************************************************************\r
- * LanguageMenus: update interactive menus of the interface\r
- *****************************************************************************\r
- * Sets up menus with information from input:\r
- * - languages\r
- * - sub-pictures\r
- * Warning: since this function is designed to be called by management\r
- * function, the interface lock has to be taken\r
- *****************************************************************************/\r
-void __fastcall TMenusGen::LanguageMenu( TMenuItem *Root, es_descriptor_t *p_es,\r
- int i_cat, TNotifyEvent MenuItemClick )\r
-{\r
- TMenuItem * Separator;\r
- TMenuItem * Item;\r
- AnsiString Name;\r
-\r
- /* remove previous menu */\r
- Root->Clear();\r
- Root->Enabled = false;\r
-\r
- /* special case for "off" item */\r
- Name = "None";\r
- Item = new TMenuItem( Root );\r
- Item->RadioItem = true;\r
- Item->Hint = Name;\r
- Item->Caption = Name;\r
- Item->OnClick = MenuItemClick;\r
- Item->Tag = -1;\r
- Root->Add( Item );\r
-\r
- /* separator item */\r
- Separator = new TMenuItem( Root );\r
- Separator->Caption = "-";\r
- Root->Add( Separator );\r
-\r
- int i_item = 0;\r
-\r
- vlc_mutex_lock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-\r
-#define ES p_intf->p_sys->p_input->stream.pp_es[i]\r
- /* create a set of language buttons and append them to the Root */\r
- for( unsigned int i = 0; i < p_intf->p_sys->p_input->stream.i_es_number;\r
- i++ )\r
- {\r
- if( ( ES->i_cat == i_cat ) &&\r
- ( !ES->p_pgrm ||\r
- ES->p_pgrm ==\r
- p_intf->p_sys->p_input->stream.p_selected_program ) )\r
- {\r
- i_item++;\r
- if( p_intf->p_sys->p_input->stream.pp_es[i]->psz_desc )\r
- Name = p_intf->p_sys->p_input->stream.pp_es[i]->psz_desc;\r
- if( Name.IsEmpty() )\r
- Name.sprintf( "Language %d", i_item );\r
-\r
- Item = new TMenuItem( Root );\r
- Item->RadioItem = true;\r
- Item->Hint = Name;\r
- Item->Caption = Name;\r
- Item->Tag = i;\r
-\r
- /* check the currently selected item */\r
- if( p_es == p_intf->p_sys->p_input->stream.pp_es[i] )\r
- Item->Checked = true;\r
-\r
- /* setup signal hanling */\r
- Item->OnClick = MenuItemClick;\r
- Root->Add( Item );\r
- }\r
- }\r
-#undef ES\r
-\r
- vlc_mutex_unlock( &p_intf->p_sys->p_input->stream.stream_lock );\r
-\r
- /* be sure that menu is enabled if non empty */\r
- if( i_item > 0 )\r
- Root->Enabled = true;\r
-}\r
-\r
-/*****************************************************************************\r
- * NavigationMenu: sets menus for titles and chapters selection\r
- *****************************************************************************\r
- * Generates two types of menus:\r
- * -simple list of titles\r
- * -cascaded lists of chapters for each title\r
- *****************************************************************************/\r
-void __fastcall TMenusGen::NavigationMenu( TMenuItem *Root,\r
- TNotifyEvent MenuItemClick )\r
-{\r
- TMenuItem * TitleGroup;\r
- TMenuItem * TitleItem;\r
- TMenuItem * ChapterGroup;\r
- TMenuItem * ChapterItem;\r
- AnsiString Name;\r
- unsigned int i_title_nb;\r
- unsigned int i_chapter_nb;\r
-\r
-\r
- /* remove previous menu */\r
- Root->Enabled = false;\r
- Root->Clear();\r
-\r
- i_title_nb = p_intf->p_sys->p_input->stream.i_area_nb - 1;\r
-\r
- /* loop on titles */\r
- for( unsigned int i_title = 1; i_title <= i_title_nb; i_title++ )\r
- {\r
- /* we group titles in packets of ten for small screens */\r
- if( ( i_title % 10 == 1 ) && ( i_title_nb > 20 ) )\r
- {\r
- if( i_title != 1 )\r
- Root->Add( TitleGroup );\r
-\r
- Name.sprintf( "%d - %d", i_title, i_title + 9 );\r
- TitleGroup = new TMenuItem( Root );\r
- TitleGroup->RadioItem = true;\r
- TitleGroup->Hint = Name;\r
- TitleGroup->Caption = Name;\r
- }\r
-\r
- Name.sprintf( "Title %d (%d)", i_title,\r
- p_intf->p_sys->p_input->stream.pp_areas[i_title]->i_part_nb - 1 );\r
- {\r
- TitleItem = new TMenuItem( Root );\r
- TitleItem->RadioItem = true;\r
- TitleItem->Hint = Name;\r
- TitleItem->Caption = Name;\r
-\r
- i_chapter_nb =\r
- p_intf->p_sys->p_input->stream.pp_areas[i_title]->i_part_nb - 1;\r
-\r
- /* loop on chapters */\r
- for( unsigned int i_chapter = 1; i_chapter <= i_chapter_nb;\r
- i_chapter++ )\r
- {\r
- /* we group chapters in packets of ten for small screens */\r
- if( ( i_chapter % 10 == 1 ) && ( i_chapter_nb > 20 ) )\r
- {\r
- if( i_chapter != 1 )\r
- TitleItem->Add( ChapterGroup );\r
-\r
- Name.sprintf( "%d - %d", i_chapter, i_chapter + 9 );\r
- ChapterGroup = new TMenuItem( TitleItem );\r
- ChapterGroup->RadioItem = true;\r
- ChapterGroup->Hint = Name;\r
- ChapterGroup->Caption = Name;\r
- }\r
-\r
- Name.sprintf( "Chapter %d", i_chapter );\r
-\r
- ChapterItem = new TMenuItem( TitleItem );\r
- ChapterItem->RadioItem = true;\r
- ChapterItem->Hint = Name;\r
- ChapterItem->Caption = Name;\r
-\r
- /* FIXME: temporary hack to save i_title and i_chapter with\r
- * ChapterItem, since we will need them in the callback */\r
- ChapterItem->Tag = Pos2Data( i_title, i_chapter );\r
-\r
-#define p_area p_intf->p_sys->p_input->stream.pp_areas[i_title]\r
- /* check the currently selected chapter */\r
- if( ( p_area ==\r
- p_intf->p_sys->p_input->stream.p_selected_area ) &&\r
- ( p_area->i_part == i_chapter ) )\r
- {\r
- ChapterItem->Checked = true;\r
- }\r
-#undef p_area\r
-\r
- /* setup signal handling */\r
- ChapterItem->OnClick = MenuItemClick;\r
-\r
- if( i_chapter_nb > 20 )\r
- ChapterGroup->Add( ChapterItem );\r
- else\r
- TitleItem->Add( ChapterItem );\r
- }\r
-\r
- if( i_chapter_nb > 20 )\r
- {\r
- TitleItem->Add( ChapterGroup );\r
- }\r
-\r
- if( p_intf->p_sys->p_input->stream.pp_areas[i_title]->i_part_nb\r
- > 1 )\r
- {\r
- /* be sure that menu is sensitive */\r
- Root->Enabled = true;\r
- }\r
- }\r
-\r
- if( i_title_nb > 20 )\r
- TitleGroup->Add( TitleItem );\r
- else\r
- Root->Add( TitleItem );\r
- }\r
-\r
- if( i_title_nb > 20 )\r
- Root->Add( TitleGroup );\r
-\r
- /* be sure that menu is sensitive */\r
- Root->Enabled = true;\r
-}\r
-\r
+++ /dev/null
-/*****************************************************************************\r
- * menu.h: prototypes for menu functions\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- * $Id: menu.h,v 1.5 2003/02/12 02:11:58 ipkiss Exp $\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef menuH\r
-#define menuH\r
-//----------------------------------------------------------------------------\r
-class TMenusGen : public TObject\r
-{\r
-private:\r
- intf_thread_t *p_intf;\r
-\r
- /* local pointers to main window menu items */\r
- TMenuItem *MenuChannel;\r
- TMenuItem *PopupChannel;\r
- TMenuItem *MenuADevice;\r
- TMenuItem *PopupADevice;\r
- TMenuItem *MenuVDevice;\r
- TMenuItem *PopupVDevice;\r
- TMenuItem *MenuLanguage;\r
- TMenuItem *PopupLanguage;\r
- TMenuItem *MenuSubtitles;\r
- TMenuItem *PopupSubtitles;\r
- TMenuItem *MenuProgram;\r
- TMenuItem *PopupProgram;\r
- TMenuItem *MenuTitle;\r
- TMenuItem *MenuChapter;\r
- TMenuItem *PopupNavigation;\r
- TMenuItem *MenuAddInterface;\r
-\r
- /* Language information */\r
- es_descriptor_t * p_audio_es_old;\r
- es_descriptor_t * p_spu_es_old;\r
-\r
- /* Helpful functions */\r
- int Item2Index( TMenuItem *Root, TMenuItem *Item );\r
- TMenuItem *Index2Item( TMenuItem *Root, int i_index, bool SingleColumn );\r
- int __fastcall Data2Title( int data );\r
- int __fastcall Data2Chapter( int data );\r
- int __fastcall Pos2Data( int title, int chapter );\r
- AnsiString __fastcall TMenusGen::CleanCaption( AnsiString Caption );\r
-\r
- void __fastcall VarChange( vlc_object_t *, const char *, TMenuItem *,\r
- TMenuItem *, TMenuItem * );\r
- void __fastcall LangChange( TMenuItem *, TMenuItem *, TMenuItem *, int );\r
- void __fastcall ProgramChange( TMenuItem *, TMenuItem * );\r
-\r
- void __fastcall SetupVarMenu( vlc_object_t *, const char *, TMenuItem *,\r
- TNotifyEvent );\r
- void __fastcall SetupModuleMenu( const char *, TMenuItem *, TNotifyEvent );\r
- void __fastcall ProgramMenu( TMenuItem *, pgrm_descriptor_t *,\r
- TNotifyEvent );\r
- void __fastcall RadioMenu( TMenuItem *, AnsiString, int, int,\r
- TNotifyEvent );\r
- void __fastcall LanguageMenu( TMenuItem *, es_descriptor_t *, int,\r
- TNotifyEvent );\r
- void __fastcall NavigationMenu( TMenuItem *, TNotifyEvent );\r
-public:\r
- __fastcall TMenusGen( intf_thread_t *_p_intf );\r
-\r
- /* menu generation */\r
- void __fastcall SetupMenus();\r
-\r
- /* callbacks for menuitems */\r
- void __fastcall AoutVarClick( TObject *Sender );\r
- void __fastcall VoutVarClick( TObject *Sender );\r
- void __fastcall InterfaceModuleClick( TObject *Sender );\r
- void __fastcall MenuLanguageClick( TObject *Sender );\r
- void __fastcall PopupLanguageClick( TObject *Sender );\r
- void __fastcall MenuSubtitleClick( TObject *Sender );\r
- void __fastcall PopupSubtitleClick( TObject *Sender );\r
- void __fastcall MenuProgramClick( TObject *Sender );\r
- void __fastcall PopupProgramClick( TObject *Sender );\r
- void __fastcall MenuTitleClick( TObject *Sender );\r
- void __fastcall MenuChapterClick( TObject *Sender );\r
- void __fastcall PopupNavigationClick( TObject *Sender );\r
-};\r
-//----------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * messages.cpp: log window.\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- * \r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#pragma hdrstop\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-\r
-#include "messages.h"\r
-#include "misc.h"\r
-#include "win32_common.h"\r
-\r
-//---------------------------------------------------------------------------\r
-#pragma package(smart_init)\r
-#pragma resource "*.dfm"\r
-\r
-//---------------------------------------------------------------------------\r
-__fastcall TMessagesDlg::TMessagesDlg(\r
- TComponent* Owner, intf_thread_t *_p_intf ) : TForm( Owner )\r
-{\r
- p_intf = _p_intf;\r
- Icon = p_intf->p_sys->p_window->Icon;\r
- Translate( this );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMessagesDlg::ButtonOKClick( TObject *Sender )\r
-{\r
- Hide();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMessagesDlg::FormHide( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_window->MessagesAction->Checked = false;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMessagesDlg::FormShow( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_window->MessagesAction->Checked = true;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMessagesDlg::UpdateLog()\r
-{\r
- msg_subscription_t *p_sub = p_intf->p_sys->p_sub;\r
- int i_start, i_stop, i_del, i_count;\r
- int i_max_lines;\r
-\r
- vlc_mutex_lock( p_sub->p_lock );\r
- i_stop = *p_sub->pi_stop;\r
- vlc_mutex_unlock( p_sub->p_lock );\r
-\r
- if( p_sub->i_start != i_stop )\r
- {\r
- for( i_start = p_sub->i_start;\r
- i_start != i_stop;\r
- i_start = (i_start+1) % VLC_MSG_QSIZE )\r
- {\r
- /* Append all messages to log window */\r
- switch( p_sub->p_msg[i_start].i_type )\r
- {\r
- case VLC_MSG_ERR:\r
- RichEditMessages->SelAttributes->Color = clRed;\r
- break;\r
- case VLC_MSG_WARN:\r
- RichEditMessages->SelAttributes->Color = clBlue;\r
- break;\r
- default:\r
- RichEditMessages->SelAttributes->Color = clBlack;\r
- break;\r
- }\r
-\r
- /* Limit log size */\r
- i_count = RichEditMessages->Lines->Count;\r
- i_max_lines = config_GetInt( p_intf, "intfwin-max-lines" );\r
- if( i_max_lines > 0 )\r
- {\r
- for( i_del = 0; i_del <= i_count - i_max_lines; i_del++ )\r
- {\r
- RichEditMessages->Lines->Delete( 0 );\r
- }\r
- }\r
-\r
- /* Add message */\r
- if( i_max_lines )\r
- {\r
- /* We don't use RichEditMessages->Lines->Add(), because with\r
- * some versions of rich32.dll it can trigger the\r
- * "RichEdit line insertion error" bug... */\r
- RichEditMessages->SelStart = RichEditMessages->GetTextLen();\r
- RichEditMessages->SelText = p_sub->p_msg[i_start].psz_msg;\r
- RichEditMessages->SelText = RichEditMessages->SelText + "\r\n";\r
- }\r
- }\r
-\r
- vlc_mutex_lock( p_sub->p_lock );\r
- p_sub->i_start = i_start;\r
- vlc_mutex_unlock( p_sub->p_lock );\r
- } \r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TMessagesDlg::PopupCopyTextClick( TObject *Sender )\r
-{\r
- /* If nothinf is selected, select everything */\r
- if( RichEditMessages->SelLength == 0 )\r
- {\r
- RichEditMessages->SelStart = 0;\r
- RichEditMessages->SelLength = RichEditMessages->GetTextLen();\r
- }\r
-\r
- /* Copy selected text to clipboard */\r
- RichEditMessages->CopyToClipboard();\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
+++ /dev/null
-object MessagesDlg: TMessagesDlg\r
- Tag = 3\r
- Left = 325\r
- Top = 160\r
- Width = 440\r
- Height = 502\r
- Caption = 'Messages'\r
- Color = clBtnFace\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clPurple\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- OldCreateOrder = False\r
- OnHide = FormHide\r
- OnShow = FormShow\r
- PixelsPerInch = 96\r
- TextHeight = 13\r
- object RichEditMessages: TRichEdit\r
- Left = 0\r
- Top = 0\r
- Width = 432\r
- Height = 424\r
- Align = alTop\r
- Anchors = [akLeft, akTop, akRight, akBottom]\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clBlack\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- ParentFont = False\r
- PopupMenu = PopupMenu1\r
- ReadOnly = True\r
- ScrollBars = ssBoth\r
- TabOrder = 0\r
- WantReturns = False\r
- end\r
- object ButtonOK: TButton\r
- Tag = 3\r
- Left = 144\r
- Top = 437\r
- Width = 145\r
- Height = 25\r
- Anchors = [akBottom]\r
- Caption = 'OK'\r
- Default = True\r
- ModalResult = 1\r
- TabOrder = 1\r
- OnClick = ButtonOKClick\r
- end\r
- object PopupMenu1: TPopupMenu\r
- Left = 304\r
- Top = 432\r
- object PopupCopyText: TMenuItem\r
- Caption = '&Copy text'\r
- ShortCut = 16451\r
- OnClick = PopupCopyTextClick\r
- end\r
- end\r
-end\r
+++ /dev/null
-/*****************************************************************************\r
- * messages.h: log window\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- * \r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef messagesH\r
-#define messagesH\r
-//---------------------------------------------------------------------------\r
-#include <Classes.hpp>\r
-#include <Controls.hpp>\r
-#include <StdCtrls.hpp>\r
-#include <Forms.hpp>\r
-#include <ComCtrls.hpp>\r
-#include <Menus.hpp>\r
-//---------------------------------------------------------------------------\r
-class TMessagesDlg : public TForm\r
-{\r
-__published: // IDE-managed Components\r
- TRichEdit *RichEditMessages;\r
- TButton *ButtonOK;\r
- TPopupMenu *PopupMenu1;\r
- TMenuItem *PopupCopyText;\r
- void __fastcall ButtonOKClick( TObject *Sender );\r
- void __fastcall FormHide( TObject *Sender );\r
- void __fastcall FormShow( TObject *Sender );\r
- void __fastcall PopupCopyTextClick( TObject *Sender );\r
-private: // User declarations\r
- intf_thread_t *p_intf;\r
-public: // User declarations\r
- __fastcall TMessagesDlg( TComponent* Owner, intf_thread_t *_p_intf );\r
- void __fastcall UpdateLog();\r
-};\r
-//---------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * misc.cpp: miscellaneous functions.\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#include <comctrls.hpp>\r
-#pragma hdrstop\r
-\r
-#include <vlc/vlc.h>\r
-\r
-#include "misc.h"\r
-\r
-/****************************************************************************\r
- * This function replaces "Hint", "Caption" and "Text" properties of each\r
- * component of the form by the appropriate translation.\r
- ****************************************************************************/\r
-void __fastcall Translate( TForm *Form )\r
-{\r
- // We must test the string because we don't want to get the default one\r
- if( Form->Hint != "" )\r
- {\r
- Form->Hint = _( Form->Hint.c_str() );\r
- }\r
- if( Form->Caption != "" )\r
- {\r
- Form->Caption = _( Form->Caption.c_str() );\r
- }\r
-\r
- for( int i = 0; i < Form->ComponentCount; i++ )\r
- {\r
- // Does this component need a translation ?\r
- if( Form->Components[i]->Tag > 0 )\r
- {\r
- TComponent *Component = Form->Components[i];\r
-\r
- // Note: the Text property isn't translated, because we don't want\r
- // to modify the content of TEdit or TComboBox objects, which\r
- // may have default values\r
-\r
- // Hint property\r
- if( Component->Tag & 1 )\r
- {\r
- if( Component->InheritsFrom( __classid( TControl ) ) )\r
- {\r
- TControl *Object = (TControl *) Component;\r
- if( Object->Hint != "" )\r
- {\r
- Object->Hint = _( Object->Hint.c_str() );\r
- }\r
- }\r
- else if( Component->InheritsFrom( __classid( TMenuItem ) ) )\r
- {\r
- TMenuItem *Object = (TMenuItem *) Component;\r
- if( Object->Hint != "" )\r
- {\r
- Object->Hint = _( Object->Hint.c_str() );\r
- }\r
- }\r
- }\r
-\r
- // Caption property\r
- if( Component->Tag & 2 )\r
- {\r
- if( Component->InheritsFrom( __classid( TMenuItem ) ) )\r
- {\r
- TMenuItem *Object = (TMenuItem *) Component;\r
- if( Object->Caption != "" )\r
- {\r
- Object->Caption = _( Object->Caption.c_str() );\r
- }\r
- }\r
- else if( Component->InheritsFrom( __classid( TLabel ) ) )\r
- {\r
- TLabel *Object = (TLabel *) Component;\r
- if( Object->Caption != "" )\r
- {\r
- Object->Caption = _( Object->Caption.c_str() );\r
- }\r
- }\r
- else if( Component->InheritsFrom( __classid( TButton ) ) )\r
- {\r
- TButton *Object = (TButton *) Component;\r
- if( Object->Caption != "" )\r
- {\r
- Object->Caption = _( Object->Caption.c_str() );\r
- }\r
- }\r
- else if( Component->InheritsFrom( __classid( TRadioButton ) ) )\r
- {\r
- TRadioButton *Object = (TRadioButton *) Component;\r
- if( Object->Caption != "" )\r
- {\r
- Object->Caption = _( Object->Caption.c_str() );\r
- }\r
- }\r
- else if( Component->InheritsFrom( __classid( TCheckBox ) ) )\r
- {\r
- TCheckBox *Object = (TCheckBox *) Component;\r
- if( Object->Caption != "" )\r
- {\r
- Object->Caption = _( Object->Caption.c_str() );\r
- }\r
- }\r
- else if( Component->InheritsFrom( __classid( TRadioGroup ) ) )\r
- {\r
- TRadioGroup *Object = (TRadioGroup *) Component;\r
- if( Object->Caption != "" )\r
- {\r
- Object->Caption = _( Object->Caption.c_str() );\r
- }\r
- }\r
- else if( Component->InheritsFrom( __classid( TGroupBox ) ) )\r
- {\r
- TGroupBox *Object = (TGroupBox *) Component;\r
- if( Object->Caption != "" )\r
- {\r
- Object->Caption = _( Object->Caption.c_str() );\r
- }\r
- }\r
- else if( Component->InheritsFrom( __classid( TToolButton ) ) )\r
- {\r
- TToolButton *Object = (TToolButton *) Component;\r
- if( Object->Caption != "" )\r
- {\r
- Object->Caption = _( Object->Caption.c_str() );\r
- }\r
- }\r
- else if( Component->InheritsFrom( __classid( TListView ) ) )\r
- {\r
- TListView *ListView = (TListView *) Component;\r
- for( int iCol = 0; iCol < ListView->Columns->Count; iCol++ )\r
- {\r
- TListColumn *Object = ListView->Columns->Items[iCol];\r
- if( Object->Caption != "" )\r
- {\r
- Object->Caption = _( Object->Caption.c_str() );\r
- }\r
- }\r
- }\r
- }\r
- }\r
- }\r
-}\r
- \r
+++ /dev/null
-/*****************************************************************************\r
- * misc.h: Prototype for main window\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- * \r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef miscH\r
-#define miscH\r
-\r
-void __fastcall Translate( TForm *Form );\r
-\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * network.cpp: the "network" dialog box\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#pragma hdrstop\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-\r
-#include "network.h"\r
-#include "misc.h"\r
-#include "win32_common.h"\r
-\r
-//---------------------------------------------------------------------------\r
-//#pragma package(smart_init)\r
-#pragma link "CSPIN"\r
-#pragma resource "*.dfm"\r
-\r
-//---------------------------------------------------------------------------\r
-__fastcall TNetworkDlg::TNetworkDlg( TComponent* Owner, intf_thread_t *_p_intf )\r
- : TForm( Owner )\r
-{\r
- p_intf = _p_intf;\r
- char *psz_channel_server;\r
-\r
- OldRadioValue = 0;\r
-\r
- /* server port */\r
- SpinEditUDPPort->Value = config_GetInt( p_intf, "server-port" );\r
- SpinEditMulticastPort->Value = config_GetInt( p_intf, "server-port" );\r
-\r
- /* channel server */\r
- if( config_GetInt( p_intf, "network-channel" ) )\r
- {\r
- RadioButtonCS->Checked = true;\r
- RadioButtonCSEnter( RadioButtonCS );\r
- }\r
-\r
- psz_channel_server = config_GetPsz( p_intf, "channel-server" );\r
- if( psz_channel_server )\r
- {\r
- ComboBoxCSAddress->Text = psz_channel_server;\r
- free( psz_channel_server );\r
- }\r
-\r
- SpinEditCSPort->Value = config_GetInt( p_intf, "channel-port" );\r
-\r
- Translate( this );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TNetworkDlg::FormShow( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_window->NetworkStreamAction->Checked = true;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TNetworkDlg::FormHide( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_window->NetworkStreamAction->Checked = false;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TNetworkDlg::ButtonCancelClick( TObject *Sender )\r
-{\r
- Hide();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TNetworkDlg::ButtonOkClick( TObject *Sender )\r
-{\r
- AnsiString Source, Address;\r
- AnsiString Channel = ComboBoxCSAddress->Text;\r
- unsigned int i_channel_port = SpinEditCSPort->Value;\r
- unsigned int i_port;\r
-\r
- Hide();\r
-\r
- /* Check which option was chosen */\r
- switch( OldRadioValue )\r
- {\r
- /* UDP */\r
- case 0:\r
- config_PutInt( p_intf, "network-channel", FALSE );\r
- i_port = SpinEditUDPPort->Value;\r
-\r
- /* Build source name */\r
- Source = "udp:@:" + IntToStr( i_port );\r
-\r
- p_intf->p_sys->p_playwin->Add( Source,\r
- PLAYLIST_APPEND\r
- | ( p_intf->p_sys->b_play_when_adding ? PLAYLIST_GO : 0 )\r
- , PLAYLIST_END );\r
- break;\r
-\r
- /* UDP Multicast */\r
- case 1:\r
- config_PutInt( p_intf, "network-channel", FALSE );\r
- Address = ComboBoxMulticastAddress->Text;\r
- i_port = SpinEditMulticastPort->Value;\r
-\r
- /* Build source name */\r
- Source = "udp:@" + Address + ":" + IntToStr( i_port );\r
-\r
- p_intf->p_sys->p_playwin->Add( Source,\r
- PLAYLIST_APPEND\r
- | ( p_intf->p_sys->b_play_when_adding ? PLAYLIST_GO : 0 )\r
- , PLAYLIST_END );\r
-\r
- /* HTTP */\r
- case 3:\r
- config_PutInt( p_intf, "network-channel", FALSE );\r
- Address = EditHTTPURL->Text;\r
-\r
- /* Build source name with a basic test;\r
- * http is the default protocol */\r
- if( Address.SubString( 1, 7 ) == "http://" ||\r
- Address.SubString( 1, 6 ) == "ftp://" ||\r
- Address.SubString( 1, 6 ) == "mms://" )\r
- {\r
- Source = Address;\r
- }\r
- else\r
- {\r
- Source = "http://" + Address;\r
- }\r
-\r
- p_intf->p_sys->p_playwin->Add( Source,\r
- PLAYLIST_APPEND\r
- | ( p_intf->p_sys->b_play_when_adding ? PLAYLIST_GO : 0 )\r
- , PLAYLIST_END );\r
-\r
- break;\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TNetworkDlg::ChangeEnabled( int i_selected )\r
-{\r
- switch( i_selected )\r
- {\r
- case 0:\r
- LabelUDPPort->Enabled = NOT( LabelUDPPort->Enabled );\r
- SpinEditUDPPort->Enabled = NOT( SpinEditUDPPort->Enabled );\r
- break;\r
- case 1:\r
- LabelMulticastAddress->Enabled =\r
- NOT( LabelMulticastAddress->Enabled );\r
- ComboBoxMulticastAddress->Enabled =\r
- NOT( ComboBoxMulticastAddress->Enabled );\r
- LabelMulticastPort->Enabled = NOT( LabelMulticastPort->Enabled );\r
- SpinEditMulticastPort->Enabled = NOT( SpinEditMulticastPort->Enabled );\r
- break;\r
- case 2:\r
- LabelCSAddress->Enabled = NOT( LabelCSAddress->Enabled );\r
- ComboBoxCSAddress->Enabled = NOT( ComboBoxCSAddress->Enabled );\r
- LabelCSPort->Enabled = NOT( LabelCSPort->Enabled );\r
- SpinEditCSPort->Enabled = NOT( SpinEditCSPort->Enabled );\r
- break;\r
- case 3:\r
- LabelHTTPURL->Enabled = NOT( LabelHTTPURL->Enabled );\r
- EditHTTPURL->Enabled = NOT( EditHTTPURL->Enabled );\r
- break;\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TNetworkDlg::RadioButtonUDPEnter( TObject *Sender )\r
-{\r
- ChangeEnabled( OldRadioValue );\r
- OldRadioValue = 0;\r
- ChangeEnabled( OldRadioValue );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TNetworkDlg::RadioButtonMulticastEnter( TObject *Sender )\r
-{\r
- ChangeEnabled( OldRadioValue );\r
- OldRadioValue = 1;\r
- ChangeEnabled( OldRadioValue );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TNetworkDlg::RadioButtonCSEnter( TObject *Sender )\r
-{\r
- ChangeEnabled( OldRadioValue );\r
- OldRadioValue = 2;\r
- ChangeEnabled( OldRadioValue );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TNetworkDlg::RadioButtonHTTPEnter( TObject *Sender )\r
-{\r
- ChangeEnabled( OldRadioValue );\r
- OldRadioValue = 3;\r
- ChangeEnabled( OldRadioValue );\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
+++ /dev/null
-object NetworkDlg: TNetworkDlg\r
- Tag = 3\r
- Left = 358\r
- Top = 414\r
- BorderStyle = bsDialog\r
- Caption = 'Open network'\r
- ClientHeight = 191\r
- ClientWidth = 496\r
- Color = clBtnFace\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clWindowText\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- Icon.Data = {\r
- 0000010001003030000001001800A81C00001600000028000000300000006000\r
- 00000100180000000000001B0000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000069375900000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000120E0A4011253E0F18000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000F0B\r
- 084143CA08070016430F08040800000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000003127291203174647E8464AE808010840E54039E6390B0C06\r
- 0E0A1C0000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0070CD0079DD0079DD0070CD0000000000000000000C1008261D6E4647E54547\r
- E64748E105040039E6393AE53939E63936D33308030100000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000070CD0079DD0079DE007DE40088F9008CFF008CFF0088F9007CE302\r
- 6EC70B09124641DC4444DF4546E34446E54847E003040040E6403AEA3A3EE33E\r
- 3CE33C39E639080F010801050000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000070CD0079DD0077D90070CB0078D8007BDC007BDC007BDC\r
- 007BDC007BDC007BDD007EE32E232D0804084553F14250F34252ED4449DB4844\r
- DC4645E208010540E5401C78150D18053CE63C3AE63A39EA393CD83C241A2006\r
- 0402000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000070CD0079DD007ADF007BDE007BDC0072\r
- CC005188004877004876004876004876034976054A760B4D7731434221175B42\r
- 54EC4253EE4252F60B05104250F44252EB4546DA08010539E6392BAA2B080105\r
- 3CE63C39E7393AE63A39E93939E839081208181C080000000000000000000000\r
- 000000000000000000000000000000000000000070CD0079DD0079DD007CE300\r
- 88F90089F90075D2005188004877005188008CFF008CFF008CFF008CFF008CFF\r
- 1092FF2099FF31A0FF1408294840DB4550E1464EEA0C060B0B05084654F64653\r
- F64453EF080E033AE63A2BAA2B03030339E33939DF3939E639080F083DDB3D24\r
- 9C24434B3B000000000000000000000000000000000000000000000000000000\r
- 0063B60085F3008BFE0088F9007FE90088F90080E8005CA0008CFF008CFF008C\r
- FF008CFF008CFF008CFF008CFF048DFF1594FF259BFF35A2FF0C04103F38C754\r
- 5AF7505BF10C08100801084352F64652F44253F30813053AE63A39E639030403\r
- 1C521826A1250812010807032454131558150000000000000000000000000000\r
- 000000000000000000000000000000000000000070CD007CE30079DD00000000\r
- 7CE30089FA008CFF0089FA008CFF008CFF008CFF008CFF008CFF008CFF098FFF\r
- 1996FF2A9DFF3AA4FF0804103A2AA34E58F74E58F40B0B120803054652F34548\r
- E64451F305130532CA323AE23A03070308070307040008040139E63939E43931\r
- B42F5E1347000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000061B10000000079DD008CFF008CFF008CFF008CFF008C\r
- FF008CFF008CFF008CFF008CFF0E91FF1E98FF2E9FFF3FA6FF040408382BAF4D\r
- 5AEF555AF70F12250501050F04160804074250F3121A123AE93A39E239080803\r
- 0D2F08010401268C2539E7393DE63D3FE23E0804100000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 79DD008CFF008CFF008CFF008CFF008CFF008CFF008CFF008CFF028CFF1293FF\r
- 239AFF33A1FF43A8FF0802083A2AA3565BF7555AF71714330501050104000801\r
- 07424FF12828203AEA3A39E639030703182F1008340801040139E7393DE83D39\r
- E939080400000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000070CD0088F9008CFF008CFF008CFF008C\r
- FF008CFF008CFF008CFF078EFF1795FF279CFF38A3FF48AAFF0808005151F155\r
- 5AF30804030804000504050800082E358E0E0C1F1D192439E53940E640080400\r
- 2AA12739E63908020708010539E8393BE93B0804080000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000007CE3008CFF008CFF008CFF058EFD1D96F92398F8269AFA31A0FC42A8FF\r
- 4FAEFF5CB3FF65B7FF0C08084F5AF14E57F50B04080804043639A54647E81C13\r
- 49363AA70804080F120835953439E7393EE63E39DF3939EA39081105308A2B3F\r
- E73F080601000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000047BDB1D96F92398F82498F83BA0\r
- F399C1E1B1C9DDBCD4E7CBE0F3D9EDFFDCEEFFDEEFFFCDE8FF080808575BF750\r
- 58F624125A5057F34845DF4A41E0150E30C55734E3723EC56E33A23D27050105\r
- 39E43939E63939E6393CE63C14420C3BE03B192A090000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000004\r
- 04042D88D399C1E1B1C9DDB1C9DCB7CBDBCFD3D7D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFEFEFFF9FCFF0C08085D61F15B61EF555AF64A4FE13937BB0E0A12DE74\r
- 39E1733CDE713CDF753AE67541C36B342C231F17141B3AE63A39E7393DE83D39\r
- E93939DE39000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000001818186893B8C3CCD2D5D5D6D5D5D6D5D5\r
- D6D6D6D6D6D6D6E3E3E3F1F1F1FFFFFFFFFFFFFFFFFFFFFFFF140C145C5EF668\r
- 63F75555EA10061CC3673FDF713A0C1104080403080105080007070407D56F36\r
- DE743EDE72401C200C29452939E63939E73939EA390000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000343434A2B4C2D5D5D6D6D6D6D6D6D6D6D6D6D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFEFEFFFEFEFF20161C5C5EF6373EAE0E0413E2713DE1763CCD6A3C2A0D\r
- 08A44B2CDE743EBD612F080401030403E1713CDE7239DE713AE1723C22201139\r
- C13341E641000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000001B1B1B99AEBED5D5D6D5D5D6D5D5\r
- D6CFD3D7B8CBDBBFD5E7CEE2F3DCEFFFDFF0FFE2F1FFE9F4FF10100C3639A46E\r
- 4540DE7239DE713DE1713C07000784261CDE7639E3743E0812001F0407D86E36\r
- E3753EE57540E57541DE763CDE733DD26637493C387E2F7B0000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00001B1B1B99AEBFCED3D7B7CBDBB1C9DD99C1E140A2F339A2FA49AAFC59B2FF\r
- 66B8FF74BEFF92CBFFD9ECFF0F0402C66531DE7139E2733D854B1E0A01084D11\r
- 0DE3733EE1723CDF713ADF753AE1763C1D0A08290708E57140E1763CDE733DC7\r
- 6B34080408000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000001818187FA5C399C1E13BA0F32498\r
- F81D96F91091FD1C97FF2C9EFF3CA5FF4DACFF5DB3FF71BBFF8DC8FF9FD0FF08\r
- 0400080406B95C2EDE7239070B070803014D1615DE723CDE7540E5714030090D\r
- 0504003A120FE67541DE75390808044A0C290000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000707071778C81C92F3058EFD008CFF008CFF1092FF2099FF31A0FF41A7FF\r
- 51AEFF62B5FF72BCFF7BBFFF7BBBF96E9FCD0808080806041D0508E571403E22\r
- 0C200708080405070407070007080303B05F31DE723967301908010500000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000007CE3008CFF008C\r
- FF048DFF1594FF259BFF35A2FF46A9FF56B0FF66B7FF77BEFF7BBFFF6DAAE300\r
- 0000000000000000000000080401200C088D4024E17141E57140DF713ADE713E\r
- DE76390801070000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000079DD008CFF008CFF098FFF1996FF2A9DFF3AA4FF4AABFF\r
- 5BB2FF6BB9FF7BBFFF7BBFFF6AA5DD0000000000000000000000000000001D1A\r
- 0C1A0F08110903441912E57140623B1E08020300000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000079DD008CFF008C\r
- FF0E91FF1E98FF2E9FFF3FA6FF4FADFF5FB4FF70BBFF7BBFFF78BAF96299CD00\r
- 00000000000000000000000000000000000000003914100000005A2411000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000070CD0088F9078EFD2C9CF940A3F850ACFA60B4FC70BCFF\r
- 7DC2FF87C6FF7EC0FF6DAAE30000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000707071A85DD40A2\r
- F3A0C3E1B7CBDDC6D8E7D4E5F3E2F1FFE5F2FFD9ECFF9FD0FF7AACDD05050500\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000001818187FA5C3B8CBDBD0D4D7D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFAFCFFE2EDF99FB7CD1C1C1C0000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000001B1B1B99AEBFD4D5\r
- D6D6D6D6D6D6D6E3E3E3F1F1F1FFFFFFFFFFFFFEFEFFD1DAE33E3E3E00000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000001D1D1D7B9BB4CACED1D6D6D6D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFEFEFFC9D2DD2121210000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000343434A5B5\r
- C2CFD3D7BFCEDBC9D9E7D7E6F3E6F3FFECF5FFF0F4F9AEBDCD23232300000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000018181887A8C3A6C6E169B3F367B6FA77BEFC88C6FF\r
- 9FD0FFB4CBE33939390000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000040404338C\r
- D749A8F947A9FD54AFFF64B6FF74BDFF7EC0FF76ABDD05050500000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000001F7DCD369FF948AAFF58B1FF69B8FF79BFFF\r
- 78BAF96299CD0000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 003592E34DACFF5DB3FF6DBAFF7BBFFF6DAAE300000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000003890DD51AEFF62B5FF72BCFF7BBFFF\r
- 6AA5DD0000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 003B8FD84C9CE3589FDE69A9E375B6F46299CD00000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000003376B00000000000000000005788B6\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000006CC61A83DD247FCC00000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000006DC71A83DD2686D71F6EB1\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000FFFF\r
- FFFFFFFF0000FFFFFFFFFFFF0000FFFFFE1FDFFF0000FFFFE0078FFF0000FFFE\r
- 000007FF0000FFF0000001FF0000FF80000000FF0000FF000000003F0000FF00\r
- 0000000F0000FE00000000070000F800000000070000F8000000000F0000FC00\r
- 000000070000FE00000000070000FF80000000070000FFC0000000070000FFE0\r
- 000000070000FFE0000000070000FFE0000000070000FFE0000000070000FFF0\r
- 000000070000FFF0000000030000FFF0000000070000FFF00000000F0000FFF0\r
- 0000003F0000FFF8000E00FF0000FFF8000F01FF0000FFF8000FD7FF0000FFF8\r
- 001FFFFF0000FFFC001FFFFF0000FFFC001FFFFF0000FFFC003FFFFF0000FFFC\r
- 003FFFFF0000FFFE003FFFFF0000FFFE007FFFFF0000FFFE007FFFFF0000FFFE\r
- 007FFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF\r
- 01FFFFFF0000FFFF01FFFFFF0000FFFF81FFFFFF0000FFFFC3FFFFFF0000FFFF\r
- FFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000}\r
- OldCreateOrder = False\r
- OnHide = FormHide\r
- OnShow = FormShow\r
- PixelsPerInch = 96\r
- TextHeight = 13\r
- object GroupBoxMode: TGroupBox\r
- Tag = 3\r
- Left = 8\r
- Top = 8\r
- Width = 479\r
- Height = 144\r
- Anchors = [akLeft, akTop, akRight]\r
- Caption = 'Network mode'\r
- TabOrder = 0\r
- object LabelUDPPort: TLabel\r
- Tag = 3\r
- Left = 172\r
- Top = 26\r
- Width = 22\r
- Height = 13\r
- Caption = 'Port:'\r
- end\r
- object LabelMulticastPort: TLabel\r
- Tag = 3\r
- Left = 386\r
- Top = 54\r
- Width = 22\r
- Height = 13\r
- Anchors = [akTop, akRight]\r
- Caption = 'Port:'\r
- Enabled = False\r
- end\r
- object LabelCSPort: TLabel\r
- Tag = 3\r
- Left = 386\r
- Top = 82\r
- Width = 22\r
- Height = 13\r
- Anchors = [akTop, akRight]\r
- Caption = 'Port:'\r
- Enabled = False\r
- end\r
- object LabelMulticastAddress: TLabel\r
- Tag = 3\r
- Left = 163\r
- Top = 54\r
- Width = 41\r
- Height = 13\r
- Caption = 'Address:'\r
- Enabled = False\r
- end\r
- object LabelCSAddress: TLabel\r
- Tag = 3\r
- Left = 163\r
- Top = 82\r
- Width = 41\r
- Height = 13\r
- Caption = 'Address:'\r
- Enabled = False\r
- end\r
- object LabelHTTPURL: TLabel\r
- Tag = 3\r
- Left = 171\r
- Top = 110\r
- Width = 25\r
- Height = 13\r
- Caption = 'URL:'\r
- Enabled = False\r
- end\r
- object RadioButtonUDP: TRadioButton\r
- Tag = 3\r
- Left = 16\r
- Top = 24\r
- Width = 113\r
- Height = 17\r
- Caption = 'UDP/RTP'\r
- Checked = True\r
- TabOrder = 0\r
- TabStop = True\r
- OnEnter = RadioButtonUDPEnter\r
- end\r
- object RadioButtonMulticast: TRadioButton\r
- Tag = 3\r
- Left = 16\r
- Top = 52\r
- Width = 113\r
- Height = 17\r
- Caption = 'UDP/RTP Multicast'\r
- TabOrder = 1\r
- OnEnter = RadioButtonMulticastEnter\r
- end\r
- object RadioButtonCS: TRadioButton\r
- Tag = 3\r
- Left = 16\r
- Top = 80\r
- Width = 113\r
- Height = 17\r
- Caption = 'Channel server'\r
- TabOrder = 2\r
- OnEnter = RadioButtonCSEnter\r
- end\r
- object RadioButtonHTTP: TRadioButton\r
- Tag = 3\r
- Left = 16\r
- Top = 108\r
- Width = 113\r
- Height = 17\r
- Caption = 'HTTP/FTP/MMS'\r
- TabOrder = 3\r
- OnEnter = RadioButtonHTTPEnter\r
- end\r
- object ComboBoxMulticastAddress: TComboBox\r
- Tag = 5\r
- Left = 208\r
- Top = 50\r
- Width = 159\r
- Height = 21\r
- Anchors = [akLeft, akTop, akRight]\r
- Enabled = False\r
- ItemHeight = 13\r
- TabOrder = 5\r
- end\r
- object ComboBoxCSAddress: TComboBox\r
- Tag = 5\r
- Left = 208\r
- Top = 78\r
- Width = 159\r
- Height = 21\r
- Anchors = [akLeft, akTop, akRight]\r
- Enabled = False\r
- ItemHeight = 13\r
- TabOrder = 7\r
- Text = 'vlcs'\r
- Items.Strings = (\r
- 'vlcs')\r
- end\r
- object EditHTTPURL: TEdit\r
- Tag = 5\r
- Left = 208\r
- Top = 106\r
- Width = 263\r
- Height = 21\r
- Anchors = [akLeft, akTop, akRight]\r
- Enabled = False\r
- TabOrder = 9\r
- end\r
- object SpinEditUDPPort: TCSpinEdit\r
- Left = 208\r
- Top = 21\r
- Width = 57\r
- Height = 22\r
- TabStop = True\r
- MaxValue = 65535\r
- ParentColor = False\r
- TabOrder = 4\r
- Value = 1234\r
- end\r
- object SpinEditMulticastPort: TCSpinEdit\r
- Left = 414\r
- Top = 49\r
- Width = 57\r
- Height = 22\r
- TabStop = True\r
- Anchors = [akTop, akRight]\r
- Enabled = False\r
- MaxValue = 65535\r
- ParentColor = False\r
- TabOrder = 6\r
- Value = 1234\r
- end\r
- object SpinEditCSPort: TCSpinEdit\r
- Left = 414\r
- Top = 77\r
- Width = 57\r
- Height = 22\r
- TabStop = True\r
- Anchors = [akTop, akRight]\r
- Enabled = False\r
- MaxValue = 65535\r
- ParentColor = False\r
- TabOrder = 8\r
- Value = 6010\r
- end\r
- end\r
- object ButtonOK: TButton\r
- Tag = 3\r
- Left = 330\r
- Top = 160\r
- Width = 75\r
- Height = 23\r
- Caption = 'OK'\r
- Default = True\r
- ModalResult = 1\r
- TabOrder = 1\r
- OnClick = ButtonOkClick\r
- end\r
- object ButtonCancel: TButton\r
- Tag = 3\r
- Left = 413\r
- Top = 160\r
- Width = 75\r
- Height = 23\r
- Anchors = [akTop, akRight]\r
- Cancel = True\r
- Caption = 'Cancel'\r
- Default = True\r
- ModalResult = 2\r
- TabOrder = 2\r
- OnClick = ButtonCancelClick\r
- end\r
-end\r
+++ /dev/null
-/*****************************************************************************\r
- * network.h: the "network" dialog box\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef networkH\r
-#define networkH\r
-//---------------------------------------------------------------------------\r
-#include <Classes.hpp>\r
-#include <Controls.hpp>\r
-#include <StdCtrls.hpp>\r
-#include <Forms.hpp>\r
-#include <Buttons.hpp>\r
-#include <ComCtrls.hpp>\r
-#include <ExtCtrls.hpp>\r
-#include "CSPIN.h"\r
-//---------------------------------------------------------------------------\r
-\r
-#define NOT( var ) ( (var) ? false : true )\r
-\r
-class TNetworkDlg : public TForm\r
-{\r
-__published: // IDE-managed Components\r
- TGroupBox *GroupBoxMode;\r
- TRadioButton *RadioButtonUDP;\r
- TRadioButton *RadioButtonMulticast;\r
- TRadioButton *RadioButtonCS;\r
- TRadioButton *RadioButtonHTTP;\r
- TLabel *LabelUDPPort;\r
- TLabel *LabelMulticastPort;\r
- TLabel *LabelCSPort;\r
- TLabel *LabelMulticastAddress;\r
- TComboBox *ComboBoxMulticastAddress;\r
- TLabel *LabelCSAddress;\r
- TComboBox *ComboBoxCSAddress;\r
- TEdit *EditHTTPURL;\r
- TLabel *LabelHTTPURL;\r
- TCSpinEdit *SpinEditUDPPort;\r
- TCSpinEdit *SpinEditMulticastPort;\r
- TCSpinEdit *SpinEditCSPort;\r
- TButton *ButtonOK;\r
- TButton *ButtonCancel;\r
- void __fastcall FormShow( TObject *Sender );\r
- void __fastcall FormHide( TObject *Sender );\r
- void __fastcall ButtonCancelClick( TObject *Sender );\r
- void __fastcall ButtonOkClick( TObject *Sender );\r
- void __fastcall RadioButtonUDPEnter( TObject *Sender );\r
- void __fastcall RadioButtonMulticastEnter( TObject *Sender );\r
- void __fastcall RadioButtonCSEnter( TObject *Sender );\r
- void __fastcall RadioButtonHTTPEnter( TObject *Sender );\r
-private: // User declarations\r
- int OldRadioValue;\r
- void __fastcall ChangeEnabled( int i_selected );\r
- intf_thread_t *p_intf;\r
-public: // User declarations\r
- __fastcall TNetworkDlg( TComponent* Owner, intf_thread_t *_p_intf );\r
-};\r
-//---------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * playlist.cpp: Interface for the playlist dialog\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- * \r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#pragma hdrstop\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-\r
-#include "playlist.h"\r
-#include "dragdrop.h"\r
-#include "misc.h"\r
-#include "win32_common.h"\r
-\r
-//---------------------------------------------------------------------------\r
-#pragma resource "*.dfm"\r
-\r
-//---------------------------------------------------------------------------\r
-_fastcall TPlaylistDlg::TPlaylistDlg(\r
- TComponent* Owner, intf_thread_t *_p_intf ) : TForm( Owner )\r
-{\r
- p_intf = _p_intf;\r
- Icon = p_intf->p_sys->p_window->Icon;\r
- Translate( this );\r
-\r
- /* store a pointer to the core playlist */\r
- p_playlist = (playlist_t *)\r
- vlc_object_find( p_intf, VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );\r
- if( p_playlist == NULL )\r
- {\r
- msg_Err( p_intf, "cannot find a playlist object" );\r
- }\r
-\r
- /* drag and drop stuff */\r
-\r
- /* initialize the OLE library */\r
- OleInitialize( NULL );\r
- /* TDropTarget will send the WM_OLEDROP message to the form */\r
- lpDropTarget = (LPDROPTARGET)new TDropTarget( this->Handle );\r
- CoLockObjectExternal( lpDropTarget, true, true );\r
- /* register the listview as a drop target */\r
- RegisterDragDrop( ListViewPlaylist->Handle, lpDropTarget );\r
-}\r
-//---------------------------------------------------------------------------\r
-__fastcall TPlaylistDlg::~TPlaylistDlg()\r
-{\r
- /* release the core playlist */\r
- vlc_object_release( p_playlist );\r
-\r
- /* remove the listview from the list of drop targets */\r
- RevokeDragDrop( ListViewPlaylist->Handle );\r
- lpDropTarget->Release();\r
- CoLockObjectExternal( lpDropTarget, false, true );\r
- /* uninitialize the OLE library */\r
- OleUninitialize();\r
-}\r
-//---------------------------------------------------------------------------\r
-char * __fastcall TPlaylistDlg::rindex( char *s, char c )\r
-{\r
- char *ref = s;\r
-\r
- s = s + strlen( s ) - 2;\r
- while( ( s > ref ) && ( *s != c ) )\r
- {\r
- s--;\r
- }\r
- if( *s == c )\r
- {\r
- return( s );\r
- }\r
- else\r
- {\r
- return( NULL );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * External drop handling\r
- *****************************************************************************/\r
-void __fastcall TPlaylistDlg::OnDrop( TMessage &Msg )\r
-{\r
- p_intf->p_sys->p_window->OnDrop( Msg );\r
-}\r
-//--------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * Event handlers\r
- ****************************************************************************/\r
-void __fastcall TPlaylistDlg::FormShow( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_window->PlaylistAction->Checked = true;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::FormHide( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_window->PlaylistAction->Checked = false;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::ButtonOkClick( TObject *Sender )\r
-{\r
- Hide();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::PlayStreamActionExecute( TObject *Sender )\r
-{\r
- TListItem *Item;\r
- TListItem *ItemStart;\r
- TItemStates Focused;\r
-\r
- if( p_playlist == NULL )\r
- return;\r
-\r
- /* search the selected item */\r
- if( ListViewPlaylist->SelCount > 0 )\r
- {\r
- if( ListViewPlaylist->SelCount == 1 )\r
- {\r
- Item = ListViewPlaylist->Selected;\r
- }\r
- else\r
- {\r
- Focused << isFocused;\r
- ItemStart = ListViewPlaylist->Items->Item[0];\r
-\r
- Item = ListViewPlaylist->GetNextItem( ItemStart, sdAll, Focused );\r
- }\r
-\r
- playlist_Goto( p_playlist, Item->Index );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::ListViewPlaylistKeyDown( TObject *Sender,\r
- WORD &Key, TShiftState Shift )\r
-{\r
- /* 'suppr' or 'backspace' */\r
- if( ( Key == VK_DELETE ) || ( Key == VK_BACK ) )\r
- {\r
- DeleteSelectionActionExecute( Sender );\r
- }\r
-\r
- /* 'enter' */\r
- if( Key == VK_RETURN )\r
- {\r
- PlayStreamActionExecute( Sender );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::ListViewPlaylistCustomDrawItem(\r
- TCustomListView *Sender, TListItem *Item, TCustomDrawState State,\r
- bool &DefaultDraw)\r
-{\r
- TRect Rect = Item->DisplayRect( drBounds );\r
-\r
- /* set the background color */\r
- if( Item->Index == p_intf->p_sys->i_playing )\r
- Sender->Canvas->Brush->Color = clRed;\r
- else\r
- Sender->Canvas->Brush->Color = clWhite;\r
-\r
- Sender->Canvas->FillRect( Rect );\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * Menu and popup callbacks\r
- ****************************************************************************/\r
-void __fastcall TPlaylistDlg::MenuAddFileClick( TObject *Sender )\r
-{\r
- p_intf->p_sys->b_play_when_adding =\r
- (vlc_bool_t)config_GetInt( p_intf, "enqueue" );\r
- p_intf->p_sys->p_window->OpenFileActionExecute( Sender );\r
- p_intf->p_sys->b_play_when_adding = VLC_TRUE;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::MenuAddDiscClick( TObject *Sender )\r
-{\r
- p_intf->p_sys->b_play_when_adding =\r
- (vlc_bool_t)config_GetInt( p_intf, "enqueue" );\r
- p_intf->p_sys->p_window->OpenDiscActionExecute( Sender );\r
- p_intf->p_sys->b_play_when_adding = VLC_TRUE;\r
- (vlc_bool_t)config_GetInt( p_intf, "enqueue" );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::MenuAddNetClick( TObject *Sender )\r
-{\r
- p_intf->p_sys->b_play_when_adding =\r
- (vlc_bool_t)config_GetInt( p_intf, "enqueue" );\r
- p_intf->p_sys->p_window->NetworkStreamActionExecute( Sender );\r
- p_intf->p_sys->b_play_when_adding = VLC_TRUE;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::MenuAddUrlClick( TObject *Sender )\r
-{\r
- /* TODO */\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::DeleteSelectionActionExecute( TObject *Sender )\r
-{\r
- /* user wants to delete a file in the queue */\r
- int i_pos;\r
-\r
- /* lock the struct */\r
- vlc_mutex_lock( &p_intf->change_lock );\r
-\r
- /* delete the items from the last to the first */\r
- for( i_pos = p_playlist->i_size - 1; i_pos >= 0; i_pos-- )\r
- {\r
- if( ListViewPlaylist->Items->Item[i_pos]->Selected )\r
- {\r
- DeleteItem( i_pos );\r
- }\r
- }\r
-\r
- /* rebuild the ListView */\r
- UpdateGrid();\r
-\r
- vlc_mutex_unlock( &p_intf->change_lock );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::DeleteAllActionExecute( TObject *Sender )\r
-{\r
- int i_pos;\r
-\r
- /* lock the struct */\r
- vlc_mutex_lock( &p_intf->change_lock );\r
-\r
- /* delete the items from the last to the first */\r
- for( i_pos = p_playlist->i_size - 1; i_pos >= 0; i_pos-- )\r
- {\r
- DeleteItem( i_pos );\r
- }\r
-\r
- /* Rebuild the ListView */\r
- UpdateGrid();\r
-\r
- vlc_mutex_unlock( &p_intf->change_lock );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::InvertSelectionActionExecute( TObject *Sender )\r
-{\r
-#define NOT( var ) ( (var) ? false : true )\r
- int i_pos;\r
- TListItems *Items = ListViewPlaylist->Items;\r
-\r
- /* delete the items from the last to the first */\r
- for( i_pos = p_playlist->i_size - 1; i_pos >= 0; i_pos-- )\r
- {\r
- Items->Item[i_pos]->Selected = NOT( Items->Item[i_pos]->Selected );\r
- }\r
-#undef NOT\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::CropSelectionActionExecute( TObject *Sender )\r
-{\r
- InvertSelectionActionExecute( Sender );\r
- DeleteSelectionActionExecute( Sender );\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * Useful functions, needed by the event handlers or by other windows\r
- ****************************************************************************/\r
-void __fastcall TPlaylistDlg::Add( AnsiString FileName, int i_mode, int i_pos )\r
-{\r
- if( p_playlist == NULL )\r
- return;\r
-\r
- playlist_Add( p_playlist, FileName.c_str(), i_mode, i_pos );\r
- \r
- /* refresh the display */\r
- UpdateGrid();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::Stop()\r
-{\r
- if( p_playlist == NULL )\r
- return;\r
-\r
- playlist_Stop( p_playlist );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::Play()\r
-{\r
- if( p_playlist == NULL )\r
- return;\r
-\r
- if ( p_playlist->i_size )\r
- playlist_Play( p_playlist );\r
- else\r
- Show();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::Pause()\r
-{\r
- if( p_intf->p_sys->p_input != NULL )\r
- {\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_PAUSE );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::Slow()\r
-{\r
- if( p_intf->p_sys->p_input != NULL )\r
- {\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_SLOWER );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::Fast()\r
-{\r
- if( p_intf->p_sys->p_input != NULL )\r
- {\r
- input_SetStatus( p_intf->p_sys->p_input, INPUT_STATUS_FASTER );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::UpdateGrid()\r
-{\r
- int i_dummy;\r
- char *FileName;\r
- TListItem *Item;\r
-\r
- ListViewPlaylist->Items->BeginUpdate();\r
-\r
- /* Clear the list... */\r
- ListViewPlaylist->Items->Clear();\r
-\r
- /* ...and rebuild it */\r
- for( i_dummy = 0; i_dummy < p_playlist->i_size; i_dummy++ )\r
- {\r
-#ifdef WIN32\r
- /* Position of the last '\' in the string */\r
- FileName = rindex( p_playlist->pp_items[i_dummy]->psz_name, '\\' );\r
-#else\r
- /* Position of the last '/' in the string */\r
- FileName = rindex( p_playlist->pp_items[i_dummy]->psz_name, '/' );\r
-#endif\r
- if( ( FileName == NULL ) || ( *(FileName + 1) == '\0' ) )\r
- {\r
- FileName = p_playlist->pp_items[i_dummy]->psz_name;\r
- }\r
- else\r
- {\r
- /* Skip leading '\' or '/' */\r
- FileName++;\r
- }\r
-\r
- Item = ListViewPlaylist->Items->Add();\r
- Item->Caption = FileName;\r
- Item->SubItems->Add( "no info" );\r
- }\r
- /* TODO: Set background color ? */\r
-\r
- ListViewPlaylist->Items->EndUpdate();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::Manage()\r
-{\r
- if( p_playlist == NULL )\r
- return;\r
-\r
- vlc_mutex_lock( &p_playlist->object_lock );\r
-\r
- if( p_intf->p_sys->i_playing != p_playlist->i_index )\r
- {\r
- p_intf->p_sys->i_playing = p_playlist->i_index;\r
-\r
- /* update the background color */\r
- UpdateGrid();\r
- }\r
-\r
- vlc_mutex_unlock( &p_playlist->object_lock );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::DeleteItem( int i_pos )\r
-{\r
- if( p_playlist == NULL )\r
- return;\r
-\r
- playlist_Delete( p_playlist, i_pos );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::Previous()\r
-{\r
- if( p_playlist == NULL )\r
- return;\r
-\r
- playlist_Prev( p_playlist );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::Next()\r
-{\r
- if( p_playlist == NULL )\r
- return;\r
-\r
- playlist_Next( p_playlist );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::MenuFileCloseClick( TObject *Sender )\r
-{\r
- Hide();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPlaylistDlg::MenuFileOpenClick( TObject *Sender )\r
-{\r
- if( PlaylistOpenDlg->Execute() )\r
- {\r
-// playlist_LoadFile( p_playlist , PlaylistOpenDlg->FileName.c_str() );\r
- UpdateGrid();\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-void __fastcall TPlaylistDlg::MenuFileSaveClick( TObject *Sender )\r
-{\r
- if( PlaylistSaveDlg->Execute() )\r
- {\r
-// playlist_SaveFile( p_playlist , PlaylistSaveDlg->FileName.c_str() );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
+++ /dev/null
-object PlaylistDlg: TPlaylistDlg\r
- Tag = 3\r
- Left = 470\r
- Top = 197\r
- Width = 335\r
- Height = 435\r
- Caption = 'Playlist'\r
- Color = clBtnFace\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clWindowText\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- Menu = MainMenuPlaylist\r
- OldCreateOrder = False\r
- OnHide = FormHide\r
- OnShow = FormShow\r
- PixelsPerInch = 96\r
- TextHeight = 13\r
- object ListViewPlaylist: TListView\r
- Tag = 3\r
- Left = 11\r
- Top = 10\r
- Width = 305\r
- Height = 330\r
- Anchors = [akLeft, akTop, akRight, akBottom]\r
- Columns = <\r
- item\r
- Caption = 'Filename'\r
- Width = 200\r
- end\r
- item\r
- Alignment = taCenter\r
- Caption = 'Duration'\r
- Width = 100\r
- end>\r
- HideSelection = False\r
- MultiSelect = True\r
- ReadOnly = True\r
- RowSelect = True\r
- PopupMenu = PopupMenuPlaylist\r
- TabOrder = 1\r
- ViewStyle = vsReport\r
- OnCustomDrawItem = ListViewPlaylistCustomDrawItem\r
- OnDblClick = PlayStreamActionExecute\r
- OnKeyDown = ListViewPlaylistKeyDown\r
- end\r
- object ButtonOK: TButton\r
- Tag = 3\r
- Left = 75\r
- Top = 352\r
- Width = 177\r
- Height = 25\r
- Anchors = [akLeft, akRight, akBottom]\r
- Caption = 'OK'\r
- Default = True\r
- ModalResult = 1\r
- TabOrder = 0\r
- OnClick = ButtonOkClick\r
- end\r
- object MainMenuPlaylist: TMainMenu\r
- Left = 8\r
- Top = 8\r
- object MenuAdd: TMenuItem\r
- Tag = 3\r
- Caption = '&Add'\r
- object MenuAddFile: TMenuItem\r
- Tag = 3\r
- Caption = '&File...'\r
- OnClick = MenuAddFileClick\r
- end\r
- object MenuAddDisc: TMenuItem\r
- Tag = 3\r
- Caption = '&Disc...'\r
- OnClick = MenuAddDiscClick\r
- end\r
- object MenuAddNet: TMenuItem\r
- Tag = 3\r
- Caption = '&Network...'\r
- OnClick = MenuAddNetClick\r
- end\r
- object MenuAddUrl: TMenuItem\r
- Tag = 3\r
- Caption = '&Url'\r
- Enabled = False\r
- OnClick = MenuAddUrlClick\r
- end\r
- end\r
- object MenuDelete: TMenuItem\r
- Tag = 3\r
- Caption = '&Delete'\r
- object MenuDeleteAll: TMenuItem\r
- Tag = 3\r
- Action = DeleteAllAction\r
- end\r
- object MenuDeleteSelected: TMenuItem\r
- Tag = 3\r
- Action = DeleteSelectionAction\r
- Caption = '&Selection'\r
- end\r
- end\r
- object MenuSelection: TMenuItem\r
- Tag = 3\r
- Caption = '&Selection'\r
- object MenuSelectionCrop: TMenuItem\r
- Tag = 3\r
- Action = CropSelectionAction\r
- end\r
- object MenuSelectionInvert: TMenuItem\r
- Tag = 3\r
- Action = InvertSelectionAction\r
- end\r
- end\r
- end\r
- object PopupMenuPlaylist: TPopupMenu\r
- Left = 40\r
- Top = 8\r
- object PopupPlay: TMenuItem\r
- Tag = 3\r
- Action = PlayStreamAction\r
- end\r
- object N1: TMenuItem\r
- Caption = '-'\r
- end\r
- object PopupInvertSelection: TMenuItem\r
- Tag = 3\r
- Action = InvertSelectionAction\r
- Caption = '&Invert selection'\r
- end\r
- object PopupCropSelection: TMenuItem\r
- Tag = 3\r
- Action = CropSelectionAction\r
- Caption = '&Crop selection'\r
- end\r
- object N2: TMenuItem\r
- Caption = '-'\r
- end\r
- object PopupDeleteSelected: TMenuItem\r
- Tag = 3\r
- Action = DeleteSelectionAction\r
- Caption = '&Delete selection'\r
- end\r
- object PopupDeleteAll: TMenuItem\r
- Tag = 3\r
- Action = DeleteAllAction\r
- Caption = 'Delete &all'\r
- end\r
- end\r
- object ActionList1: TActionList\r
- Left = 72\r
- Top = 8\r
- object InvertSelectionAction: TAction\r
- Tag = 3\r
- Caption = 'Invert'\r
- Hint = 'Invert selection'\r
- OnExecute = InvertSelectionActionExecute\r
- end\r
- object CropSelectionAction: TAction\r
- Tag = 3\r
- Caption = 'Crop'\r
- Hint = 'Crop selection'\r
- OnExecute = CropSelectionActionExecute\r
- end\r
- object DeleteSelectionAction: TAction\r
- Tag = 3\r
- Caption = 'Delete'\r
- Hint = 'Delete selection'\r
- OnExecute = DeleteSelectionActionExecute\r
- end\r
- object DeleteAllAction: TAction\r
- Tag = 3\r
- Caption = 'All'\r
- Hint = 'Delete all items'\r
- OnExecute = DeleteAllActionExecute\r
- end\r
- object PlayStreamAction: TAction\r
- Tag = 3\r
- Caption = 'Play'\r
- Hint = 'Play the selected stream'\r
- OnExecute = PlayStreamActionExecute\r
- end\r
- end\r
- object PlaylistOpenDlg: TOpenDialog\r
- Filter = 'All files(*.*)|*.*'\r
- Options = [ofHideReadOnly, ofPathMustExist, ofFileMustExist, ofEnableSizing]\r
- Left = 136\r
- Top = 8\r
- end\r
- object PlaylistSaveDlg: TSaveDialog\r
- Filter = 'All files(*.*)|*.*'\r
- Options = [ofOverwritePrompt, ofHideReadOnly, ofPathMustExist, ofEnableSizing]\r
- Left = 104\r
- Top = 8\r
- end\r
-end\r
+++ /dev/null
-/*****************************************************************************\r
- * playlist.h: Interface for the playlist dialog\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- * \r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef playlistH\r
-#define playlistH\r
-//---------------------------------------------------------------------------\r
-#include <Classes.hpp>\r
-#include <Controls.hpp>\r
-#include <StdCtrls.hpp>\r
-#include <Forms.hpp>\r
-#include <Buttons.hpp>\r
-#include <Menus.hpp>\r
-#include <Grids.hpp>\r
-#include <ComCtrls.hpp>\r
-#include <ActnList.hpp>\r
-\r
-#include <oleidl.h>\r
-#include <Dialogs.hpp> /* for drag and drop */\r
-\r
-/*****************************************************************************\r
- * This message is sent to the controls registered as drop targets\r
- *****************************************************************************/\r
-#define WM_OLEDROP WM_USER + 1\r
-\r
-//---------------------------------------------------------------------------\r
-class TPlaylistDlg : public TForm\r
-{\r
-__published: // IDE-managed Components\r
- TMainMenu *MainMenuPlaylist;\r
- TMenuItem *MenuAdd;\r
- TMenuItem *MenuAddFile;\r
- TMenuItem *MenuAddDisc;\r
- TMenuItem *MenuAddNet;\r
- TMenuItem *MenuAddUrl;\r
- TMenuItem *MenuDelete;\r
- TMenuItem *MenuDeleteAll;\r
- TMenuItem *MenuDeleteSelected;\r
- TMenuItem *MenuSelection;\r
- TMenuItem *MenuSelectionCrop;\r
- TMenuItem *MenuSelectionInvert;\r
- TListView *ListViewPlaylist;\r
- TPopupMenu *PopupMenuPlaylist;\r
- TMenuItem *PopupPlay;\r
- TMenuItem *N1;\r
- TMenuItem *PopupDeleteAll;\r
- TMenuItem *PopupDeleteSelected;\r
- TMenuItem *N2;\r
- TMenuItem *PopupInvertSelection;\r
- TMenuItem *PopupCropSelection;\r
- TActionList *ActionList1;\r
- TAction *InvertSelectionAction;\r
- TAction *CropSelectionAction;\r
- TAction *DeleteSelectionAction;\r
- TAction *DeleteAllAction;\r
- TAction *PlayStreamAction;\r
- TOpenDialog *PlaylistOpenDlg;\r
- TSaveDialog *PlaylistSaveDlg;\r
- TButton *ButtonOK;\r
- void __fastcall FormShow( TObject *Sender );\r
- void __fastcall FormHide( TObject *Sender );\r
- void __fastcall ButtonOkClick( TObject *Sender );\r
- void __fastcall ListViewPlaylistKeyDown( TObject *Sender, WORD &Key,\r
- TShiftState Shift );\r
- void __fastcall ListViewPlaylistCustomDrawItem( TCustomListView *Sender,\r
- TListItem *Item, TCustomDrawState State, bool &DefaultDraw );\r
- void __fastcall MenuAddFileClick( TObject *Sender );\r
- void __fastcall MenuAddDiscClick( TObject *Sender );\r
- void __fastcall MenuAddNetClick( TObject *Sender );\r
- void __fastcall MenuAddUrlClick( TObject *Sender );\r
- void __fastcall InvertSelectionActionExecute( TObject *Sender );\r
- void __fastcall CropSelectionActionExecute( TObject *Sender );\r
- void __fastcall DeleteSelectionActionExecute( TObject *Sender );\r
- void __fastcall DeleteAllActionExecute( TObject *Sender );\r
- void __fastcall PlayStreamActionExecute( TObject *Sender );\r
- void __fastcall MenuFileCloseClick( TObject *Sender );\r
- void __fastcall MenuFileOpenClick( TObject *Sender );\r
- void __fastcall MenuFileSaveClick( TObject *Sender );\r
-private: // User declarations\r
- char * __fastcall rindex( char *s, char c );\r
- intf_thread_t *p_intf;\r
- playlist_t *p_playlist;\r
- /* drag and drop handling */\r
- LPDROPTARGET lpDropTarget;\r
- BEGIN_MESSAGE_MAP\r
- MESSAGE_HANDLER( WM_OLEDROP, TMessage, OnDrop )\r
- END_MESSAGE_MAP( TForm )\r
- void __fastcall OnDrop( TMessage &Msg );\r
-public: // User declarations\r
- __fastcall TPlaylistDlg( TComponent* Owner, intf_thread_t *_p_intf );\r
- __fastcall ~TPlaylistDlg();\r
- void __fastcall Add( AnsiString FileName, int i_mode, int i_pos );\r
- void __fastcall Stop();\r
- void __fastcall Play();\r
- void __fastcall Pause();\r
- void __fastcall Slow();\r
- void __fastcall Fast();\r
- void __fastcall UpdateGrid();\r
- void __fastcall Manage();\r
- void __fastcall DeleteItem( int i_pos );\r
- void __fastcall Previous();\r
- void __fastcall Next();\r
-};\r
-//---------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * preferences.cpp: the "Preferences" dialog box\r
- *****************************************************************************\r
- * Copyright (C) 2002-2003 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- * Boris Dores <babal@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#pragma hdrstop\r
-\r
-#include <stdlib.h> /* malloc(), free() */\r
-#include <string.h> /* strcmp */\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-\r
-#include "preferences.h"\r
-#include "win32_common.h"\r
-\r
-//---------------------------------------------------------------------------\r
-//#pragma package(smart_init)\r
-#pragma link "CSPIN"\r
-#pragma resource "*.dfm"\r
-\r
-/****************************************************************************\r
- * A THintWindow with a limited width\r
- ****************************************************************************/\r
-void __fastcall TNarrowHintWindow::ActivateHint( const Windows::TRect &Rect,\r
- const System::AnsiString AHint )\r
-{\r
- TRect NarrowRect = CalcHintRect( 300, AHint, NULL );\r
- NarrowRect.Left = Rect.Left;\r
- NarrowRect.Top = Rect.Top;\r
- NarrowRect.Right += Rect.Left;\r
- NarrowRect.Bottom += Rect.Top;\r
- THintWindow::ActivateHint( NarrowRect, AHint );\r
-}\r
-\r
-/****************************************************************************\r
- * Functions to help components creation\r
- ****************************************************************************/\r
-__fastcall TPanelPref::TPanelPref( TComponent* Owner,\r
- module_config_t *_p_config, intf_thread_t *_p_intf ) : TPanel( Owner )\r
-{\r
- p_intf = _p_intf;\r
- p_config = _p_config;\r
- BevelInner = bvNone;\r
- BevelOuter = bvNone;\r
- BorderStyle = bsNone;\r
-}\r
-//---------------------------------------------------------------------------\r
-TExtCheckListBox * __fastcall TPanelPref::CreateExtCheckListBox(\r
- TWinControl *Parent, int Left, int Width, int Top, int Height )\r
-{\r
- TExtCheckListBox *ExtCheckListBox = new TExtCheckListBox( Parent );\r
- ExtCheckListBox->Parent = Parent;\r
- ExtCheckListBox->Left = Left;\r
- ExtCheckListBox->Width = Width;\r
- ExtCheckListBox->Top = Top;\r
- ExtCheckListBox->Height = Height;\r
- return ExtCheckListBox;\r
-}\r
-//---------------------------------------------------------------------------\r
-TButton * __fastcall TPanelPref::CreateButton( TWinControl *Parent,\r
- int Left, int Width, int Top, int Height, AnsiString Caption )\r
-{\r
- TButton *Button = new TButton( Parent );\r
- Button->Parent = Parent;\r
- Button->Left = Left;\r
- Button->Width = Width;\r
- Button->Top = Top;\r
- Button->Height = Height;\r
- Button->Caption = Caption;\r
- return Button;\r
-}\r
-//---------------------------------------------------------------------------\r
-TCheckBox * __fastcall TPanelPref::CreateCheckBox( TWinControl *Parent,\r
- int Left, int Width, int Top, int Height, AnsiString Caption )\r
-{\r
- TCheckBox *CheckBox = new TCheckBox( Parent );\r
- CheckBox->Parent = Parent;\r
- CheckBox->Left = Left;\r
- CheckBox->Width = Width;\r
- CheckBox->Top = Top;\r
- CheckBox->Height = Height;\r
- CheckBox->Caption = Caption;\r
- return CheckBox;\r
-}\r
-//---------------------------------------------------------------------------\r
-TLabel * __fastcall TPanelPref::CreateLabel( TWinControl *Parent,\r
- int Left, int Width, int Top, int Height, AnsiString Caption,\r
- bool WordWrap )\r
-{\r
- TLabel *Label = new TLabel( Parent );\r
- Label->Parent = Parent;\r
- Label->Caption = Caption;\r
- Label->Left = Left;\r
- Label->Width = Width;\r
- Label->Top = Top;\r
- Label->Height = Height;\r
- Label->WordWrap = WordWrap;\r
- return Label;\r
-}\r
-//---------------------------------------------------------------------------\r
-TEdit * __fastcall TPanelPref::CreateEdit( TWinControl *Parent,\r
- int Left, int Width, int Top, int Height, AnsiString Text )\r
-{\r
- TEdit *Edit = new TEdit( Parent );\r
- Edit->Parent = Parent;\r
- Edit->Left = Left;\r
- Edit->Width = Width;\r
- Edit->Top = Top;\r
- Edit->Height = Height;\r
- Edit->Text = Text;\r
- return Edit;\r
-}\r
-//---------------------------------------------------------------------------\r
-TCSpinEdit * __fastcall TPanelPref::CreateSpinEdit( TWinControl *Parent,\r
- int Left, int Width, int Top, int Height,\r
- long Min, long Max, long Value )\r
-{\r
- TCSpinEdit *SpinEdit = new TCSpinEdit( Parent );\r
- SpinEdit->Parent = Parent;\r
- SpinEdit->Left = Left;\r
- SpinEdit->Width = Width;\r
- SpinEdit->Top = Top;\r
- SpinEdit->Height = Height;\r
- SpinEdit->MinValue = Min;\r
- SpinEdit->MaxValue = Max;\r
- SpinEdit->Value = Value;\r
- return SpinEdit;\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-#define LIBWIN32_PREFSIZE_VPAD 4\r
-#define LIBWIN32_PREFSIZE_HPAD 4\r
-#define LIBWIN32_PREFSIZE_LEFT 16\r
-#define LIBWIN32_PREFSIZE_EDIT_LEFT (LIBWIN32_PREFSIZE_LEFT+32)\r
-#define LIBWIN32_PREFSIZE_WIDTH 375\r
-#define LIBWIN32_PREFSIZE_EDIT_WIDTH (LIBWIN32_PREFSIZE_WIDTH-32)\r
-#define LIBWIN32_PREFSIZE_BUTTON_WIDTH 150\r
-#define LIBWIN32_PREFSIZE_SPINEDIT_WIDTH 100\r
-#define LIBWIN32_PREFSIZE_RIGHT (LIBWIN32_PREFSIZE_LEFT+LIBWIN32_PREFSIZE_WIDTH)\r
-#define LIBWIN32_PREFSIZE_BUTTON_HEIGHT 23\r
-#define LIBWIN32_PREFSIZE_LABEL_HEIGHT 26\r
-#define LIBWIN32_PREFSIZE_CHECKLISTBOX_HEIGHT 120\r
-#define LIBWIN32_PREFSIZE_EDIT_HEIGHT 21\r
-#define LIBWIN32_PREFSIZE_CHECKBOX_HEIGHT 17\r
-#define LIBWIN32_PREFSIZE_SPINEDIT_HEIGHT 21\r
-\r
-/****************************************************************************\r
- * Panel for module management\r
- ****************************************************************************/\r
-__fastcall TPanelPlugin::TPanelPlugin( TComponent* Owner,\r
- module_config_t *p_config, intf_thread_t *_p_intf,\r
- TStringList * ModuleNames, bool b_multi_plugins )\r
- : TPanelPref( Owner, p_config, _p_intf )\r
-{\r
- this->b_multi_plugins = b_multi_plugins;\r
- this->ModuleNames = ModuleNames;\r
-\r
- /* init configure button */\r
- ButtonConfig = CreateButton( this,\r
- LIBWIN32_PREFSIZE_RIGHT - LIBWIN32_PREFSIZE_BUTTON_WIDTH,\r
- LIBWIN32_PREFSIZE_BUTTON_WIDTH,\r
- LIBWIN32_PREFSIZE_VPAD,\r
- LIBWIN32_PREFSIZE_BUTTON_HEIGHT,\r
- "Configure..." );\r
- ButtonConfig->Enabled = false;\r
- ButtonConfig->OnClick = ButtonConfigClick;\r
-\r
- /* init label */\r
- AnsiString Text = AnsiString( p_config->psz_text ) + ":";\r
- Label = CreateLabel( this,\r
- LIBWIN32_PREFSIZE_LEFT,\r
- LIBWIN32_PREFSIZE_RIGHT - LIBWIN32_PREFSIZE_BUTTON_WIDTH\r
- - LIBWIN32_PREFSIZE_HPAD,\r
- LIBWIN32_PREFSIZE_VPAD,\r
- LIBWIN32_PREFSIZE_LABEL_HEIGHT,\r
- Text.c_str(), true );\r
-\r
- /* vertical alignement */\r
- if ( ButtonConfig->Height > Label->Height )\r
- Label->Top += ( ButtonConfig->Height - Label->Height ) / 2;\r
- else\r
- ButtonConfig->Top += ( Label->Height - ButtonConfig->Height ) / 2;\r
-\r
- /* init checklistbox */\r
- ExtCheckListBox = CreateExtCheckListBox( this,\r
- LIBWIN32_PREFSIZE_EDIT_LEFT,\r
- LIBWIN32_PREFSIZE_EDIT_WIDTH,\r
- max( Label->Top + Label->Height , ButtonConfig->Top\r
- + ButtonConfig->Height ) + LIBWIN32_PREFSIZE_VPAD,\r
- LIBWIN32_PREFSIZE_CHECKLISTBOX_HEIGHT );\r
- ExtCheckListBox->OnClick = CheckListBoxClick;\r
- ExtCheckListBox->OnClickCheck = CheckListBoxClickCheck;\r
- ExtCheckListBox->Hint = p_config->psz_longtext;\r
- ExtCheckListBox->ShowHint = true;\r
-\r
- /* init up and down buttons */\r
- if ( b_multi_plugins )\r
- {\r
- ButtonUp = CreateButton ( this, LIBWIN32_PREFSIZE_LEFT,\r
- ExtCheckListBox->Left - LIBWIN32_PREFSIZE_HPAD\r
- - LIBWIN32_PREFSIZE_LEFT,\r
- ExtCheckListBox->Top + ( ExtCheckListBox->Height\r
- - 2*LIBWIN32_PREFSIZE_BUTTON_HEIGHT ) / 3,\r
- LIBWIN32_PREFSIZE_BUTTON_HEIGHT,\r
- "+" );\r
- ButtonUp->Enabled = false;\r
- ButtonUp->OnClick = ButtonUpClick;\r
- ButtonUp->Hint = "Raise the plugin priority";\r
- ButtonUp->ShowHint = true;\r
-\r
- ButtonDown = CreateButton ( this, LIBWIN32_PREFSIZE_LEFT,\r
- ExtCheckListBox->Left - LIBWIN32_PREFSIZE_HPAD\r
- - LIBWIN32_PREFSIZE_LEFT,\r
- ExtCheckListBox->Top + ( ExtCheckListBox->Height\r
- - 2*LIBWIN32_PREFSIZE_BUTTON_HEIGHT ) * 2 / 3\r
- + LIBWIN32_PREFSIZE_BUTTON_HEIGHT,\r
- LIBWIN32_PREFSIZE_BUTTON_HEIGHT,\r
- "-" );\r
- ButtonDown->Enabled = false;\r
- ButtonDown->OnClick = ButtonDownClick;\r
- ButtonDown->Hint = "Decrease the plugin priority";\r
- ButtonDown->ShowHint = true;\r
- }\r
- else\r
- {\r
- ButtonUp = NULL;\r
- ButtonDown = NULL;\r
- }\r
-\r
- /* panel height */\r
- Height = ExtCheckListBox->Top + ExtCheckListBox->Height\r
- + LIBWIN32_PREFSIZE_VPAD;\r
-};\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelPlugin::CheckListBoxClick( TObject *Sender )\r
-{\r
- module_t *p_parser;\r
- vlc_list_t *p_list;\r
- int i_index;\r
-\r
- /* check that the click is valid (we are on an item, and the click\r
- * started on an item */\r
- if( ExtCheckListBox->ItemIndex == -1 )\r
- {\r
- if ( ButtonUp != NULL ) ButtonUp->Enabled = false;\r
- if ( ButtonDown != NULL ) ButtonDown->Enabled = false;\r
- return;\r
- }\r
-\r
- AnsiString Name = ModuleNames->Strings\r
- [ExtCheckListBox->GetItemData(ExtCheckListBox->ItemIndex)];\r
- if( Name == "" )\r
- return;\r
-\r
- /* enable up and down buttons */\r
- if ( b_multi_plugins && ButtonUp != NULL && ButtonDown != NULL )\r
- {\r
- if ( ExtCheckListBox->ItemIndex == 0 )\r
- ButtonUp->Enabled = false; else ButtonUp->Enabled = true;\r
- if ( ExtCheckListBox->ItemIndex\r
- == ExtCheckListBox->Items->Count - 1 )\r
- ButtonDown->Enabled = false; else ButtonDown->Enabled = true;\r
- }\r
-\r
- /* look for module 'Name' */\r
- p_list = vlc_list_find( p_intf, VLC_OBJECT_MODULE, FIND_ANYWHERE );\r
-\r
- for( i_index = 0; i_index < p_list->i_count; i_index++ )\r
- {\r
- p_parser = (module_t *)p_list->p_values[i_index].p_object ;\r
-\r
- if( strcmp( p_parser->psz_object_name, Name.c_str() ) == 0 )\r
- {\r
- ModuleSelected = p_parser;\r
- ButtonConfig->Enabled =\r
- p_parser->i_config_items ? true : false;\r
-\r
- break;\r
- }\r
- }\r
- vlc_list_release( p_list );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelPlugin::CheckListBoxClickCheck( TObject *Sender )\r
-{\r
- if ( ! b_multi_plugins )\r
- {\r
- /* one item maximum must be checked */\r
- if( ExtCheckListBox->Checked[ExtCheckListBox->ItemIndex] )\r
- {\r
- for( int item = 0; item < ExtCheckListBox->Items->Count; item++ )\r
- {\r
- if( item != ExtCheckListBox->ItemIndex )\r
- {\r
- ExtCheckListBox->Checked[item] = false;\r
- }\r
- }\r
- }\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelPlugin::ButtonConfigClick( TObject *Sender )\r
-{\r
- p_intf->p_sys->p_window->\r
- CreatePreferences( ModuleSelected->psz_object_name );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelPlugin::ButtonUpClick( TObject *Sender )\r
-{\r
- if( ExtCheckListBox->ItemIndex != -1 && ExtCheckListBox->ItemIndex > 0 )\r
- {\r
- int Pos = ExtCheckListBox->ItemIndex;\r
- ExtCheckListBox->Items->Move ( Pos , Pos - 1 );\r
- ExtCheckListBox->ItemIndex = Pos - 1;\r
- CheckListBoxClick ( Sender );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelPlugin::ButtonDownClick( TObject *Sender )\r
-{\r
- if( ExtCheckListBox->ItemIndex != -1\r
- && ExtCheckListBox->ItemIndex < ExtCheckListBox->Items->Count - 1 )\r
- {\r
- int Pos = ExtCheckListBox->ItemIndex;\r
- ExtCheckListBox->Items->Move ( Pos , Pos + 1 );\r
- ExtCheckListBox->ItemIndex = Pos + 1;\r
- CheckListBoxClick ( Sender );\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelPlugin::SetValue ( AnsiString Values )\r
-{\r
- int TopChecked = 0;\r
- while ( Values.Length() != 0 )\r
- {\r
- AnsiString Value;\r
-\r
- int NextValue = Values.Pos ( "," );\r
- if ( NextValue == 0 )\r
- {\r
- Value = Values.Trim();\r
- Values = "";\r
- }\r
- else\r
- {\r
- Value = Values.SubString(1,NextValue-1).Trim();\r
- Values = Values.SubString ( NextValue + 1\r
- , Values.Length() - NextValue );\r
- }\r
-\r
- if ( Value.Length() > 0 )\r
- {\r
- for ( int i = TopChecked; i < ExtCheckListBox->Items->Count; i++ )\r
- {\r
- if ( ModuleNames->Strings[ExtCheckListBox->GetItemData(i)]\r
- == Value )\r
- {\r
- ExtCheckListBox->Checked[i] = true;\r
- ExtCheckListBox->Items->Move ( i , TopChecked );\r
- TopChecked++;\r
- }\r
- }\r
- }\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelPlugin::UpdateChanges()\r
-{\r
- AnsiString Name = "";\r
-\r
- /* find the selected plugin (if any) */\r
- for( int item = 0; item < ExtCheckListBox->Items->Count; item++ )\r
- {\r
- if( ExtCheckListBox->Checked[item] )\r
- {\r
- if ( Name.Length() == 0 )\r
- {\r
- Name = ModuleNames->Strings\r
- [ExtCheckListBox->GetItemData(item)];\r
- }\r
- else\r
- {\r
- Name = Name + "," + ModuleNames->Strings\r
- [ExtCheckListBox->GetItemData(item)];\r
- }\r
- }\r
- }\r
-\r
- config_PutPsz( p_intf, p_config->psz_name,\r
- Name.Length() ? Name.c_str() : NULL );\r
-}\r
-\r
-\r
-/****************************************************************************\r
- * Panel for string management\r
- ****************************************************************************/\r
-__fastcall TPanelString::TPanelString( TComponent* Owner,\r
- module_config_t *p_config, intf_thread_t *_p_intf )\r
- : TPanelPref( Owner, p_config, _p_intf )\r
-{\r
- /* init description label */\r
- AnsiString Text = AnsiString ( p_config->psz_text ) + ":";\r
- Label = CreateLabel( this,\r
- LIBWIN32_PREFSIZE_LEFT,\r
- LIBWIN32_PREFSIZE_WIDTH,\r
- LIBWIN32_PREFSIZE_VPAD,\r
- LIBWIN32_PREFSIZE_LABEL_HEIGHT,\r
- Text.c_str(), true );\r
-\r
- /* init edit */\r
- Edit = CreateEdit( this,\r
- LIBWIN32_PREFSIZE_EDIT_LEFT,\r
- LIBWIN32_PREFSIZE_EDIT_WIDTH,\r
- LIBWIN32_PREFSIZE_VPAD + Label->Height + LIBWIN32_PREFSIZE_VPAD,\r
- LIBWIN32_PREFSIZE_EDIT_HEIGHT, "" );\r
- vlc_mutex_lock( p_config->p_lock );\r
- Edit->Text = p_config->psz_value ? p_config->psz_value : "";\r
- vlc_mutex_unlock( p_config->p_lock );\r
- Edit->Hint = p_config->psz_longtext;\r
- Edit->ShowHint = true;\r
-\r
- /* panel height */\r
- Height = LIBWIN32_PREFSIZE_VPAD + Label->Height + LIBWIN32_PREFSIZE_VPAD\r
- + Edit->Height + LIBWIN32_PREFSIZE_VPAD;\r
-};\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelString::UpdateChanges()\r
-{\r
- config_PutPsz( p_intf, p_config->psz_name,\r
- Edit->Text.Length() ? Edit->Text.c_str() : NULL );\r
-}\r
-\r
-\r
-/****************************************************************************\r
- * Panel for integer management\r
- ****************************************************************************/\r
-__fastcall TPanelInteger::TPanelInteger( TComponent* Owner,\r
- module_config_t *p_config, intf_thread_t *_p_intf )\r
- : TPanelPref( Owner, p_config, _p_intf )\r
-{\r
- /* init description label */\r
- AnsiString Text = AnsiString ( p_config->psz_text ) + ":";\r
- Label = CreateLabel( this,\r
- LIBWIN32_PREFSIZE_LEFT,\r
- LIBWIN32_PREFSIZE_WIDTH - LIBWIN32_PREFSIZE_SPINEDIT_WIDTH\r
- - LIBWIN32_PREFSIZE_HPAD,\r
- LIBWIN32_PREFSIZE_VPAD,\r
- LIBWIN32_PREFSIZE_LABEL_HEIGHT, Text.c_str(), true );\r
-\r
- /* init spinedit */\r
- SpinEdit = CreateSpinEdit( this,\r
- LIBWIN32_PREFSIZE_RIGHT - LIBWIN32_PREFSIZE_SPINEDIT_WIDTH,\r
- LIBWIN32_PREFSIZE_SPINEDIT_WIDTH,\r
- LIBWIN32_PREFSIZE_VPAD,\r
- LIBWIN32_PREFSIZE_SPINEDIT_HEIGHT,\r
- -1, 100000, p_config->i_value );\r
- SpinEdit->Hint = p_config->psz_longtext;\r
- SpinEdit->ShowHint = true;\r
-\r
- /* vertical alignement and panel height */\r
- if ( SpinEdit->Height > Label->Height )\r
- {\r
- Label->Top += ( SpinEdit->Height - Label->Height ) / 2;\r
- Height = SpinEdit->Top + SpinEdit->Height + LIBWIN32_PREFSIZE_VPAD;\r
- }\r
- else\r
- {\r
- SpinEdit->Top += ( Label->Height - SpinEdit->Height ) / 2;\r
- Height = Label->Top + Label->Height + LIBWIN32_PREFSIZE_VPAD;\r
- }\r
-};\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelInteger::UpdateChanges()\r
-{\r
- /* Warning: we're casting from long to int */\r
- config_PutInt( p_intf, p_config->psz_name, (int)SpinEdit->Value );\r
-}\r
-\r
-\r
-/****************************************************************************\r
- * Panel for float management\r
- ****************************************************************************/\r
-__fastcall TPanelFloat::TPanelFloat( TComponent* Owner,\r
- module_config_t *p_config, intf_thread_t *_p_intf )\r
- : TPanelPref( Owner, p_config, _p_intf )\r
-{\r
-#define MAX_FLOAT_CHARS 20\r
- /* init description label */\r
- AnsiString Text = AnsiString( p_config->psz_text ) + ":";\r
- Label = CreateLabel( this,\r
- LIBWIN32_PREFSIZE_LEFT,\r
- LIBWIN32_PREFSIZE_WIDTH,\r
- LIBWIN32_PREFSIZE_VPAD,\r
- LIBWIN32_PREFSIZE_LABEL_HEIGHT,\r
- Text.c_str(), true );\r
-\r
- /* init edit */\r
- char *psz_value = (char *)malloc( MAX_FLOAT_CHARS );\r
- snprintf( psz_value, MAX_FLOAT_CHARS, "%f", p_config->f_value );\r
- /* we use the spinedit size, to be similar with the integers */\r
- Edit = CreateEdit( this,\r
- LIBWIN32_PREFSIZE_RIGHT - LIBWIN32_PREFSIZE_SPINEDIT_WIDTH,\r
- LIBWIN32_PREFSIZE_SPINEDIT_WIDTH,\r
- LIBWIN32_PREFSIZE_VPAD,\r
- LIBWIN32_PREFSIZE_SPINEDIT_HEIGHT,\r
- psz_value );\r
- free( psz_value );\r
- Edit->Hint = p_config->psz_longtext;\r
- Edit->ShowHint = true;\r
-\r
- /* vertical alignement and panel height */\r
- if ( Edit->Height > Label->Height )\r
- {\r
- Label->Top += ( Edit->Height - Label->Height ) / 2;\r
- Height = Edit->Top + Edit->Height + LIBWIN32_PREFSIZE_VPAD;\r
- }\r
- else\r
- {\r
- Edit->Top += ( Label->Height - Edit->Height ) / 2;\r
- Height = Label->Top + Label->Height + LIBWIN32_PREFSIZE_VPAD;\r
- }\r
-\r
-#undef MAX_FLOAT_CHARS\r
-};\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelFloat::UpdateChanges()\r
-{\r
- /* Warning: we're casting from double to float */\r
- config_PutFloat( p_intf, p_config->psz_name, atof( Edit->Text.c_str() ) );\r
-}\r
-\r
-\r
-/****************************************************************************\r
- * Panel for boolean management\r
- ****************************************************************************/\r
-__fastcall TPanelBool::TPanelBool( TComponent* Owner,\r
- module_config_t *p_config, intf_thread_t *_p_intf )\r
- : TPanelPref( Owner, p_config, _p_intf )\r
-{\r
- /* init checkbox */\r
- CheckBox = CreateCheckBox( this,\r
- LIBWIN32_PREFSIZE_LEFT,\r
- LIBWIN32_PREFSIZE_WIDTH,\r
- LIBWIN32_PREFSIZE_VPAD,\r
- LIBWIN32_PREFSIZE_CHECKBOX_HEIGHT, p_config->psz_text );\r
- CheckBox->Checked = p_config->i_value;\r
- CheckBox->Hint = p_config->psz_longtext;\r
- CheckBox->ShowHint = true;\r
-\r
- /* panel height */\r
- Height = LIBWIN32_PREFSIZE_VPAD + CheckBox->Height + LIBWIN32_PREFSIZE_VPAD;\r
-};\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPanelBool::UpdateChanges()\r
-{\r
- config_PutInt( p_intf, p_config->psz_name, CheckBox->Checked ? 1 : 0 );\r
-}\r
-\r
-\r
-/****************************************************************************\r
- * Callbacks for the dialog\r
- ****************************************************************************/\r
-__fastcall TPreferencesDlg::TPreferencesDlg( TComponent* Owner,\r
- intf_thread_t *_p_intf ) : TForm( Owner )\r
-{\r
- p_intf = _p_intf;\r
- Icon = p_intf->p_sys->p_window->Icon;\r
- Application->HintHidePause = 0x1000000;\r
- HintWindowClass = __classid ( TNarrowHintWindow );\r
- ModuleNames = new TStringList();\r
- /* prevent the form from being resized horizontally */\r
- Constraints->MinWidth = Width;\r
- Constraints->MaxWidth = Width;\r
-}\r
-//---------------------------------------------------------------------------\r
-__fastcall TPreferencesDlg::~TPreferencesDlg()\r
-{\r
- delete ModuleNames;\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPreferencesDlg::FormClose( TObject *Sender,\r
- TCloseAction &Action )\r
-{\r
- Action = caHide;\r
-}\r
-\r
-\r
-/****************************************************************************\r
- * CreateConfigDialog: dynamically creates the configuration dialog\r
- * box from all the configuration data provided by the selected module.\r
- ****************************************************************************/\r
-#define ADD_PANEL \\r
-{ \\r
- Panel = new TPanel( this ); \\r
- Panel->Parent = ScrollBox; \\r
- Panel->Caption = ""; \\r
- Panel->BevelOuter = bvNone; \\r
- Panel->Height = 12; \\r
-}\r
-\r
-void __fastcall TPreferencesDlg::CreateConfigDialog( char *psz_module_name )\r
-{\r
- module_t *p_parser;\r
- vlc_list_t *p_list;\r
- int i_index;\r
-\r
- module_config_t *p_item;\r
- int i_pages, i_ctrl;\r
-\r
- TTabSheet *TabSheet;\r
- TScrollBox *ScrollBox = NULL;\r
- TPanel *Panel;\r
- TPanelPlugin *PanelPlugin;\r
- TPanelString *PanelString;\r
- TPanelInteger *PanelInteger;\r
- TPanelFloat *PanelFloat;\r
- TPanelBool *PanelBool;\r
-\r
- /* Look for the selected module */\r
- p_list = vlc_list_find( p_intf, VLC_OBJECT_MODULE, FIND_ANYWHERE );\r
-\r
- for( i_index = 0; i_index < p_list->i_count; i_index++ )\r
- {\r
- p_parser = (module_t *)p_list->p_values[i_index].p_object ;\r
-\r
- if( psz_module_name\r
- && !strcmp( psz_module_name, p_parser->psz_object_name ) )\r
- {\r
- break;\r
- }\r
- }\r
- if( !p_parser || i_index == p_list->i_count )\r
- {\r
- vlc_list_release( p_list );\r
- return;\r
- }\r
-\r
- /*\r
- * We found it, now we can start building its configuration interface\r
- */\r
-\r
- /* Enumerate config options and add corresponding config boxes */\r
- p_item = p_parser->p_config;\r
- if( p_item ) do\r
- {\r
- if( p_item->b_advanced && !config_GetInt( p_intf, "advanced" ) )\r
- {\r
- continue;\r
- }\r
-\r
- switch( p_item->i_type )\r
- {\r
- case CONFIG_HINT_CATEGORY:\r
-\r
- /* create a new tabsheet. */\r
- TabSheet = new TTabSheet( this );\r
- TabSheet->PageControl = PageControlPref;\r
- TabSheet->Caption = p_item->psz_text;\r
- TabSheet->Visible = true;\r
-\r
- /* pack a scrollbox into the tabsheet */\r
- ScrollBox = new TScrollBox( this );\r
- ScrollBox->Parent = TabSheet;\r
- ScrollBox->Align = alClient;\r
- ScrollBox->BorderStyle = bsNone;\r
- ScrollBox->HorzScrollBar->Tracking = true;\r
- ScrollBox->VertScrollBar->Tracking = true;\r
-\r
- /* add a panel as top margin */\r
- ADD_PANEL;\r
-\r
- break;\r
-\r
- case CONFIG_ITEM_MODULE:\r
-\r
- /* add new panel for the config option */\r
- PanelPlugin =\r
- new TPanelPlugin( this, p_item, p_intf, ModuleNames, true );\r
- PanelPlugin->Parent = ScrollBox;\r
-\r
- /* Look for valid modules */\r
- for( i_index = 0; i_index < p_list->i_count; i_index++ )\r
- {\r
- p_parser = (module_t *)p_list->p_values[i_index].p_object ;\r
-\r
- if( !strcmp( p_parser->psz_capability, p_item->psz_type ) )\r
- {\r
- AnsiString ModuleDesc;\r
- if ( p_parser->psz_longname != NULL ) {\r
- ModuleDesc = AnsiString( p_parser->psz_longname ) +\r
- " (" + AnsiString( p_parser->psz_object_name ) +\r
- ")";\r
- }\r
- else\r
- ModuleDesc = AnsiString( p_parser->psz_object_name );\r
-\r
- // add a reference to the module name string\r
- // in the list item object\r
- PanelPlugin->ExtCheckListBox->SetItemData (\r
- PanelPlugin->ExtCheckListBox->Items->Add(ModuleDesc)\r
- , ModuleNames->Add( p_parser->psz_object_name ) );\r
- }\r
- }\r
-\r
- /* check relevant boxes */\r
- PanelPlugin->SetValue ( AnsiString ( p_item->psz_value ) );\r
-\r
- break;\r
-\r
- case CONFIG_ITEM_FILE:\r
-\r
- case CONFIG_ITEM_STRING:\r
-\r
- /* add new panel for the config option */\r
- PanelString = new TPanelString( this, p_item, p_intf );\r
- PanelString->Parent = ScrollBox;\r
-\r
- break;\r
-\r
- case CONFIG_ITEM_INTEGER:\r
-\r
- /* add new panel for the config option */\r
- PanelInteger = new TPanelInteger( this, p_item, p_intf );\r
- PanelInteger->Parent = ScrollBox;\r
-\r
- break;\r
-\r
- case CONFIG_ITEM_FLOAT:\r
-\r
- /* add new panel for the config option */\r
- PanelFloat = new TPanelFloat( this, p_item, p_intf );\r
- PanelFloat->Parent = ScrollBox;\r
-\r
- break;\r
-\r
- case CONFIG_ITEM_BOOL:\r
-\r
- /* add new panel for the config option */\r
- PanelBool = new TPanelBool( this, p_item, p_intf );\r
- PanelBool->Parent = ScrollBox;\r
-\r
- break;\r
- default:\r
- msg_Warn( p_intf, "unknown config type: %i", p_item->i_type );\r
- break;\r
- }\r
- }\r
- while( p_item->i_type != CONFIG_HINT_END && p_item++ );\r
-\r
- /* Reorder panels inside the tabsheets */\r
- for( i_pages = 0; i_pages < PageControlPref->PageCount; i_pages++ )\r
- {\r
- /* get scrollbox from the tabsheet */\r
- ScrollBox = (TScrollBox *)PageControlPref->Pages[i_pages]->Controls[0];\r
-\r
- /* add a panel as bottom margin */\r
- ADD_PANEL;\r
-\r
- for( i_ctrl = ScrollBox->ControlCount - 1; i_ctrl >= 0 ; i_ctrl-- )\r
- {\r
- ScrollBox->Controls[i_ctrl]->Align = alTop;\r
- }\r
- }\r
-\r
- vlc_list_release( p_list );\r
-\r
- /* set active tabsheet\r
- * FIXME: i don't know why, but both lines are necessary */\r
- PageControlPref->ActivePageIndex = 1;\r
- PageControlPref->ActivePageIndex = 0;\r
-}\r
-#undef ADD_PANEL\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPreferencesDlg::ButtonOkClick( TObject *Sender )\r
-{\r
- ButtonApplyClick( Sender );\r
- Hide();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPreferencesDlg::ButtonApplyClick( TObject *Sender )\r
-{\r
- TScrollBox *ScrollBox;\r
- TPanelPref *Panel;\r
- int i, j;\r
-\r
- for( i = 0; i < PageControlPref->PageCount; i++ )\r
- {\r
- /* get scrollbox from the tabsheet */\r
- ScrollBox = (TScrollBox *)PageControlPref->Pages[i]->Controls[0];\r
-\r
- for( j = 0; j < ScrollBox->ControlCount ; j++ )\r
- {\r
- /* skip the panels */\r
- if( ScrollBox->Controls[j]->InheritsFrom( __classid( TPanelPref ) ) )\r
- {\r
- Panel = (TPanelPref *)ScrollBox->Controls[j];\r
- Panel->UpdateChanges();\r
- }\r
- }\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPreferencesDlg::ButtonSaveClick( TObject *Sender )\r
-{\r
- ButtonApplyClick( Sender );\r
- config_SaveConfigFile( p_intf, NULL );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TPreferencesDlg::ButtonCancelClick( TObject *Sender )\r
-{\r
- Hide();\r
-}\r
-//---------------------------------------------------------------------------\r
+++ /dev/null
-object PreferencesDlg: TPreferencesDlg\r
- Tag = 3\r
- Left = 310\r
- Top = 125\r
- Width = 458\r
- Height = 588\r
- Anchors = [akTop, akRight]\r
- Caption = 'Preferences'\r
- Color = clBtnFace\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clWindowText\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- Icon.Data = {\r
- 0000010001003030000001001800A81C00001600000028000000300000006000\r
- 00000100180000000000001B0000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000069375900000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000120E0A4011253E0F18000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000F0B\r
- 084143CA08070016430F08040800000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000003127291203174647E8464AE808010840E54039E6390B0C06\r
- 0E0A1C0000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0070CD0079DD0079DD0070CD0000000000000000000C1008261D6E4647E54547\r
- E64748E105040039E6393AE53939E63936D33308030100000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000070CD0079DD0079DE007DE40088F9008CFF008CFF0088F9007CE302\r
- 6EC70B09124641DC4444DF4546E34446E54847E003040040E6403AEA3A3EE33E\r
- 3CE33C39E639080F010801050000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000070CD0079DD0077D90070CB0078D8007BDC007BDC007BDC\r
- 007BDC007BDC007BDD007EE32E232D0804084553F14250F34252ED4449DB4844\r
- DC4645E208010540E5401C78150D18053CE63C3AE63A39EA393CD83C241A2006\r
- 0402000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000070CD0079DD007ADF007BDE007BDC0072\r
- CC005188004877004876004876004876034976054A760B4D7731434221175B42\r
- 54EC4253EE4252F60B05104250F44252EB4546DA08010539E6392BAA2B080105\r
- 3CE63C39E7393AE63A39E93939E839081208181C080000000000000000000000\r
- 000000000000000000000000000000000000000070CD0079DD0079DD007CE300\r
- 88F90089F90075D2005188004877005188008CFF008CFF008CFF008CFF008CFF\r
- 1092FF2099FF31A0FF1408294840DB4550E1464EEA0C060B0B05084654F64653\r
- F64453EF080E033AE63A2BAA2B03030339E33939DF3939E639080F083DDB3D24\r
- 9C24434B3B000000000000000000000000000000000000000000000000000000\r
- 0063B60085F3008BFE0088F9007FE90088F90080E8005CA0008CFF008CFF008C\r
- FF008CFF008CFF008CFF008CFF048DFF1594FF259BFF35A2FF0C04103F38C754\r
- 5AF7505BF10C08100801084352F64652F44253F30813053AE63A39E639030403\r
- 1C521826A1250812010807032454131558150000000000000000000000000000\r
- 000000000000000000000000000000000000000070CD007CE30079DD00000000\r
- 7CE30089FA008CFF0089FA008CFF008CFF008CFF008CFF008CFF008CFF098FFF\r
- 1996FF2A9DFF3AA4FF0804103A2AA34E58F74E58F40B0B120803054652F34548\r
- E64451F305130532CA323AE23A03070308070307040008040139E63939E43931\r
- B42F5E1347000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000061B10000000079DD008CFF008CFF008CFF008CFF008C\r
- FF008CFF008CFF008CFF008CFF0E91FF1E98FF2E9FFF3FA6FF040408382BAF4D\r
- 5AEF555AF70F12250501050F04160804074250F3121A123AE93A39E239080803\r
- 0D2F08010401268C2539E7393DE63D3FE23E0804100000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 79DD008CFF008CFF008CFF008CFF008CFF008CFF008CFF008CFF028CFF1293FF\r
- 239AFF33A1FF43A8FF0802083A2AA3565BF7555AF71714330501050104000801\r
- 07424FF12828203AEA3A39E639030703182F1008340801040139E7393DE83D39\r
- E939080400000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000070CD0088F9008CFF008CFF008CFF008C\r
- FF008CFF008CFF008CFF078EFF1795FF279CFF38A3FF48AAFF0808005151F155\r
- 5AF30804030804000504050800082E358E0E0C1F1D192439E53940E640080400\r
- 2AA12739E63908020708010539E8393BE93B0804080000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000007CE3008CFF008CFF008CFF058EFD1D96F92398F8269AFA31A0FC42A8FF\r
- 4FAEFF5CB3FF65B7FF0C08084F5AF14E57F50B04080804043639A54647E81C13\r
- 49363AA70804080F120835953439E7393EE63E39DF3939EA39081105308A2B3F\r
- E73F080601000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000047BDB1D96F92398F82498F83BA0\r
- F399C1E1B1C9DDBCD4E7CBE0F3D9EDFFDCEEFFDEEFFFCDE8FF080808575BF750\r
- 58F624125A5057F34845DF4A41E0150E30C55734E3723EC56E33A23D27050105\r
- 39E43939E63939E6393CE63C14420C3BE03B192A090000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000004\r
- 04042D88D399C1E1B1C9DDB1C9DCB7CBDBCFD3D7D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFEFEFFF9FCFF0C08085D61F15B61EF555AF64A4FE13937BB0E0A12DE74\r
- 39E1733CDE713CDF753AE67541C36B342C231F17141B3AE63A39E7393DE83D39\r
- E93939DE39000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000001818186893B8C3CCD2D5D5D6D5D5D6D5D5\r
- D6D6D6D6D6D6D6E3E3E3F1F1F1FFFFFFFFFFFFFFFFFFFFFFFF140C145C5EF668\r
- 63F75555EA10061CC3673FDF713A0C1104080403080105080007070407D56F36\r
- DE743EDE72401C200C29452939E63939E73939EA390000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000343434A2B4C2D5D5D6D6D6D6D6D6D6D6D6D6D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFEFEFFFEFEFF20161C5C5EF6373EAE0E0413E2713DE1763CCD6A3C2A0D\r
- 08A44B2CDE743EBD612F080401030403E1713CDE7239DE713AE1723C22201139\r
- C13341E641000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000001B1B1B99AEBED5D5D6D5D5D6D5D5\r
- D6CFD3D7B8CBDBBFD5E7CEE2F3DCEFFFDFF0FFE2F1FFE9F4FF10100C3639A46E\r
- 4540DE7239DE713DE1713C07000784261CDE7639E3743E0812001F0407D86E36\r
- E3753EE57540E57541DE763CDE733DD26637493C387E2F7B0000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00001B1B1B99AEBFCED3D7B7CBDBB1C9DD99C1E140A2F339A2FA49AAFC59B2FF\r
- 66B8FF74BEFF92CBFFD9ECFF0F0402C66531DE7139E2733D854B1E0A01084D11\r
- 0DE3733EE1723CDF713ADF753AE1763C1D0A08290708E57140E1763CDE733DC7\r
- 6B34080408000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000001818187FA5C399C1E13BA0F32498\r
- F81D96F91091FD1C97FF2C9EFF3CA5FF4DACFF5DB3FF71BBFF8DC8FF9FD0FF08\r
- 0400080406B95C2EDE7239070B070803014D1615DE723CDE7540E5714030090D\r
- 0504003A120FE67541DE75390808044A0C290000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000707071778C81C92F3058EFD008CFF008CFF1092FF2099FF31A0FF41A7FF\r
- 51AEFF62B5FF72BCFF7BBFFF7BBBF96E9FCD0808080806041D0508E571403E22\r
- 0C200708080405070407070007080303B05F31DE723967301908010500000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000007CE3008CFF008C\r
- FF048DFF1594FF259BFF35A2FF46A9FF56B0FF66B7FF77BEFF7BBFFF6DAAE300\r
- 0000000000000000000000080401200C088D4024E17141E57140DF713ADE713E\r
- DE76390801070000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000079DD008CFF008CFF098FFF1996FF2A9DFF3AA4FF4AABFF\r
- 5BB2FF6BB9FF7BBFFF7BBFFF6AA5DD0000000000000000000000000000001D1A\r
- 0C1A0F08110903441912E57140623B1E08020300000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000079DD008CFF008C\r
- FF0E91FF1E98FF2E9FFF3FA6FF4FADFF5FB4FF70BBFF7BBFFF78BAF96299CD00\r
- 00000000000000000000000000000000000000003914100000005A2411000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000070CD0088F9078EFD2C9CF940A3F850ACFA60B4FC70BCFF\r
- 7DC2FF87C6FF7EC0FF6DAAE30000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000707071A85DD40A2\r
- F3A0C3E1B7CBDDC6D8E7D4E5F3E2F1FFE5F2FFD9ECFF9FD0FF7AACDD05050500\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000001818187FA5C3B8CBDBD0D4D7D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFAFCFFE2EDF99FB7CD1C1C1C0000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000001B1B1B99AEBFD4D5\r
- D6D6D6D6D6D6D6E3E3E3F1F1F1FFFFFFFFFFFFFEFEFFD1DAE33E3E3E00000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000001D1D1D7B9BB4CACED1D6D6D6D5D5D6E2E2E3F0F0F1FEFEFF\r
- FEFEFFFEFEFFC9D2DD2121210000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000343434A5B5\r
- C2CFD3D7BFCEDBC9D9E7D7E6F3E6F3FFECF5FFF0F4F9AEBDCD23232300000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000018181887A8C3A6C6E169B3F367B6FA77BEFC88C6FF\r
- 9FD0FFB4CBE33939390000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000040404338C\r
- D749A8F947A9FD54AFFF64B6FF74BDFF7EC0FF76ABDD05050500000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000001F7DCD369FF948AAFF58B1FF69B8FF79BFFF\r
- 78BAF96299CD0000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 003592E34DACFF5DB3FF6DBAFF7BBFFF6DAAE300000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000003890DD51AEFF62B5FF72BCFF7BBFFF\r
- 6AA5DD0000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 003B8FD84C9CE3589FDE69A9E375B6F46299CD00000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000000000000000000000000000003376B00000000000000000005788B6\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 00000000006CC61A83DD247FCC00000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000006DC71A83DD2686D71F6EB1\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 0000000000000000000000000000000000000000000000000000000000000000\r
- 000000000000000000000000000000000000000000000000000000000000FFFF\r
- FFFFFFFF0000FFFFFFFFFFFF0000FFFFFE1FDFFF0000FFFFE0078FFF0000FFFE\r
- 000007FF0000FFF0000001FF0000FF80000000FF0000FF000000003F0000FF00\r
- 0000000F0000FE00000000070000F800000000070000F8000000000F0000FC00\r
- 000000070000FE00000000070000FF80000000070000FFC0000000070000FFE0\r
- 000000070000FFE0000000070000FFE0000000070000FFE0000000070000FFF0\r
- 000000070000FFF0000000030000FFF0000000070000FFF00000000F0000FFF0\r
- 0000003F0000FFF8000E00FF0000FFF8000F01FF0000FFF8000FD7FF0000FFF8\r
- 001FFFFF0000FFFC001FFFFF0000FFFC001FFFFF0000FFFC003FFFFF0000FFFC\r
- 003FFFFF0000FFFE003FFFFF0000FFFE007FFFFF0000FFFE007FFFFF0000FFFE\r
- 007FFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF00FFFFFF0000FFFF\r
- 01FFFFFF0000FFFF01FFFFFF0000FFFF81FFFFFF0000FFFFC3FFFFFF0000FFFF\r
- FFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000FFFFFFFFFFFF0000}\r
- OldCreateOrder = False\r
- Position = poDefaultPosOnly\r
- OnClose = FormClose\r
- PixelsPerInch = 96\r
- TextHeight = 13\r
- object PageControlPref: TPageControl\r
- Left = 8\r
- Top = 8\r
- Width = 433\r
- Height = 512\r
- Anchors = [akLeft, akTop, akRight, akBottom]\r
- MultiLine = True\r
- TabOrder = 0\r
- end\r
- object ButtonApply: TButton\r
- Tag = 3\r
- Left = 284\r
- Top = 528\r
- Width = 75\r
- Height = 23\r
- Anchors = [akRight, akBottom]\r
- Caption = 'Apply'\r
- TabOrder = 3\r
- OnClick = ButtonApplyClick\r
- end\r
- object ButtonSave: TButton\r
- Tag = 3\r
- Left = 367\r
- Top = 528\r
- Width = 75\r
- Height = 23\r
- Anchors = [akRight, akBottom]\r
- Caption = 'Save'\r
- TabOrder = 4\r
- OnClick = ButtonSaveClick\r
- end\r
- object ButtonOK: TButton\r
- Tag = 3\r
- Left = 118\r
- Top = 528\r
- Width = 75\r
- Height = 23\r
- Anchors = [akRight, akBottom]\r
- Caption = 'OK'\r
- Default = True\r
- ModalResult = 1\r
- TabOrder = 1\r
- OnClick = ButtonOkClick\r
- end\r
- object ButtonCancel: TButton\r
- Tag = 3\r
- Left = 201\r
- Top = 528\r
- Width = 75\r
- Height = 23\r
- Anchors = [akRight, akBottom]\r
- Cancel = True\r
- Caption = 'Cancel'\r
- ModalResult = 2\r
- TabOrder = 2\r
- OnClick = ButtonCancelClick\r
- end\r
-end\r
+++ /dev/null
-/*****************************************************************************\r
- * preferences.h: the "Preferences" dialog box\r
- *****************************************************************************\r
- * Copyright (C) 2002-2003 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- * Boris Dores <babal@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef preferencesH\r
-#define preferencesH\r
-//---------------------------------------------------------------------------\r
-#include <Classes.hpp>\r
-#include <Controls.hpp>\r
-#include <StdCtrls.hpp>\r
-#include <Forms.hpp>\r
-#include <Buttons.hpp>\r
-#include <ComCtrls.hpp>\r
-#include <CheckLst.hpp>\r
-#include <ExtCtrls.hpp>\r
-#include "CSPIN.h"\r
-//---------------------------------------------------------------------------\r
-/* A TCheckListBox that can associate an integer to each string item */\r
-class TExtCheckListBox : public TCheckListBox\r
-{\r
-public:\r
- DYNAMIC void __fastcall SetItemData(int Index, int AData) {\r
- TCheckListBox::SetItemData ( Index , AData );\r
- }\r
- DYNAMIC int __fastcall GetItemData(int Index) {\r
- return TCheckListBox::GetItemData ( Index );\r
- }\r
- __fastcall TExtCheckListBox( Classes::TComponent* AOwner )\r
- : TCheckListBox( AOwner ) {};\r
-};\r
-//---------------------------------------------------------------------------\r
-/* A THintWindow with a limited width */\r
-class TNarrowHintWindow : public THintWindow\r
-{\r
-public:\r
- virtual void __fastcall ActivateHint( const Windows::TRect &Rect,\r
- const System::AnsiString AHint );\r
-};\r
-//---------------------------------------------------------------------------\r
-class TPanelPref : public TPanel\r
-{\r
-public:\r
- __fastcall TPanelPref( TComponent* Owner, module_config_t *_p_config,\r
- intf_thread_t *_p_intf );\r
- virtual void __fastcall UpdateChanges() = 0;\r
-protected:\r
- module_config_t * p_config;\r
- intf_thread_t * p_intf;\r
- TExtCheckListBox * __fastcall CreateExtCheckListBox(TWinControl *Parent,\r
- int Left, int Width, int Top, int Height );\r
- TButton * __fastcall CreateButton( TWinControl *Parent,\r
- int Left, int Width, int Top, int Height, AnsiString Caption );\r
- TCheckBox * __fastcall CreateCheckBox( TWinControl *Parent,\r
- int Left, int Width, int Top, int Height, AnsiString Caption );\r
- TLabel * __fastcall CreateLabel( TWinControl *Parent,\r
- int Left, int Width, int Top, int Height, AnsiString Caption,\r
- bool WordWrap );\r
- TEdit * __fastcall CreateEdit( TWinControl *Parent,\r
- int Left, int Width, int Top, int Height, AnsiString Text );\r
- TCSpinEdit * __fastcall CreateSpinEdit( TWinControl *Parent,\r
- int Left, int Width, int Top, int Height,\r
- long Min, long Max, long Value );\r
-};\r
-//---------------------------------------------------------------------------\r
-class TPanelPlugin : public TPanelPref\r
-{\r
- module_t *ModuleSelected;\r
-public:\r
- __fastcall TPanelPlugin( TComponent* Owner, module_config_t *p_config,\r
- intf_thread_t *_p_intf, TStringList * ModuleNames,\r
- bool b_multi_plugins );\r
- bool b_multi_plugins;\r
- TExtCheckListBox *ExtCheckListBox;\r
- TButton *ButtonConfig;\r
- TButton *ButtonUp;\r
- TButton *ButtonDown;\r
- TLabel *Label;\r
- TStringList * ModuleNames;\r
- virtual void __fastcall TPanelPlugin::SetValue ( AnsiString Values );\r
- virtual void __fastcall UpdateChanges();\r
- void __fastcall CheckListBoxClick( TObject *Sender );\r
- void __fastcall CheckListBoxClickCheck( TObject *Sender );\r
- void __fastcall ButtonConfigClick( TObject *Sender );\r
- void __fastcall ButtonUpClick( TObject *Sender );\r
- void __fastcall ButtonDownClick( TObject *Sender );\r
-};\r
-//---------------------------------------------------------------------------\r
-class TPanelString : public TPanelPref\r
-{\r
-public:\r
- __fastcall TPanelString( TComponent* Owner, module_config_t *p_config,\r
- intf_thread_t *_p_intf );\r
- TLabel *Label;\r
- TEdit *Edit;\r
- virtual void __fastcall UpdateChanges();\r
-};\r
-//---------------------------------------------------------------------------\r
-class TPanelInteger : public TPanelPref\r
-{\r
-public:\r
- __fastcall TPanelInteger( TComponent* Owner, module_config_t *p_config,\r
- intf_thread_t *_p_intf );\r
- TLabel *Label;\r
- TCSpinEdit *SpinEdit;\r
- virtual void __fastcall UpdateChanges();\r
-};\r
-//---------------------------------------------------------------------------\r
-class TPanelFloat : public TPanelPref\r
-{\r
-public:\r
- __fastcall TPanelFloat( TComponent* Owner, module_config_t *p_config,\r
- intf_thread_t *_p_intf );\r
- TLabel *Label;\r
- TEdit *Edit;\r
- virtual void __fastcall UpdateChanges();\r
-};\r
-//---------------------------------------------------------------------------\r
-class TPanelBool : public TPanelPref\r
-{\r
-public:\r
- __fastcall TPanelBool( TComponent* Owner, module_config_t *p_config,\r
- intf_thread_t *_p_intf );\r
- TCheckBox *CheckBox;\r
- virtual void __fastcall UpdateChanges();\r
-};\r
-//---------------------------------------------------------------------------\r
-class TPreferencesDlg : public TForm\r
-{\r
-__published: // IDE-managed Components\r
- TPageControl *PageControlPref;\r
- TButton *ButtonApply;\r
- TButton *ButtonSave;\r
- TButton *ButtonOK;\r
- TButton *ButtonCancel;\r
- void __fastcall ButtonOkClick( TObject *Sender );\r
- void __fastcall ButtonApplyClick( TObject *Sender );\r
- void __fastcall ButtonSaveClick( TObject *Sender );\r
- void __fastcall ButtonCancelClick( TObject *Sender );\r
- void __fastcall FormClose( TObject *Sender, TCloseAction &Action );\r
-private: // User declarations\r
- intf_thread_t *p_intf;\r
- TStringList * ModuleNames;\r
-public: // User declarations\r
- __fastcall TPreferencesDlg( TComponent* Owner, intf_thread_t *_p_intf );\r
- virtual __fastcall ~TPreferencesDlg();\r
- void __fastcall CreateConfigDialog( char *psz_module_name );\r
-};\r
-//---------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * sout.cpp: the stream ouput dialog box\r
- *****************************************************************************\r
- * Copyright (C) 2002-2003 VideoLAN\r
- * $Id: sout.cpp,v 1.4 2003/01/26 03:55:36 ipkiss Exp $\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#pragma hdrstop\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-\r
-#include "sout.h"\r
-#include "misc.h"\r
-#include "win32_common.h"\r
-\r
-//---------------------------------------------------------------------------\r
-#pragma link "CSPIN"\r
-#pragma resource "*.dfm"\r
-//---------------------------------------------------------------------------\r
-__fastcall TSoutDlg::TSoutDlg( TComponent* Owner, intf_thread_t *_p_intf )\r
- : TForm( Owner )\r
-{\r
- p_intf = _p_intf;\r
-\r
- PanelAccess->BevelOuter = bvNone;\r
- PanelMux->BevelOuter = bvNone;\r
-\r
- Translate( this );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TSoutDlg::ButtonBrowseClick( TObject *Sender )\r
-{\r
- if( OpenDialog1->Execute() )\r
- {\r
- EditFile->Text = OpenDialog1->FileName;\r
- RebuildMrl();\r
- };\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TSoutDlg::CustomEditChange( TObject *Sender )\r
-{\r
- RebuildMrl();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TSoutDlg::RadioButtonMuxClick( TObject *Sender )\r
-{\r
- RebuildMrl();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TSoutDlg::RadioButtonAccessClick( TObject *Sender )\r
-{\r
- bool b_file = RadioButtonFile->Checked;\r
- bool b_udp = RadioButtonUDP->Checked;\r
- bool b_rtp = RadioButtonRTP->Checked;\r
-\r
- EditFile->Enabled = b_file;\r
- ButtonBrowse->Enabled = b_file;\r
- LabelAddress->Enabled = b_udp | b_rtp;\r
- EditAddress->Enabled = b_udp | b_rtp;\r
- LabelPort->Enabled = b_udp | b_rtp;\r
- SpinEditPort->Enabled = b_udp | b_rtp;\r
- RadioButtonPS->Enabled = !b_rtp;\r
-\r
- if( b_udp || b_rtp )\r
- RadioButtonTS->Checked = true;\r
-\r
- RebuildMrl();\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TSoutDlg::ButtonOKClick( TObject *Sender )\r
-{\r
- config_PutPsz( p_intf, "sout", EditMrl->Text.c_str() );\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
-\r
-/*****************************************************************************\r
- * Private functions\r
- *****************************************************************************/\r
-void _fastcall TSoutDlg::RebuildMrl()\r
-{\r
- AnsiString Mux, Mrl;\r
-\r
- if( RadioButtonPS->Checked )\r
- Mux = "ps";\r
- else\r
- Mux = "ts";\r
-\r
- if( RadioButtonFile->Checked )\r
- Mrl = "file/" + Mux + "://" + EditFile->Text;\r
- else if( RadioButtonUDP->Checked )\r
- Mrl = "udp/" + Mux + "://" + EditAddress->Text + ":"\r
- + SpinEditPort->Value;\r
- else\r
- Mrl = "rtp/" + Mux + "://" + EditAddress->Text + ":"\r
- + SpinEditPort->Value;\r
-\r
- EditMrl->Text = Mrl;\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
+++ /dev/null
-object SoutDlg: TSoutDlg\r
- Tag = 3\r
- Left = 454\r
- Top = 369\r
- Width = 392\r
- Height = 244\r
- Caption = 'Stream output'\r
- Color = clBtnFace\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clWindowText\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- OldCreateOrder = False\r
- PixelsPerInch = 96\r
- TextHeight = 13\r
- object GroupBoxStreamOut: TGroupBox\r
- Tag = 3\r
- Left = 8\r
- Top = 8\r
- Width = 368\r
- Height = 168\r
- Anchors = [akLeft, akTop, akRight]\r
- Caption = 'Stream output MRL (Media Resource Locator)'\r
- TabOrder = 0\r
- object LabelPort: TLabel\r
- Tag = 3\r
- Left = 263\r
- Top = 98\r
- Width = 22\r
- Height = 13\r
- Anchors = [akTop, akRight]\r
- Caption = 'Port:'\r
- Enabled = False\r
- end\r
- object LabelAddress: TLabel\r
- Tag = 3\r
- Left = 96\r
- Top = 98\r
- Width = 41\r
- Height = 13\r
- Caption = 'Address:'\r
- Enabled = False\r
- end\r
- object EditMrl: TEdit\r
- Left = 16\r
- Top = 24\r
- Width = 336\r
- Height = 21\r
- Anchors = [akLeft, akTop, akRight]\r
- TabOrder = 0\r
- Text = 'file/ts://'\r
- end\r
- object PanelAccess: TPanel\r
- Left = 16\r
- Top = 56\r
- Width = 73\r
- Height = 97\r
- TabOrder = 1\r
- object RadioButtonFile: TRadioButton\r
- Tag = 3\r
- Left = 8\r
- Top = 8\r
- Width = 49\r
- Height = 17\r
- Caption = 'File'\r
- Checked = True\r
- TabOrder = 0\r
- TabStop = True\r
- OnClick = RadioButtonAccessClick\r
- end\r
- object RadioButtonUDP: TRadioButton\r
- Tag = 3\r
- Left = 8\r
- Top = 40\r
- Width = 49\r
- Height = 17\r
- Caption = 'UDP'\r
- TabOrder = 1\r
- OnClick = RadioButtonAccessClick\r
- end\r
- object RadioButtonRTP: TRadioButton\r
- Tag = 3\r
- Left = 8\r
- Top = 72\r
- Width = 49\r
- Height = 17\r
- Caption = 'RTP'\r
- TabOrder = 2\r
- OnClick = RadioButtonAccessClick\r
- end\r
- end\r
- object ButtonBrowse: TButton\r
- Tag = 3\r
- Left = 277\r
- Top = 60\r
- Width = 75\r
- Height = 25\r
- Anchors = [akTop, akRight]\r
- Caption = 'Browse...'\r
- TabOrder = 3\r
- OnClick = ButtonBrowseClick\r
- end\r
- object EditFile: TEdit\r
- Left = 96\r
- Top = 62\r
- Width = 176\r
- Height = 21\r
- Anchors = [akLeft, akTop, akRight]\r
- TabOrder = 2\r
- OnChange = CustomEditChange\r
- end\r
- object SpinEditPort: TCSpinEdit\r
- Left = 295\r
- Top = 93\r
- Width = 57\r
- Height = 22\r
- TabStop = True\r
- Anchors = [akTop, akRight]\r
- Enabled = False\r
- MaxValue = 100000\r
- ParentColor = False\r
- TabOrder = 5\r
- Value = 1234\r
- OnChange = CustomEditChange\r
- OnClick = CustomEditChange\r
- end\r
- object EditAddress: TEdit\r
- Left = 144\r
- Top = 94\r
- Width = 112\r
- Height = 21\r
- Anchors = [akLeft, akTop, akRight]\r
- Enabled = False\r
- TabOrder = 4\r
- Text = '239.239.0.1'\r
- OnChange = CustomEditChange\r
- end\r
- object PanelMux: TPanel\r
- Left = 184\r
- Top = 124\r
- Width = 88\r
- Height = 25\r
- Anchors = [akLeft, akTop, akRight]\r
- TabOrder = 6\r
- object RadioButtonPS: TRadioButton\r
- Tag = 3\r
- Left = 3\r
- Top = 4\r
- Width = 41\r
- Height = 17\r
- Anchors = [akTop]\r
- Caption = 'PS'\r
- TabOrder = 0\r
- OnClick = RadioButtonMuxClick\r
- end\r
- object RadioButtonTS: TRadioButton\r
- Tag = 3\r
- Left = 39\r
- Top = 4\r
- Width = 41\r
- Height = 17\r
- Anchors = [akTop]\r
- Caption = 'TS'\r
- Checked = True\r
- TabOrder = 1\r
- TabStop = True\r
- OnClick = RadioButtonMuxClick\r
- end\r
- end\r
- end\r
- object ButtonOK: TButton\r
- Tag = 3\r
- Left = 218\r
- Top = 184\r
- Width = 75\r
- Height = 23\r
- Caption = 'OK'\r
- Default = True\r
- ModalResult = 1\r
- TabOrder = 1\r
- OnClick = ButtonOKClick\r
- end\r
- object ButtonCancel: TButton\r
- Tag = 3\r
- Left = 301\r
- Top = 184\r
- Width = 75\r
- Height = 23\r
- Cancel = True\r
- Caption = 'Cancel'\r
- ModalResult = 2\r
- TabOrder = 2\r
- end\r
- object OpenDialog1: TOpenDialog\r
- Left = 120\r
- Top = 128\r
- end\r
-end\r
+++ /dev/null
-/*****************************************************************************\r
- * sout.h: the stream ouput dialog box\r
- *****************************************************************************\r
- * Copyright (C) 2002-2003 VideoLAN\r
- * $Id: sout.h,v 1.4 2003/02/12 02:11:58 ipkiss Exp $\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef soutH\r
-#define soutH\r
-//---------------------------------------------------------------------------\r
-#include <Classes.hpp>\r
-#include <Controls.hpp>\r
-#include <StdCtrls.hpp>\r
-#include <Forms.hpp>\r
-#include <ExtCtrls.hpp>\r
-#include "CSPIN.h"\r
-#include <Dialogs.hpp>\r
-#include <Buttons.hpp>\r
-//---------------------------------------------------------------------------\r
-class TSoutDlg : public TForm\r
-{\r
-__published: // IDE-managed Components\r
- TGroupBox *GroupBoxStreamOut;\r
- TEdit *EditMrl;\r
- TPanel *PanelAccess;\r
- TRadioButton *RadioButtonFile;\r
- TRadioButton *RadioButtonUDP;\r
- TRadioButton *RadioButtonRTP;\r
- TOpenDialog *OpenDialog1;\r
- TButton *ButtonBrowse;\r
- TEdit *EditFile;\r
- TCSpinEdit *SpinEditPort;\r
- TEdit *EditAddress;\r
- TLabel *LabelPort;\r
- TLabel *LabelAddress;\r
- TPanel *PanelMux;\r
- TRadioButton *RadioButtonPS;\r
- TRadioButton *RadioButtonTS;\r
- TButton *ButtonOK;\r
- TButton *ButtonCancel;\r
- void __fastcall ButtonBrowseClick( TObject *Sender );\r
- void __fastcall CustomEditChange( TObject *Sender );\r
- void __fastcall RadioButtonMuxClick( TObject *Sender );\r
- void __fastcall RadioButtonAccessClick( TObject *Sender );\r
- void __fastcall ButtonOKClick( TObject *Sender );\r
-private: // User declarations\r
- void __fastcall RebuildMrl();\r
- intf_thread_t *p_intf;\r
-public: // User declarations\r
- __fastcall TSoutDlg( TComponent* Owner, intf_thread_t *_p_intf );\r
-};\r
-//---------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-/*****************************************************************************\r
- * subtitles.cpp: Dialog box for divx subtitle selection\r
- *****************************************************************************\r
- * Copyright (C) 2002-2003 VideoLAN\r
- * $Id: subtitles.cpp,v 1.3 2003/02/12 02:11:58 ipkiss Exp $\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include <vcl.h>\r
-#pragma hdrstop\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-\r
-#include "subtitles.h"\r
-#include "misc.h"\r
-#include "win32_common.h"\r
-\r
-//---------------------------------------------------------------------------\r
-#pragma resource "*.dfm"\r
-//---------------------------------------------------------------------------\r
-__fastcall TSubtitlesDlg::TSubtitlesDlg( TComponent* Owner,\r
- intf_thread_t *_p_intf ) : TForm( Owner )\r
-{\r
- p_intf = _p_intf;\r
-\r
- Constraints->MinWidth = Width;\r
- Constraints->MinHeight = Height;\r
-\r
- Translate( this );\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TSubtitlesDlg::ButtonBrowseClick( TObject *Sender )\r
-{\r
- if( OpenDialog1->Execute() )\r
- {\r
- EditFile->Text = OpenDialog1->FileName;\r
- }\r
-}\r
-//---------------------------------------------------------------------------\r
-void __fastcall TSubtitlesDlg::ButtonOKClick( TObject *Sender )\r
-{\r
- int delay = (int) (10 * atof( EditDelay->Text.c_str() ));\r
- float fps = atof( EditFPS->Text.c_str() );\r
- config_PutPsz( p_intf, "sub-file", EditFile->Text.c_str() );\r
- config_PutInt( p_intf, "sub-delay", delay );\r
- config_PutFloat( p_intf, "sub-fps", fps );\r
-}\r
-//---------------------------------------------------------------------------\r
-\r
+++ /dev/null
-object SubtitlesDlg: TSubtitlesDlg\r
- Tag = 3\r
- Left = 520\r
- Top = 185\r
- Width = 338\r
- Height = 172\r
- Caption = 'Add subtitles'\r
- Color = clBtnFace\r
- Font.Charset = DEFAULT_CHARSET\r
- Font.Color = clWindowText\r
- Font.Height = -11\r
- Font.Name = 'MS Sans Serif'\r
- Font.Style = []\r
- OldCreateOrder = False\r
- PixelsPerInch = 96\r
- TextHeight = 13\r
- object GroupBoxSubtitles: TGroupBox\r
- Tag = 3\r
- Left = 8\r
- Top = 8\r
- Width = 314\r
- Height = 96\r
- Anchors = [akLeft, akTop, akRight]\r
- Caption = 'Select a subtitles file'\r
- TabOrder = 0\r
- object LabelDelay: TLabel\r
- Tag = 3\r
- Left = 48\r
- Top = 64\r
- Width = 30\r
- Height = 13\r
- Caption = 'Delay:'\r
- end\r
- object LabelFPS: TLabel\r
- Tag = 3\r
- Left = 177\r
- Top = 64\r
- Width = 23\r
- Height = 13\r
- Anchors = [akTop, akRight]\r
- Caption = 'FPS:'\r
- end\r
- object EditDelay: TEdit\r
- Left = 88\r
- Top = 60\r
- Width = 57\r
- Height = 21\r
- Hint = 'Set the delay (in seconds)'\r
- ParentShowHint = False\r
- ShowHint = True\r
- TabOrder = 2\r
- Text = '0.0'\r
- end\r
- object EditFPS: TEdit\r
- Left = 209\r
- Top = 60\r
- Width = 57\r
- Height = 21\r
- Hint = 'Set the number of Frames Per Second'\r
- Anchors = [akTop, akRight]\r
- ParentShowHint = False\r
- ShowHint = True\r
- TabOrder = 3\r
- Text = '0.0'\r
- end\r
- object EditFile: TEdit\r
- Left = 16\r
- Top = 24\r
- Width = 194\r
- Height = 21\r
- Anchors = [akLeft, akTop, akRight]\r
- TabOrder = 0\r
- end\r
- object ButtonBrowse: TButton\r
- Tag = 3\r
- Left = 223\r
- Top = 22\r
- Width = 75\r
- Height = 25\r
- Anchors = [akTop, akRight]\r
- Caption = 'Browse...'\r
- TabOrder = 1\r
- OnClick = ButtonBrowseClick\r
- end\r
- end\r
- object ButtonOK: TButton\r
- Tag = 3\r
- Left = 164\r
- Top = 112\r
- Width = 75\r
- Height = 23\r
- Caption = 'OK'\r
- Default = True\r
- ModalResult = 1\r
- TabOrder = 1\r
- OnClick = ButtonOKClick\r
- end\r
- object ButtonCancel: TButton\r
- Tag = 3\r
- Left = 247\r
- Top = 112\r
- Width = 75\r
- Height = 23\r
- Cancel = True\r
- Caption = 'Cancel'\r
- ModalResult = 2\r
- TabOrder = 2\r
- OnClick = ButtonOKClick\r
- end\r
- object OpenDialog1: TOpenDialog\r
- Filter = \r
- 'Subtitles Files (*.txt, *.sub, *.srt, *.ssa)|*.txt;*.sub;*.srt;*' +\r
- '.ssa|All Files (*.*)|*.*'\r
- Left = 16\r
- Top = 64\r
- end\r
-end\r
+++ /dev/null
-/*****************************************************************************\r
- * subtitles.h: Dialog box for divx subtitle selection\r
- *****************************************************************************\r
- * Copyright (C) 2002-2003 VideoLAN\r
- * $Id: subtitles.h,v 1.3 2003/02/12 02:11:58 ipkiss Exp $\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#ifndef subtitlesH\r
-#define subtitlesH\r
-//---------------------------------------------------------------------------\r
-#include <Classes.hpp>\r
-#include <Controls.hpp>\r
-#include <StdCtrls.hpp>\r
-#include <Forms.hpp>\r
-#include <Dialogs.hpp>\r
-#include <Buttons.hpp>\r
-//---------------------------------------------------------------------------\r
-class TSubtitlesDlg : public TForm\r
-{\r
-__published: // IDE-managed Components\r
- TOpenDialog *OpenDialog1;\r
- TGroupBox *GroupBoxSubtitles;\r
- TEdit *EditDelay;\r
- TEdit *EditFPS;\r
- TEdit *EditFile;\r
- TButton *ButtonBrowse;\r
- TLabel *LabelDelay;\r
- TLabel *LabelFPS;\r
- TButton *ButtonOK;\r
- TButton *ButtonCancel;\r
- void __fastcall ButtonBrowseClick( TObject *Sender );\r
- void __fastcall ButtonOKClick( TObject *Sender );\r
-private: // User declarations\r
- intf_thread_t *p_intf;\r
-public: // User declarations\r
- __fastcall TSubtitlesDlg( TComponent* Owner, intf_thread_t *p_intf );\r
-};\r
-//---------------------------------------------------------------------------\r
-#endif\r
+++ /dev/null
-USEUNIT("win32.cpp");\r
-USEFORM("mainframe.cpp", MainFrameDlg);\r
-USEFORM("network.cpp", NetworkDlg);\r
-USEFORM("playlist.cpp", PlaylistDlg);\r
-USEFORM("preferences.cpp", PreferencesDlg);\r
-USEFORM("about.cpp", AboutDlg);\r
-USEFORM("disc.cpp", DiscDlg);\r
-USE("win32_common.h", File);\r
-USEUNIT("menu.cpp");\r
-USEFORM("messages.cpp", MessagesDlg);\r
-USEUNIT("misc.cpp");\r
-USEUNIT("dragdrop.cpp");\r
-USEFORM("sout.cpp", SoutDlg);\r
-USEFORM("subtitles.cpp", SubtitlesDlg);\r
-//---------------------------------------------------------------------------\r
-This file is used by the project manager only and should be treated like the project file\r
-\r
-DllEntryPoint\r
+++ /dev/null
-<?xml version='1.0' encoding='utf-8' ?>\r
-<!-- C++Builder XML Project -->\r
-<PROJECT>\r
- <MACROS>\r
- <VERSION value="BCB.05.03"/>\r
- <PROJECT value="libwin32_plugin.dll"/>\r
- <OBJFILES value="win32.obj mainframe.obj network.obj playlist.obj preferences.obj about.obj \r
- disc.obj menu.obj messages.obj misc.obj dragdrop.obj sout.obj subtitles.obj"/>\r
- <RESFILES value=""/>\r
- <DEFFILE value=""/>\r
- <RESDEPEN value="$(RESFILES) mainframe.dfm network.dfm playlist.dfm preferences.dfm \r
- about.dfm disc.dfm messages.dfm sout.dfm subtitles.dfm"/>\r
- <LIBFILES value=""/>\r
- <LIBRARIES value="VCLX50.lib bcbsmp50.lib VCL50.lib"/>\r
- <SPARELIBS value="VCL50.lib bcbsmp50.lib VCLX50.lib"/>\r
- <PACKAGES value="VCL50.bpi VCLX50.bpi bcbsmp50.bpi QRPT50.bpi VCLDB50.bpi VCLBDE50.bpi \r
- ibsmp50.bpi VCLDBX50.bpi TEEUI50.bpi TEEDB50.bpi TEE50.bpi TEEQR50.bpi \r
- VCLIB50.bpi bcbie50.bpi VCLIE50.bpi INETDB50.bpi INET50.bpi NMFAST50.bpi"/>\r
- <PATHCPP value=".;"/>\r
- <PATHPAS value=".;"/>\r
- <PATHRC value=".;"/>\r
- <PATHASM value=".;"/>\r
- <DEBUGLIBPATH value="$(BCB)\lib\debug"/>\r
- <RELEASELIBPATH value="$(BCB)\lib\release"/>\r
- <LINKER value="tlink32"/>\r
- <USERDEFINES value="_DEBUG;WIN32;__VLC__;__PLUGIN__;MODULE_NAME_IS_win32"/>\r
- <SYSDEFINES value="NO_STRICT"/>\r
- <MAINSOURCE value="win32.bpf"/>\r
- <INCLUDEPATH value="F:\ProgInst\Borland\CBuilder5\Bin;..\..\win32;$(BCB)\include;$(BCB)\include\vcl;..\..\..\include;..\..\..;..\..\..\intl"/>\r
- <LIBPATH value="F:\ProgInst\Borland\CBuilder5\Bin;..\..\win32;$(BCB)\lib\obj;$(BCB)\lib"/>\r
- <WARNINGS value="-w-par"/>\r
- </MACROS>\r
- <OPTIONS>\r
- <CFLAG1 value="-WD -Od -H=$(BCB)\lib\vcl50.csm -Hc -Vx -Ve -X- -r- -a8 -b- -k -y -v -vi- \r
- -tWD -tWM -c"/>\r
- <PFLAGS value="-$Y+ -$W -$O- -v -JPHNE -M"/>\r
- <RFLAGS value=""/>\r
- <AFLAGS value="/mx /w2 /zi"/>\r
- <LFLAGS value="-D"" -aa -Tpd -x -Gn -Gi -v"/>\r
- </OPTIONS>\r
- <LINKER>\r
- <ALLOBJ value="c0d32.obj sysinit.obj $(OBJFILES)"/>\r
- <ALLRES value="$(RESFILES)"/>\r
- <ALLLIB value="$(LIBFILES) $(LIBRARIES) import32.lib cp32mt.lib"/>\r
- </LINKER>\r
- <IDEOPTIONS>\r
-[Version Info]\r
-IncludeVerInfo=0\r
-AutoIncBuild=0\r
-MajorVer=1\r
-MinorVer=0\r
-Release=0\r
-Build=0\r
-Debug=0\r
-PreRelease=0\r
-Special=0\r
-Private=0\r
-DLL=0\r
-Locale=1036\r
-CodePage=1252\r
-\r
-[Version Info Keys]\r
-CompanyName=\r
-FileDescription=\r
-FileVersion=1.0.0.0\r
-InternalName=\r
-LegalCopyright=\r
-LegalTrademarks=\r
-OriginalFilename=\r
-ProductName=\r
-ProductVersion=1.0.0.0\r
-Comments=\r
-\r
-[HistoryLists\hlIncludePath]\r
-Count=1\r
-Item0=..\..\win32;$(BCB)\include;$(BCB)\include\vcl;..\..\..\include;..\..\src\misc\r
-\r
-[HistoryLists\hlLibraryPath]\r
-Count=2\r
-Item0=..\..\win32;$(BCB)\lib\obj;$(BCB)\lib\r
-Item1=..\win32;..\..\win32;$(BCB)\lib\obj;$(BCB)\lib\r
-\r
-[HistoryLists\hlDebugSourcePath]\r
-Count=1\r
-Item0=$(BCB)\source\vcl\r
-\r
-[HistoryLists\hlConditionals]\r
-Count=5\r
-Item0=_DEBUG;WIN32;__VLC__;__PLUGIN__;MODULE_NAME_IS_win32\r
-Item1=_DEBUG;WIN32;__VLC__;__PLUGIN__;MODULE_NAME_IS_win32;MODULE_NAME=win32;MODULE_PATH=modules_gui_win32_win32\r
-Item2=_DEBUG;__VLC__;__PLUGIN__;MODULE_NAME_IS_win32;MODULE_NAME=win32;MODULE_PATH=modules_gui_win32_win32\r
-Item3=_DEBUG;__VLC__;__PLUGIN__\r
-Item4=_DEBUG\r
-\r
-[Debugging]\r
-DebugSourceDirs=$(BCB)\source\vcl\r
-\r
-[Parameters]\r
-RunParams=\r
-HostApplication=\r
-RemoteHost=\r
-RemotePath=\r
-RemoteDebug=0\r
-\r
-[Compiler]\r
-ShowInfoMsgs=0\r
-LinkDebugVcl=0\r
-LinkCGLIB=0\r
-\r
-[Language]\r
-ActiveLang=\r
-ProjectLang=\r
-RootDir=\r
- </IDEOPTIONS>\r
-</PROJECT>\r
+++ /dev/null
-/*****************************************************************************\r
- * win32.cpp : Win32 interface plugin for vlc\r
- *****************************************************************************\r
- * Copyright (C) 2002-2003 VideoLAN\r
- * $Id: win32.cpp,v 1.19 2003/05/15 22:27:37 massiot Exp $\r
- *\r
- * Authors: Olivier Teulière <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-/*****************************************************************************\r
- * Preamble\r
- *****************************************************************************/\r
-#include <vcl.h>\r
-#include <stdlib.h> /* malloc(), free() */\r
-#include <errno.h> /* ENOMEM */\r
-#include <string.h>\r
-\r
-#include <vlc/vlc.h>\r
-#include <vlc/intf.h>\r
-\r
-#include "mainframe.h"\r
-#include "menu.h"\r
-#include "win32_common.h"\r
-\r
-/*****************************************************************************\r
- * Exported interface functions.\r
- *****************************************************************************/\r
-extern "C" __declspec(dllexport)\r
- int __VLC_SYMBOL( vlc_entry ) ( module_t *p_module );\r
-\r
-/*****************************************************************************\r
- * Local prototypes.\r
- *****************************************************************************/\r
-static int Open ( vlc_object_t * );\r
-static void Close ( vlc_object_t * );\r
-static void Run ( intf_thread_t * );\r
-\r
-int Win32Manage( void *p_data );\r
-\r
-/*****************************************************************************\r
- * Open: initialize interface\r
- *****************************************************************************/\r
-static int Open ( vlc_object_t *p_this )\r
-{\r
- intf_thread_t *p_intf = (intf_thread_t *)p_this;\r
-\r
- /* Allocate instance and initialize some members */\r
- p_intf->p_sys = (intf_sys_t *) malloc( sizeof( intf_sys_t ) );\r
- if( p_intf->p_sys == NULL )\r
- {\r
- msg_Err( p_intf, "out of memory" );\r
- return( 1 );\r
- };\r
-\r
- p_intf->pf_run = Run;\r
-\r
- p_intf->p_sys->p_sub = msg_Subscribe( p_intf );\r
-\r
- /* Initialize Win32 thread */\r
- p_intf->p_sys->b_playing = 0;\r
- p_intf->p_sys->b_popup_changed = 0;\r
-\r
- p_intf->p_sys->p_input = NULL;\r
- p_intf->p_sys->i_playing = -1;\r
- p_intf->p_sys->b_play_when_adding = VLC_TRUE;\r
-\r
- p_intf->p_sys->b_slider_free = 1;\r
-\r
- p_intf->p_sys->b_aout_update = VLC_FALSE;\r
- p_intf->p_sys->b_vout_update = VLC_FALSE;\r
- p_intf->p_sys->b_program_update = VLC_FALSE;\r
- p_intf->p_sys->b_title_update = VLC_FALSE;\r
- p_intf->p_sys->b_chapter_update = VLC_FALSE;\r
- p_intf->p_sys->b_audio_update = VLC_FALSE;\r
- p_intf->p_sys->b_spu_update = VLC_FALSE;\r
-\r
- return( 0 );\r
-}\r
-\r
-/*****************************************************************************\r
- * Close: destroy interface\r
- *****************************************************************************/\r
-static void Close ( vlc_object_t *p_this )\r
-{\r
- intf_thread_t *p_intf = (intf_thread_t *)p_this;\r
-\r
- if( p_intf->p_sys->p_input )\r
- {\r
- vlc_object_release( p_intf->p_sys->p_input );\r
- }\r
-\r
- msg_Unsubscribe( p_intf, p_intf->p_sys->p_sub );\r
-\r
- /* Destroy structure */\r
- free( p_intf->p_sys );\r
-}\r
-\r
-/*****************************************************************************\r
- * Run: main loop\r
- *****************************************************************************/\r
-static void Run( intf_thread_t *p_intf )\r
-{\r
- p_intf->p_sys->p_window = new TMainFrameDlg( NULL, p_intf );\r
- p_intf->p_sys->p_playwin = new TPlaylistDlg( NULL, p_intf );\r
- p_intf->p_sys->p_messages = new TMessagesDlg( NULL, p_intf );\r
- p_intf->p_sys->p_menus = new TMenusGen( p_intf );\r
-\r
- /* show main window and wait until it is closed */\r
- p_intf->p_sys->p_window->ShowModal();\r
-\r
- if( p_intf->p_sys->p_disc ) delete p_intf->p_sys->p_disc;\r
- if( p_intf->p_sys->p_network ) delete p_intf->p_sys->p_network;\r
- if( p_intf->p_sys->p_preferences ) delete p_intf->p_sys->p_preferences;\r
- delete p_intf->p_sys->p_menus;\r
- delete p_intf->p_sys->p_messages;\r
- delete p_intf->p_sys->p_playwin;\r
- delete p_intf->p_sys->p_window;\r
-}\r
-\r
-/*****************************************************************************\r
- * Win32Manage: manage main thread messages\r
- *****************************************************************************\r
- * In this function, called approx. 10 times a second, we check what the\r
- * main program wanted to tell us.\r
- *****************************************************************************/\r
-int Win32Manage( intf_thread_t *p_intf )\r
-{\r
- vlc_mutex_lock( &p_intf->change_lock );\r
-\r
- /* If the "display popup" flag has changed */\r
- if( p_intf->b_menu_change )\r
- {\r
- /* FIXME: It would be nice to close the popup when the user left-clicks\r
- elsewhere, or to actualize the position when he right-clicks again,\r
- but i couldn't find a way to close it :-( */\r
- TPoint MousePos = Mouse->CursorPos;\r
- p_intf->p_sys->p_window->PopupMenuMain->Popup( MousePos.x, MousePos.y );\r
- p_intf->b_menu_change = 0;\r
- }\r
-\r
- /* Update the log window */\r
- p_intf->p_sys->p_messages->UpdateLog();\r
-\r
- /* Update the playlist */\r
- p_intf->p_sys->p_playwin->Manage();\r
-\r
- /* Update the input */\r
- if( p_intf->p_sys->p_input == NULL )\r
- {\r
- p_intf->p_sys->p_input = (input_thread_t *)\r
- vlc_object_find( p_intf, VLC_OBJECT_INPUT, FIND_ANYWHERE );\r
- }\r
- else if( p_intf->p_sys->p_input->b_dead )\r
- {\r
- vlc_object_release( p_intf->p_sys->p_input );\r
- p_intf->p_sys->p_input = NULL;\r
- }\r
-\r
- if( p_intf->p_sys->p_input != NULL && !p_intf->p_sys->p_input->b_die )\r
- {\r
- vlc_bool_t b_need_menus = VLC_FALSE;\r
- input_thread_t * p_input = p_intf->p_sys->p_input;\r
- vlc_object_t * p_aout = NULL;\r
- vlc_object_t * p_vout = NULL;\r
-\r
- vlc_mutex_lock( &p_input->stream.stream_lock );\r
-\r
- /* New input or stream map change */\r
- if( p_input->stream.b_changed )\r
- {\r
- p_intf->p_sys->p_window->ModeManage();\r
- b_need_menus = VLC_TRUE;\r
- p_intf->p_sys->b_playing = 1;\r
- }\r
-\r
- /* Manage the slider */\r
- if( p_input->stream.b_seekable && p_intf->p_sys->b_playing )\r
- {\r
- TTrackBar * TrackBar = p_intf->p_sys->p_window->TrackBar;\r
- off_t NewValue = TrackBar->Position;\r
-\r
-#define p_area p_input->stream.p_selected_area\r
- /* If the user hasn't touched the slider since the last time,\r
- * then the input can safely change it */\r
- if( NewValue == p_intf->p_sys->OldValue )\r
- {\r
- /* Update the value */\r
- TrackBar->Position = p_intf->p_sys->OldValue =\r
- ( (off_t)SLIDER_MAX_VALUE * p_area->i_tell ) /\r
- p_area->i_size;\r
- }\r
- /* Otherwise, send message to the input if the user has\r
- * finished dragging the slider */\r
- else if( p_intf->p_sys->b_slider_free )\r
- {\r
- off_t i_seek = ( NewValue * p_area->i_size ) /\r
- (off_t)SLIDER_MAX_VALUE;\r
-\r
- /* release the lock to be able to seek */\r
- vlc_mutex_unlock( &p_input->stream.stream_lock );\r
- input_Seek( p_input, i_seek, INPUT_SEEK_SET );\r
- vlc_mutex_lock( &p_input->stream.stream_lock );\r
-\r
- /* Update the old value */\r
- p_intf->p_sys->OldValue = NewValue;\r
- }\r
-# undef p_area\r
-\r
- }\r
-\r
- if( p_intf->p_sys->i_part != p_input->stream.p_selected_area->i_part )\r
- {\r
- p_intf->p_sys->b_chapter_update = 1;\r
- b_need_menus = VLC_TRUE;\r
- }\r
-\r
- /* Does the audio output require to update the menus ? */\r
- p_aout = (vlc_object_t *)vlc_object_find( p_intf, VLC_OBJECT_AOUT,\r
- FIND_ANYWHERE );\r
- if( p_aout != NULL )\r
- {\r
- vlc_value_t val;\r
- if( var_Get( p_aout, "intf-change", &val ) >= 0\r
- && val.b_bool )\r
- {\r
- p_intf->p_sys->b_aout_update = 1;\r
- b_need_menus = VLC_TRUE;\r
- }\r
-\r
- vlc_object_release( p_aout );\r
- }\r
-\r
- /* Does the video output require to update the menus ? */\r
- p_vout = (vlc_object_t *)vlc_object_find( p_intf, VLC_OBJECT_VOUT,\r
- FIND_ANYWHERE );\r
- if( p_vout != NULL )\r
- {\r
- vlc_value_t val;\r
- if( var_Get( p_vout, "intf-change", &val ) >= 0\r
- && val.b_bool )\r
- {\r
- p_intf->p_sys->b_vout_update = 1;\r
- b_need_menus = VLC_TRUE;\r
- }\r
-\r
- if( var_Get( p_vout, "directx-on-top", &val ) >= 0 )\r
- {\r
- p_intf->p_sys->p_window->MenuOnTop->Checked = val.b_bool;\r
- p_intf->p_sys->p_window->PopupOnTop->Checked = val.b_bool;\r
- }\r
-\r
- vlc_object_release( p_vout );\r
- }\r
-\r
- if( b_need_menus )\r
- {\r
- p_intf->p_sys->p_menus->SetupMenus();\r
- }\r
-\r
- vlc_mutex_unlock( &p_input->stream.stream_lock );\r
- }\r
- else if( p_intf->p_sys->b_playing && !p_intf->b_die )\r
- {\r
- p_intf->p_sys->p_window->ModeManage();\r
- p_intf->p_sys->b_playing = 0;\r
- }\r
-\r
- if( p_intf->b_die )\r
- {\r
- vlc_mutex_unlock( &p_intf->change_lock );\r
-\r
- /* Prepare to die, young Skywalker */\r
- p_intf->p_sys->p_window->ModalResult = mrOk;\r
-\r
- /* Just in case */\r
- return( FALSE );\r
- }\r
-\r
- vlc_mutex_unlock( &p_intf->change_lock );\r
-\r
- return( TRUE );\r
-}\r
-\r
-/*****************************************************************************\r
- * Module descriptor\r
- *****************************************************************************/\r
-\r
-#define MAX_LINES_TEXT N_( "Maximum number of lines in the log window" )\r
-#define MAX_LINES_LONGTEXT N_( \\r
- "You can set the maximum number of lines that the log window will display."\\r
- " Enter -1 if you want to keep all messages." )\r
-#define SHOW_CAPTIONS_TEXT N_( "Display text under images in the toolbar" )\r
-#define SHOW_CAPTIONS_LONGTEXT N_( \\r
- "Check this option if you want to display the caption of the buttons in " \\r
- "the toolbar. Beware, the display may be messed up" )\r
-\r
-vlc_module_begin();\r
- add_category_hint( N_("Miscellaneous"), NULL, VLC_TRUE );\r
- add_integer( "intfwin-max-lines", 500, NULL, MAX_LINES_TEXT,\r
- MAX_LINES_LONGTEXT, VLC_TRUE );\r
- add_bool( "intfwin-show-captions", 0, NULL, SHOW_CAPTIONS_TEXT,\r
- SHOW_CAPTIONS_LONGTEXT, VLC_FALSE );\r
- set_description( _("Native Windows interface") );\r
- set_capability( "interface", 100 );\r
- set_callbacks( E_(Open), E_(Close) );\r
- add_shortcut( "win" );\r
- add_shortcut( "win32" );\r
-vlc_module_end();\r
+++ /dev/null
-/*****************************************************************************\r
- * win32_common.h: private win32 interface description\r
- *****************************************************************************\r
- * Copyright (C) 2002 VideoLAN\r
- *\r
- * Authors: Olivier Teuliere <ipkiss@via.ecp.fr>\r
- *\r
- * This program is free software; you can redistribute it and/or modify\r
- * it under the terms of the GNU General Public License as published by\r
- * the Free Software Foundation; either version 2 of the License, or\r
- * (at your option) any later version.\r
- *\r
- * This program is distributed in the hope that it will be useful,\r
- * but WITHOUT ANY WARRANTY; without even the implied warranty of\r
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\r
- * GNU General Public License for more details.\r
- *\r
- * You should have received a copy of the GNU General Public License\r
- * along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA.\r
- *****************************************************************************/\r
-\r
-#include "disc.h"\r
-#include "mainframe.h"\r
-#include "menu.h"\r
-#include "messages.h"\r
-#include "network.h"\r
-#include "playlist.h"\r
-#include "preferences.h"\r
-\r
-/*****************************************************************************\r
- * The TrackBar is graduated from 0 to SLIDER_MAX_VALUE.\r
- * SLIDER_MAX_VALUE is set to the higher acceptable value (2^31 - 1), in order\r
- * to obtain the best precision in date calculation\r
- *****************************************************************************/\r
-#define SLIDER_MAX_VALUE 2147483647\r
-\r
-/*****************************************************************************\r
- * intf_sys_t: description and status of Win32 interface\r
- *****************************************************************************/\r
-struct intf_sys_t\r
-{\r
- /* special actions */\r
- vlc_bool_t b_playing;\r
- vlc_bool_t b_popup_changed; /* display popup menu ? */\r
- vlc_bool_t b_slider_free; /* slider status */\r
-\r
- /* menus handlers */\r
- vlc_bool_t b_aout_update; /* do we need to update menus\r
- related with audio output */\r
- vlc_bool_t b_vout_update; /* do we need to update menus\r
- related with video output */\r
- vlc_bool_t b_program_update; /* do we need to update programs\r
- menu */\r
- vlc_bool_t b_title_update; /* do we need to update title menus */\r
- vlc_bool_t b_chapter_update; /* do we need to update chapter\r
- menus */\r
- vlc_bool_t b_audio_update; /* do we need to update audio menus */\r
- vlc_bool_t b_spu_update; /* do we need to update spu menus */\r
-\r
- /* windows and widgets */\r
- TMainFrameDlg * p_window; /* main window */\r
- TPlaylistDlg * p_playwin; /* playlist */\r
- TPopupMenu * p_popup; /* popup menu */\r
- TDiscDlg * p_disc; /* disc selection window */\r
- TNetworkDlg * p_network; /* network stream window */\r
- TPreferencesDlg * p_preferences; /* preferences window */\r
- TMenusGen * p_menus; /* object for menu generation */\r
-\r
- /* The slider */\r
- off_t OldValue; /* previous value */\r
-\r
- /* The messages window */\r
- TMessagesDlg * p_messages; /* messages window */\r
- msg_subscription_t* p_sub; /* message bank subscription */\r
-\r
- /* Playlist management */\r
- int i_playing; /* playlist selected item */\r
- vlc_bool_t b_play_when_adding;\r
-\r
- /* The window labels for DVD mode */\r
- TLabel * p_label_title;\r
- TLabel * p_label_chapter;\r
- unsigned int i_part; /* current chapter */\r
-\r
- /* The input thread */\r
- input_thread_t * p_input;\r
-};\r
-\r