Skip to content

STY: Simplify the code #3738

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Sep 26, 2020
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions installer/analyze_bundle.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,10 @@
file_path = os.path.join(root, basename)

output = str(subprocess.Popen(["oTool", "-L", file_path], stdout=subprocess.PIPE).communicate()[0])
if not "is not an object file" in output:
if "is not an object file" not in output:
dependency_path = output.replace('\\n','').split('\\t')[1].split(' ')[0]
dependency_version = output.replace('\\n','').split('\\t')[1].split(' (')[1].replace(')','')

if "@executable_path" not in dependency_path:
if not dependency_path in unique_dependencies.keys():
unique_dependencies[dependency_path] = file_path
print("%s => %s (%s)" % (basename, dependency_path, dependency_version))
if "@executable_path" not in dependency_path and dependency_path not in unique_dependencies.keys():
unique_dependencies[dependency_path] = file_path
print("%s => %s (%s)" % (basename, dependency_path, dependency_version))
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@
# For Debian packaging it could be a fakeroot so reset flag to prevent execution of
# system update services for Mime and Desktop registrations.
# The debian/openshot.postinst script must do those.
if not os.getenv("FAKEROOTKEY") == None:
if os.getenv("FAKEROOTKEY") is not None:
log.info("NOTICE: Detected execution in a FakeRoot so disabling calls to system update services.")
ROOT = False

Expand Down
18 changes: 14 additions & 4 deletions src/classes/image_types.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,17 @@ def is_image(file):
"""Check a File object if the file extension is a known image format"""
path = file["path"].lower()

if path.endswith((".jpg", ".jpeg", ".png", ".bmp", ".svg", ".thm", ".gif", ".bmp", ".pgm", ".tif", ".tiff")):
return True
else:
return False
img_file_extensions = (
".jpg",
".jpeg",
".png",
".bmp",
".svg",
".thm",
".gif",
".bmp",
".pgm",
".tif",
".tiff",
)
return path.endswith(img_file_extensions)
6 changes: 2 additions & 4 deletions src/classes/logger_libopenshot.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,10 +77,8 @@ def run(self):

# Receive all debug message sent from libopenshot (if any)
socks = dict(poller.poll(1000))
if socks:
if socks.get(socket) == zmq.POLLIN:
msg = socket.recv(zmq.NOBLOCK)
if socks and socks.get(socket) == zmq.POLLIN:
msg = socket.recv(zmq.NOBLOCK)

# Log the message (if any)
if msg:
log.info(msg.strip().decode('UTF-8'))
15 changes: 8 additions & 7 deletions src/classes/query.py
Original file line number Diff line number Diff line change
Expand Up @@ -113,16 +113,17 @@ def filter(OBJECT_TYPE, **kwargs):
match = True
for key, value in kwargs.items():

# Equals
if key in child and not child[key] == value:
if key in child and child[key] != value:
match = False
break

# Intersection Position
if key == "intersect":
if (child.get("position", 0) > value or
child.get("position", 0) + (child.get("end", 0) - child.get("start", 0)) < value):
match = False
if key == "intersect" and (
child.get("position", 0) > value
or child.get("position", 0) + (child.get("end", 0) - child.get("start", 0)) < value
):
match = False


# Add matched record
if match:
Expand Down Expand Up @@ -341,7 +342,7 @@ def filter(**kwargs):
# Loop through all kwargs (and look for matches)
match = True
for key, value in kwargs.items():
if key in child and not child[key] == value:
if key in child and child[key] != value:
match = False
break

Expand Down
2 changes: 1 addition & 1 deletion src/classes/ui_util.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ def load_theme():
s = settings.get_settings()

# If theme not reported by OS
if QIcon.themeName() == '' and not s.get("theme") == "No Theme":
if QIcon.themeName() == '' and s.get("theme") != "No Theme":

# Address known Ubuntu bug of not reporting configured theme name, use default ubuntu theme
if os.getenv('DESKTOP_SESSION') == 'ubuntu':
Expand Down
2 changes: 1 addition & 1 deletion src/tests/query_tests.py
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
import sys, os
# Import parent folder (so it can find other imports)
PATH = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
if not PATH in sys.path:
if PATH not in sys.path:
sys.path.append(PATH)

import random
Expand Down
11 changes: 4 additions & 7 deletions src/windows/main_window.py
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ def closeEvent(self, event):
self.tutorial_manager.hide_dialog()

# Prompt user to save (if needed)
if app.project.needs_save() and not self.mode == "unittest":
if app.project.needs_save() and self.mode != "unittest":
log.info('Prompt user to save project')
# Translate object
_ = app._tr
Expand Down Expand Up @@ -751,10 +751,7 @@ def promptImageSequence(self, filename=None):
_("Would you like to import %s as an image sequence?") % filename,
QMessageBox.No | QMessageBox.Yes
)
if ret == QMessageBox.Yes:
return True
else:
return False
return ret == QMessageBox.Yes

