def __init__(self, parent, mainwin, worksheet):
#        QTabWidget.__init__(self, parent)
        QVBox.__init__(self, parent)
        self.mainwin, self.worksheet = mainwin, worksheet

#        self.setTabShape(self.Triangular)
#        self.setTabPosition(self.Bottom)

        self.table = GTable(self.worksheet, self)
#        self.addTab(self.table, 'worksheet')

        self.frozen = False

        self.update_size()
        self.update_column_names()

        self.worksheet.connect('data-changed', self.on_data_changed)
        self.worksheet.connect('rename-column', self.update_column_names)

        self.worksheet.connect('rename', self.on_rename)
        self.worksheet.connect('fullname-changed', self.on_rename)

        self.setCaption(self.worksheet.fullname)
        self.setWFlags(Qt.WDestructiveClose)

        self.tip = HeaderToolTip(self.table.horizontalHeader(), self.worksheet)
        self.setIcon(getimage('worksheet'))
        self.resize(400, 400)
    
        self.worksheet.project.connect('remove-item', self.on_project_remove_item)
Exemple #2
0
    def __init__(self, parent, obj):
        QListViewItem.__init__(self, parent, obj.name)
        obj._tree_item = obj
        self._object = obj

        pixmap = getimage({grafity.Worksheet: 'worksheet', 
                            grafity.Graph: 'graph', 
                            grafity.Folder: 'folder',
                            grafity.Script: 'script'}[type(obj)])
        self.setPixmap (0, pixmap)

        self._object.connect('rename', self.on_object_renamed)
        self._object.connect('set-parent', self.on_object_set_parent)

        self.setRenameEnabled(0, True)
    def __init__(self, parent, mainwin, script):
        self.script = script
        QVBox.__init__(self, parent)
        self.resize(500, 300)
        self.setIcon(getimage('script'))

        split = QSplitter(QSplitter.Vertical, self)
        self.editor = QextScintilla(split)
        self.output = QTextBrowser(split)
        self.editor.setText(self.script.text)
        self.connect(self.editor, SIGNAL('textChanged()'), self.on_text_changed)

        lex = QextScintillaLexerPython()
        lex.setDefaultFont(QApplication.font())
        lex.setFont(QApplication.font(), -2)
        self.editor.setLexer(lex)

        self.script.project.connect('remove-item', self.on_project_remove_item)
Exemple #4
0
 def on_undone(self, action):
     action._item.setPixmap(0, getimage('command-done'))
Exemple #5
0
 def on_added(self, action):
     action._item = ActionItem(self, str(action))
     action._item.setPixmap(0, getimage('command-undone'))
     action._item._object = action
Exemple #6
0
 def on_mode_btn(self, i):
     self.btn.setPixmap(getimage(graph_modes[i].image))
     self.extra_mode = graph_modes[i]
     if self.btn.isOn():
         self.active.mode = self.extra_mode.name
Exemple #7
0
    def __init__(self):
        MainWindowUI.__init__(self)

        self.mainbox = QVBox(self)
        self.setCentralWidget(self.mainbox)

        self.workspace = QWorkspace(self.mainbox)
        self.workspace.setScrollBarsEnabled(True)
        self.connect(self.workspace, SIGNAL("windowActivated(QWidget *)"), self.on_window_activated)

        self.recent = settings.get('windows', 'recent')
        if self.recent in [None, '']:
            self.recent = []
        else:
            self.recent = [s for s in self.recent.split(' ') if os.path.isfile(s)]
        self.recentids = []

        self.connect(self.File, SIGNAL('aboutToShow()'), self.fileMenuAboutToShow)
        self.connect(self.Window, SIGNAL('aboutToShow()'), self.windowMenuAboutToShow)

### status bar #################################################################################

        self.statusBar().show()
        self.statusBar().message("Welcome to Grafity", 1000)
        self.statuslabel = QLabel(self, 'Pikou')
        self.statusBar().addWidget(self.statuslabel, 0, True)
        self.statuslabel.setText("")
        self.progressbar = QProgressBar(100, self)
        self.statusBar().addWidget(self.progressbar, 0, True)
        self.progressbar.hide()

### bottom panel ###############################################################################
        locals = {}
#        locals['undo'] = undo
#        locals['redo'] = redo
        locals['main'] = self
        self.bpanel = Panel(self, QMainWindow.DockBottom)
        self.script = Console(self.bpanel, locals=locals)
        self.script.runsource('from grafity import *')
        self.script.runsource('from grafity.arrays import *')

        self.bpanel.add('Script', getimage('console'), self.script)

### left panel #################################################################################
        self.lpanel = Panel(self, QMainWindow.DockLeft)
        self.explorer = ProjectExplorer(self.lpanel)
#        self.explorer.connect('activated', self.on_activated)
        self.lpanel.add('Explorer', getimage('folder'), self.explorer)
        self.lpanel.btns['Explorer'].setOn(True)

        self.actionlist = ActionList(self.lpanel)
        self.lpanel.add('Actions', getimage('undo'), self.actionlist)


### right panel ################################################################################
        
        self.rpanel = Panel(self, QMainWindow.DockRight)
#        self.graph_data = GraphData(self.bpanel, self)
#        self.graph_style = GraphStyle(self.bpanel, self)
#        self.graph_axes = GraphAxes(self.bpanel, self)
#        self.graph_fit = GraphFit(self.bpanel, self)
#        self.rpanel.add('Data', getimage('worksheet'), self.graph_data)
#        self.rpanel.add('Style', getimage('style'), self.graph_style)
#        self.rpanel.add('Axes', getimage('axes'), self.graph_axes)
#        self.rpanel.add('fit', getimage('function'), self.graph_fit)

#        self.open_project(grafity.Project())#'../test/pdms.gt'))

#        global_connect('status-message', self.status_message)

        self.worksheet_toolbar.hide()
        self.graph_toolbar.hide()
        self.script_toolbar.hide()
        self.rpanel.hide()

        self.column_tool_submenus = {'': self.Column}

        for i, (name, function, image) in enumerate(column_tools):
            if '/' in name:
                path, name = name.split('/')
            else:
                path = ''

            if path not in self.column_tool_submenus:
                self.column_tool_submenus[path] = QPopupMenu()
                self.Column.insertItem(path, self.column_tool_submenus[path])
            menu = self.column_tool_submenus[path]
            
            if image is not None:
                item = menu.insertItem(QIconSet(getimage(image)), name)
            else:
                item = menu.insertItem(name)
            menu.connectItem(item, self.on_column_tool)
            menu.setItemParameter(item, i)

        self.menubar.removeItem(self.menubar.idAt(2))
        self.menubar.removeItem(self.menubar.idAt(2))
        self.menubar.removeItem(self.menubar.idAt(2))
        self.menubar.removeItem(self.menubar.idAt(2))

        self.active = None

        if len(graph_modes):
            self.act_graph_extra = QAction(self.act_graph, 'act_extra')
            self.act_graph_extra.setToggleAction(1)
            self.act_graph_extra.addTo(self.graph_toolbar)

            self.btn = btn = self.graph_toolbar.queryList('QToolButton')[-1]

            cm = QPopupMenu (self)
            self.connect(cm, SIGNAL('activated(int)'), self.on_mode_btn)
            for i, tool in enumerate(graph_modes):
                cm.insertItem(QIconSet(getimage(tool.image)), tool.name, i)
            btn.setPopup(cm)
            btn.setPopupDelay(0)

            self.on_mode_btn(0)


        self.graph_toolbar.addSeparator()
        self.graph_text.addTo(self.graph_toolbar)