Пример #1
0
	def callback_add_page(self, widget, data=None):
		new_sim_name=dlg_get_text( _("New simulation name:"), _("Simulation ")+str(self.number_of_tabs+1))

		if new_sim_name!=None:
			new_sim_name=self.remove_invalid(new_sim_name)
			name=os.path.join(os.getcwd(),new_sim_name)
			self.add_page(name)
Пример #2
0
	def callback_add_page(self):
		new_sim_name=dlg_get_text( _("New laser name:"), _("laser ")+str(self.notebook.count()),"new.png")
		if new_sim_name.ret!=None:
			index=laser_new_filename()
			inp_copy_file("laser"+str(index)+".inp","laser0.inp")
			inp_update_token_value("laser"+str(index)+".inp", "#laser_name", new_sim_name.ret,1)
			self.add_page(index)
Пример #3
0
    def callback_clone_shape(self):
        tab = self.notebook.currentWidget()
        s = self.epi.find_shape_by_file_name(tab.file_name)
        name = s.name + "_new"

        new_sim_name = dlg_get_text("Clone the shape:", name, "clone.png")
        new_sim_name = new_sim_name.ret

        if new_sim_name != None:
            old_name = os.path.join(get_sim_path(), tab.file_name)
            new_name = get_epi().new_electrical_file("shape")
            my_shape = shape()
            my_shape.load(old_name)
            my_shape.name = new_sim_name
            my_shape.x0 = my_shape.x0 - my_shape.dx
            my_shape.shape_electrical = get_epi().gen_new_electrical_file(
                "electrical")
            my_shape.file_name = new_name
            my_shape.save()

            get_epi().layers[self.layer_index].shapes.append(my_shape)
            get_epi().save()

            my_tab = tab_class(my_shape.file_name + ".inp")
            self.notebook.addTab(my_tab, my_shape.name)
            my_tab.changed.connect(self.callback_edit)
            global_object_run("gl_force_redraw")
Пример #4
0
    def callback_copy_page(self):
        tab = self.notebook.currentWidget()
        old_index = tab.index
        new_sim_name = dlg_get_text(
            _("Clone the current experiment to a new experiment called") + ":",
            tab.tab_name.split("@")[0], "clone.png")
        new_sim_name = new_sim_name.ret
        if new_sim_name != None:
            new_sim_name = new_sim_name + "@" + tab.tab_name.split("@")[1]
            index = experiment_new_filename("fxdomain")
            if inp_copy_file(
                    os.path.join(get_sim_path(),
                                 "fxdomain" + str(index) + ".inp"),
                    os.path.join(get_sim_path(), "fxdomain" + str(old_index) +
                                 ".inp")) == False:
                print("Error copying file" +
                      os.path.join(get_sim_path(), "fxdomain" +
                                   str(old_index) + ".inp"))
                return
            if inp_copy_file(
                    os.path.join(get_sim_path(),
                                 "fxmesh" + str(index) + ".inp"),
                    os.path.join(get_sim_path(),
                                 "fxmesh" + str(old_index) + ".inp")) == False:
                print("Error copying file" +
                      os.path.join(get_sim_path(), "fxdomain" +
                                   str(old_index) + ".inp"))
                return

            inp_update_token_value(
                os.path.join(get_sim_path(), "fxdomain" + str(index) + ".inp"),
                "#sim_menu_name", new_sim_name)
            self.add_page(index)
            self.changed.emit()
Пример #5
0
    def callback_copy_page(self):
        tab = self.notebook.currentWidget()
        old_index = tab.index
        new_sim_name = dlg_get_text(
            _("Clone the current fit to a new fit called:"), tab.tab_name,
            "clone.png")
        if new_sim_name.ret != None:
            index = fit_new_filename()

            shutil.copy(
                os.path.join(get_sim_path(), "fit" + str(old_index) + ".inp"),
                os.path.join(get_sim_path(), "fit" + str(index) + ".inp"))
            shutil.copy(
                os.path.join(get_sim_path(),
                             "fit_data" + str(old_index) + ".inp"),
                os.path.join(get_sim_path(), "fit_data" + str(index) + ".inp"))
            shutil.copy(
                os.path.join(get_sim_path(),
                             "fit_patch" + str(old_index) + ".inp"),
                os.path.join(get_sim_path(),
                             "fit_patch" + str(index) + ".inp"))
            shutil.copy(
                os.path.join(get_sim_path(),
                             "fit_math" + str(old_index) + ".inp"),
                os.path.join(get_sim_path(), "fit_math" + str(index) + ".inp"))

            inp_update_token_value(
                os.path.join(get_sim_path(), "fit" + str(index) + ".inp"),
                "#fit_name", new_sim_name.ret)
            self.add_page(index)
Пример #6
0
 def on_new_backup(self):
     new_backup_name = dlg_get_text(_("New backup:"), _("New backup name"),
                                    "add_backup")
     new_backup_name = new_backup_name.ret
     if new_backup_name != None:
         new_backup = os.path.join(self.dialog.viewer.path, new_backup_name)
         backup(new_backup, get_sim_path())
         self.dialog.viewer.fill_store()
Пример #7
0
	def callback_new_scan(self):
		new_sim_name=dlg_get_text( _("New simulation name:"), _("Simulation ")+str(self.notebook.count()+1),"document-new.png")
		new_sim_name=new_sim_name.ret

		if new_sim_name!=None:
			scans=scans_io(self.sim_dir)
			scans.new(new_sim_name)
			self.viewer.fill_store()
Пример #8
0
	def callback_add_page(self):
		new_sim_name=dlg_get_text( _("New simulation name:"), _("Simulation ")+str(self.notebook.count()+1),"new.png")
		new_sim_name=new_sim_name.ret

		if new_sim_name!=None:
			new_sim_name=self.remove_invalid(new_sim_name)
			name=os.path.join(os.getcwd(),new_sim_name)
			self.add_page(name)
Пример #9
0
	def callback_add_page(self):
		new_sim_name=dlg_get_text( _("New simulation name:"), _("Simulation ")+str(self.notebook.count()+1),"document-new.png")
		new_sim_name=new_sim_name.ret

		if new_sim_name!=None:
			new_sim_name=self.remove_invalid(new_sim_name)
			name=os.path.join(os.getcwd(),new_sim_name)
			self.add_page(name)
Пример #10
0
	def on_new_materials_clicked(self):
		new_sim_name=dlg_get_text( _("New material name:"), _("New material name"),"organic_material")
		new_sim_name=new_sim_name.ret
		if new_sim_name!=None:
			new_material=os.path.join(self.dialog.viewer.path,new_sim_name)
			ret=clone_material(new_material,os.path.join(get_base_material_path(),"generic","air"))
			if ret==False:
				error_dlg(self,_("I cant write to:")+new_material+" "+_("This means either the disk is full or your system administrator has not given you write permissions to that location."))
			self.dialog.viewer.fill_store()
Пример #11
0
	def callback_rename_page(self):
		tab = self.notebook.currentWidget()
		new_laser_name=dlg_get_text( _("Rename the laser to be called:"), tab.tab_name ,"rename.png")

		if new_laser_name.ret!=None:
			print ("calling rename")
			index=self.notebook.currentIndex() 
			self.notebook.setTabText(index, new_laser_name.ret)
			inp_update(tab.file_name, "#laser_name", new_laser_name.ret)
Пример #12
0
	def callback_start_fx(self, widget, treeview):
		new_fx=dlg_get_text( _("Enter the start frequency of the simulation"), str(self.fx_start))

		if new_fx!=None:
			self.fx_start=float(new_fx)
			self.build_mesh()
			self.draw_graph()
			self.fig.canvas.draw()
			self.save_data()
Пример #13
0
	def callback_start_time(self, widget, treeview):
		new_time=dlg_get_text( _("Enter the start time of the simulation"), str(self.start_time))

		if new_time!=None:
			self.start_time=float(new_time)
			self.build_mesh()
			self.draw_graph()
			self.fig.canvas.draw()
			self.save_data()
Пример #14
0
	def callback_laser(self, widget, treeview):
		new_time=dlg_get_text( _("Enter the time at which the laser pulse will fire (-1) to turn it off"), str(self.fs_laser_time))

		if new_time!=None:
			self.fs_laser_time=float(new_time)
			self.build_mesh()
			self.draw_graph()
			self.fig.canvas.draw()
			self.save_data()
Пример #15
0
	def callback_start_time(self):
		new_time=dlg_get_text( _("Enter the start time of the simulation"), str(self.start_time),"start.png")
		new_time=new_time.ret

		if new_time!=None:
			self.start_time=float(new_time)
			self.build_mesh()
			self.draw_graph()
			self.fig.canvas.draw()
			self.save_data()