def actionAdd_to_Timeline_trigger(self, event):
# Loop through selected files
Expand Down Expand Up @@ -2663,7 +2660,7 @@ def __init__(self, mode=None):
get_current_Version()

# Connect signals
if not self.mode == "unittest":
if self.mode != "unittest":
self.RecoverBackup.connect(self.recover_backup)

# Initialize and start the thumbnail HTTP server
Expand Down Expand Up @@ -2860,7 +2857,7 @@ def __init__(self, mode=None):
self.OpenProjectSignal.connect(self.open_project)

# Show window
if not self.mode == "unittest":
if self.mode != "unittest":
self.show()
else:
log.info('Hiding UI for unittests')
Expand Down
2 changes: 1 addition & 1 deletion src/windows/models/blender_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ def update_model(self, clear=True):
row.append(col)

# Append ROW to MODEL (if does not already exist in model)
if not path in self.model_paths:
if path not in self.model_paths:
self.model.appendRow(row)
self.model_paths[path] = path

Expand Down
11 changes: 8 additions & 3 deletions src/windows/models/changelog_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -66,9 +66,14 @@ def update_model(self, filter=None, clear=True):
author_str = commit.get("author", "")
subject_str = commit.get("subject", "")

if filter:
if not (filter.lower() in hash_str.lower() or filter.lower() in date_str.lower() or filter.lower() in author_str.lower() or filter.lower() in subject_str.lower()):
continue
if filter and not (
filter.lower() in hash_str.lower()
or filter.lower() in date_str.lower()
or filter.lower() in author_str.lower()
or filter.lower() in subject_str.lower()
):
continue


row = []

Expand Down
10 changes: 7 additions & 3 deletions src/windows/models/credits_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,9 +84,13 @@ def update_model(self, filter=None, clear=True):
if "icons" in person.keys():
icons = person["icons"]

if filter:
if not (filter.lower() in name.lower() or filter.lower() in email.lower() or filter.lower() in website.lower()):
continue
if filter and not (
filter.lower() in name.lower()
or filter.lower() in email.lower()
or filter.lower() in website.lower()
):
continue

if len(name) < 2:
# Skip blank names
continue
Expand Down
11 changes: 7 additions & 4 deletions src/windows/models/effects_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -107,10 +107,13 @@ def update_model(self, clear=True):
category = "Video"

# Filter out effect (if needed)
if win.effectsFilter.text() != "":
if (not win.effectsFilter.text().lower() in self.app._tr(title).lower()
and not win.effectsFilter.text().lower() in self.app._tr(description).lower()):
continue
if (
win.effectsFilter.text() != ""
and win.effectsFilter.text().lower() not in self.app._tr(title).lower()
and win.effectsFilter.text().lower() not in self.app._tr(description).lower()
):
continue


# Check for thumbnail path (in build-in cache)
thumb_path = os.path.join(info.IMAGES_PATH, "cache", icon_name)
Expand Down
15 changes: 6 additions & 9 deletions src/windows/models/files_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,15 +69,12 @@ def filterAcceptsRow(self, sourceRow, sourceParent):
index = self.sourceModel().index(sourceRow, 2, sourceParent)
tags = self.sourceModel().data(index) # tags (i.e. intro, custom, etc...)

if get_app().window.actionFilesShowVideo.isChecked():
if not media_type == "video":
return False
elif get_app().window.actionFilesShowAudio.isChecked():
if not media_type == "audio":
return False
elif get_app().window.actionFilesShowImage.isChecked():
if not media_type == "image":
return False
if get_app().window.actionFilesShowVideo.isChecked() and media_type != "video":
return False
elif get_app().window.actionFilesShowAudio.isChecked() and media_type != "audio":
return False
elif get_app().window.actionFilesShowImage.isChecked() and media_type != "image":
return False

# Match against regex pattern
return self.filterRegExp().indexIn(file_name) >= 0 or self.filterRegExp().indexIn(tags) >= 0
Expand Down
86 changes: 42 additions & 44 deletions src/windows/models/properties_model.py
Original file line number Diff line number Diff line change
Expand Up @@ -219,57 +219,55 @@ def remove_keyframe(self, item):
# Get effect object
c = Effect.get(id=clip_id)

if c:
# Update clip attribute
if property_key in c.data:
log.info("remove keyframe: %s" % c.data)

# Determine type of keyframe (normal or color)
keyframe_list = []
if property_type == "color":
keyframe_list = [c.data[property_key]["red"], c.data[property_key]["blue"], c.data[property_key]["green"]]
else:
keyframe_list = [c.data[property_key]]
if c and property_key in c.data: # Update clip attribute
log.info("remove keyframe: %s" % c.data)

# Loop through each keyframe (red, blue, and green)
for keyframe in keyframe_list:

