Ejemplo n.º 1
0
    def __init__(self):
        QWidget.__init__(self)
        self.setWindowTitle(
            _("Fit variables duplicate window") + " - https://www.gpvdm.com")
        self.setWindowIcon(QIcon_load("duplicate"))

        self.vbox = QVBoxLayout()

        toolbar = QToolBar()
        toolbar.setIconSize(QSize(32, 32))

        self.tb_save = QAction(QIcon_load("list-add"), _("Add"), self)
        self.tb_save.triggered.connect(self.callback_add_item)
        toolbar.addAction(self.tb_save)

        self.tb_save = QAction(QIcon_load("list-remove"), _("Minus"), self)
        self.tb_save.triggered.connect(self.callback_delete_item)
        toolbar.addAction(self.tb_save)

        self.tb_down = QAction(QIcon_load("go-down"), _("Move down"), self)
        self.tb_down.triggered.connect(self.on_move_down)
        toolbar.addAction(self.tb_down)

        self.tb_up = QAction(QIcon_load("go-up"), _("Move up"), self)
        self.tb_up.triggered.connect(self.on_move_up)
        toolbar.addAction(self.tb_up)

        self.vbox.addWidget(toolbar)

        self.tab = QTableWidget()
        self.tab.resizeColumnsToContents()

        self.tab.verticalHeader().setVisible(False)
        self.create_model()

        self.tab.cellChanged.connect(self.tab_changed)

        self.select_param_window_src = select_param()
        self.select_param_window_src.init(self.tab)
        self.select_param_window_src.set_save_function(self.save_combo)
        self.select_param_window_src.file_name_tab_pos = 1
        self.select_param_window_src.token_tab_pos = 2
        self.select_param_window_src.path_tab_pos = 3

        self.select_param_window_dest = select_param()
        self.select_param_window_dest.init(self.tab)
        self.select_param_window_dest.set_save_function(self.save_combo)
        self.select_param_window_dest.file_name_tab_pos = 4
        self.select_param_window_dest.token_tab_pos = 5
        self.select_param_window_dest.path_tab_pos = 6

        self.vbox.addWidget(self.tab)

        self.setLayout(self.vbox)
Ejemplo n.º 2
0
    def __init__(self):
        QWidget.__init__(self)

        self.setWindowTitle(_("Fit vars window - gpvdm"))
        self.setWindowIcon(QIcon_load("fit"))
        #self.setFixedSize(900, 700)

        self.select_param_window = select_param()
        self.select_param_window.file_name_tab_pos = 1
        self.select_param_window.token_tab_pos = 2
        self.select_param_window.path_tab_pos = 3

        self.vbox = QVBoxLayout()

        toolbar = QToolBar()
        toolbar.setIconSize(QSize(32, 32))

        self.tb_save = QAction(QIcon_load("list-add"), _("Add line"), self)
        self.tb_save.triggered.connect(self.callback_add_item)
        toolbar.addAction(self.tb_save)

        self.tb_save = QAction(QIcon_load("list-remove"), _("Remove line"),
                               self)
        self.tb_save.triggered.connect(self.callback_delete_item)
        toolbar.addAction(self.tb_save)

        self.tb_down = QAction(QIcon_load("go-down"), _("Move down"), self)
        self.tb_down.triggered.connect(self.on_move_down)
        toolbar.addAction(self.tb_down)

        self.tb_up = QAction(QIcon_load("go-up"), _("Move up"), self)
        self.tb_up.triggered.connect(self.on_move_up)
        toolbar.addAction(self.tb_up)

        self.tb_open = QAction(QIcon_load("document-open"), _("Open"), self)
        self.tb_open.triggered.connect(self.callback_open)
        toolbar.addAction(self.tb_open)

        self.vbox.addWidget(toolbar)

        self.tab = QTableWidget()
        self.tab.resizeColumnsToContents()

        self.tab.verticalHeader().setVisible(False)
        self.create_model()

        self.tab.cellChanged.connect(self.tab_changed)

        self.vbox.addWidget(self.tab)

        self.select_param_window.init(self.tab)
        self.select_param_window.set_save_function(self.save_combo)

        self.setLayout(self.vbox)