Пример #16
0
 def on_new_materials_clicked(self):
     new_sim_name = dlg_get_text(_("New material name:"),
                                 _("New material name"), "organic_material")
     new_sim_name = new_sim_name.ret
     if new_sim_name != None:
         new_material = os.path.join(self.dialog.viewer.path, new_sim_name)
         clone_material(
             new_material,
             os.path.join(get_base_material_path(), "generic", "air"))
         self.dialog.viewer.fill_store()
Пример #17
0
	def callback_start_fx(self):
		new_fx=dlg_get_text( _("Enter the start frequency of the simulation"), str(self.fx_start),"start.png")
		new_fx=new_fx.ret

		if new_fx!=None:
			self.fx_start=float(new_fx)
			self.build_mesh()
			self.draw_graph()
			self.fig.canvas.draw()
			self.save_data()
Пример #18
0
	def callback_add_page(self):
		new_sim_name=dlg_get_text( _("New experiment name:"), _("experiment ")+str(self.notebook.count()+1),"new.png")

		if new_sim_name.ret!=None:
			index=experiment_new_filename()
			inp_copy_file("pulse"+str(index)+".inp","pulse0.inp")
			inp_copy_file("time_mesh_config"+str(index)+".inp","time_mesh_config0.inp")
			inp_update_token_value("pulse"+str(index)+".inp", "#sim_menu_name", new_sim_name.ret+"@pulse",1)
			self.add_page(index)
			self.changed.emit()
Пример #19
0
	def callback_add_page(self, widget, data=None):
		new_sim_name=dlg_get_text( _("New fit name:"), _("fit ")+str(len(self.notebook.get_children())+1),image_name="new.png")

		if new_sim_name!=None:
			index=fit_new_filename()
			shutil.copy("fit0.inp","fit"+str(index)+".inp")
			shutil.copy("fit_data0.inp","fit_data"+str(index)+".inp")
			shutil.copy("fit_patch0.inp","fit_patch"+str(index)+".inp")
			inp_update_token_value("fit"+str(index)+".inp", "#fit_name", new_sim_name,1)
			self.add_page(index)
Пример #20
0
 def callback_add_page(self):
     new_sim_name = dlg_get_text("Add a new script:", "exampe.py",
                                 "document-new.png")
     if new_sim_name.ret != None:
         name = os.path.join(self.path, new_sim_name.ret)
         self.new_script(name)
         a = script_editor()
         a.load(name)
         a.status_changed.connect(self.callback_tab_changed)
         self.notebook.addTab(a, os.path.basename(name))
Пример #21
0
	def callback_rename_page(self,widget,data):
		pageNum = self.notebook.get_current_page()
		tab = self.notebook.get_nth_page(pageNum)
		new_sim_name=dlg_get_text( _("Rename the fit to be called:"), tab.tab_name,image_name="rename.png")

		if new_sim_name!=None:
			#new_sim_name=self.remove_invalid(new_sim_name)
			#new_dir=os.path.join(self.sim_dir,new_sim_name)
			#shutil.move(old_dir, new_dir)
			tab.rename(new_sim_name)
Пример #22
0
 def callback_add_page(self):
     new_sim_name = dlg_get_text(_("New laser name:"),
                                 _("laser ") + str(self.notebook.count()),
                                 "document-new.png")
     if new_sim_name.ret != None:
         index = laser_new_filename()
         inp_copy_file("laser" + str(index) + ".inp", "laser0.inp")
         inp_update_token_value("laser" + str(index) + ".inp",
                                "#laser_name", new_sim_name.ret)
         self.add_page(index)
Пример #23
0
    def callback_rename_page(self):
        tab = self.notebook.currentWidget()
        new_laser_name = dlg_get_text(_("Rename the laser to be called:"),
                                      tab.tab_name, "rename.png")

        if new_laser_name.ret != None:
            index = self.notebook.currentIndex()
            self.notebook.setTabText(index, new_laser_name.ret)
            inp_update_token_value(tab.file_name, "#laser_name",
                                   new_laser_name.ret)
Пример #24
0
	def callback_add_page(self, widget, data=None):
		new_sim_name=dlg_get_text( _("New experiment name:"), _("experiment ")+str(len(self.notebook.get_children())+1))

		if new_sim_name!=None:
			index=experiment_new_filename()
			inp_copy_file("pulse"+str(index)+".inp","pulse0.inp")
			inp_copy_file("time_mesh_config"+str(index)+".inp","time_mesh_config0.inp")
			inp_update_token_value("pulse"+str(index)+".inp", "#sim_menu_name", new_sim_name+"@pulse",1)
			self.add_page(index)
			global_object_get("tb_item_sim_mode_update")()
