- cleaned the Preferences classes and added the signals and signal slots in those classes, removing them from the main app class

- each FlatCAM object found in Preferences has it's own set of controls for changing the colors
- added a set of gray icons to be used when the theme is complete dark (for now it is useful only for MacOS with dark theme because at the moment the app is not styled to dark UI except the plot area)
This commit is contained in:
Marius Stanciu 2019-12-27 03:05:17 +02:00 committed by Marius
parent 787d85391a
commit 55549c7ba5
302 changed files with 933 additions and 505 deletions

View File

@ -612,6 +612,8 @@ class App(QtCore.QObject):
"excellon_save_filters": "Excellon File (*.txt);;Excellon File (*.drd);;Excellon File (*.drl);;"
"Excellon File (*.exc);;Excellon File (*.ncd);;Excellon File (*.tap);;"
"Excellon File (*.xln);;All Files (*.*)",
"excellon_plot_fill": '#C40000BF',
"excellon_plot_line": '#750000BF',
# Excellon Options
"excellon_drillz": -1.7,
@ -672,6 +674,7 @@ class App(QtCore.QObject):
"geometry_plot": True,
"geometry_circle_steps": 64,
"geometry_cnctooldia": "2.4",
"geometry_plot_line": "#FF0000",
# Geometry Options
"geometry_cutz": -2.4,
@ -728,6 +731,10 @@ class App(QtCore.QObject):
"G-Code Files (*.ngc);;G-Code Files (*.out);;G-Code Files (*.ply);;"
"G-Code Files (*.sbp);;G-Code Files (*.tap);;G-Code Files (*.xpi);;"
"All Files (*.*)",
"cncjob_plot_line": '#4650BDFF',
"cncjob_plot_fill": '#5E6CFFFF',
"cncjob_travel_line": '#B5AB3A4C',
"cncjob_travel_fill": '#F0E24D4C',
# CNC Job Options
"cncjob_prepend": "",
@ -983,10 +990,10 @@ class App(QtCore.QObject):
else:
self.decimals = int(self.defaults['decimals_inch'])
if self.defaults["global_theme"] == 'white':
if self.defaults["global_gray_icons"] is False:
self.resource_location = 'share'
else:
self.resource_location = 'share'
self.resource_location = 'share/dark_resources'
self.current_units = self.defaults['units']
@ -1093,20 +1100,18 @@ class App(QtCore.QObject):
"global_portable": self.ui.general_defaults_form.general_app_group.portability_cb,
"global_language": self.ui.general_defaults_form.general_app_group.language_cb,
"global_systray_icon": self.ui.general_defaults_form.general_app_group.systray_cb,
"global_shell_at_startup": self.ui.general_defaults_form.general_app_group.shell_startup_cb,
"global_project_at_startup": self.ui.general_defaults_form.general_app_group.project_startup_cb,
"global_version_check": self.ui.general_defaults_form.general_app_group.version_check_cb,
"global_send_stats": self.ui.general_defaults_form.general_app_group.send_stats_cb,
"global_worker_number": self.ui.general_defaults_form.general_app_group.worker_number_sb,
"global_tolerance": self.ui.general_defaults_form.general_app_group.tol_entry,
"global_open_style": self.ui.general_defaults_form.general_app_group.open_style_cb,
"global_compression_level": self.ui.general_defaults_form.general_app_group.compress_spinner,
"global_save_compressed": self.ui.general_defaults_form.general_app_group.save_type_cb,
"global_bookmarks_limit": self.ui.general_defaults_form.general_app_group.bm_limit_spinner,
"global_machinist_setting": self.ui.general_defaults_form.general_app_group.machinist_cb,
"global_tpdf_tmargin": self.ui.general_defaults_form.general_app_group.tmargin_entry,
"global_tpdf_bmargin": self.ui.general_defaults_form.general_app_group.bmargin_entry,
"global_tpdf_lmargin": self.ui.general_defaults_form.general_app_group.lmargin_entry,
@ -1131,27 +1136,27 @@ class App(QtCore.QObject):
"global_project_autohide": self.ui.general_defaults_form.general_gui_group.project_autohide_cb,
# General GUI Settings
"global_gridx": self.ui.general_defaults_form.general_gui_set_group.gridx_entry,
"global_gridy": self.ui.general_defaults_form.general_gui_set_group.gridy_entry,
"global_snap_max": self.ui.general_defaults_form.general_gui_set_group.snap_max_dist_entry,
"global_workspace": self.ui.general_defaults_form.general_gui_set_group.workspace_cb,
"global_workspaceT": self.ui.general_defaults_form.general_gui_set_group.wk_cb,
"global_workspace_orientation": self.ui.general_defaults_form.general_gui_set_group.wk_orientation_radio,
"global_gridx": self.ui.general_defaults_form.general_app_set_group.gridx_entry,
"global_gridy": self.ui.general_defaults_form.general_app_set_group.gridy_entry,
"global_snap_max": self.ui.general_defaults_form.general_app_set_group.snap_max_dist_entry,
"global_workspace": self.ui.general_defaults_form.general_app_set_group.workspace_cb,
"global_workspaceT": self.ui.general_defaults_form.general_app_set_group.wk_cb,
"global_workspace_orientation": self.ui.general_defaults_form.general_app_set_group.wk_orientation_radio,
"global_systray_icon": self.ui.general_defaults_form.general_gui_set_group.systray_cb,
"global_shell_at_startup": self.ui.general_defaults_form.general_gui_set_group.shell_startup_cb,
"global_project_at_startup": self.ui.general_defaults_form.general_gui_set_group.project_startup_cb,
"global_cursor_type": self.ui.general_defaults_form.general_gui_set_group.cursor_radio,
"global_cursor_size": self.ui.general_defaults_form.general_gui_set_group.cursor_size_entry,
"global_cursor_width": self.ui.general_defaults_form.general_gui_set_group.cursor_width_entry,
"global_cursor_color_enabled": self.ui.general_defaults_form.general_gui_set_group.mouse_cursor_color_cb,
"global_cursor_color": self.ui.general_defaults_form.general_gui_set_group.mouse_cursor_entry,
"global_pan_button": self.ui.general_defaults_form.general_gui_set_group.pan_button_radio,
"global_mselect_key": self.ui.general_defaults_form.general_gui_set_group.mselect_radio,
"global_delete_confirmation": self.ui.general_defaults_form.general_gui_set_group.delete_conf_cb,
"global_cursor_type": self.ui.general_defaults_form.general_app_set_group.cursor_radio,
"global_cursor_size": self.ui.general_defaults_form.general_app_set_group.cursor_size_entry,
"global_cursor_width": self.ui.general_defaults_form.general_app_set_group.cursor_width_entry,
"global_cursor_color_enabled": self.ui.general_defaults_form.general_app_set_group.mouse_cursor_color_cb,
"global_cursor_color": self.ui.general_defaults_form.general_app_set_group.mouse_cursor_entry,
"global_pan_button": self.ui.general_defaults_form.general_app_set_group.pan_button_radio,
"global_mselect_key": self.ui.general_defaults_form.general_app_set_group.mselect_radio,
"global_delete_confirmation": self.ui.general_defaults_form.general_app_set_group.delete_conf_cb,
"global_open_style": self.ui.general_defaults_form.general_app_set_group.open_style_cb,
"global_toggle_tooltips": self.ui.general_defaults_form.general_app_set_group.toggle_tooltips_cb,
"global_machinist_setting": self.ui.general_defaults_form.general_app_set_group.machinist_cb,
"global_toggle_tooltips": self.ui.general_defaults_form.general_gui_set_group.toggle_tooltips_cb,
"global_activity_icon": self.ui.general_defaults_form.general_gui_set_group.activity_combo,
"global_bookmarks_limit": self.ui.general_defaults_form.general_app_set_group.bm_limit_spinner,
"global_activity_icon": self.ui.general_defaults_form.general_app_set_group.activity_combo,
# Gerber General
"gerber_plot": self.ui.gerber_defaults_form.gerber_gen_group.plot_cb,
@ -1232,6 +1237,8 @@ class App(QtCore.QObject):
"excellon_update": self.ui.excellon_defaults_form.excellon_gen_group.update_excellon_cb,
"excellon_optimization_type": self.ui.excellon_defaults_form.excellon_gen_group.excellon_optimization_radio,
"excellon_search_time": self.ui.excellon_defaults_form.excellon_gen_group.optimization_time_entry,
"excellon_plot_fill": self.ui.excellon_defaults_form.excellon_gen_group.fill_color_entry,
"excellon_plot_line": self.ui.excellon_defaults_form.excellon_gen_group.line_color_entry,
# Excellon Options
"excellon_drillz": self.ui.excellon_defaults_form.excellon_opt_group.cutz_entry,
@ -1301,6 +1308,7 @@ class App(QtCore.QObject):
"geometry_plot": self.ui.geometry_defaults_form.geometry_gen_group.plot_cb,
"geometry_circle_steps": self.ui.geometry_defaults_form.geometry_gen_group.circle_steps_entry,
"geometry_cnctooldia": self.ui.geometry_defaults_form.geometry_gen_group.cnctooldia_entry,
"geometry_plot_line": self.ui.geometry_defaults_form.geometry_gen_group.line_color_entry,
# Geometry Options
"geometry_cutz": self.ui.geometry_defaults_form.geometry_opt_group.cutz_entry,
@ -1345,6 +1353,10 @@ class App(QtCore.QObject):
"cncjob_fr_decimals": self.ui.cncjob_defaults_form.cncjob_gen_group.fr_dec_entry,
"cncjob_steps_per_circle": self.ui.cncjob_defaults_form.cncjob_gen_group.steps_per_circle_entry,
"cncjob_line_ending": self.ui.cncjob_defaults_form.cncjob_gen_group.line_ending_cb,
"cncjob_plot_line": self.ui.cncjob_defaults_form.cncjob_gen_group.line_color_entry,
"cncjob_plot_fill": self.ui.cncjob_defaults_form.cncjob_gen_group.fill_color_entry,
"cncjob_travel_line": self.ui.cncjob_defaults_form.cncjob_gen_group.tline_color_entry,
"cncjob_travel_fill": self.ui.cncjob_defaults_form.cncjob_gen_group.tfill_color_entry,
# CNC Job Options
"cncjob_prepend": self.ui.cncjob_defaults_form.cncjob_opt_group.prepend_text,
@ -1583,8 +1595,8 @@ class App(QtCore.QObject):
self.on_layout(lay=initial_lay)
# Set the combobox in Preferences to the current layout
idx = self.ui.general_defaults_form.general_gui_set_group.layout_combo.findText(initial_lay)
self.ui.general_defaults_form.general_gui_set_group.layout_combo.setCurrentIndex(idx)
idx = self.ui.general_defaults_form.general_gui_group.layout_combo.findText(initial_lay)
self.ui.general_defaults_form.general_gui_group.layout_combo.setCurrentIndex(idx)
# after the first run, this object should be False
self.defaults["first_run"] = False
@ -2003,90 +2015,25 @@ class App(QtCore.QObject):
# ######################### GUI PREFERENCES SIGNALS ###########################
# #############################################################################
self.ui.general_defaults_form.general_app_group.ge_radio.activated_custom.connect(self.on_app_restart)
self.ui.general_defaults_form.general_app_group.language_apply_btn.clicked.connect(
lambda: fcTranslate.on_language_apply_click(self, restart=True)
)
self.ui.general_defaults_form.general_app_group.units_radio.activated_custom.connect(
lambda: self.on_toggle_units(no_pref=False))
# #############################################################################
# ############################# GUI COLORS SIGNALS ############################
# #############################################################################
# Setting selection (left - right) colors signals
self.ui.general_defaults_form.general_gui_group.sf_color_entry.editingFinished.connect(
self.on_sf_color_entry)
self.ui.general_defaults_form.general_gui_group.sf_color_button.clicked.connect(
self.on_sf_color_button)
self.ui.general_defaults_form.general_gui_group.sf_color_alpha_spinner.valueChanged.connect(
self.on_sf_color_spinner)
self.ui.general_defaults_form.general_gui_group.sf_color_alpha_slider.valueChanged.connect(
self.on_sf_color_slider)
self.ui.general_defaults_form.general_gui_group.sl_color_entry.editingFinished.connect(
self.on_sl_color_entry)
self.ui.general_defaults_form.general_gui_group.sl_color_button.clicked.connect(
self.on_sl_color_button)
# Setting selection (right - left) colors signals
self.ui.general_defaults_form.general_gui_group.alt_sf_color_entry.editingFinished.connect(
self.on_alt_sf_color_entry)
self.ui.general_defaults_form.general_gui_group.alt_sf_color_button.clicked.connect(
self.on_alt_sf_color_button)
self.ui.general_defaults_form.general_gui_group.alt_sf_color_alpha_spinner.valueChanged.connect(
self.on_alt_sf_color_spinner)
self.ui.general_defaults_form.general_gui_group.alt_sf_color_alpha_slider.valueChanged.connect(
self.on_alt_sf_color_slider)
self.ui.general_defaults_form.general_gui_group.alt_sl_color_entry.editingFinished.connect(
self.on_alt_sl_color_entry)
self.ui.general_defaults_form.general_gui_group.alt_sl_color_button.clicked.connect(
self.on_alt_sl_color_button)
# Setting Editor Draw colors signals
self.ui.general_defaults_form.general_gui_group.draw_color_entry.editingFinished.connect(
self.on_draw_color_entry)
self.ui.general_defaults_form.general_gui_group.draw_color_button.clicked.connect(
self.on_draw_color_button)
self.ui.general_defaults_form.general_gui_group.sel_draw_color_entry.editingFinished.connect(
self.on_sel_draw_color_entry)
self.ui.general_defaults_form.general_gui_group.sel_draw_color_button.clicked.connect(
self.on_sel_draw_color_button)
self.ui.general_defaults_form.general_gui_group.proj_color_entry.editingFinished.connect(
self.on_proj_color_entry)
self.ui.general_defaults_form.general_gui_group.proj_color_button.clicked.connect(
self.on_proj_color_button)
self.ui.general_defaults_form.general_gui_group.proj_color_dis_entry.editingFinished.connect(
self.on_proj_color_dis_entry)
self.ui.general_defaults_form.general_gui_group.proj_color_dis_button.clicked.connect(
self.on_proj_color_dis_button)
# ############################# Workspace Setting Signals #####################
self.ui.general_defaults_form.general_gui_set_group.wk_cb.currentIndexChanged.connect(
self.ui.general_defaults_form.general_app_set_group.wk_cb.currentIndexChanged.connect(
self.on_workspace_modified)
self.ui.general_defaults_form.general_gui_set_group.wk_orientation_radio.activated_custom.connect(
self.ui.general_defaults_form.general_app_set_group.wk_orientation_radio.activated_custom.connect(
self.on_workspace_modified
)
self.ui.general_defaults_form.general_gui_set_group.workspace_cb.stateChanged.connect(self.on_workspace)
self.ui.general_defaults_form.general_app_set_group.workspace_cb.stateChanged.connect(self.on_workspace)
self.ui.general_defaults_form.general_gui_group.layout_combo.activated.connect(self.on_layout)
# #############################################################################
# ############################# GUI SETTINGS SIGNALS ##########################
# #############################################################################
self.ui.general_defaults_form.general_gui_set_group.cursor_radio.activated_custom.connect(self.on_cursor_type)
# ########## CNC Job related signals #############
self.ui.cncjob_defaults_form.cncjob_adv_opt_group.tc_variable_combo.currentIndexChanged[str].connect(
self.on_cnc_custom_parameters)
self.ui.cncjob_defaults_form.cncjob_adv_opt_group.annotation_fontcolor_entry.editingFinished.connect(
self.on_annotation_fontcolor_entry)
self.ui.cncjob_defaults_form.cncjob_adv_opt_group.annotation_fontcolor_button.clicked.connect(
self.on_annotation_fontcolor_button)
self.ui.general_defaults_form.general_app_group.ge_radio.activated_custom.connect(self.on_app_restart)
self.ui.general_defaults_form.general_app_set_group.cursor_radio.activated_custom.connect(self.on_cursor_type)
# ########## Tools related signals #############
# Film Tool
@ -2114,14 +2061,12 @@ class App(QtCore.QObject):
self.object_status_changed.connect(self.on_collection_updated)
# Monitor the checkbox from the Application Defaults Tab and show the TCL shell or not depending on it's value
self.ui.general_defaults_form.general_gui_set_group.shell_startup_cb.clicked.connect(self.on_toggle_shell)
# Make sure that when the Excellon loading parameters are changed, the change is reflected in the
# Export Excellon parameters.
self.ui.excellon_defaults_form.excellon_gen_group.update_excellon_cb.stateChanged.connect(
self.on_update_exc_export
)
# call it once to make sure it is updated at startup
self.on_update_exc_export(state=self.defaults["excellon_update"])
@ -2184,9 +2129,6 @@ class App(QtCore.QObject):
self.ui.util_defaults_form.kw_group.del_btn.clicked.connect(
lambda: self.del_extension(ext_type='keyword'))
# splash screen button signal
self.ui.general_defaults_form.general_gui_set_group.splash_cb.stateChanged.connect(self.on_splash_changed)
# connect the abort_all_tasks related slots to the related signals
self.proc_container.idle_flag.connect(self.app_is_idle)
@ -5175,20 +5117,20 @@ class App(QtCore.QObject):
)
stgs.setValue(
'notebook_font_size',
self.ui.general_defaults_form.general_gui_set_group.notebook_font_size_spinner.get_value()
self.ui.general_defaults_form.general_app_set_group.notebook_font_size_spinner.get_value()
)
stgs.setValue(
'axis_font_size',
self.ui.general_defaults_form.general_gui_set_group.axis_font_size_spinner.get_value()
self.ui.general_defaults_form.general_app_set_group.axis_font_size_spinner.get_value()
)
stgs.setValue(
'textbox_font_size',
self.ui.general_defaults_form.general_gui_set_group.textbox_font_size_spinner.get_value()
self.ui.general_defaults_form.general_app_set_group.textbox_font_size_spinner.get_value()
)
stgs.setValue('toolbar_lock', self.ui.lock_action.isChecked())
stgs.setValue(
'machinist',
1 if self.ui.general_defaults_form.general_app_group.machinist_cb.get_value() else 0
1 if self.ui.general_defaults_form.general_app_set_group.machinist_cb.get_value() else 0
)
# This will write the setting to the platform specific storage.
@ -6283,7 +6225,7 @@ class App(QtCore.QObject):
# self.options2form()
def init_color_pickers_in_preferences_gui(self):
# Init Plot Colors
# Init Gerber Plot Colors
self.ui.gerber_defaults_form.gerber_gen_group.pf_color_entry.set_value(self.defaults['gerber_plot_fill'])
self.ui.gerber_defaults_form.gerber_gen_group.pf_color_button.setStyleSheet(
"background-color:%s;"
@ -6298,6 +6240,60 @@ class App(QtCore.QObject):
"background-color:%s;"
"border-color: dimgray" % str(self.defaults['gerber_plot_line'])[:7])
# Init Excellon Plot Colors
self.ui.excellon_defaults_form.excellon_gen_group.fill_color_entry.set_value(
self.defaults['excellon_plot_fill'])
self.ui.excellon_defaults_form.excellon_gen_group.fill_color_button.setStyleSheet(
"background-color:%s;"
"border-color: dimgray" % str(self.defaults['excellon_plot_fill'])[:7])
self.ui.excellon_defaults_form.excellon_gen_group.color_alpha_spinner.set_value(
int(self.defaults['excellon_plot_fill'][7:9], 16))
self.ui.excellon_defaults_form.excellon_gen_group.color_alpha_slider.setValue(
int(self.defaults['excellon_plot_fill'][7:9], 16))
self.ui.excellon_defaults_form.excellon_gen_group.line_color_entry.set_value(
self.defaults['excellon_plot_line'])
self.ui.excellon_defaults_form.excellon_gen_group.line_color_button.setStyleSheet(
"background-color:%s;"
"border-color: dimgray" % str(self.defaults['excellon_plot_line'])[:7])
# Init Geometry Plot Colors
self.ui.geometry_defaults_form.geometry_gen_group.line_color_entry.set_value(
self.defaults['geometry_plot_line'])
self.ui.geometry_defaults_form.geometry_gen_group.line_color_button.setStyleSheet(
"background-color:%s;"
"border-color: dimgray" % str(self.defaults['geometry_plot_line'])[:7])
# Init CNCJob Travel Line Colors
self.ui.cncjob_defaults_form.cncjob_gen_group.tfill_color_entry.set_value(
self.defaults['cncjob_travel_fill'])
self.ui.cncjob_defaults_form.cncjob_gen_group.tfill_color_button.setStyleSheet(
"background-color:%s;"
"border-color: dimgray" % str(self.defaults['cncjob_travel_fill'])[:7])
self.ui.cncjob_defaults_form.cncjob_gen_group.tcolor_alpha_spinner.set_value(
int(self.defaults['cncjob_travel_fill'][7:9], 16))
self.ui.cncjob_defaults_form.cncjob_gen_group.tcolor_alpha_slider.setValue(
int(self.defaults['cncjob_travel_fill'][7:9], 16))
self.ui.cncjob_defaults_form.cncjob_gen_group.tline_color_entry.set_value(
self.defaults['cncjob_travel_line'])
self.ui.cncjob_defaults_form.cncjob_gen_group.tline_color_button.setStyleSheet(
"background-color:%s;"
"border-color: dimgray" % str(self.defaults['cncjob_travel_line'])[:7])
# Init CNCJob Plot Colors
self.ui.cncjob_defaults_form.cncjob_gen_group.fill_color_entry.set_value(
self.defaults['cncjob_plot_fill'])
self.ui.cncjob_defaults_form.cncjob_gen_group.fill_color_button.setStyleSheet(
"background-color:%s;"
"border-color: dimgray" % str(self.defaults['cncjob_plot_fill'])[:7])
self.ui.cncjob_defaults_form.cncjob_gen_group.line_color_entry.set_value(
self.defaults['cncjob_plot_line'])
self.ui.cncjob_defaults_form.cncjob_gen_group.line_color_button.setStyleSheet(
"background-color:%s;"
"border-color: dimgray" % str(self.defaults['cncjob_plot_line'])[:7])
# Init Left-Right Selection colors
self.ui.general_defaults_form.general_gui_group.sf_color_entry.set_value(self.defaults['global_sel_fill'])
self.ui.general_defaults_form.general_gui_group.sf_color_button.setStyleSheet(
@ -6358,9 +6354,9 @@ class App(QtCore.QObject):
"border-color: dimgray" % str(self.defaults['global_proj_item_dis_color'])[:7])
# Init Project Disabled Items color
self.ui.general_defaults_form.general_gui_set_group.mouse_cursor_entry.set_value(
self.ui.general_defaults_form.general_app_set_group.mouse_cursor_entry.set_value(
self.defaults['global_cursor_color'])
self.ui.general_defaults_form.general_gui_set_group.mouse_cursor_button.setStyleSheet(
self.ui.general_defaults_form.general_app_set_group.mouse_cursor_button.setStyleSheet(
"background-color:%s;"
"border-color: dimgray" % str(self.defaults['global_cursor_color'])[:7])
@ -6529,238 +6525,6 @@ class App(QtCore.QObject):
)
self.on_excellon_format_changed()
# Setting selection colors (left - right) handlers
def on_sf_color_entry(self):
self.defaults['global_sel_fill'] = \
self.ui.general_defaults_form.general_gui_group.sf_color_entry.get_value()[:7] + \
self.defaults['global_sel_fill'][7:9]
self.ui.general_defaults_form.general_gui_group.sf_color_button.setStyleSheet(
"background-color:%s" % str(self.defaults['global_sel_fill'])[:7])
def on_sf_color_button(self):
current_color = QtGui.QColor(self.defaults['global_sel_fill'][:7])
c_dialog = QtWidgets.QColorDialog()
plot_fill_color = c_dialog.getColor(initial=current_color)
if plot_fill_color.isValid() is False:
return
self.ui.general_defaults_form.general_gui_group.sf_color_button.setStyleSheet(
"background-color:%s" % str(plot_fill_color.name()))
new_val = str(plot_fill_color.name()) + str(self.defaults['global_sel_fill'][7:9])
self.ui.general_defaults_form.general_gui_group.sf_color_entry.set_value(new_val)
self.defaults['global_sel_fill'] = new_val
def on_sf_color_spinner(self):
spinner_value = self.ui.general_defaults_form.general_gui_group.sf_color_alpha_spinner.value()
self.ui.general_defaults_form.general_gui_group.sf_color_alpha_slider.setValue(spinner_value)
self.defaults['global_sel_fill'] = \
self.defaults['global_sel_fill'][:7] + \
(hex(spinner_value)[2:] if int(hex(spinner_value)[2:], 16) > 0 else '00')
self.defaults['global_sel_line'] = \
self.defaults['global_sel_line'][:7] + \
(hex(spinner_value)[2:] if int(hex(spinner_value)[2:], 16) > 0 else '00')
def on_sf_color_slider(self):
slider_value = self.ui.general_defaults_form.general_gui_group.sf_color_alpha_slider.value()
self.ui.general_defaults_form.general_gui_group.sf_color_alpha_spinner.setValue(slider_value)
def on_sl_color_entry(self):
self.defaults['global_sel_line'] = \
self.ui.general_defaults_form.general_gui_group.sl_color_entry.get_value()[:7] + \
self.defaults['global_sel_line'][7:9]
self.ui.general_defaults_form.general_gui_group.sl_color_button.setStyleSheet(
"background-color:%s" % str(self.defaults['global_sel_line'])[:7])
def on_sl_color_button(self):
current_color = QtGui.QColor(self.defaults['global_sel_line'][:7])
c_dialog = QtWidgets.QColorDialog()
plot_line_color = c_dialog.getColor(initial=current_color)
if plot_line_color.isValid() is False:
return
self.ui.general_defaults_form.general_gui_group.sl_color_button.setStyleSheet(
"background-color:%s" % str(plot_line_color.name()))
new_val_line = str(plot_line_color.name()) + str(self.defaults['global_sel_line'][7:9])
self.ui.general_defaults_form.general_gui_group.sl_color_entry.set_value(new_val_line)
self.defaults['global_sel_line'] = new_val_line
# Setting selection colors (right - left) handlers
def on_alt_sf_color_entry(self):
self.defaults['global_alt_sel_fill'] = self.ui.general_defaults_form.general_gui_group \
.alt_sf_color_entry.get_value()[:7] + self.defaults['global_alt_sel_fill'][7:9]
self.ui.general_defaults_form.general_gui_group.alt_sf_color_button.setStyleSheet(
"background-color:%s" % str(self.defaults['global_alt_sel_fill'])[:7])
def on_alt_sf_color_button(self):
current_color = QtGui.QColor(self.defaults['global_alt_sel_fill'][:7])
c_dialog = QtWidgets.QColorDialog()
plot_fill_color = c_dialog.getColor(initial=current_color)
if plot_fill_color.isValid() is False:
return
self.ui.general_defaults_form.general_gui_group.alt_sf_color_button.setStyleSheet(
"background-color:%s" % str(plot_fill_color.name()))
new_val = str(plot_fill_color.name()) + str(self.defaults['global_alt_sel_fill'][7:9])
self.ui.general_defaults_form.general_gui_group.alt_sf_color_entry.set_value(new_val)
self.defaults['global_alt_sel_fill'] = new_val
def on_alt_sf_color_spinner(self):
spinner_value = self.ui.general_defaults_form.general_gui_group.alt_sf_color_alpha_spinner.value()
self.ui.general_defaults_form.general_gui_group.alt_sf_color_alpha_slider.setValue(spinner_value)
self.defaults['global_alt_sel_fill'] = \
self.defaults['global_alt_sel_fill'][:7] + \
(hex(spinner_value)[2:] if int(hex(spinner_value)[2:], 16) > 0 else '00')
self.defaults['global_alt_sel_line'] = \
self.defaults['global_alt_sel_line'][:7] + \
(hex(spinner_value)[2:] if int(hex(spinner_value)[2:], 16) > 0 else '00')
def on_alt_sf_color_slider(self):
slider_value = self.ui.general_defaults_form.general_gui_group.alt_sf_color_alpha_slider.value()
self.ui.general_defaults_form.general_gui_group.alt_sf_color_alpha_spinner.setValue(slider_value)
def on_alt_sl_color_entry(self):
self.defaults['global_alt_sel_line'] = \
self.ui.general_defaults_form.general_gui_group.alt_sl_color_entry.get_value()[:7] + \
self.defaults['global_alt_sel_line'][7:9]
self.ui.general_defaults_form.general_gui_group.alt_sl_color_button.setStyleSheet(
"background-color:%s" % str(self.defaults['global_alt_sel_line'])[:7])
def on_alt_sl_color_button(self):
current_color = QtGui.QColor(self.defaults['global_alt_sel_line'][:7])
c_dialog = QtWidgets.QColorDialog()
plot_line_color = c_dialog.getColor(initial=current_color)
if plot_line_color.isValid() is False:
return
self.ui.general_defaults_form.general_gui_group.alt_sl_color_button.setStyleSheet(
"background-color:%s" % str(plot_line_color.name()))
new_val_line = str(plot_line_color.name()) + str(self.defaults['global_alt_sel_line'][7:9])
self.ui.general_defaults_form.general_gui_group.alt_sl_color_entry.set_value(new_val_line)
self.defaults['global_alt_sel_line'] = new_val_line
# Setting Editor colors
def on_draw_color_entry(self):
self.defaults['global_draw_color'] = self.ui.general_defaults_form.general_gui_group \
.draw_color_entry.get_value()
self.ui.general_defaults_form.general_gui_group.draw_color_button.setStyleSheet(
"background-color:%s" % str(self.defaults['global_draw_color']))
def on_draw_color_button(self):
current_color = QtGui.QColor(self.defaults['global_draw_color'])
c_dialog = QtWidgets.QColorDialog()
draw_color = c_dialog.getColor(initial=current_color)
if draw_color.isValid() is False:
return
self.ui.general_defaults_form.general_gui_group.draw_color_button.setStyleSheet(
"background-color:%s" % str(draw_color.name()))
new_val = str(draw_color.name())
self.ui.general_defaults_form.general_gui_group.draw_color_entry.set_value(new_val)
self.defaults['global_draw_color'] = new_val
def on_sel_draw_color_entry(self):
self.defaults['global_sel_draw_color'] = self.ui.general_defaults_form.general_gui_group \
.sel_draw_color_entry.get_value()
self.ui.general_defaults_form.general_gui_group.sel_draw_color_button.setStyleSheet(
"background-color:%s" % str(self.defaults['global_sel_draw_color']))
def on_sel_draw_color_button(self):
current_color = QtGui.QColor(self.defaults['global_sel_draw_color'])
c_dialog = QtWidgets.QColorDialog()
sel_draw_color = c_dialog.getColor(initial=current_color)
if sel_draw_color.isValid() is False:
return
self.ui.general_defaults_form.general_gui_group.sel_draw_color_button.setStyleSheet(
"background-color:%s" % str(sel_draw_color.name()))
new_val_sel = str(sel_draw_color.name())
self.ui.general_defaults_form.general_gui_group.sel_draw_color_entry.set_value(new_val_sel)
self.defaults['global_sel_draw_color'] = new_val_sel
def on_proj_color_entry(self):
self.defaults['global_proj_item_color'] = self.ui.general_defaults_form.general_gui_group \
.proj_color_entry.get_value()
self.ui.general_defaults_form.general_gui_group.proj_color_button.setStyleSheet(
"background-color:%s" % str(self.defaults['global_proj_item_color']))
def on_proj_color_button(self):
current_color = QtGui.QColor(self.defaults['global_proj_item_color'])
c_dialog = QtWidgets.QColorDialog()
proj_color = c_dialog.getColor(initial=current_color)
if proj_color.isValid() is False:
return
self.ui.general_defaults_form.general_gui_group.proj_color_button.setStyleSheet(
"background-color:%s" % str(proj_color.name()))
new_val_sel = str(proj_color.name())
self.ui.general_defaults_form.general_gui_group.proj_color_entry.set_value(new_val_sel)
self.defaults['global_proj_item_color'] = new_val_sel
def on_proj_color_dis_entry(self):
self.defaults['global_proj_item_dis_color'] = self.ui.general_defaults_form.general_gui_group \
.proj_color_dis_entry.get_value()
self.ui.general_defaults_form.general_gui_group.proj_color_dis_button.setStyleSheet(
"background-color:%s" % str(self.defaults['global_proj_item_dis_color']))
def on_proj_color_dis_button(self):
current_color = QtGui.QColor(self.defaults['global_proj_item_dis_color'])
c_dialog = QtWidgets.QColorDialog()
proj_color = c_dialog.getColor(initial=current_color)
if proj_color.isValid() is False:
return
self.ui.general_defaults_form.general_gui_group.proj_color_dis_button.setStyleSheet(
"background-color:%s" % str(proj_color.name()))
new_val_sel = str(proj_color.name())
self.ui.general_defaults_form.general_gui_set_group.proj_color_dis_entry.set_value(new_val_sel)
self.defaults['global_proj_item_dis_color'] = new_val_sel
def on_annotation_fontcolor_entry(self):
self.defaults['cncjob_annotation_fontcolor'] = \
self.ui.cncjob_defaults_form.cncjob_adv_opt_group.annotation_fontcolor_entry.get_value()
self.ui.cncjob_defaults_form.cncjob_adv_opt_group.annotation_fontcolor_button.setStyleSheet(
"background-color:%s" % str(self.defaults['cncjob_annotation_fontcolor']))
def on_annotation_fontcolor_button(self):
current_color = QtGui.QColor(self.defaults['cncjob_annotation_fontcolor'])
c_dialog = QtWidgets.QColorDialog()
annotation_color = c_dialog.getColor(initial=current_color)
if annotation_color.isValid() is False:
return
self.ui.cncjob_defaults_form.cncjob_adv_opt_group.annotation_fontcolor_button.setStyleSheet(
"background-color:%s" % str(annotation_color.name()))
new_val_sel = str(annotation_color.name())
self.ui.cncjob_defaults_form.cncjob_adv_opt_group.annotation_fontcolor_entry.set_value(new_val_sel)
self.defaults['cncjob_annotation_fontcolor'] = new_val_sel
def on_film_color_entry(self):
self.defaults['tools_film_color'] = \
self.ui.tools_defaults_form.tools_film_group.film_color_entry.get_value()
@ -6850,13 +6614,6 @@ class App(QtCore.QObject):
self.ui.tools2_defaults_form.tools2_qrcode_group.back_color_entry.set_value(new_val_sel)
self.defaults['tools_qrcode_back_color'] = new_val_sel
def on_splash_changed(self, state):
settings = QSettings("Open Source", "FlatCAM")
settings.setValue('splash_screen', 1) if state else settings.setValue('splash_screen', 0)
# This will write the setting to the platform specific storage.
del settings
def on_tab_rmb_click(self, checked):
self.ui.notebook.set_detachable(val=checked)
self.defaults["global_tabs_detachable"] = checked
@ -7060,12 +6817,12 @@ class App(QtCore.QObject):
self.app_cursor.enabled = False
if val == 'small':
self.ui.general_defaults_form.general_gui_set_group.cursor_size_entry.setDisabled(False)
self.ui.general_defaults_form.general_gui_set_group.cursor_size_lbl.setDisabled(False)
self.ui.general_defaults_form.general_app_set_group.cursor_size_entry.setDisabled(False)
self.ui.general_defaults_form.general_app_set_group.cursor_size_lbl.setDisabled(False)
self.app_cursor = self.plotcanvas.new_cursor()
else:
self.ui.general_defaults_form.general_gui_set_group.cursor_size_entry.setDisabled(True)
self.ui.general_defaults_form.general_gui_set_group.cursor_size_lbl.setDisabled(True)
self.ui.general_defaults_form.general_app_set_group.cursor_size_entry.setDisabled(True)
self.ui.general_defaults_form.general_app_set_group.cursor_size_lbl.setDisabled(True)
self.app_cursor = self.plotcanvas.new_cursor(big=True)
if self.ui.grid_snap_btn.isChecked():
@ -7073,12 +6830,6 @@ class App(QtCore.QObject):
else:
self.app_cursor.enabled = False
def on_cnc_custom_parameters(self, signal_text):
if signal_text == 'Parameters':
return
else:
self.ui.cncjob_defaults_form.cncjob_adv_opt_group.toolchange_text.insertPlainText('%%%s%%' % signal_text)
def on_save_button(self, save_to_file=True):
log.debug("App.on_save_button() --> Applying preferences to file.")
@ -7106,20 +6857,20 @@ class App(QtCore.QObject):
settgs = QSettings("Open Source", "FlatCAM")
# save the notebook font size
fsize = self.ui.general_defaults_form.general_gui_set_group.notebook_font_size_spinner.get_value()
fsize = self.ui.general_defaults_form.general_app_set_group.notebook_font_size_spinner.get_value()
settgs.setValue('notebook_font_size', fsize)
# save the axis font size
g_fsize = self.ui.general_defaults_form.general_gui_set_group.axis_font_size_spinner.get_value()
g_fsize = self.ui.general_defaults_form.general_app_set_group.axis_font_size_spinner.get_value()
settgs.setValue('axis_font_size', g_fsize)
# save the textbox font size
tb_fsize = self.ui.general_defaults_form.general_gui_set_group.textbox_font_size_spinner.get_value()
tb_fsize = self.ui.general_defaults_form.general_app_set_group.textbox_font_size_spinner.get_value()
settgs.setValue('textbox_font_size', tb_fsize)
settgs.setValue(
'machinist',
1 if self.ui.general_defaults_form.general_app_group.machinist_cb.get_value() else 0
1 if self.ui.general_defaults_form.general_app_set_group.machinist_cb.get_value() else 0
)
# This will write the setting to the platform specific storage.
@ -12411,22 +12162,22 @@ class App(QtCore.QObject):
if act_name == 'red':
new_color = '#FF0000' + \
str(hex(self.ui.general_defaults_form.general_gui_group.pf_color_alpha_slider.value())[2:])
str(hex(self.ui.gerber_defaults_form.gerber_gen_group.pf_color_alpha_slider.value())[2:])
if act_name == 'blue':
new_color = '#0000FF' + \
str(hex(self.ui.general_defaults_form.general_gui_group.pf_color_alpha_slider.value())[2:])
str(hex(self.ui.gerber_defaults_form.gerber_gen_group.pf_color_alpha_slider.value())[2:])
if act_name == 'yellow':
new_color = '#FFDF00' + \
str(hex(self.ui.general_defaults_form.general_gui_group.pf_color_alpha_slider.value())[2:])
str(hex(self.ui.gerber_defaults_form.gerber_gen_group.pf_color_alpha_slider.value())[2:])
if act_name == 'green':
new_color = '#00FF00' + \
str(hex(self.ui.general_defaults_form.general_gui_group.pf_color_alpha_slider.value())[2:])
str(hex(self.ui.gerber_defaults_form.gerber_gen_group.pf_color_alpha_slider.value())[2:])
if act_name == 'purple':
new_color = '#FF00FF' + \
str(hex(self.ui.general_defaults_form.general_gui_group.pf_color_alpha_slider.value())[2:])
str(hex(self.ui.gerber_defaults_form.gerber_gen_group.pf_color_alpha_slider.value())[2:])
if act_name == 'brown':
new_color = '#A52A2A' + \
str(hex(self.ui.general_defaults_form.general_gui_group.pf_color_alpha_slider.value())[2:])
str(hex(self.ui.gerber_defaults_form.gerber_gen_group.pf_color_alpha_slider.value())[2:])
if act_name == 'custom':
new_color = QtGui.QColor(self.defaults['gerber_plot_fill'][:7])
@ -12437,7 +12188,7 @@ class App(QtCore.QObject):
return
new_color = str(plot_fill_color.name()) + \
str(hex(self.ui.general_defaults_form.general_gui_group.pf_color_alpha_slider.value())[2:])
str(hex(self.ui.gerber_defaults_form.gerber_gen_group.pf_color_alpha_slider.value())[2:])
new_line_color = color_variant(new_color[:7], 0.7)

View File

@ -3536,7 +3536,9 @@ class FlatCAMExcellon(FlatCAMObj, Excellon):
# Plot Excellon (All polygons?)
if self.options["solid"]:
for geo in self.solid_geometry:
self.add_shape(shape=geo, color='#750000BF', face_color='#C40000BF',
self.add_shape(shape=geo,
color=self.app.defaults["excellon_plot_line"],
face_color=self.app.defaults["excellon_plot_fill"],
visible=visible,
layer=2)
else:
@ -4074,7 +4076,6 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
# I use lambda's because the connected functions have parameters that could be used in certain scenarios
self.ui.addtool_btn.clicked.connect(lambda: self.on_tool_add())
self.ui.addtool_entry.returnPressed.connect(self.on_tool_add)
self.ui.copytool_btn.clicked.connect(lambda: self.on_tool_copy())
self.ui.deltool_btn.clicked.connect(lambda: self.on_tool_delete())
@ -4127,11 +4128,6 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
except (TypeError, AttributeError):
pass
try:
self.ui.addtool_entry.returnPressed.disconnect()
except (TypeError, AttributeError):
pass
try:
self.ui.copytool_btn.clicked.disconnect()
except (TypeError, AttributeError):
@ -5793,12 +5789,15 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
return factor
def plot_element(self, element, color='#FF0000FF', visible=None):
def plot_element(self, element, color=None, visible=None):
if color is None:
color = '#FF0000FF'
visible = visible if visible else self.options['plot']
try:
for sub_el in element:
self.plot_element(sub_el)
self.plot_element(sub_el, color=color)
except TypeError: # Element is not iterable...
# if self.app.is_legacy is False:
@ -5825,12 +5824,14 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
if self.multigeo is True: # geo multi tool usage
for tooluid_key in self.tools:
solid_geometry = self.tools[tooluid_key]['solid_geometry']
self.plot_element(solid_geometry, visible=visible)
self.plot_element(solid_geometry, visible=visible,
color=self.app.defaults["geometry_plot_line"])
else:
# plot solid geometry that may be an direct attribute of the geometry object
# for SingleGeo
if self.solid_geometry:
self.plot_element(self.solid_geometry, visible=visible)
self.plot_element(self.solid_geometry, visible=visible,
color=self.app.defaults["geometry_plot_line"])
# self.plot_element(self.solid_geometry, visible=self.options['plot'])

View File

@ -24,6 +24,9 @@ CAD program, and create G-Code for Isolation routing.
- further modifications in Preferences -> General GUI - extended the changes
- in Legacy(2D) graphic engine made to work the mouse color change
- theme changing is no longer auto-reboot upon change; it require now to press a button
- cleaned the Preferences classes and added the signals and signal slots in those classes, removing them from the main app class
- each FlatCAM object found in Preferences has it's own set of controls for changing the colors
- added a set of gray icons to be used when the theme is complete dark (for now it is useful only for MacOS with dark theme because at the moment the app is not styled to dark UI except the plot area)
25.12.2019

View File

@ -4252,8 +4252,7 @@ class CNCjob(Geometry):
# return fig
def plot2(self, tooldia=None, dpi=75, margin=0.1, gcode_parsed=None,
color={"T": ["#F0E24D4C", "#B5AB3A4C"], "C": ["#5E6CFFFF", "#4650BDFF"]},
alpha={"T": 0.3, "C": 1.0}, tool_tolerance=0.0005, obj=None, visible=False, kind='all'):
color=None, alpha={"T": 0.3, "C": 1.0}, tool_tolerance=0.0005, obj=None, visible=False, kind='all'):
"""
Plots the G-code job onto the given axes.
@ -4270,6 +4269,12 @@ class CNCjob(Geometry):
"""
# units = self.app.ui.general_defaults_form.general_app_group.units_radio.get_value().upper()
if color is None:
color = {
"T": [self.app.defaults["cncjob_travel_fill"], self.app.defaults["cncjob_travel_line"]],
"C": [self.app.defaults["cncjob_plot_fill"], self.app.defaults["cncjob_plot_line"]]
}
gcode_parsed = gcode_parsed if gcode_parsed else self.gcode_parsed
path_num = 0

View File

@ -2333,7 +2333,7 @@ class FlatCAMGUI(QtWidgets.QMainWindow):
:param event: QT event to filter
:return:
"""
if self.general_defaults_form.general_gui_set_group.toggle_tooltips_cb.get_value() is False:
if self.general_defaults_form.general_app_set_group.toggle_tooltips_cb.get_value() is False:
if event.type() == QtCore.QEvent.ToolTip:
return True
else:

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 420 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 509 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 406 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 234 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 157 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 176 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 251 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 468 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 479 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 482 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 512 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 505 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 505 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 481 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 461 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 492 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 516 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 500 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 482 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 481 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 553 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 469 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 460 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 508 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 123 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 165 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 168 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 326 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 445 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 625 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 297 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 199 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 177 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 186 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 459 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 491 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 589 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 226 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 470 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 148 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 466 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 191 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 189 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 341 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 340 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 499 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 242 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 453 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 696 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 271 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 640 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 289 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 252 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 431 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 967 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 237 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 214 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 194 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 187 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 344 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 170 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 288 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 832 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 288 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 156 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 227 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 582 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 913 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 166 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 175 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 268 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 335 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 465 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 691 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 853 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 296 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 943 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 171 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 386 B

Some files were not shown because too many files have changed in this diff Show More