Ejemplo n.º 3
0
	def __init__(self,index):
		QWidget.__init__(self)


		self.index=index
		
		self.vbox=QVBoxLayout()

		toolbar=QToolBar()
		toolbar.setIconSize(QSize(32, 32))

		self.tb_save = QAction(icon_get("list-add"), _("Add"), self)
		self.tb_save.triggered.connect(self.callback_add_item)
		toolbar.addAction(self.tb_save)

		self.tb_save = QAction(icon_get("list-remove"), _("Minus"), self)
		self.tb_save.triggered.connect(self.callback_delete_item)
		toolbar.addAction(self.tb_save)

		self.tb_down = QAction(icon_get("go-down"), _("Move down"), self)
		self.tb_down.triggered.connect(self.callback_move_down)
		toolbar.addAction(self.tb_down)

		self.tb_up = QAction(icon_get("go-up"), _("Move up"), self)
		self.tb_up.triggered.connect(self.callback_move_up)
		toolbar.addAction(self.tb_up)
	
		self.vbox.addWidget(toolbar)

		self.tab = QTableWidget()
		self.tab.resizeColumnsToContents()

		self.tab.verticalHeader().setVisible(False)
		
		self.select_param_window=select_param(self.tab)
		self.select_param_window.set_save_function(self.save_combo)

		self.create_model()

		self.tab.cellChanged.connect(self.tab_changed)

		self.vbox.addWidget(self.tab)


		self.setLayout(self.vbox)
Ejemplo n.º 4
0
    def __init__(self, myserver, status_bar, scan_root_dir, sim_name):
        QWidget.__init__(self)
        self.main_vbox = QVBoxLayout()

        self.tokens = tokens()
        self.sim_name = sim_name
        self.myserver = myserver
        self.status_bar = status_bar
        self.param_list = scan_items_get_list()
        #self.tab_label=tab_label

        self.sim_dir = os.path.join(scan_root_dir, sim_name)

        self.select_param_window = select_param()
        self.select_param_window.set_save_function(self.save_combo)

        toolbar = QToolBar()
        toolbar.setIconSize(QSize(32, 32))

        self.tb_add = QAction(QIcon_load("list-add"),
                              _("Add parameter to scan"), self)
        self.tb_add.triggered.connect(self.callback_add_item)
        toolbar.addAction(self.tb_add)

        self.tb_minus = QAction(QIcon_load("list-remove"), _("Delete item"),
                                self)
        self.tb_minus.triggered.connect(self.callback_delete_item)
        toolbar.addAction(self.tb_minus)

        self.tb_down = QAction(QIcon_load("go-down"), _("Move down"), self)
        self.tb_down.triggered.connect(self.callback_move_down)
        toolbar.addAction(self.tb_down)

        self.tb_up = QAction(QIcon_load("go-up"), _("Move up"), self)
        self.tb_up.triggered.connect(self.callback_move_up)
        toolbar.addAction(self.tb_up)

        #self.tb_notes = QAction(QIcon_load("go-down.png"), _("Notes"), self)
        #self.tb_notes.triggered.connect(self.callback_notes)
        #toolbar.addAction(self.tb_notes)

        #self.tb_notes = QAction(QIcon_load("select"), _("Select parameter to change"), self)
        #self.tb_notes.triggered.connect(self.callback_show_list)
        #toolbar.addAction(self.tb_notes)

        self.tb_command = QAction(QIcon_load("utilities-terminal"),
                                  _("Insert python command"), self)
        self.tb_command.triggered.connect(self.callback_insert_command)
        toolbar.addAction(self.tb_command)

        self.main_vbox.addWidget(toolbar)

        self.tab = QTableWidget()
        #self.tab.resizeColumnsToContents()

        self.tab.verticalHeader().setVisible(False)

        self.select_param_window.init(self.tab)

        self.tab.setColumnCount(5)
        #if enable_betafeatures()==False:
        #	self.tab.setColumnHidden(0, True)
        #	self.tab.setColumnHidden(1, True)

        self.tab.setSelectionBehavior(QAbstractItemView.SelectRows)
        self.tab.setColumnWidth(2, 300)
        self.tab.setColumnWidth(3, 200)
        self.load()

        self.tab.cellChanged.connect(self.tab_changed)

        self.main_vbox.addWidget(self.tab)

        self.popMenu = QMenu(self)

        #self.mp_show_list=QAction(_("Select parameter to scan"), self)
        #self.mp_show_list.triggered.connect(self.callback_show_list)
        #self.popMenu.addAction(self.mp_show_list)

        self.popMenu.addSeparator()

        self.mp_delete = QAction(_("Delete item"), self)
        self.mp_delete.triggered.connect(self.callback_delete_item)
        self.popMenu.addAction(self.mp_delete)

        self.mp_copy = QAction(_("Copy"), self)
        self.mp_copy.triggered.connect(self.callback_copy_item)
        self.popMenu.addAction(self.mp_copy)

        self.mp_paste = QAction(_("Paste"), self)
        self.mp_paste.triggered.connect(self.callback_paste_item)
        self.popMenu.addAction(self.mp_paste)

        self.popMenu.addSeparator()

        self.mp_add = QAction(_("Add item"), self)
        self.mp_add.triggered.connect(self.callback_add_item)
        self.popMenu.addAction(self.mp_add)

        self.mp_down = QAction(_("Move down"), self)
        self.mp_down.triggered.connect(self.callback_move_down)
        self.popMenu.addAction(self.mp_down)

        self.mp_down = QAction(_("Move down"), self)
        self.mp_down.triggered.connect(self.callback_move_down)
        self.popMenu.addAction(self.mp_down)

        self.popMenu.addSeparator()
        self.setMinimumSize(700, 500)

        self.setLayout(self.main_vbox)