Пример #25
0
    def callback_start_time(self):
        new_time = dlg_get_text(_("Enter the start time of the simulation"),
                                str(self.start_time), "start.png")
        new_time = new_time.ret

        if new_time != None:
            self.start_time = float(new_time)
            self.build_mesh()
            self.draw_graph()
            self.fig.canvas.draw()
            self.save_data()
Пример #26
0
	def callback_rename_page(self,widget,data):
		pageNum = self.notebook.get_current_page()
		tab = self.notebook.get_nth_page(pageNum)
		new_sim_name=dlg_get_text( _("Rename the experiment to be called:"), tab.tab_name.split("@")[0])

		if new_sim_name!=None:
			#new_sim_name=self.remove_invalid(new_sim_name)
			#new_dir=os.path.join(self.sim_dir,new_sim_name)
			#shutil.move(old_dir, new_dir)
			tab.rename(new_sim_name)
			global_object_get("tb_item_sim_mode_update")()
Пример #27
0
    def callback_laser(self):
        new_time = dlg_get_text(
            _("Enter the time at which the laser pulse will fire (-1) to turn it off"
              ), str(self.fs_laser_time), "laser.png")
        new_time = new_time.ret

        if new_time != None:
            self.fs_laser_time = float(new_time)
            self.build_mesh()
            self.draw_graph()
            self.fig.canvas.draw()
            self.save_data()
Пример #28
0
	def callback_copy_page(self):
		tab = self.notebook.currentWidget()
		new_sim_name=dlg_get_text(_("Clone the current laser to a new laser called:"), "clone.png")

		if new_sim_name.ret!=None:
			index=laser_new_filename()
			if inp_copy_file("laser"+str(index)+".inp",tab.file_name)==False:
				print ("Error copying file"+tab.file_name)
				return

			inp_update_token_value("laser"+str(index)+".inp", "#laser_name", new_sim_name.ret,1)
			self.add_page(index)
Пример #29
0
	def callback_rename_page(self,widget,data):
		pageNum = self.notebook.get_current_page()
		tab = self.notebook.get_nth_page(pageNum)
		name=tab.tab_name
		old_dir=os.path.join(self.sim_dir,name)
		new_sim_name=dlg_get_text( _("Rename the simulation to be called:"), name)

		if new_sim_name!=None:
			new_sim_name=self.remove_invalid(new_sim_name)
			new_dir=os.path.join(self.sim_dir,new_sim_name)
			shutil.move(old_dir, new_dir)
			tab.rename(new_dir)
Пример #30
0
	def callback_rename_page(self):
		tab = self.notebook.currentWidget()

		new_sim_name=dlg_get_text( _("Rename the experiment to be called:"), tab.tab_name.split("@")[0],"rename.png")

		new_sim_name=new_sim_name.ret

		if new_sim_name!=None:
			tab.rename(new_sim_name)
			index=self.notebook.currentIndex() 
			self.notebook.setTabText(index, new_sim_name)
			self.changed.emit()
Пример #31
0
	def callback_add_page(self):
		new_sim_name=dlg_get_text( _("New experiment name:"), _("experiment ")+str(self.notebook.count()+1),"new.png")

		new_sim_name=new_sim_name.ret

		if new_sim_name!=None:
			index=experiment_new_filename()
			inp_copy_file("fxdomain"+str(index)+".inp","fxdomain0.inp")
			inp_copy_file("fxmesh"+str(index)+".inp","fxmesh0.inp")
			inp_update_token_value("fxdomain"+str(index)+".inp", "#sim_menu_name", new_sim_name+"@fxdomain",1)
			self.add_page(index)
			self.changed.emit()
Пример #32
0
    def callback_rename_page(self):
        tab = self.notebook.currentWidget()
        new_sim_name = dlg_get_text(_("Rename the fit to be called:"),
                                    tab.tab_name, "rename.png")

        if new_sim_name.ret != None:
            #new_sim_name=self.remove_invalid(new_sim_name)
            #new_dir=os.path.join(self.sim_dir,new_sim_name)
            #shutil.move(old_dir, new_dir)
            tab.rename(new_sim_name.ret)
            index = self.notebook.currentIndex()
            self.notebook.setTabText(index, new_sim_name.ret)
