/* 
-------------------------------------------------------------------------------
Author: Mihail Lupu
Description: RenderUVlayout v.01
Date: 14.10.2018
-------------------------------------------------------------------------------
 */

try (destroydialog ::RenderUVlayout) catch()
rollout RenderUVlayout "UV Layout"
(
	-- UI start
	button btn "Copy Layout" pos:[0,5]
	dropdownlist ddl_size "" items:#("256","512","1024","2048","4096", "8192") selection:3 pos:(btn.pos + [80,0]) width:55
	checkbox chk_solid "Solid" pos:(ddl_size.pos + [60,2])
	
	--Script
	on btn pressed do (
	max modify mode
		local obj = selection[1]
		if obj != undefined then (
			if hasproperty obj "mapcoords" or canconvertto obj editable_poly do	(
				local uv = Unwrap_UVW setMapChannel:1; addmodifier obj uv
				local uvMod = obj.modifiers[#Unwrap_UVW];
				local size  = (ddl_size.selected as integer)
				uvMod.renderuv_width  = size
				uvMod.renderuv_height = size
				
				if chk_solid.checked == true then (			
					uvMod.renderuv_fillmode = 1
					uvMod.renderuv_visibleedges = false
					uvMod.renderuv_seamedges = false
				)
				else (
					uvMod.renderuv_fillmode = 0
					uvMod.renderuv_seamColor = white
					uvMod.renderuv_visibleedges = true
					uvMod.renderuv_seamedges = true
				)
				
				uvMod.renderuv_showframebuffer = false
				clipboard = dotNetClass "System.Windows.Forms.Clipboard"
				UVlayoutFile = GetDir #renderoutput + "\\renderedUVLayout.jpg" 
				uvMod.renderuv UVlayoutFile
				theImage  = dotNetClass "System.Drawing.Image"
				theBitmap = theImage.FromFile UVlayoutFile
				clipboard.setImage theBitmap
				theBitmap.Dispose()
				deleteFile UVlayoutFile
				clipboard.ContainsImage()
	-- 			uvMod.renderuv_showframebuffer = true --reset to default
				deletemodifier obj uv
			)
		)
	)
	
)
createdialog RenderUVlayout 180 30

	