Ejemplo n.º 5
0
    def __init__(self):
        QWidget.__init__(self)
        self.file_name = os.path.join(get_sim_path(), "fit_constraints.inp")
        self.setWindowTitle(
            _("Fit constraints window") + " - https://www.gpvdm.com")
        self.setWindowIcon(icon_get("constraints"))
        self.setFixedSize(900, 700)

        self.vbox = QVBoxLayout()

        ########################mm##########################
        toolbar_mm = QToolBar()
        toolbar_mm.setIconSize(QSize(32, 32))

        self.tb_save = QAction(icon_get("list-add"), _("Add"), self)
        self.tb_save.triggered.connect(self.callback_add_item_mm)
        toolbar_mm.addAction(self.tb_save)

        self.tb_save = QAction(icon_get("list-remove"), _("Minus"), self)
        self.tb_save.triggered.connect(self.callback_delete_item_mm)
        toolbar_mm.addAction(self.tb_save)

        self.tb_down = QAction(icon_get("go-down"), _("Move down"), self)
        self.tb_down.triggered.connect(self.on_move_down)
        toolbar_mm.addAction(self.tb_down)

        self.tb_up = QAction(icon_get("go-up"), _("Move up"), self)
        self.tb_up.triggered.connect(self.on_move_up)
        toolbar_mm.addAction(self.tb_up)

        self.vbox.addWidget(toolbar_mm)

        self.tab_mm = gpvdm_tab()
        self.tab_mm.resizeColumnsToContents()

        self.tab_mm.verticalHeader().setVisible(False)
        self.create_model_mm()

        self.tab_mm.cellChanged.connect(self.tab_changed)

        self.select_param_window_mm = select_param(self.tab_mm)
        self.select_param_window_mm.set_save_function(self.save_combo)
        self.select_param_window_mm.file_name_tab_pos = 0
        self.select_param_window_mm.token_tab_pos = 1
        self.select_param_window_mm.path_tab_pos = 2

        self.vbox.addWidget(self.tab_mm)

        #####################math##########################
        toolbar_math = QToolBar()
        toolbar_math.setIconSize(QSize(32, 32))

        self.tb_save = QAction(icon_get("list-add"), _("Add"), self)
        self.tb_save.triggered.connect(self.callback_add_item_math)
        toolbar_math.addAction(self.tb_save)

        self.tb_save = QAction(icon_get("list-remove"), _("Minus"), self)
        self.tb_save.triggered.connect(self.callback_delete_item_math)
        toolbar_math.addAction(self.tb_save)

        self.vbox.addWidget(toolbar_math)
        self.tab_math = gpvdm_tab()
        self.tab_math.resizeColumnsToContents()

        self.tab_math.verticalHeader().setVisible(False)

        self.create_model_math()

        self.tab_math.cellChanged.connect(self.tab_changed)

        self.select_param_window_math_a = select_param(self.tab_math)
        self.select_param_window_math_a.set_save_function(self.save_combo)
        self.select_param_window_math_a.file_name_tab_pos = 0
        self.select_param_window_math_a.token_tab_pos = 1
        self.select_param_window_math_a.path_tab_pos = 2

        self.select_param_window_math_b = select_param(self.tab_math)
        self.select_param_window_math_b.set_save_function(self.save_combo)
        self.select_param_window_math_b.file_name_tab_pos = 4
        self.select_param_window_math_b.token_tab_pos = 5
        self.select_param_window_math_b.path_tab_pos = 6
        self.vbox.addWidget(self.tab_math)

        self.setLayout(self.vbox)

        self.get_scan_human_labels = get_scan_human_labels()
