Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
S
Stable Diffusion Webui
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
novelai-storage
Stable Diffusion Webui
Commits
e05573e1
Commit
e05573e1
authored
Oct 12, 2022
by
yfszzx
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
images history improvement
parent
87d63bba
Changes
3
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
190 additions
and
100 deletions
+190
-100
.gitignore
.gitignore
+1
-0
javascript/images_history.js
javascript/images_history.js
+146
-76
modules/images_history.py
modules/images_history.py
+43
-24
No files found.
.gitignore
View file @
e05573e1
...
@@ -26,3 +26,4 @@ __pycache__
...
@@ -26,3 +26,4 @@ __pycache__
notification.mp3
notification.mp3
/SwinIR
/SwinIR
/textual_inversion
/textual_inversion
/images_history_testui.py
javascript/images_history.js
View file @
e05573e1
This diff is collapsed.
Click to expand it.
modules/images_history.py
View file @
e05573e1
import
os
import
os
def
get_recent_images
(
dir_name
,
page_index
,
step
,
image_index
):
import
shutil
#print(image_index)
def
get_recent_images
(
dir_name
,
page_index
,
step
,
image_index
,
tabname
):
print
(
f
"renew page {page_index}"
)
page_index
=
int
(
page_index
)
page_index
=
int
(
page_index
)
f_list
=
os
.
listdir
(
dir_name
)
f_list
=
os
.
listdir
(
dir_name
)
file_list
=
[]
file_list
=
[]
for
file
in
f_list
:
for
file
in
f_list
:
if
file
[
-
4
:]
==
".txt"
:
if
file
[
-
4
:]
==
".txt"
:
continue
continue
file_list
.
append
(
file
)
#subdirectories
if
file
[
-
10
:]
.
rfind
(
"."
)
<
0
:
sub_dir
=
os
.
path
.
join
(
dir_name
,
file
)
if
os
.
path
.
isfile
(
sub_dir
):
continue
sub_file_list
=
os
.
listdir
(
sub_dir
)
for
sub_file
in
sub_file_list
:
if
sub_file
[
-
4
:]
==
".txt"
:
continue
if
os
.
path
.
isfile
(
os
.
path
.
join
(
sub_dir
,
sub_file
)
):
file_list
.
append
(
os
.
path
.
join
(
file
,
sub_file
))
continue
file_list
.
append
(
file
)
file_list
=
sorted
(
file_list
,
key
=
lambda
file
:
-
os
.
path
.
getctime
(
os
.
path
.
join
(
dir_name
,
file
)))
file_list
=
sorted
(
file_list
,
key
=
lambda
file
:
-
os
.
path
.
getctime
(
os
.
path
.
join
(
dir_name
,
file
)))
num
=
48
num
=
48
if
tabname
!=
"extras"
else
12
max_page_index
=
len
(
file_list
)
//
num
+
1
max_page_index
=
len
(
file_list
)
//
num
+
1
page_index
=
max_page_index
if
page_index
==
-
1
else
page_index
+
step
page_index
=
max_page_index
if
page_index
==
-
1
else
page_index
+
step
page_index
=
1
if
page_index
<
1
else
page_index
page_index
=
1
if
page_index
<
1
else
page_index
...
@@ -26,26 +40,28 @@ def get_recent_images(dir_name, page_index, step, image_index):
...
@@ -26,26 +40,28 @@ def get_recent_images(dir_name, page_index, step, image_index):
hide_image
=
os
.
path
.
join
(
dir_name
,
current_file
)
hide_image
=
os
.
path
.
join
(
dir_name
,
current_file
)
return
[
os
.
path
.
join
(
dir_name
,
file
)
for
file
in
file_list
],
page_index
,
file_list
,
current_file
,
hide_image
return
[
os
.
path
.
join
(
dir_name
,
file
)
for
file
in
file_list
],
page_index
,
file_list
,
current_file
,
hide_image
def
first_page_click
(
dir_name
,
page_index
,
image_index
,
tabname
):
def
first_page_click
(
dir_name
,
page_index
,
image_index
,
tabname
):
return
get_recent_images
(
dir_name
,
1
,
0
,
image_index
)
return
get_recent_images
(
dir_name
,
1
,
0
,
image_index
,
tabname
)
def
end_page_click
(
dir_name
,
page_index
,
image_index
,
tabname
):
def
end_page_click
(
dir_name
,
page_index
,
image_index
,
tabname
):
return
get_recent_images
(
dir_name
,
-
1
,
0
,
image_index
)
return
get_recent_images
(
dir_name
,
-
1
,
0
,
image_index
,
tabname
)
def
prev_page_click
(
dir_name
,
page_index
,
image_index
,
tabname
):
def
prev_page_click
(
dir_name
,
page_index
,
image_index
,
tabname
):
return
get_recent_images
(
dir_name
,
page_index
,
-
1
,
image_index
)
return
get_recent_images
(
dir_name
,
page_index
,
-
1
,
image_index
,
tabname
)
def
next_page_click
(
dir_name
,
page_index
,
image_index
,
tabname
):
def
next_page_click
(
dir_name
,
page_index
,
image_index
,
tabname
):
return
get_recent_images
(
dir_name
,
page_index
,
1
,
image_index
)
return
get_recent_images
(
dir_name
,
page_index
,
1
,
image_index
,
tabname
)
def
page_index_change
(
dir_name
,
page_index
,
image_index
,
tabname
):
def
page_index_change
(
dir_name
,
page_index
,
image_index
,
tabname
):
return
get_recent_images
(
dir_name
,
page_index
,
0
,
image_index
)
return
get_recent_images
(
dir_name
,
page_index
,
0
,
image_index
,
tabname
)
def
show_image_info
(
num
,
image_path
,
filenames
):
def
show_image_info
(
num
,
image_path
,
filenames
):
#print("set img",num
)
print
(
f
"select image {num}"
)
file
=
filenames
[
int
(
num
)]
file
=
filenames
[
int
(
num
)]
return
file
,
num
,
os
.
path
.
join
(
image_path
,
file
)
return
file
,
num
,
os
.
path
.
join
(
image_path
,
file
)
def
delete_image
(
tabname
,
dir_name
,
name
,
page_index
,
filenames
,
image_index
):
def
delete_image
(
tabname
,
dir_name
,
name
,
page_index
,
filenames
,
image_index
):
#print("filename", name)
path
=
os
.
path
.
join
(
dir_name
,
name
)
path
=
os
.
path
.
join
(
dir_name
,
name
)
if
os
.
path
.
exists
(
path
):
if
os
.
path
.
exists
(
path
):
print
(
f
"Delete file {path}"
)
print
(
f
"Delete file {path}"
)
os
.
remove
(
path
)
os
.
remove
(
path
)
txt_file
=
os
.
path
.
splitext
(
path
)[
0
]
+
".txt"
if
os
.
path
.
exists
(
txt_file
):
os
.
remove
(
txt_file
)
new_file_list
=
[]
new_file_list
=
[]
for
f
in
filenames
:
for
f
in
filenames
:
if
f
==
name
:
if
f
==
name
:
...
@@ -64,25 +80,26 @@ def show_images_history(gr, opts, tabname, run_pnginfo, switch_dict):
...
@@ -64,25 +80,26 @@ def show_images_history(gr, opts, tabname, run_pnginfo, switch_dict):
elif
tabname
==
"extras"
:
elif
tabname
==
"extras"
:
dir_name
=
opts
.
outdir_extras_samples
dir_name
=
opts
.
outdir_extras_samples
with
gr
.
Row
():
with
gr
.
Row
():
renew_page
=
gr
.
Button
(
'Renew'
,
elem_id
=
tabname
+
"_images_history_renew_page"
)
renew_page
=
gr
.
Button
(
'Renew
Page
'
,
elem_id
=
tabname
+
"_images_history_renew_page"
)
first_page
=
gr
.
Button
(
'First
'
,
elem_id
=
tabname
+
"_images_history_first_page"
)
first_page
=
gr
.
Button
(
'First
Page'
)
prev_page
=
gr
.
Button
(
'Prev'
)
prev_page
=
gr
.
Button
(
'Prev
Page
'
)
page_index
=
gr
.
Number
(
value
=
1
,
label
=
"Page Index"
)
page_index
=
gr
.
Number
(
value
=
1
,
label
=
"Page Index"
)
next_page
=
gr
.
Button
(
'Next
'
,
elem_id
=
tabname
+
"_images_history_next_page"
)
next_page
=
gr
.
Button
(
'Next
Page'
)
end_page
=
gr
.
Button
(
'End'
)
end_page
=
gr
.
Button
(
'End
Page
'
)
with
gr
.
Row
(
elem_id
=
tabname
+
"_images_history"
):
with
gr
.
Row
(
elem_id
=
tabname
+
"_images_history"
):
with
gr
.
Row
():
with
gr
.
Row
():
with
gr
.
Column
():
with
gr
.
Column
(
scale
=
2
):
history_gallery
=
gr
.
Gallery
(
show_label
=
False
)
.
style
(
grid
=
6
)
history_gallery
=
gr
.
Gallery
(
show_label
=
False
,
elem_id
=
tabname
+
"_images_history_gallery"
)
.
style
(
grid
=
6
)
delete
=
gr
.
Button
(
'Delete'
,
elem_id
=
tabname
+
"_images_history_del_button"
)
with
gr
.
Column
():
with
gr
.
Column
():
with
gr
.
Row
():
with
gr
.
Row
():
delete
=
gr
.
Button
(
'Delete
'
)
#pnginfo = gr.Button('PNG info
')
pnginfo_send_to_txt2img
=
gr
.
Button
(
'Send to txt2img'
)
pnginfo_send_to_txt2img
=
gr
.
Button
(
'Send to txt2img'
)
pnginfo_send_to_img2img
=
gr
.
Button
(
'Send to img2img'
)
pnginfo_send_to_img2img
=
gr
.
Button
(
'Send to img2img'
)
with
gr
.
Row
():
with
gr
.
Row
():
with
gr
.
Column
():
with
gr
.
Column
():
img_file_info
=
gr
.
Textbox
(
label
=
"Generate Info"
)
img_file_info
=
gr
.
Textbox
(
label
=
"Generate Info"
,
interactive
=
False
)
img_file_name
=
gr
.
Textbox
(
label
=
"File Name"
)
img_file_name
=
gr
.
Textbox
(
label
=
"File Name"
,
interactive
=
False
)
with
gr
.
Row
():
with
gr
.
Row
():
# hiden items
# hiden items
img_path
=
gr
.
Textbox
(
dir_name
,
visible
=
False
)
img_path
=
gr
.
Textbox
(
dir_name
,
visible
=
False
)
...
@@ -90,7 +107,7 @@ def show_images_history(gr, opts, tabname, run_pnginfo, switch_dict):
...
@@ -90,7 +107,7 @@ def show_images_history(gr, opts, tabname, run_pnginfo, switch_dict):
image_index
=
gr
.
Textbox
(
value
=-
1
,
visible
=
False
)
image_index
=
gr
.
Textbox
(
value
=-
1
,
visible
=
False
)
set_index
=
gr
.
Button
(
'set_index'
,
elem_id
=
tabname
+
"_images_history_set_index"
,
visible
=
False
)
set_index
=
gr
.
Button
(
'set_index'
,
elem_id
=
tabname
+
"_images_history_set_index"
,
visible
=
False
)
filenames
=
gr
.
State
()
filenames
=
gr
.
State
()
hide_image
=
gr
.
Image
(
visible
=
False
,
type
=
"pil"
)
hide_image
=
gr
.
Image
(
type
=
"pil"
,
visible
=
False
)
info1
=
gr
.
Textbox
(
visible
=
False
)
info1
=
gr
.
Textbox
(
visible
=
False
)
info2
=
gr
.
Textbox
(
visible
=
False
)
info2
=
gr
.
Textbox
(
visible
=
False
)
...
@@ -111,6 +128,8 @@ def show_images_history(gr, opts, tabname, run_pnginfo, switch_dict):
...
@@ -111,6 +128,8 @@ def show_images_history(gr, opts, tabname, run_pnginfo, switch_dict):
set_index
.
click
(
show_image_info
,
_js
=
"images_history_get_current_img"
,
inputs
=
[
tabname_box
,
img_path
,
filenames
],
outputs
=
[
img_file_name
,
image_index
,
hide_image
])
set_index
.
click
(
show_image_info
,
_js
=
"images_history_get_current_img"
,
inputs
=
[
tabname_box
,
img_path
,
filenames
],
outputs
=
[
img_file_name
,
image_index
,
hide_image
])
delete
.
click
(
delete_image
,
_js
=
"images_history_delete"
,
inputs
=
[
tabname_box
,
img_path
,
img_file_name
,
page_index
,
filenames
,
image_index
],
outputs
=
[
page_index
,
filenames
])
delete
.
click
(
delete_image
,
_js
=
"images_history_delete"
,
inputs
=
[
tabname_box
,
img_path
,
img_file_name
,
page_index
,
filenames
,
image_index
],
outputs
=
[
page_index
,
filenames
])
hide_image
.
change
(
fn
=
run_pnginfo
,
inputs
=
[
hide_image
],
outputs
=
[
info1
,
img_file_info
,
info2
])
hide_image
.
change
(
fn
=
run_pnginfo
,
inputs
=
[
hide_image
],
outputs
=
[
info1
,
img_file_info
,
info2
])
hide_image
.
change
(
fn
=
None
,
_js
=
"images_history_enable_del_buttons"
,
inputs
=
None
,
outputs
=
None
)
#pnginfo.click(fn=run_pnginfo, inputs=[hide_image], outputs=[info1, img_file_info, info2])
switch_dict
[
"fn"
](
pnginfo_send_to_txt2img
,
switch_dict
[
"t2i"
],
img_file_info
,
'switch_to_txt2img'
)
switch_dict
[
"fn"
](
pnginfo_send_to_txt2img
,
switch_dict
[
"t2i"
],
img_file_info
,
'switch_to_txt2img'
)
switch_dict
[
"fn"
](
pnginfo_send_to_img2img
,
switch_dict
[
"i2i"
],
img_file_info
,
'switch_to_img2img_img2img'
)
switch_dict
[
"fn"
](
pnginfo_send_to_img2img
,
switch_dict
[
"i2i"
],
img_file_info
,
'switch_to_img2img_img2img'
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment