mirror of
https://github.com/jlengrand/Ivolution.git
synced 2026-03-10 15:50:41 +00:00
100 lines
3.1 KiB
Python
100 lines
3.1 KiB
Python
#!/usr/bin/env python
|
|
"""
|
|
.. module:: SettingsWindow
|
|
:platform: Unix, Windows, Mac
|
|
:synopsis: Settings Window of the Ivolution GUI.
|
|
|
|
.. moduleauthor:: Julien Lengrand-Lambert <jlengrand@gmail.com>
|
|
|
|
"""
|
|
|
|
import wx
|
|
import wx.lib.newevent
|
|
|
|
from .. import get_data # used to load images and files
|
|
|
|
from SettingsTemplate import SettingsTemplate
|
|
|
|
|
|
class SettingsWindow(SettingsTemplate):
|
|
"""
|
|
Settings Window of the Ivolution application
|
|
"""
|
|
def __init__(self, parent):
|
|
"""
|
|
Overrides init frame SettingsTemplate
|
|
"""
|
|
SettingsTemplate.__init__(self, parent)
|
|
# TODO : Set icon
|
|
# Sets icon
|
|
#self.SetIcon(wx.Icon('ivolution/data/media/icons/spanner_48.ico',
|
|
# wx.BITMAP_TYPE_ICO))
|
|
|
|
self.parent = parent
|
|
|
|
# Defining settings value
|
|
self.output_folder = parent.out_fo
|
|
self.video_name = "Ivolution"
|
|
self.type = ""
|
|
self.mode = ""
|
|
self.speed = ""
|
|
self.sort = ""
|
|
|
|
# setting default value from main window
|
|
self.outputLocationLabel.SetLabel(self.output_folder)
|
|
self.typeCombo.SetSelection(0)
|
|
self.speedCombo.SetSelection(1)
|
|
self.m_notebook4.SetSelection(0) # I want to see basic first
|
|
|
|
# Virtual event handlers, overide them in your derived class
|
|
def on_output(self, event):
|
|
self.outputdialog = wx.DirDialog(self,
|
|
"Please choose your output directory",
|
|
style=1,
|
|
defaultPath=self.output_folder)
|
|
|
|
if self.outputdialog.ShowModal() == wx.ID_OK:
|
|
self.output_folder = self.outputdialog.GetPath()
|
|
self.outputLocationLabel.SetLabel(self.output_folder)
|
|
self.outputdialog.Destroy()
|
|
|
|
def on_cancel(self, event):
|
|
self.Close(True) # Close the frame.
|
|
|
|
def on_save(self, event):
|
|
# output_folder is already set
|
|
self.video_name = self.outputText.GetValue()
|
|
self.type = self.typeCombo.GetSelection()
|
|
self.mode = self.modeRadioBox.GetSelection()
|
|
self.speed = self.speedCombo.GetSelection()
|
|
self.sort = self.sortRadioBox.GetSelection()
|
|
|
|
#self.print_parameters()
|
|
self.setParentParams()
|
|
self.Close(True) # Close the frame.
|
|
|
|
def setParentParams(self):
|
|
modeChoices = [u"conservative", u"crop"]
|
|
paramChoices = [u"frontal_face", u"profile_face"]
|
|
sortChoices = [u"name", u"exif"]
|
|
|
|
#self.video_name
|
|
self.parent.out_fo = self.output_folder
|
|
self.parent.param = paramChoices[self.type]
|
|
self.parent.mode = modeChoices[self.mode]
|
|
self.parent.speed = self.speed
|
|
self.parent.sort = sortChoices[self.sort]
|
|
|
|
def print_parameters(self):
|
|
print "#########"
|
|
print "Settings:"
|
|
print "file name : %s" % (self.video_name)
|
|
print "output folder : %s" % (self.output_folder)
|
|
|
|
print "Face Type : %s" % (self.type)
|
|
print "Speed chosen : %s" % (self.speed)
|
|
print "Mode chosen : %s" % (self.mode)
|
|
print "Sort method : %s" % (self.sort)
|
|
|
|
print "#########"
|