Ejemplo n.º 6
0
	def init(self,myserver,tooltips,status_bar,context_id,tab_label,scan_root_dir,sim_name):

		self.tokens=tokens()
		self.config=config()
		self.sim_name=sim_name
		self.clipboard = gtk.clipboard_get(gtk.gdk.SELECTION_CLIPBOARD)
		self.popup_menu = gtk.Menu()

		menu_item = gtk.MenuItem(_("Select parameter to scan"))
		menu_item.connect("activate", self.callback_show_list)
		self.popup_menu.append(menu_item)
		self.popup_menu.show_all()

		menu_item = gtk.SeparatorMenuItem()
		self.popup_menu.append(menu_item)
		self.popup_menu.show_all()

		menu_item = gtk.MenuItem(_("Delete item"))
		menu_item.connect("activate", self.callback_delete_item)
		self.popup_menu.append(menu_item)
		self.popup_menu.show_all()

		menu_item = gtk.MenuItem(_("Add item"))
		menu_item.connect("activate", self.callback_add_item)
		self.popup_menu.append(menu_item)
		self.popup_menu.show_all()

		menu_item = gtk.MenuItem(_("Move down"))
		menu_item.connect("activate", self.callback_move_down)
		self.popup_menu.append(menu_item)
		self.popup_menu.show_all()

		menu_item = gtk.SeparatorMenuItem()
		self.popup_menu.append(menu_item)
		self.popup_menu.show_all()

		menu_item = gtk.MenuItem(_("Copy"))
		menu_item.connect("activate", self.callback_copy_item)
		self.popup_menu.append(menu_item)

		menu_item = gtk.MenuItem(_("Paste"))
		menu_item.connect("activate", self.callback_paste_item)
		self.popup_menu.append(menu_item)

		menu_item = gtk.MenuItem(_("Delete"))
		menu_item.connect("activate", self.callback_delete_item)
		self.popup_menu.append(menu_item)
		self.popup_menu.show_all()


		self.myserver=myserver
		self.tooltips=tooltips
		self.status_bar=status_bar
		self.context_id=context_id
		self.param_list=scan_items_get_list()
		self.tab_label=tab_label
		self.liststore_op_type = gtk.ListStore(str)


		self.sim_dir=os.path.join(scan_root_dir,sim_name)
		self.tab_name=os.path.basename(os.path.normpath(self.sim_dir))

		self.status_bar.push(self.context_id, self.sim_dir)
		self.set_tab_caption(self.tab_name)

		toolbar = gtk.Toolbar()
		toolbar.set_style(gtk.TOOLBAR_ICONS)
		toolbar.set_size_request(-1, 50)
		pos=0

		image = gtk.Image()
   		image.set_from_file(os.path.join(get_image_file_path(),"add.png"))
		add = gtk.ToolButton(image)
		add.connect("clicked", self.callback_add_item)
		self.tooltips.set_tip(add, _("Add parameter to scan"))
		toolbar.insert(add, pos)
		pos=pos+1


		remove = gtk.ToolButton(gtk.STOCK_CLEAR)
		remove.connect("clicked", self.callback_delete_item)
		self.tooltips.set_tip(remove, _("Delete item"))
		toolbar.insert(remove, pos)
		pos=pos+1

		move = gtk.ToolButton(gtk.STOCK_GO_DOWN)
		move.connect("clicked", self.callback_move_down)
		self.tooltips.set_tip(move, _("Move down"))
		toolbar.insert(move, pos)
		pos=pos+1

		notes = gtk.ToolButton(gtk.STOCK_EDIT)
		notes.connect("clicked", self.callback_notes)
		self.tooltips.set_tip(notes, _("Edit notes"))
		toolbar.insert(notes, pos)
		pos=pos+1

		image = gtk.Image()
   		image.set_from_file(os.path.join(get_image_file_path(),"select.png"))
		quick = gtk.ToolButton(image)
		quick.connect("clicked", self.callback_show_list)
		self.tooltips.set_tip(quick, _("Select parameter to change"))
		toolbar.insert(quick, pos)
		pos=pos+1

		sep = gtk.SeparatorToolItem()
		sep.set_draw(True)
		sep.set_expand(False)
		toolbar.insert(sep, pos)
		pos=pos+1

		image = gtk.Image()
		image.set_from_file(os.path.join(get_image_file_path(),"forward.png"))
		tb_simulate = gtk.ToolButton(image)
		tb_simulate.connect("clicked", self.callback_run_simulation)
		self.tooltips.set_tip(tb_simulate, _("Run simulation"))
		toolbar.insert(tb_simulate, pos)
		pos=pos+1

	        image = gtk.Image()
   		image.set_from_file(os.path.join(get_image_file_path(),"pause.png"))
		self.stop = gtk.ToolButton(image)
		self.tooltips.set_tip(self.stop, _("Stop the simulation"))
		self.stop.connect("clicked", self.callback_stop_simulation)
		toolbar.insert(self.stop, pos)
		pos=pos+1

		sep = gtk.SeparatorToolItem()
		sep.set_draw(True)
		sep.set_expand(False)
		toolbar.insert(sep, pos)
		pos=pos+1

		image = gtk.Image()
		image.set_from_file(os.path.join(get_image_file_path(),"plot.png"))
		plot_select = gtk.MenuToolButton(image,"hello")
		plot_select.connect("clicked", self.callback_gen_plot_command)
		self.tooltips.set_tip(plot_select, _("Find a file to plot"))

		self.plotted_graphs = used_files_menu()
		self.plotted_graphs.init(self.sim_dir,self.callback_last_menu_click)
		plot_select.set_menu(self.plotted_graphs.menu)
		toolbar.insert(plot_select, pos)

		pos=pos+1

	        image = gtk.Image()
   		image.set_from_file(self.icon_theme.lookup_icon("view-refresh", 32, 0).get_filename())
		self.plot_open = gtk.ToolButton(image)
		self.plot_open.connect("clicked", self.callback_plot_results)
		self.plot_open.set_sensitive(False)
		self.tooltips.set_tip(self.plot_open, "Replot the graph")
		toolbar.insert(self.plot_open, pos)
		pos=pos+1

		image = gtk.Image()
   		image.set_from_file(os.path.join(get_image_file_path(),"plot_time.png"))
		self.examine = gtk.ToolButton(image)
		self.tooltips.set_tip(self.examine, _("Examine results in time domain"))
		self.examine.connect("clicked", self.callback_examine)
		toolbar.insert(self.examine, pos)
		pos=pos+1

		sep = gtk.SeparatorToolItem()
		sep.set_draw(True)
		sep.set_expand(False)
		toolbar.insert(sep, pos)
		pos=pos+1

		image = gtk.Image()
   		image.set_from_file(os.path.join(get_image_file_path(),"command.png"))
		insert_command = gtk.ToolButton(image)
		insert_command.connect("clicked", self.callback_insert_command)
		self.tooltips.set_tip(insert_command, _("Insert python command"))
		toolbar.insert(insert_command, pos)
		pos=pos+1
		#reopen_xy = gtk.ToolButton(gtk.STOCK_SELECT_COLOR)
		#reopen_xy.connect("clicked", self.callback_reopen_xy_window)
		#self.tooltips.set_tip(reopen_xy, "Reopen xy window selector")
		#toolbar.insert(reopen_xy, pos)
		#pos=pos+1

		toolbar.show_all()
		self.pack_start(toolbar, False, False, 0)#.add()

		liststore_manufacturers = gtk.ListStore(str)
		for i in range(0,len(self.param_list)):
		    liststore_manufacturers.append([self.param_list[i].name])

		self.liststore_combobox = gtk.ListStore(str, str, str, bool)

		self.config.load(self.sim_dir)
		self.visible=self.config.get_value("#visible",True)
		self.reload_liststore()


		self.treeview = gtk.TreeView(self.liststore_combobox)
		self.treeview.get_selection().set_mode(gtk.SELECTION_MULTIPLE)
		self.treeview.connect("button-press-event", self.on_treeview_button_press_event)


		self.select_param_window=select_param()
		self.select_param_window.init(self.liststore_combobox,self.treeview)

		column_text = gtk.TreeViewColumn(_("Values"))
		column_combo = gtk.TreeViewColumn(_("Parameter to change"))
		column_mirror = gtk.TreeViewColumn(_("Opperation"))

		cellrenderer_combo = gtk.CellRendererCombo()
		cellrenderer_combo.set_property("editable", True)
		cellrenderer_combo.set_property("model", liststore_manufacturers)
		cellrenderer_combo.set_property("text-column", 0)
		cellrenderer_combo.connect("edited", self.combo_changed, self.liststore_combobox)

		column_combo.pack_start(cellrenderer_combo, False)
		column_combo.set_min_width(240)
		column_combo.add_attribute(cellrenderer_combo, "text", 0)

		cellrenderer_mirror = gtk.CellRendererCombo()
		cellrenderer_mirror.set_property("editable", True)
		self.rebuild_liststore_op_type()
		cellrenderer_mirror.set_property("model", self.liststore_op_type)
		cellrenderer_mirror.set_property("text-column", 0)

		cellrenderer_mirror.connect("edited", self.combo_mirror_changed, self.liststore_combobox)

		column_mirror.pack_start(cellrenderer_mirror, True)
		column_mirror.set_min_width(200)
		column_mirror.add_attribute(cellrenderer_mirror, "text", 2)

		cellrenderer_text = gtk.CellRendererText()
		cellrenderer_text.set_property("editable", True)
		cellrenderer_text.connect("edited", self.text_changed, self.liststore_combobox)
		cellrenderer_text.props.wrap_width = 400
		cellrenderer_text.props.wrap_mode = gtk.WRAP_WORD

		column_text.pack_start(cellrenderer_text, False)
		column_text.set_min_width(400)
		column_text.add_attribute(cellrenderer_text, "text", 1)

		renderer_enable = gtk.CellRendererToggle()
		#renderer_enable.set_property("activatable", True)
		renderer_enable.set_activatable(True)
		renderer_enable.connect("toggled", self.toggled_cb, self.liststore_combobox)
		column_enable = gtk.TreeViewColumn(_("Enabled"),renderer_enable)
		column_enable.set_max_width(50)
		column_enable.set_visible(False)
	
		column_enable.add_attribute(renderer_enable, "active", 3)
		column_enable.pack_start(renderer_enable, False)

		self.treeview.append_column(column_combo)
		self.treeview.append_column(column_text)
		self.treeview.append_column(column_mirror)
		self.treeview.append_column(column_enable)

		#window.connect("destroy", lambda w: gtk.main_quit())
		scrolled_window = gtk.ScrolledWindow()
		scrolled_window.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_ALWAYS)
		scrolled_window.add(self.treeview)
		scrolled_window.set_size_request(1000, 500)
		#scrolled_window.set_min_content_height(200)

		self.pack_start(scrolled_window, True, True, 0)
		self.treeview.show()
		self.show_all()

		if self.visible==False:
			self.hide()