Пример #33
0
 def callback_thermal(self):
     f = inp().load("thermal_boundary.inp")
     temp = f.get_token("#Ty0")
     new_temp = dlg_get_text(_("Enter the new temperature"), temp,
                             "thermal.png")
     if new_temp.ret != None:
         f.set_token("#Ty0", new_temp.ret)
         f.set_token("#Ty1", new_temp.ret)
         f.set_token("#Tx0", new_temp.ret)
         f.set_token("#Tx1", new_temp.ret)
         f.set_token("#Tz0", new_temp.ret)
         f.set_token("#Tz1", new_temp.ret)
         f.save()
Пример #34
0
	def callback_copy_page(self,widget,data):
		pageNum = self.notebook.get_current_page()
		tab = self.notebook.get_nth_page(pageNum)
		name=tab.tab_name
		old_dir=os.path.join(self.sim_dir,name)
		new_sim_name=dlg_get_text( _("Clone the current simulation to a new simulation called:"), name)
		if new_sim_name!=None:
			new_sim_name=self.remove_invalid(new_sim_name)
			new_dir=os.path.join(self.sim_dir,new_sim_name)

			copy_scan_dir(new_dir,old_dir)
			print _("I want to copy"),new_dir,old_dir
			self.add_page(new_sim_name)
Пример #35
0
    def callback_rename_shape(self):
        tab = self.notebook.currentWidget()
        s = self.epi.find_shape_by_file_name(tab.file_name)

        new_sim_name = dlg_get_text("Rename the shape:", s.name, "rename.png")

        new_sim_name = new_sim_name.ret

        if new_sim_name != None:
            s.name = new_sim_name
            s.save()
            index = self.notebook.currentIndex()
            self.notebook.setTabText(index, new_sim_name)
Пример #36
0
    def callback_rename_page(self):
        tab = self.notebook.currentWidget()
        name = inp_get_token_value(tab.file_name, "#measure_name")

        new_sim_name = dlg_get_text(
            _("Rename the measurement to be called") + ":", name, "rename.png")

        new_sim_name = new_sim_name.ret

        if new_sim_name != None:
            tab.rename(new_sim_name)
            index = self.notebook.currentIndex()
            self.notebook.setTabText(index, new_sim_name)
Пример #37
0
	def callback_copy_page(self):
		tab = self.notebook.currentWidget()
		name=tab.tab_name
		old_dir=os.path.join(self.sim_dir,name)
		new_sim_name=dlg_get_text( _("Clone the current simulation to a new simulation called:"), name,"clone.png")
		new_sim_name=new_sim_name.ret

		if new_sim_name!=None:
			new_sim_name=self.remove_invalid(new_sim_name)
			new_dir=os.path.join(self.sim_dir,new_sim_name)

			copy_scan_dir(new_dir,old_dir)
			print(_("I want to copy"),new_dir,old_dir)
			self.add_page(new_sim_name)
Пример #38
0
    def callback_rename_page(self):
        tab = self.notebook.currentWidget()

        new_sim_name = dlg_get_text(
            _("Rename the experiment to be called") + ":",
            tab.tab_name.split("@")[0], "rename.png")

        new_sim_name = new_sim_name.ret

        if new_sim_name != None:
            tab.rename(new_sim_name)
            index = self.notebook.currentIndex()
            self.notebook.setTabText(index, new_sim_name)
            self.changed.emit()
Пример #39
0
	def callback_copy_page(self,widget,data):
		pageNum = self.notebook.get_current_page()
		tab = self.notebook.get_nth_page(pageNum)
		old_index=tab.index
		new_sim_name=dlg_get_text( _("Clone the current fit to a new fit called:"), tab.tab_name,image_name="clone.png")
		if new_sim_name!=None:
			new_sim_name=new_sim_name
			index=fit_new_filename()

			shutil.copy("fit"+str(old_index)+".inp","fit"+str(index)+".inp")
			shutil.copy("fit_data"+str(old_index)+".inp","fit_data"+str(index)+".inp")
			shutil.copy("fit_patch"+str(old_index)+".inp","fit_patch"+str(index)+".inp")

			inp_update_token_value("fit"+str(index)+".inp", "#fit_name", new_sim_name,1)
			self.add_page(index)
