function showUpscale($owner) { $form = New-Object System.Windows.Forms.Form $form.Owner = $owner $form.icon = $icon $form.Text = "Escalar" $form.Width = 445 $form.Height = 440 $form.StartPosition = [System.Windows.Forms.FormStartPosition]::CenterParent $form.MaximizeBox = $false $form.Font = "Microsoft Sans Serif, 9.35" $form.FormBorderStyle = 'FixedDialog' $label_ori = New-Object System.Windows.Forms.Label $label_ori.Text = "Medio:" $label_ori.AutoSize = $true $label_ori.Location = New-Object System.Drawing.Point(20, 23) $text_ori = New-Object System.Windows.Forms.TextBox $text_ori.Text = $sel_ori $text_ori.Width = 171 $text_ori.Location = New-Object System.Drawing.Point(80, 20) $text_ori.add_DoubleClick({ $text_ori.SelectAll(); }) $btn_ori_file = New-Object System.Windows.Forms.Button $btn_ori_file.Text = "Archivo" $btn_ori_file.AutoSize = $true $btn_ori_file.Location = New-Object System.Drawing.Point(256, 18) $btn_ori_file.Add_Click({ $res = selectFile -path "" -formats "Imagenes y videos (*.*)|*.*" -multi $false if ($res -ne $null) { $text_ori.Text = $res $label_name.Enabled = $true $text_name.Enabled = $true $text_name.Text = "$((Get-Item $res).Basename) - Escalado$((Get-Item $res).Extension)" # $text_dest.Text + "\" + $text_name.Text.replace("[filename]", (Get-Item $file).Basename).replace("[.extension]", (Get-Item $file).Extension) } }) $btn_ori_folder = New-Object System.Windows.Forms.Button $btn_ori_folder.Text = "Carpeta" $btn_ori_folder.AutoSize = $true $btn_ori_folder.Location = New-Object System.Drawing.Point(335, 18) $btn_ori_folder.Add_Click({ $res = selectFolder -path $def_dest_dir if ($res -ne $null) { $text_ori.Text = $res $label_name.Enabled = $false $text_name.Enabled = $false $text_name.Text = "" } }) $label_dest = New-Object System.Windows.Forms.Label $label_dest.Text = "Destino:" $label_dest.AutoSize = $true $label_dest.Location = New-Object System.Drawing.Point(20, 58) $text_dest = New-Object System.Windows.Forms.TextBox $text_dest.Text = $def_dest_dir $text_dest.Width = 250 $text_dest.Location = New-Object System.Drawing.Point(80, 55) $text_dest.add_DoubleClick({ $text_dest.SelectAll(); }) $btn_dest = New-Object System.Windows.Forms.Button $btn_dest.Text = "Examinar" $btn_dest.AutoSize = $true $btn_dest.Location = New-Object System.Drawing.Point(335, 53) $btn_dest.Add_Click({ $dest = selectFolder -path $def_dest_dir if ($dest) { $text_dest.Text = $dest } }) $label_name = New-Object System.Windows.Forms.Label $label_name.Text = "Nombre:" $label_name.AutoSize = $true $label_name.Location = New-Object System.Drawing.Point(20, 93) $text_name = New-Object System.Windows.Forms.TextBox # $text_name.Text = "[filename]_UPSCALED[.extension]" $text_name.Width = 328 $text_name.Location = New-Object System.Drawing.Point(80, 91) $text_name.add_TextChanged({ removeInvalidChars -textbox $text_name }) $text_name.add_DoubleClick({ $text_name.SelectAll(); }) $text_name.Add_KeyDown({ if ($_.KeyCode -eq "Enter") { $btn_exec.PerformClick() } }) $label_model = New-Object System.Windows.Forms.Label $label_model.Text = "Modelo:" $label_model.AutoSize = $true $label_model.Location = New-Object System.Drawing.Point(20, 130) $list_model = New-Object System.Windows.Forms.ComboBox $list_model.Width = 328 $list_model.DropDownStyle = [System.Windows.Forms.ComboBoxStyle]::DropDownList; $list_model.Location = New-Object System.Drawing.Point(80, 127) $upscale_models = Get-ChildItem -Path $upscaler_models -Name [Array]::Reverse($upscale_models) foreach ($model in $upscale_models) { $list_model.Items.add($model.Split(".")[0]) } $list_model.SelectedIndex = 0; $label_scale = New-Object System.Windows.Forms.Label $label_scale.Text = "Escalado" $label_scale.AutoSize = $true $label_scale.Location = New-Object System.Drawing.Point(20, 165) $track_scale = New-Object Windows.Forms.TrackBar $track_scale.Location = New-Object System.Drawing.Point(75, 165) $track_scale.Width = 340 $track_scale.TickFrequency = 1 $track_scale.SetRange(0, 6) $track_scale.Value = 3 $scales = @(1, 2, 3, 4, 6, 8, 16) $label_sn1 = New-Object System.Windows.Forms.Label $label_sn1.Text = "x1" $label_sn1.AutoSize = $true $label_sn1.Location = New-Object System.Drawing.Point(80, 192) $form.Controls.Add($label_sn1) $label_sn2 = New-Object System.Windows.Forms.Label $label_sn2.Text = "x2" $label_sn2.AutoSize = $true $label_sn2.Location = New-Object System.Drawing.Point(132, 192) $form.Controls.Add($label_sn2) $label_sn3 = New-Object System.Windows.Forms.Label $label_sn3.Text = "x3" $label_sn3.AutoSize = $true $label_sn3.Location = New-Object System.Drawing.Point(184, 192) $form.Controls.Add($label_sn3) $label_sn4 = New-Object System.Windows.Forms.Label $label_sn4.Text = "x4" $label_sn4.AutoSize = $true $label_sn4.Location = New-Object System.Drawing.Point(238, 192) $form.Controls.Add($label_sn4) $label_sn6 = New-Object System.Windows.Forms.Label $label_sn6.Text = "x6" $label_sn6.AutoSize = $true $label_sn6.Location = New-Object System.Drawing.Point(290, 192) $form.Controls.Add($label_sn6) $label_sn8 = New-Object System.Windows.Forms.Label $label_sn8.Text = "x8" $label_sn8.AutoSize = $true $label_sn8.Location = New-Object System.Drawing.Point(341, 192) $form.Controls.Add($label_sn8) $label_sn16 = New-Object System.Windows.Forms.Label $label_sn16.Text = "x16" $label_sn16.AutoSize = $true $label_sn16.Location = New-Object System.Drawing.Point(388, 192) $form.Controls.Add($label_sn16) $label_tile = New-Object System.Windows.Forms.Label $label_tile.Text = "Tile" $label_tile.AutoSize = $true $label_tile.Location = New-Object System.Drawing.Point(20, 220) $track_tile = New-Object Windows.Forms.TrackBar $track_tile.Location = New-Object System.Drawing.Point(75, 220) $track_tile.Width = 220 $track_tile.TickFrequency = 1 $track_tile.SetRange(0, 4) $track_tile.Value = 4 $tiles = @(0, 32, 64, 128, 256) $label_t0 = New-Object System.Windows.Forms.Label $label_t0.Text = "0" $label_t0.AutoSize = $true $label_t0.Location = New-Object System.Drawing.Point(83, 247) $form.Controls.Add($label_t0) $label_t32 = New-Object System.Windows.Forms.Label $label_t32.Text = "32" $label_t32.AutoSize = $true $label_t32.Location = New-Object System.Drawing.Point(128, 247) $form.Controls.Add($label_t32) $label_t64 = New-Object System.Windows.Forms.Label $label_t64.Text = "64" $label_t64.AutoSize = $true $label_t64.Location = New-Object System.Drawing.Point(177, 247) $form.Controls.Add($label_t64) $label_t128 = New-Object System.Windows.Forms.Label $label_t128.Text = "128" $label_t128.AutoSize = $true $label_t128.Location = New-Object System.Drawing.Point(221, 247) $form.Controls.Add($label_t128) $label_t256 = New-Object System.Windows.Forms.Label $label_t256.Text = "256" $label_t256.AutoSize = $true $label_t256.Location = New-Object System.Drawing.Point(270, 247) $form.Controls.Add($label_t256) $label_temp = New-Object System.Windows.Forms.Label $label_temp.Text = "Directorio de trabajo:" $label_temp.AutoSize = $true $label_temp.Location = New-Object System.Drawing.Point(20, 283) $text_temp = New-Object System.Windows.Forms.TextBox $text_temp.Text = $ENV:Temp $text_temp.Width = 185 $text_temp.Location = New-Object System.Drawing.Point(145, 280) $text_temp.add_DoubleClick({ $text_temp.SelectAll(); }) $btn_temp = New-Object System.Windows.Forms.Button $btn_temp.Text = "Examinar" $btn_temp.AutoSize = $true $btn_temp.Location = New-Object System.Drawing.Point(335, 278) $btn_temp.Add_Click({ $tmp = selectFolder -path $text_temp.Text if ($tmp) { $text_temp.Text = $tmp } }) $check_rem = New-Object System.Windows.Forms.Checkbox $check_rem.Location = New-Object System.Drawing.Point(25, 315) $check_rem.AutoSize = $true $check_rem.Text = "Eliminar frames al finalizar" $check_rem.Checked = $true $btn_exec = New-Object System.Windows.Forms.Button $btn_exec.Text = "Escalar" $btn_exec.Location = New-Object System.Drawing.Point(140, 355) $btn_exec.Width = 150 $btn_exec.Height = 30 $btn_exec.Add_Click({ try { $prevCode = startAlwaysOn # $sca = [Math]::Pow(2, $track_scale.Value) $sca = $scales[$track_scale.Value] $tile = $tiles[$track_tile.Value] foreach ($file in $text_ori.Text) { # $out = $text_dest.Text + "\" + $text_name.Text.replace("[filename]", (Get-Item $file).Basename).replace("[.extension]", (Get-Item $file).Extension) $out = $text_dest.Text if (-not (isDirectory -path $file)) { $out = "$out\$($text_name.Text)" } upscale -in $file -out $out -model $list_model.SelectedItem -scale $sca -temp $text_temp.Text -remove $check_rem.Checked -tile $tile } } finally { endAlwaysOn -code $prevCode } }) $form.Controls.Add($label_ori) $form.Controls.Add($text_ori) $form.Controls.Add($btn_ori_file) $form.Controls.Add($btn_ori_folder) $form.Controls.Add($label_dest) $form.Controls.Add($text_dest) $form.Controls.Add($btn_dest) $form.Controls.Add($label_name) $form.Controls.Add($text_name) $form.Controls.Add($label_model) $form.Controls.Add($list_model) $form.Controls.Add($label_scale) $form.Controls.Add($track_scale) $form.Controls.Add($label_temp) $form.Controls.Add($text_temp) $form.Controls.Add($btn_temp) $form.Controls.Add($check_rem) $form.Controls.Add($btn_exec) $form.Controls.Add($label_tile) $form.Controls.Add($track_tile) $text_ori.Select() $form.Add_Closing({ $owner.Location = getRelativeLocation -parent $owner -child $form $form.Hide() $owner.Show() }) [PSAppID]::SetAppIdForWindow($form.handle, "$($metadata.package).$app_name") $form.Add_LocationChanged({ $global:win_loc = $form.Location }) $form.Add_Resize({ $global:win_size = $form.Size }) $form.ShowDialog() }