Ejemplo n.º 7
0
 def callback_show_list(self):
     self.select_param_window = select_param(self.tab)
     self.select_param_window.set_save_function(self.save_combo)
     self.select_param_window.show()
Ejemplo n.º 8
0
    def __init__(self, scan_file):
        QWidget.__init__(self)
        self.notebook = QTabWidget()
        self.setWindowTitle(_("Parameter scan editor - (www.gpvdm.com)"))
        self.setWindowIcon(icon_get("scan"))

        self.main_vbox = QVBoxLayout()

        self.scan_tab_vbox = QVBoxLayout()

        self.tokens = tokens()
        self.myserver = server_get()
        self.status_bar = QStatusBar()
        self.param_list = get_scan_human_labels().list
        #self.tab_label=tab_label

        self.scan_io = scan_io()
        self.scan_io.parent_window = self
        #self.scan_io.set_path(self.scan_io.scan_dir)
        self.scan_io.load(scan_file)
        self.scan_io.make_dir()

        toolbar = QToolBar()
        toolbar.setIconSize(QSize(32, 32))

        self.tb_add = QAction(icon_get("list-add"), _("Add parameter to scan"),
                              self)
        self.tb_add.triggered.connect(self.callback_add_item)
        toolbar.addAction(self.tb_add)

        self.tb_minus = QAction(icon_get("list-remove"), _("Delete item"),
                                self)
        self.tb_minus.triggered.connect(self.callback_delete_item)
        toolbar.addAction(self.tb_minus)

        self.tb_down = QAction(icon_get("go-down"), _("Move down"), self)
        self.tb_down.triggered.connect(self.callback_move_down)
        toolbar.addAction(self.tb_down)

        self.tb_up = QAction(icon_get("go-up"), _("Move up"), self)
        self.tb_up.triggered.connect(self.callback_move_up)
        toolbar.addAction(self.tb_up)

        self.tb_command = QAction(icon_get("utilities-terminal"),
                                  _("Insert python command"), self)
        self.tb_command.triggered.connect(self.callback_insert_command)
        toolbar.addAction(self.tb_command)

        self.scan_tab_vbox.addWidget(toolbar)

        self.tab = gpvdm_tab()

        css_apply(self.notebook, "tab_default.css")
        self.notebook.setMovable(True)

        self.tab.verticalHeader().setVisible(False)

        self.tab.setColumnCount(5)
        #if enable_betafeatures()==False:
        #	self.tab.setColumnHidden(0, True)
        #	self.tab.setColumnHidden(1, True)

        self.tab.setSelectionBehavior(QAbstractItemView.SelectRows)
        self.tab.setColumnWidth(2, 300)
        self.tab.setColumnWidth(3, 300)
        self.tab.setColumnWidth(4, 300)
        self.load()

        self.tab.cellChanged.connect(self.tab_changed)

        self.scan_tab_vbox.addWidget(self.tab)

        self.notebook.popMenu = QMenu(self)

        #self.mp_show_list=QAction(_("Select parameter to scan"), self)
        #self.mp_show_list.triggered.connect(self.callback_show_list)
        #self.popMenu.addAction(self.mp_show_list)

        self.notebook.popMenu.addSeparator()

        self.mp_delete = QAction(_("Delete item"), self)
        self.mp_delete.triggered.connect(self.callback_delete_item)
        self.notebook.popMenu.addAction(self.mp_delete)

        self.mp_copy = QAction(_("Copy"), self)
        self.mp_copy.triggered.connect(self.callback_copy_item)
        self.notebook.popMenu.addAction(self.mp_copy)

        self.mp_paste = QAction(_("Paste"), self)
        self.mp_paste.triggered.connect(self.callback_paste_item)
        self.notebook.popMenu.addAction(self.mp_paste)

        self.notebook.popMenu.addSeparator()

        self.mp_add = QAction(_("Add item"), self)
        self.mp_add.triggered.connect(self.callback_add_item)
        self.notebook.popMenu.addAction(self.mp_add)

        self.mp_down = QAction(_("Move down"), self)
        self.mp_down.triggered.connect(self.callback_move_down)
        self.notebook.popMenu.addAction(self.mp_down)

        self.mp_down = QAction(_("Move down"), self)
        self.mp_down.triggered.connect(self.callback_move_down)
        self.notebook.popMenu.addAction(self.mp_down)

        self.notebook.popMenu.addSeparator()
        self.notebook.setMinimumSize(700, 500)

        self.program_widget = QWidget()
        self.program_widget.setLayout(self.scan_tab_vbox)
        self.notebook.addTab(self.program_widget, "Commands")

        self.viewer = gpvdm_viewer(self.scan_io.scan_dir)
        self.viewer.show_back_arrow = True
        self.notebook.addTab(self.viewer, "Output")

        self.ribbon = scan_tab_ribbon()
        self.ribbon.tb_simulate.triggered.connect(self.callback_run_simulation)
        self.ribbon.tb_clean.triggered.connect(self.clean_scan_dir)
        self.ribbon.tb_plot.triggered.connect(self.callback_gen_plot_command)
        self.ribbon.tb_notes.triggered.connect(self.callback_notes)

        self.main_vbox.addWidget(self.ribbon)
        self.main_vbox.addWidget(self.notebook)

        self.main_vbox.addWidget(self.status_bar)
        self.setLayout(self.main_vbox)
        self.select_param_window = select_param(self.tab)
