コード例 #1
0
    def open(self, slideshow, prepared = False):
        """Open a slideshow for editing
        
        Arguments
        slideshow -- the slideshow
        prepared -- if true, all media data is already copied to the working folder
                    (i.e. the slideshow has been created automatically)
        
        """
        EditTab.open(self, slideshow, prepared = prepared)
        
        if(not prepared):
            if(slideshow.bgsound != ''):
                shutil.copyfile(slideshow.getPath(slideshow.bgsound), os.path.join(self._wdir, slideshow.bgsound))

        self._svBgSound.set(slideshow.bgsound)

        if(slideshow.bgsound != ''):
            self._btnListen.setSound(os.path.join(self._wdir, slideshow.bgsound))
            self._btnRemove.config(state = NORMAL)
        
        for frame in slideshow.frames:
            ea = self.scrollbox.getWidget(EditArea, self._wdir, self._tooltipwidth, self._ehPlayThisFrame, self._ehPlayFromHere)
            ea.setFrame(frame, not prepared)
            
        self.setDirty(prepared)
        self.editing = True
コード例 #2
0
    def __init__(self, filename, parentnotebook):
        EditTab.__init__(self, filename, parentnotebook)

        et = eis.EditInputTheme(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=0, column=0, rowspan=4, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputDataSource(self._mainframe, self, 'Blog')
        self._inputs.append(et)
        et.grid(row=0, column=1, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputTopLeftText(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=1, column=1, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputCommon2(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=2, column=1, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputHorizontalPanel(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=3, column=1, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputItemView(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=0, column=2, rowspan=2, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputDimensions(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=2, column=2, rowspan=2, padx=5, pady=5, sticky=NSEW)
コード例 #3
0
ファイル: edittab2.py プロジェクト: d98mp/digitalaskyltar
    def __init__(self, filename, parentnotebook):
        EditTab.__init__(self, filename, parentnotebook)

        et = eis.EditInputTheme(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row = 0, column = 0, rowspan = 4, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputDataSource(self._mainframe, self, 'Blog')
        self._inputs.append(et)
        et.grid(row = 0, column = 1, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputTopLeftText(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row = 1, column = 1, padx = 5, pady = 5, sticky = NSEW)
        
        et = eis.EditInputCommon2(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row = 2, column = 1, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputHorizontalPanel(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row = 3, column = 1, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputItemView(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row = 0, column = 2, rowspan = 2, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputDimensions(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row = 2, column = 2, rowspan = 2, padx = 5, pady = 5, sticky = NSEW)
コード例 #4
0
    def __init__(self, parent, wdir, datamodel, psize):
        """Initiate
        
        Arguments
        parent -- parent tkinter item
        wdir -- working directory
        datamodel -- the database that is edited by the program
        psize -- tuple defining preview size of images
        
        """
        EditTab.__init__(self, parent, wdir, datamodel, psize)
        
        self._mediatype = tpSlideshow
        
        #Create variables for common data
        self._svBgSound = StringVar()

        #Make the first row expandable        
        self.rowconfigure(0, weight = 1)

        #Add frame from super class
        self._superFrame.grid(row = 0, column = 0, sticky = W + N)

        #Create the right column
        rightFrame = Frame(self)
        rightFrame.grid(row = 0, column = 1, pady = 10, sticky = N + S)
        rightFrame.rowconfigure(2, weight = 1)

        commonFrame = Frame(rightFrame)
        commonFrame.grid(padx = 5, pady = 5, sticky = W)
        commonFrame.columnconfigure(0, weight = 1)
        commonFrame.columnconfigure(1, weight = 1)
        commonFrame.columnconfigure(2, weight = 1)
        
        l = Label(commonFrame, text = lang[lng.txtBgSound])
        l.grid(row = 0, column = 0, padx = 10, sticky = W)
        e = Entry(commonFrame, w = 32, textvariable = self._svBgSound, state = "readonly")
        e.grid(row = 1, column = 0, padx = 10, sticky = W);
        tt = ToolTip(e, '', textvariable = self._svBgSound, wraplength = self._tooltipwidth)

        b = SoundButton(commonFrame, lang[lng.txtListen], lang[lng.txtStop], self._clbPlaying)
        self._btnListen = b
        b.grid(row = 1, column = 1, padx = 10, sticky = W + E)

        b = Button(commonFrame, text = lang[lng.txtSelect] + '...', command = self._ehGetBgSound)
        b.grid(row = 1, column = 2, padx = 10)
        self._btnSelect = b

        b = Button(commonFrame, text = lang[lng.txtDelete], state = DISABLED, command = self._ehRemoveSound)
        b.grid(row = 1, column = 3, padx = 10)
        self._btnRemove = b

        b = Button(rightFrame, text = lang[lng.txtNewFrame], command = self._ehNewFrame)
        b.grid(row = 1, column = 0, padx = 10, pady = 5, sticky = W)

        sb = Scrollbox(self, rightFrame)
        self.scrollbox = sb
        sb.grid(row=2, column = 0, sticky = N + S + W, padx = 10, pady = 10)
コード例 #5
0
    def open(self, slideshow, prepared=False):
        """Open a slideshow for editing
        
        Arguments
        slideshow -- the slideshow
        prepared -- if true, all media data is already copied to the working folder
                    (i.e. the slideshow has been created automatically)
        
        """
        EditTab.open(self, slideshow, prepared=False)

        if not prepared:
            if slideshow.video != "":
                shutil.copyfile(slideshow.getPath(slideshow.video), os.path.join(self._wdir, slideshow.video))

        self._svVideo.set(slideshow.video)
コード例 #6
0
 def _getCurrentSlideshow(self, fromindex = None, oneindex = None):
     """Create and return a slideshow representing a subset of the currently
     edited slideshow. If no parameters are given, the entire slideshow
     will be returned. 
     
     Arguments
     fromindex -- if not None, the slideshow will contain all frames starting with fromindex
     oneindex -- if not None and fromindex is None, the slideshow will contain the frame at oneindex
     
     """
     slideshow = EditTab._getCurrentSlideshow(self)
     slideshow.bgsound = self._svBgSound.get()
     
     if(fromindex is not None):
         r = range(fromindex, len(self.scrollbox.widgets))
         
         for i in r:
             ea = self.scrollbox.widgets[i]
             frame = SFrame(slideshow, ea.getImage(), ea.getSound())
             slideshow.addFrame(frame)
     elif(oneindex is not None):
         ea = self.scrollbox.widgets[oneindex]
         frame = SFrame(slideshow, ea.getImage(), ea.getSound())
         slideshow.addFrame(frame)
     else:
         for ea in self.scrollbox.widgets:
             frame = SFrame(slideshow, ea.getImage(), ea.getSound())
             slideshow.addFrame(frame)
         
     return slideshow
コード例 #7
0
    def __init__(self, filename, parentnotebook):
        EditTab.__init__(self, filename, parentnotebook)

        et = eis.EditInputTheme(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=0, column=0, rowspan=4, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputDataSource(self._mainframe, self, "Blog")
        self._inputs.append(et)
        et.grid(row=0, column=1, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputDataSource(self._mainframe, self, "New")
        self._inputs.append(et)
        et.grid(row=1, column=1, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputCommon3(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=2, column=1, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputBottomArea(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=3, column=1, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputItemView(self._mainframe, self, True)
        self._inputs.append(et)
        et.grid(row=0, column=2, rowspan=3, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputScrollbuttons(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=3, column=2, padx=5, pady=5, sticky=NSEW)

        right = Frame(self._mainframe)
        right.grid(row=0, column=3, rowspan=4, padx=5, pady=5, sticky=NSEW)
        right.rowconfigure(1, weight=1)

        et = eis.EditInputDimensions(right, self)
        self._inputs.append(et)
        et.grid(row=0, column=0, padx=5, pady=5, sticky=NSEW)

        sm = eis.SubjectManager(right, self)
        self._inputs.append(sm)
        sm.grid(row=1, column=0, padx=5, pady=5, sticky=NSEW)
コード例 #8
0
ファイル: edittab3.py プロジェクト: d98mp/digitalaskyltar
    def __init__(self, filename, parentnotebook):
        EditTab.__init__(self, filename, parentnotebook)

        et = eis.EditInputTheme(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row = 0, column = 0, rowspan = 4, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputDataSource(self._mainframe, self, 'Blog')
        self._inputs.append(et)
        et.grid(row = 0, column = 1, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputDataSource(self._mainframe, self, 'New')
        self._inputs.append(et)
        et.grid(row = 1, column = 1, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputCommon3(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row = 2, column = 1, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputBottomArea(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row = 3, column = 1, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputItemView(self._mainframe, self, True)
        self._inputs.append(et)
        et.grid(row = 0, column = 2, rowspan = 3, padx = 5, pady = 5, sticky = NSEW)

        et = eis.EditInputScrollbuttons(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row = 3, column = 2,  padx = 5, pady = 5, sticky = NSEW)

        right = Frame(self._mainframe)
        right.grid(row = 0, column = 3, rowspan = 4, padx = 5, pady = 5, sticky = NSEW)
        right.rowconfigure(1, weight = 1)

        et = eis.EditInputDimensions(right, self)
        self._inputs.append(et)
        et.grid(row = 0, column = 0, padx = 5, pady = 5, sticky = NSEW)

        sm = eis.SubjectManager(right, self)
        self._inputs.append(sm)
        sm.grid(row = 1, column = 0, padx = 5, pady = 5, sticky = NSEW)
コード例 #9
0
    def __init__(self, parent, wdir, datamodel, psize):
        """Initiate
        
        Arguments
        parent -- parent tkinter item
        wdir -- working directory
        datamodel -- the database that is edited by the program
        psize -- tuple defining preview size of videos
                
        """
        EditTab.__init__(self, parent, wdir, datamodel, psize)

        self._mediatype = tpVideo

        # Create variables for common data
        self._svVideo = StringVar()

        # Make the first row expandable
        self.rowconfigure(0, weight=1)

        # Add frame from super class
        self._superFrame.grid(row=0, column=0, sticky=W + N)

        # Create the right column
        rightLf = ttk.LabelFrame(self, text=" " + lang[lng.txtVideo] + " ")
        rightLf.grid(row=0, column=1, pady=10, sticky=W + N)
        rightFrame = Frame(rightLf)
        rightFrame.grid()

        e = Entry(rightFrame, w=32, textvariable=self._svVideo, state="readonly")
        e.grid(row=0, column=0, padx=10, pady=5, sticky=W)

        tt = ToolTip(e, "", textvariable=self._svVideo, wraplength=parent.winfo_screenwidth() * 4 / 5)

        b = Button(rightFrame, text=lang[lng.txtSelect] + "...", command=self._ehGetVideo)
        b.grid(row=0, column=1, padx=10, pady=5)

        b = Button(rightFrame, text=lang[lng.txtWatch], command=self._ehWatch)
        b.grid(row=0, column=2, padx=10, pady=5)
コード例 #10
0
    def __init__(self, filename, parentnotebook):
        EditTab.__init__(self, filename, parentnotebook)

        et = eis.EditInputTheme(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=0, column=0, rowspan=2, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputDimensions(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=0, column=1, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputScrollbuttons(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=0, column=2, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputItemView(self._mainframe, self, True)
        self._inputs.append(et)
        et.grid(row=0, column=3, rowspan=2, padx=5, pady=5, sticky=NSEW)

        et = eis.EditInputCommon1(self._mainframe, self)
        self._inputs.append(et)
        et.grid(row=1, column=1, columnspan=2, padx=5, pady=5, sticky=NSEW)
コード例 #11
0
 def clear(self):
     """Clear the edit tab"""
     EditTab.clear(self)
     self._svVideo.set("")
コード例 #12
0
    def _getCurrentSlideshow(self):
        """Create and return a slideshow representing the currently edited slideshow."""
        slideshow = EditTab._getCurrentSlideshow(self)
        slideshow.video = self._svVideo.get()

        return slideshow
コード例 #13
0
 def clear(self):
     """Clear the edit tab"""
     EditTab.clear(self)
     self.scrollbox.clear()
     self._svBgSound.set('')