<?xml version="1.0" encoding="utf-8" standalone="yes"?>

<?xml-stylesheet href="./_c74_ref.xsl" type="text/xsl"?>

<!--This is an automatically generated file. DO NOT EDIT THIS FILE DIRECTLY. Rather, use the _ref.xml files found in the 'edits' folder.-->
<c74object name="live.drop" module="m4l" category="M4L U/I">
	<digest>
		Define a region for dragging and dropping a file
	</digest>
	<description>
		The <o>live.drop</o> objects defines a region for dragging and dropping files and outputs the filepath when a file is dropped onto it.
	</description>
	<!--METADATA-->
	<metadatalist>
		<metadata name="author">
			Cycling '74
		</metadata>
		<metadata name="tag">
			Live
		</metadata>
		<metadata name="tag">
			M4L U/I
		</metadata>
	</metadatalist>
	<!--INLETS-->
	<inletlist>
		<inlet id="0" type="INLET_TYPE">
			<digest>
				Message In (colors...)
			</digest>
			<description>
				TEXT_HERE
			</description>
		</inlet>
	</inletlist>
	<!--OUTLETS-->
	<outletlist>
		<outlet id="0" type="OUTLET_TYPE">
			<digest>
				Pathname of the Dropped File
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
		<outlet id="1" type="OUTLET_TYPE">
			<digest>
				Type Code of Dropped File
			</digest>
			<description>
				TEXT_HERE
			</description>
		</outlet>
	</outletlist>
	<palette category="Live" action="live.drop" pic="live.drop.svg" />
	<!--ARGUMENTS-->
	<objarglist>
		<objarg id="0" name="OBJARG_NAME" type="OBJARG_TYPE" optional="0">
			<digest>
				TEXT_HERE
			</digest>
			<description>
				TEXT_HERE
			</description>
		</objarg>
	</objarglist>
	<!--parameter-->
	<parameter />
	<!--MESSAGES-->
	<methodlist>
		<method name="bang">
			<arglist />
			<digest>
				Sends the current path out the outlet.
			</digest>
			<description>
				Sends the current path out the outlet.
			</description>
		</method>
		<method name="(drag)">
			<digest>
				When a file is selected and dragged from the Live application's File Browser onto a <o>live.drop</o> object in a Max for Live device, the full pathname of the file is sent out the <o>live.drop</o> object's outlet.
				<br />
				The object will also provide the full pathname for a file when its icon is dragged from the Max File Browser or your computer's Finder onto a <o>live.drop</o> object.
				<br />
				The <o>live.drop</o> object can be used with encrypted and encoded samples from Live's File Browser. Encrypted samples will be decrypted, and a temporary filename will be passed from the object's outlet, which can be used by objects in MaxMSP. Note that this temporary file will become invalid <i>1 minute</i> after the last object (including <o>live.drop</o>)
			</digest>
			<description>
				When a file is selected and dragged from the Live application's File Browser onto a <o>live.drop</o> object in a Max for Live device, the full pathname of the file is sent out the <o>live.drop</o> object's outlet.
				<br />
				The object will also provide the full pathname for a file when its icon is dragged from the Max File Browser or your computer's Finder onto a <o>live.drop</o> object.
				<br />
				The <o>live.drop</o> object can be used with encrypted and encoded samples from Live's File Browser. Encrypted samples will be decrypted, and a temporary filename will be passed from the object's outlet, which can be used by objects in MaxMSP. Note that this temporary file will become invalid <i>1 minute</i> after the last object (including <o>live.drop</o>) in MaxMSP has stopped using it.
				<br />
				Encoded samples (e.g. .mp3, .flac) are handled similarly, although they are not automatically invalidated after use. Please see the <at>decodemode</at> attribute for more information about encoded samples.
			</description>
		</method>
		<method name="clear">
			<arglist />
			<digest>
				Clears the currently stored filepath.
			</digest>
			<description>
				Clears the currently stored filepath.
			</description>
		</method>
		<method name="(mouse)">
			<digest>
				To drop a file, click on the name of an audio file or its icon in the Live application's file browser, drag it onto the <o>live.drop</o> object's display area, and release the mouse button.
				<br />
				<br />
				When the mouse is positioned over the <o>live.drop</o> object, a round button will appear in the lower right-hand portion of the object's display. The button indicates the enabled or disabled state for dragging and dropping, and is enabled by default. To toggle drag and drop behavior, click on the round button. The button's color (set using the <m>circlecolor</m> and <m>circleoncolor</m> attributes found in the object Inspector)
			</digest>
			<description>
				To drop a file, click on the name of an audio file or its icon in the Live application's file browser, drag it onto the <o>live.drop</o> object's display area, and release the mouse button.
				<br />
				<br />
				When the mouse is positioned over the <o>live.drop</o> object, a round button will appear in the lower right-hand portion of the object's display. The button indicates the enabled or disabled state for dragging and dropping, and is enabled by default. To toggle drag and drop behavior, click on the round button. The button's color (set using the <m>circlecolor</m> and <m>circleoncolor</m> attributes found in the object Inspector) changes to indicate its state.
			</description>
		</method>
		<method name="set">
			<arglist>
				<arg name="filepath-name" optional="0" type="list" />
			</arglist>
			<digest>
				The word <m>set</m>, followed by a list that specifies a filepath, sets a filepath to be reported by the the <o>live.drop</o> when it is initialized.
			</digest>
			<description>
				The word <m>set</m>, followed by a list that specifies a filepath, sets a filepath to be reported by the the <o>live.drop</o> when it is initialized. The <m>set</m> message allows you to store a filepath as reported by the object in the parameter and display and output the path as if a file had been manually dropped on the object.
			</description>
		</method>
	</methodlist>
	<!--ATTRIBUTES-->
	<attributelist>
		<attribute name="bordercolor" get="1" set="1" type="float" size="4">
			<digest>
				Border Color
			</digest>
			<description>
				Sets the display color for the <o>live.drop</o> object's border in RGBA format.
			</description>
			<attributelist>
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Color" />
				<attribute name="defaultname" get="1" set="1" type="float" size="4" value="0.196078 0.196078 0.196078 1." />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Border Color" />
				<attribute name="paint" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="save" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="rgba" />
			</attributelist>
		</attribute>
		<attribute name="decodemode" get="1" set="1" type="int" size="1">
			<digest>
				Attempt File Decode
			</digest>
			<description>
				When enabled (default), the <o>live.drop</o> object will attempt to decode non-PCM-audio files dropped on it from Live's file browser (for instance, .mp3, .mp4, .m4v, .mov, .flac, etc.). Decoded files will be cached to a temporary directory on the computer's hard drive. In this case, the filename and path passed out of the object's outlets will refer to the temporary decoded file, not to the original. This feature is limited to file types which Live can decode.
				<br />
				You might wish to disable <at>decodemode</at> if you are using the <o>live.drop</o> object to read, for instance, QuickTime Movie files for use in <o>jit.qt.movie</o> or if you otherwise need the original file data, rather than extracted audio from the dragged file.
			</description>
			<attributelist>
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Attempt File Decode" />
				<attribute name="save" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="onoff" />
			</attributelist>
		</attribute>
		<attribute name="focusbordercolor" get="1" set="1" type="float" size="4">
			<digest>
				Border Color (Focus)
			</digest>
			<description>
				Sets the color of the <o>live.drop</o> object's border when the object has focus in RGBA format.
			</description>
			<attributelist>
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Color" />
				<attribute name="defaultname" get="1" set="1" type="float" size="4" value="0. 0.019608 0.078431 1." />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Border Color (Focus)" />
				<attribute name="paint" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="save" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="rgba" />
			</attributelist>
		</attribute>
		<attribute name="legend" get="1" set="1" type="symbol" size="1">
			<digest>
				Legend Text
			</digest>
			<description>
				Sets the text which appears in the display area of the <o>live.drop</o> object.
			</description>
			<attributelist>
				<attribute name="category" get="1" set="1" type="symbol" size="1" value="Appearance" />
				<attribute name="default" get="1" set="1" type="symbol" size="1" value="Drop Something Here!" />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Legend Text" />
				<attribute name="paint" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="save" get="1" set="1" type="int" size="1" value="1" />
			</attributelist>
		</attribute>
		<attribute name="textcolor" get="1" set="1" type="float" size="4">
			<digest>
				Text Color
			</digest>
			<description>
				Sets the color for the text which appears in the display area of the <o>live.drop</o> object in RGBA format.
			</description>
			<attributelist>
				<attribute name="category" get="1" set="1" type="atom" size="1" value="Color" />
				<attribute name="defaultname" get="1" set="1" type="float" size="4" value="0. 0.019608 0.078431 1." />
				<attribute name="label" get="1" set="1" type="symbol" size="1" value="Text Color" />
				<attribute name="paint" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="save" get="1" set="1" type="int" size="1" value="1" />
				<attribute name="style" get="1" set="1" type="symbol" size="1" value="rgba" />
			</attributelist>
		</attribute>
	</attributelist>
	<!--EXAMPLE-->
	<examplelist>
		<example img="live.drop.png" />
	</examplelist>
	<!--SEEALSO-->
	<seealsolist>
		<seealso name="dropfile" />
	</seealsolist>
	<misc name="Output">
		<entry name="symbol">
			<description>
				Out left outlet: When a file from the Live application browser (or a file icon from the Max File Browser or your computer's Finder) has been dragged onto the <o>live.drop</o> object and the mouse released within its box, the absolute pathname of the file is sent out the left outlet as a single symbol (i.e. surrounded by double quotes).
				<br />
				Absolute pathnames look like this:
				<br />
				<br />
				<m>&quot;C:/Max Folder/extras/mystuff/mypatch.pat&quot;</m> 				<br />
				<br />
				If you want to use the <o>live.drop</o> object to cause a file to be read by another object that accepts the <m>read</m> message with a filename argument, put a <link name="prepend" type="refpage">prepend read</link> object between <o>live.drop</o> object and the object that will open a file.
				<br />
				<br />
				Out right outlet: When a file from the Live application browser (or a file icon from the Max File Browser or your computer's Finder) has been dragged onto the <o>live.drop</o> object and the mouse released within its box, the file type code of the file is sent out the right outlet.
			</description>
		</entry>
	</misc>
</c74object>
