|
39 | 39 | await Html.RenderPartialAsync("_PromptOptionsForm", Model.Prompt);
|
40 | 40 | await Html.RenderPartialAsync("_SchedulerOptionsForm", Model.Options);
|
41 | 41 | }
|
42 |
| - <div class="d-flex flex-column flex-grow-0 w-100" > |
| 42 | + <div class="d-flex flex-column flex-grow-0 w-100"> |
43 | 43 | <div class="d-flex flex-row gap-2 justify-content-end" autocomplete="off">
|
44 | 44 | <button type="button" class="btn-cancel btn btn-warning w-100" disabled>Cancel</button>
|
45 | 45 | <button id="btn-execute" type="button" class="btn btn-success w-100" disabled>Generate</button>
|
|
98 | 98 | </div>
|
99 | 99 | <div class="d-flex flex-row gap-2 pt-2">
|
100 | 100 | <button type="button" class="btn btn-sm btn-success w-100" disabled>Download</button>
|
101 |
| - <button type="button" class="btn btn-sm btn-info w-100" disabled>Image To Image</button> |
| 101 | + <button type="button" class="btn btn-sm btn-info w-100" disabled>Image To Image</button> |
102 | 102 | </div>
|
103 | 103 | </div>
|
104 | 104 | </script>
|
|
141 | 141 | <li><a class="dropdown-item" href="{{blueprintUrl}}" download="{{blueprintName}}">Download JSON</a></li>
|
142 | 142 | </ul>
|
143 | 143 | </div>
|
144 |
| - <button type="button" class="btn btn-sm btn-info w-100" disabled>Image To Image</button> |
| 144 | + <button id="button-img2img" type="button" class="btn btn-sm btn-info w-100">Image To Image</button> |
145 | 145 | </div>
|
146 | 146 | </div>
|
147 | 147 | </script>
|
|
233 | 233 | if (!validateForm(schedulerParameterForm))
|
234 | 234 | return;
|
235 | 235 |
|
236 |
| - const inputImageUrl = getInputImageUrl(); |
| 236 | + const inputImageUrl = getImageUrl("#img-input"); |
237 | 237 | if (!inputImageUrl)
|
238 | 238 | return;
|
239 | 239 |
|
|
338 | 338 | return +$("option:selected", textBoxHeight).val();
|
339 | 339 | }
|
340 | 340 |
|
341 |
| - const getInputImageUrl = () => { |
342 |
| - const imageName = getInputImageName(); |
| 341 | + const getImageUrl = (img) => { |
| 342 | + const imageName = getImageName(img); |
343 | 343 | if (!imageName)
|
344 | 344 | return null;
|
345 | 345 |
|
346 |
| - const inputImageUrl = $("#img-input").attr("src"); |
| 346 | + const inputImageUrl = $(img).attr("src"); |
347 | 347 | if (!inputImageUrl)
|
348 | 348 | return null;
|
349 | 349 | return inputImageUrl.split("?")[0];
|
350 | 350 | }
|
351 | 351 |
|
352 |
| - const getInputImageName = () => { |
353 |
| - const inputImageName = $("#img-input").data("name"); |
| 352 | + const getImageName = (img) => { |
| 353 | + const inputImageName = $(img).data("name"); |
354 | 354 | if (!inputImageName)
|
355 | 355 | return null;
|
356 | 356 | return inputImageName;
|
|
372 | 372 | }
|
373 | 373 | });
|
374 | 374 |
|
| 375 | + $(document).on("click", "#button-img2img", async function () { |
| 376 | + const outputImage = getImageName("#img-result"); |
| 377 | + const outputImageUrl = getImageUrl("#img-result"); |
| 378 | + if (outputImageUrl) { |
| 379 | + addInputResult(getWidth(), getHeight(), inputResultTemplate, { imageUrl: outputImageUrl, imageName: outputImage }); |
| 380 | + buttonExecute.removeAttr("disabled"); |
| 381 | + } |
| 382 | + }); |
375 | 383 |
|
376 | 384 | const setInitialImage = () => {
|
377 | 385 | const image = $("#InitialImage_Name").val();
|
378 |
| - if(!image) |
| 386 | + if (!image) |
379 | 387 | return;
|
380 | 388 |
|
381 | 389 | const imageUrl = $("#InitialImage_Url").val();
|
|
389 | 397 | }
|
390 | 398 |
|
391 | 399 | const updateInputImageContainer = () => {
|
392 |
| - const url = getInputImageUrl(); |
393 |
| - const name = getInputImageName(); |
| 400 | + const url = getImageUrl("#img-input"); |
| 401 | + const name = getImageName("#img-input"); |
394 | 402 | addInputResult(getWidth(), getHeight(), inputResultTemplate, { imageUrl: url, imageName: name });
|
395 | 403 | }
|
396 | 404 |
|
|
0 commit comments