Пример #40
0
    def rename(self):
        old_name = self.currentItem().text()
        decode = self.decode_name(old_name)
        if decode.type == "scan_dir":
            new_sim_name = dlg_get_text(
                _("Rename the simulation to be called:"), old_name,
                "rename.png")
            new_sim_name = new_sim_name.ret

            if new_sim_name != None:
                scan = scan_io()
                print(self.path, old_name)
                scan.load(os.path.join(self.path, decode.file_name))
                scan.rename(new_sim_name)
        else:
            new_sim_name = dlg_get_text(_("Rename:"),
                                        self.currentItem().text(), "rename")
            new_sim_name = new_sim_name.ret

            if new_sim_name != None:
                new_name = os.path.join(self.path, new_sim_name)
                old_name = os.path.join(self.path, old_name)
                #print(old_name, new_name)
                os.rename(old_name, new_name)
Пример #41
0
 def on_new_spectra_clicked(self):
     new_sim_name = dlg_get_text(_("New spectra name:"),
                                 _("New spectra name"), "add_spectra")
     new_sim_name = new_sim_name.ret
     if new_sim_name != None:
         new_spectra = os.path.join(self.dialog.viewer.path, new_sim_name)
         ret = clone_spectra(new_spectra,
                             os.path.join(get_base_spectra_path(), "sun"))
         if ret == False:
             error_dlg(
                 self,
                 _("I cant write to:") + new_spectra + " " +
                 _("This means either the disk is full or your system administrator has not given you write permissions to that location."
                   ))
         self.dialog.viewer.fill_store()
Пример #42
0
 def on_new_shape_clicked(self):
     new_sim_name = dlg_get_text(_("New shape name:"), _("New shape name"),
                                 "add_shape")
     new_sim_name = new_sim_name.ret
     if new_sim_name != None:
         new_shape = os.path.join(self.dialog.viewer.path, new_sim_name)
         ret = clone_material(new_shape,
                              gpvdm_paths.get_shape_template_path())
         if ret == False:
             error_dlg(
                 self,
                 _("I cant write to:") + new_shape + " " +
                 _("This means either the disk is full or your system administrator has not given you write permissions to that location."
                   ))
         self.dialog.viewer.fill_store()
Пример #43
0
	def callback_rename_page(self):
		tab = self.notebook.currentWidget()
		name=tab.tab_name
		old_dir=os.path.join(self.sim_dir,name)

		new_sim_name=dlg_get_text( _("Rename the simulation to be called:"), name,"rename.png")
		new_sim_name=new_sim_name.ret

		if new_sim_name!=None:
			new_sim_name=self.remove_invalid(new_sim_name)
			new_dir=os.path.join(self.sim_dir,new_sim_name)
			shutil.move(old_dir, new_dir)
			tab.rename(new_dir)
			index=self.notebook.currentIndex() 
			self.notebook.setTabText(index, new_sim_name)
Пример #44
0
	def layer_rename(self):
		epi=get_epi()
		obj=self.gl_objects_get_first_selected()
		if obj!=None:
			s=epi.find_shape_by_id(obj.id[0])
			if s!=None:
				old_name=s.name
				name=dlg_get_text( _("Rename the layer:"), old_name,"rename.png")
				name=name.ret

				if name!=None:
					s.name=name
					epi.save()

			self.force_redraw() 
Пример #45
0
    def callback_add_page(self):
        new_sim_name = dlg_get_text(
            _("New measurement name") + ":",
            _("measurement ") + str(self.notebook.count() + 1),
            "document-new.png")

        if new_sim_name.ret != None:
            index = measure_new_filename()
            inp_copy_file(
                os.path.join(get_sim_path(), "measure" + str(index) + ".inp"),
                os.path.join(get_sim_path(), "measure0.inp"))
            inp_update_token_value(
                os.path.join(get_sim_path(), "measure" + str(index) + ".inp"),
                "#measure_name", new_sim_name.ret)
            self.add_page(index)
Пример #46
0
	def callback_rename_page(self):
		tab = self.notebook.currentWidget()

		new_sim_name=dlg_get_text( _("Rename the experiment to be called:"), tab.tab_name.split("@")[0],"rename.png")

		new_sim_name=new_sim_name.ret

		if new_sim_name!=None:
			#new_sim_name=self.remove_invalid(new_sim_name)
			#new_dir=os.path.join(self.sim_dir,new_sim_name)
			#shutil.move(old_dir, new_dir)
			tab.rename(new_sim_name)
			index=self.notebook.currentIndex() 
			self.notebook.setTabText(index, new_sim_name)
			self.changed.emit()