Ejemplo n.º 9
0
	def __init__(self,myserver,status_bar,scan_root_dir,sim_name):
		QWidget.__init__(self)
		self.main_vbox = QVBoxLayout()

		self.tokens=tokens()
		self.sim_name=sim_name
		self.myserver=myserver
		self.status_bar=status_bar
		self.param_list=scan_items_get_list()
		#self.tab_label=tab_label

		self.sim_dir=os.path.join(scan_root_dir,sim_name)
		self.tab_name=os.path.basename(os.path.normpath(self.sim_dir))

		self.select_param_window=select_param()

		toolbar=QToolBar()
		toolbar.setIconSize(QSize(48, 48))

		self.tb_add = QAction(QIcon(os.path.join(get_image_file_path(),"add.png")), _("Add parameter to scan"), self)
		self.tb_add.triggered.connect(self.callback_add_item)
		toolbar.addAction(self.tb_add)

		self.tb_minus = QAction(QIcon(os.path.join(get_image_file_path(),"minus.png")), _("Delete item"), self)
		self.tb_minus.triggered.connect(self.callback_delete_item)
		toolbar.addAction(self.tb_minus)

		self.tb_down = QAction(QIcon(os.path.join(get_image_file_path(),"down.png")), _("Move down"), self)
		self.tb_down.triggered.connect(self.callback_move_down)
		toolbar.addAction(self.tb_down)

		#self.tb_notes = QAction(QIcon(os.path.join(get_image_file_path(),"down.png")), _("Notes"), self)
		#self.tb_notes.triggered.connect(self.callback_notes)
		#toolbar.addAction(self.tb_notes)

		#self.tb_notes = QAction(QIcon(os.path.join(get_image_file_path(),"select.png")), _("Select parameter to change"), self)
		#self.tb_notes.triggered.connect(self.callback_show_list)
		#toolbar.addAction(self.tb_notes)

		self.tb_simulate = QAction(QIcon(os.path.join(get_image_file_path(),"forward.png")), _("Run simulation"), self)
		self.tb_simulate.triggered.connect(self.callback_run_simulation)
		toolbar.addAction(self.tb_simulate)

		self.tb_stop = QAction(QIcon(os.path.join(get_image_file_path(),"pause.png")), _("Stop the simulation"), self)
		self.tb_stop.triggered.connect(self.callback_stop_simulation)
		toolbar.addAction(self.tb_stop)

		self.tb_plot = QAction(QIcon(os.path.join(get_image_file_path(),"plot.png")), _("Find a file to plot"), self)
		self.tb_plot.triggered.connect(self.callback_gen_plot_command)
		toolbar.addAction(self.tb_plot)

		self.tb_plot_time = QAction(QIcon(os.path.join(get_image_file_path(),"plot_time.png")), _("Examine results in time domain"), self)
		self.tb_plot_time.triggered.connect(self.callback_examine)
		toolbar.addAction(self.tb_plot_time)

		self.tb_command = QAction(QIcon(os.path.join(get_image_file_path(),"command.png")), _("Insert python command"), self)
		self.tb_command.triggered.connect(self.callback_insert_command)
		toolbar.addAction(self.tb_command)

		self.main_vbox.addWidget(toolbar)

		self.tab = QTableWidget()
		#self.tab.resizeColumnsToContents()

		
		self.tab.verticalHeader().setVisible(False)

		self.select_param_window.init(self.tab)
		
		self.tab.setColumnCount(5)
		#if enable_betafeatures()==False:
		#	self.tab.setColumnHidden(0, True)
		#	self.tab.setColumnHidden(1, True)

		self.tab.setSelectionBehavior(QAbstractItemView.SelectRows)
		self.tab.setColumnWidth(2, 200)
		self.tab.setColumnWidth(3, 200)
		self.load()

		self.tab.cellChanged.connect(self.tab_changed)

		self.main_vbox.addWidget(self.tab)

		self.popMenu = QMenu(self)

		#self.mp_show_list=QAction(_("Select parameter to scan"), self)
		#self.mp_show_list.triggered.connect(self.callback_show_list)
		#self.popMenu.addAction(self.mp_show_list)

		self.popMenu.addSeparator()

		self.mp_delete=QAction(_("Delete item"), self)
		self.mp_delete.triggered.connect(self.callback_delete_item)
		self.popMenu.addAction(self.mp_delete)

		self.mp_copy=QAction(_("Copy"), self)
		self.mp_copy.triggered.connect(self.callback_copy_item)
		self.popMenu.addAction(self.mp_copy)

		self.mp_paste=QAction(_("Paste"), self)
		self.mp_paste.triggered.connect(self.callback_paste_item)
		self.popMenu.addAction(self.mp_paste)

		self.popMenu.addSeparator()

		self.mp_add=QAction(_("Add item"), self)
		self.mp_add.triggered.connect(self.callback_add_item)
		self.popMenu.addAction(self.mp_add)

		self.mp_down=QAction(_("Move down"), self)
		self.mp_down.triggered.connect(self.callback_move_down)
		self.popMenu.addAction(self.mp_down)

		self.mp_down=QAction(_("Move down"), self)
		self.mp_down.triggered.connect(self.callback_move_down)
		self.popMenu.addAction(self.mp_down)

		self.popMenu.addSeparator()
		self.setMinimumSize(700,500)
		
		self.setLayout(self.main_vbox)