# Keyframe
# Loop through points, find a matching points on this frame
closest_point = None
point_to_delete = None
for point in keyframe["Points"]:
if point["co"]["X"] == self.frame_number:
# Found point, Update value
clip_updated = True
point_to_delete = point
break
if point["co"]["X"] == closest_point_x:
closest_point = point
# Determine type of keyframe (normal or color)
keyframe_list = []
if property_type == "color":
keyframe_list = [c.data[property_key]["red"], c.data[property_key]["blue"], c.data[property_key]["green"]]
else:
keyframe_list = [c.data[property_key]]

# Loop through each keyframe (red, blue, and green)
for keyframe in keyframe_list:

# Keyframe
# Loop through points, find a matching points on this frame
closest_point = None
point_to_delete = None
for point in keyframe["Points"]:
if point["co"]["X"] == self.frame_number:
# Found point, Update value
clip_updated = True
point_to_delete = point
break
if point["co"]["X"] == closest_point_x:
closest_point = point

# If no point found, use closest point x
if not point_to_delete:
point_to_delete = closest_point
# If no point found, use closest point x
if not point_to_delete:
point_to_delete = closest_point

# Delete point (if needed)
if point_to_delete:
clip_updated = True
log.info("Found point to delete at X=%s" % point_to_delete["co"]["X"])
keyframe["Points"].remove(point_to_delete)
# Delete point (if needed)
if point_to_delete:
clip_updated = True
log.info("Found point to delete at X=%s" % point_to_delete["co"]["X"])
keyframe["Points"].remove(point_to_delete)

# Reduce # of clip properties we are saving (performance boost)
c.data = {property_key: c.data[property_key]}
# Reduce # of clip properties we are saving (performance boost)
c.data = {property_key: c.data[property_key]}

# Save changes
if clip_updated:
# Save
c.save()
# Save changes
if clip_updated:
# Save
c.save()

# Update the preview
get_app().window.refreshFrameSignal.emit()
# Update the preview
get_app().window.refreshFrameSignal.emit()

# Clear selection
self.parent.clearSelection()
# Clear selection
self.parent.clearSelection()

def color_update(self, item, new_color, interpolation=-1, interpolation_details=[]):
"""Insert/Update a color keyframe for the selected row"""
Expand Down
4 changes: 2 additions & 2 deletions src/windows/preferences.py
Original file line number Diff line number Diff line change
Expand Up @@ -140,9 +140,9 @@ def Populate(self, filter=""):
if sort_category:
self.category_sort[category] = sort_category

if not setting_type == "hidden":
if setting_type != "hidden":
# Load setting
if not category in self.category_names:
if category not in self.category_names:
self.category_names[category] = []

# Create scrollarea
Expand Down
2 changes: 1 addition & 1 deletion src/windows/preview_thread.py
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ def onError(self, error):
_ = get_app()._tr

# Only JUCE audio errors bubble up here now
if not get_app().window.mode == "unittest":
if get_app().window.mode != "unittest":
QMessageBox.warning(self.parent, _("Audio Error"), _("Please fix the following error and restart OpenShot\n%s") % error)

@pyqtSlot(object, object)
Expand Down
11 changes: 5 additions & 6 deletions src/windows/video_widget.py
Original file line number Diff line number Diff line change
Expand Up @@ -681,12 +681,11 @@ def transformTriggered(self, clip_id):
"""Handle the transform signal when it's emitted"""
need_refresh = False
# Disable Transform UI
if self and self.transforming_clip:
# Is this the same clip_id already being transformed?
if not clip_id:
# Clear transform
self.transforming_clip = None
need_refresh = True
# Is this the same clip_id already being transformed?
if self and self.transforming_clip and not clip_id:
# Clear transform
self.transforming_clip = None
need_refresh = True

# Get new clip for transform
if clip_id:
Expand Down
2 changes: 1 addition & 1 deletion src/windows/views/emojis_listview.py
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ def __init__(self, model):
# Off by one, due to 'show all' choice above
dropdown_index = index + 1

if not self.win.mode == "unittest":
if self.win.mode != "unittest":
self.win.emojiFilterGroup.currentIndexChanged.connect(self.group_changed)
self.win.emojiFilterGroup.setCurrentIndex(dropdown_index)

7 changes: 3 additions & 4 deletions src/windows/views/properties_tableview.py
Original file line number Diff line number Diff line change
Expand Up @@ -213,10 +213,9 @@ def mouseMoveEvent(self, event):
# Get effect object
c = Effect.get(id=item_id)

if c:
if property_key in c.data:
# Grab the original data for this item/property
self.original_data = c.data
if c and property_key in c.data:
# Grab the original data for this item/property
self.original_data = c.data

# For numeric values, apply percentage within parameter's allowable range
if property_type in ["float", "int"] and property_name != "Track":
Expand Down
Loading