Пример #47
0
    def clone(self):
        old_name = self.currentItem().text()
        decode = self.decode_name(old_name)
        if decode.type == "scan_dir":
            new_sim_name = dlg_get_text(_("Clone the file to be called:"),
                                        old_name + "_new", "clone.png")
            new_sim_name = new_sim_name.ret

            if new_sim_name != None:
                scans = scans_io(self.path)
                if scans.clone(new_sim_name, old_name) == False:
                    error_dlg(self, _("The file name already exists"))
        else:
            print(clone)

        self.fill_store()
Пример #48
0
    def callback_rename_page(self):
        tab = self.notebook_pointer.currentWidget()
        name = inp_get_token_value(tab.file_name, self.name_token)
        name = name.split("@")[0]

        new_sim_name = dlg_get_text(self.rename_dlg_text + ":", name,
                                    "rename.png")

        new_sim_name = new_sim_name.ret

        if new_sim_name != None:
            inp_update_token_value(tab.file_name, self.name_token,
                                   new_sim_name + self.postfix)
            index = self.notebook_pointer.currentIndex()
            self.notebook_pointer.setTabText(index, new_sim_name)
            self.changed.emit()
Пример #49
0
    def callback_copy_page(self):
        tab = self.notebook.currentWidget()
        index = laser_new_filename()
        new_file = "laser" + str(index) + ".inp"
        new_sim_name = dlg_get_text(
            _("Clone the current laser to a new laser called:"),
            tab.tab_name + "_new", "clone.png")

        if new_sim_name.ret != None:
            dest = os.path.join(get_sim_path(), new_file)
            if inp_copy_file(dest, tab.file_name) == False:
                print("Error copying file" + dest + " " + tab.file_name)
                return

            inp_update_token_value(dest, "#laser_name", new_sim_name.ret)
            self.add_page(index)
Пример #50
0
    def callback_add_page(self):
        new_sim_name = dlg_get_text(
            _("New experiment name") + ":",
            _("experiment ") + str(self.notebook.count() + 1),
            "document-new.png")

        if new_sim_name.ret != None:
            index = experiment_new_filename("jv")
            inp_copy_file(
                os.path.join(get_sim_path(), "jv" + str(index) + ".inp"),
                os.path.join(get_sim_path(), "jv0.inp"))
            inp_update_token_value(
                os.path.join(get_sim_path(), "jv" + str(index) + ".inp"),
                "#sim_menu_name", new_sim_name.ret + "@jv")
            self.add_page(index)
            self.changed.emit()
Пример #51
0
    def callback_trap_depth(self):
        lines = inp()
        lines.load(os.path.join(get_sim_path(), self.dos_file))

        ret = dlg_get_text(_("Maximum trap depth (eV):"),
                           lines.get_token("#srh_start"), "electrical.png")
        if ret.ret != None:
            depth = 0.0
            try:
                depth = -abs(float(ret.ret))
            except:
                error_dlg(self, _("That's not a number.."))

            lines.replace("#srh_start", str(depth))
            lines.save()
            self.update_graph()
