13 from __future__ 
import absolute_import
    14 from __future__ 
import print_function
    20     import tkinter.messagebox 
as tkinter_messagebox
    23     import tkMessageBox 
as tkinter_messagebox
    25 from project_gui_modules.statusview 
import ProjectStatusView
    26 from project_gui_modules.textwindow 
import TextWindow
    34     def __init__(self, parent, project_name=None, xml_path=None, project_defs=[]):
    40         tk.Frame.__init__(self, self.
parent)
    41         self.pack(expand=1, fill=tk.BOTH)
    46         self.
set_project(project_name, xml_path, project_defs)
    54         self.
infoframe = tk.Frame(self, relief=tk.FLAT, bg=
'aliceblue')
    55         self.infoframe.pack(side=tk.TOP, fill=tk.X)
    56         self.infoframe.columnconfigure(1, weight=1)
    61         self.pathlabel.grid(row=0, column=0)
    63         self.path.grid(row=0, column=1, sticky=tk.E+tk.W)
    69         self.projectlabel.grid(row=1, column=0)
    71         self.projectname.grid(row=1, column=1, sticky=tk.E+tk.W)
    75         self.
ps = ProjectStatusView(self)
    76         self.ps.pack(side=tk.BOTTOM, expand=1, fill=tk.BOTH)
    81         self.
path[
'text'] = xml_path
    83         if len(project_defs) > 0:
    84             self.ps.set_project(project_defs)
    90         xml_path = self.
path[
'text']
    91         if xml_path == 
None or xml_path == 
'':
    92             tkinter_messagebox.showerror(
'', 
'No xml file specified.')
    99             tkinter_messagebox.showerror(
'', 
'Error opening xml file %s.' % xml_path)
   113         self.ps.update_status()
   118         self.ps.update_jobs()
   123         self.ps.highlight_stage(stagename)
 
int open(const char *, int)
Opens a file descriptor. 
 
def set_project(self, project_name, xml_path, project_defs)
 
def highlight_stage(self, stagename)
 
def __init__(self, parent, project_name=None, xml_path=None, project_defs=[])
 
def make_xml_window(self)