Пример #52
0
    def callback_next(self):
        help_window().help_set_help([
            "document-save-as.png",
            _("<big><b>Now save the simulation</b></big><br>Now select where you would like to save the simulation directory."
              )
        ])

        if len(self.viewer.selectedItems()) > 0:

            password = inp_get_token_value("info.inp",
                                           "#info_password",
                                           archive=self.viewer.file_path)
            if password != "":
                pw_dlg = dlg_get_text(_("password:"******"", "document-new")
                if password != pw_dlg.ret:
                    return

            file_path = save_as_gpvdm(self)
            #print(file_path,get_exe_path())
            if file_path != None:
                if file_path.startswith(get_exe_path()) == True:
                    error_dlg(
                        self,
                        _("It's not a good idea to save the simulation in the gpvdm installation directory."
                          ))
                    return

                if os.path.isdir(file_path) == True:
                    error_dlg(
                        self,
                        _("That directory already exists.  Pick another name or delete the old one."
                          ))
                    return

                if not os.path.exists(file_path):
                    os.makedirs(file_path)

                self.ret_path = file_path
                os.chdir(self.ret_path)
                bugs_clear()
                bugs_add_action(os.path.basename(self.viewer.file_path))
                gpvdm_clone(os.getcwd(), copy_dirs=True)
                import_archive(self.viewer.file_path,
                               os.path.join(os.getcwd(), "sim.gpvdm"), False)
                self.close()
        else:
            error_dlg(self, _("Please select a device before clicking next"))
Пример #53
0
    def callback_rename_page(self):
        tab = self.notebook.currentWidget()

        new_sim_name = dlg_get_text(
            _("Rename the experiment to be called") + ":",
            tab.tab_name.split("@")[0], "rename.png")

        new_sim_name = new_sim_name.ret

        if new_sim_name != None:
            #new_sim_name=self.remove_invalid(new_sim_name)
            #new_dir=os.path.join(self.sim_dir,new_sim_name)
            #shutil.move(old_dir, new_dir)
            tab.rename(new_sim_name)
            index = self.notebook.currentIndex()
            self.notebook.setTabText(index, new_sim_name)
            self.changed.emit()
Пример #54
0
	def callback_copy_page(self,widget,data):
		pageNum = self.notebook.get_current_page()
		tab = self.notebook.get_nth_page(pageNum)
		old_index=tab.index
		new_sim_name=dlg_get_text( _("Clone the current experiment to a new experiment called:"), tab.tab_name.split("@")[0])
		if new_sim_name!=None:
			new_sim_name=new_sim_name+"@"+tab.tab_name.split("@")[1]
			index=experiment_new_filename()
			if inp_copy_file("pulse"+str(index)+".inp","pulse"+str(old_index)+".inp")==False:
				print "Error copying file"+"pulse"+str(old_index)+".inp"
				return
			if inp_copy_file("time_mesh_config"+str(index)+".inp","time_mesh_config"+str(old_index)+".inp")==False:
				print "Error copying file"+"pulse"+str(old_index)+".inp"
				return

			inp_update_token_value("pulse"+str(index)+".inp", "#sim_menu_name", new_sim_name,1)
			self.add_page(index)
			global_object_get("tb_item_sim_mode_update")()
Пример #55
0
	def callback_copy_page(self,widget,data):
		pageNum = self.notebook.get_current_page()
		tab = self.notebook.get_nth_page(pageNum)
		old_index=tab.index
		new_sim_name=dlg_get_text( _("Clone the current experiment to a new experiment called:"), tab.tab_name.split("@")[0],image_name="clone.png")
		if new_sim_name!=None:
			new_sim_name=new_sim_name+"@"+tab.tab_name.split("@")[1]
			index=experiment_new_filename()
			if inp_copy_file("fxdomain"+str(index)+".inp","fxdomain"+str(old_index)+".inp")==False:
				print("Error copying file"+"fxdomain"+str(old_index)+".inp")
				return
			if inp_copy_file("fxmesh"+str(index)+".inp","fxmesh"+str(old_index)+".inp")==False:
				print("Error copying file"+"fxdomain"+str(old_index)+".inp")
				return

			inp_update_token_value("fxdomain"+str(index)+".inp", "#sim_menu_name", new_sim_name,1)
			self.add_page(index)
			self.changed.emit()
Пример #56
0
	def callback_copy_page(self):
		tab = self.notebook.currentWidget()

		old_index=tab.index
		new_sim_name=dlg_get_text( _("Clone the current experiment to a new experiment called:"), tab.tab_name.split("@")[0],"clone.png")
		new_sim_name=new_sim_name.ret
		if new_sim_name!=None:
			new_sim_name=new_sim_name+"@"+tab.tab_name.split("@")[1]
			index=experiment_new_filename()
			if inp_copy_file("pulse"+str(index)+".inp","pulse"+str(old_index)+".inp")==False:
				print("Error copying file"+"pulse"+str(old_index)+".inp")
				return
			if inp_copy_file("time_mesh_config"+str(index)+".inp","time_mesh_config"+str(old_index)+".inp")==False:
				print("Error copying file"+"pulse"+str(old_index)+".inp")
				return

			inp_update_token_value("pulse"+str(index)+".inp", "#sim_menu_name", new_sim_name,1)
			self.add_page(index)
			self.changed.emit()
Пример #57
0
	def callback_units(self, data, widget):
		units=dlg_get_text( "Units:", self.plot_token.key_units)
		if units!=None:
			self.plot_token.key_units=units
		plot_save_oplot_file(self.config_file,self.plot_token)
		self.do_plot()