Beispiel #1
0
    def save(self, doc=''):
        if not doc:
            doc = self.current_doc
        if not doc.doc_file:
            return self.save_as()
        ext = os.path.splitext(self.current_doc.doc_file)[1]
        if not ext[1:]:
            return self.save_as()
        if not os.path.lexists(os.path.dirname(self.current_doc.doc_file)):
            return self.save_as()

        try:
            msg = _('Model saving for') + ' "%s" ' % (doc.doc_file)
            uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.JOB, msg)

            doc.save()
            events.emit(events.DOC_SAVED, doc)
        except:
            details = sys.exc_info()[1].__str__() + sys.exc_info()[2].__str__()
            msg = _('Cannot save file')
            msg = "%s '%s'" % (msg, self.current_doc.doc_file)
            sec = _('Please check file write permissions')

            uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.STOP, msg)

            dialogs.msg_dialog(self.mw, self.appdata.app_name, msg, sec,
                               details)
            return False
        events.emit(events.APP_STATUS, _('Document saved'))
        return True
Beispiel #2
0
    def open(self, doc_file=''):
        if not doc_file:
            doc_file = dialogs.get_open_file_name(self.mw, self,
                                                  config.open_dir)

        if os.path.lexists(doc_file) and os.path.isfile(doc_file):
            try:
                msg = _('Model creation for') + ' "%s" ' % (doc_file)
                uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.JOB, msg)

                doc = SW_Presenter(self, doc_file)
            except:
                details = sys.exc_info()[1].__str__(
                ) + '\n' + traceback.format_tb(sys.exc_info()[2])[0]
                msg = _('Cannot open file')
                msg = "%s '%s'" % (msg, doc_file)
                sec = _('The file may be corrupted or not supported format')

                uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.STOP, msg)

                dialogs.msg_dialog(self.mw, self.appdata.app_name, msg, sec,
                                   details)
                return
            self.docs.append(doc)
            self.set_current_doc(doc)
            config.open_dir = os.path.dirname(doc_file)
            events.emit(events.APP_STATUS, _('Document opened'))
Beispiel #3
0
	def save_as(self):
		doc_file = '' + self.current_doc.doc_file
		if not doc_file:
			doc_file = '' + self.current_doc.doc_name
		if not os.path.lexists(os.path.dirname(doc_file)):
			doc_file = os.path.join(config.save_dir,
								os.path.basename(doc_file))
		doc_file = dialogs.get_save_file_name(self.mw, self, doc_file)
		if doc_file:
			old_file = self.current_doc.doc_file
			old_name = self.current_doc.doc_name
			self.current_doc.set_doc_file(doc_file)
			try:
				msg = _('Model saving for') + ' "%s" ' % (doc_file)
				uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.JOB, msg)

				self.current_doc.save()
			except IOError:
				self.current_doc.set_doc_file(old_file, old_name)
				details = sys.exc_info()[1].__str__() + sys.exc_info()[2].__str__()
				first = _('Cannot save document')
				sec = _('Please check file name and write permissions')
				msg = ("%s '%s'.") % (first, self.current_doc.doc_name)

				uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.STOP, msg)

				dialogs.msg_dialog(self.mw, self.appdata.app_name, msg, sec, details)

				return False
			config.save_dir = os.path.dirname(doc_file)
			events.emit(events.APP_STATUS, _('Document saved'))
			return True
		else:
			return False
Beispiel #4
0
	def open(self, doc_file=''):
		if not doc_file:
			doc_file = dialogs.get_open_file_name(self.mw, self,
												config.open_dir)


		if os.path.lexists(doc_file) and os.path.isfile(doc_file):
			try:
				msg = _('Model creation for') + ' "%s" ' % (doc_file)
				uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.JOB, msg)

				doc = SW_Presenter(self, doc_file)
			except:
				details = sys.exc_info()[1].__str__() + '\n' + traceback.format_tb(sys.exc_info()[2])[0]
				msg = _('Cannot open file')
				msg = "%s '%s'" % (msg, doc_file)
				sec = _('The file may be corrupted or not supported format')

				uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.STOP, msg)

				dialogs.msg_dialog(self.mw, self.appdata.app_name, msg, sec, details)
				return
			self.docs.append(doc)
			self.set_current_doc(doc)
			config.open_dir = os.path.dirname(doc_file)
			events.emit(events.APP_STATUS, _('Document opened'))
Beispiel #5
0
	def save(self, doc=''):
		if not doc:
			doc = self.current_doc
		if not doc.doc_file:
			return self.save_as()
		ext = os.path.splitext(self.current_doc.doc_file)[1]
		if not ext[1:]:
			return self.save_as()
		if not os.path.lexists(os.path.dirname(self.current_doc.doc_file)):
			return self.save_as()

		try:
			msg = _('Model saving for') + ' "%s" ' % (doc.doc_file)
			uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.JOB, msg)

			doc.save()
			events.emit(events.DOC_SAVED, doc)
		except:
			details = sys.exc_info()[1].__str__() + sys.exc_info()[2].__str__()
			msg = _('Cannot save file')
			msg = "%s '%s'" % (msg, self.current_doc.doc_file)
			sec = _('Please check file write permissions')

			uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.STOP, msg)

			dialogs.msg_dialog(self.mw, self.appdata.app_name, msg, sec, details)
			return False
		events.emit(events.APP_STATUS, _('Document saved'))
		return True
Beispiel #6
0
	def save_as(self):
		doc_file = self.current_doc.doc_file
		if not doc_file:
			doc_file = self.current_doc.doc_name
		if not os.path.lexists(os.path.dirname(doc_file)):
			doc_file = os.path.join(config.save_dir,
								os.path.basename(doc_file))
		doc_file = dialogs.get_save_file_name(self.mw, self, doc_file)
		if doc_file:
			old_file = self.current_doc.doc_file
			old_name = self.current_doc.doc_name
			self.current_doc.set_doc_file(doc_file)
			try:
				msg = _('Model saving for') + ' "%s" ' % (doc_file)
				uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.JOB, msg)

				self.current_doc.save()
			except IOError:
				self.current_doc.set_doc_file(old_file, old_name)
				details = sys.exc_info()[1].__str__() + sys.exc_info()[2].__str__()
				first = _('Cannot save document')
				sec = _('Please check file name and write permissions')
				msg = ("%s '%s'.") % (first, self.current_doc.doc_name)

				uc2.events.emit(uc2.events.MESSAGES, uc2.msgconst.STOP, msg)

				dialogs.msg_dialog(self.mw, self.appdata.app_name, msg, sec, details)

				return False
			config.save_dir = os.path.dirname(doc_file)
			events.emit(events.APP_STATUS, _('Document saved'))
			return True
		else:
			return False
Beispiel #7
0
	def set_path(self, pathname, undo=False):
		try:
			os.listdir(pathname)
		except:
			msg = _('Access error to')
			msg = "%s '%s'" % (msg, pathname)
			sec = sys.exc_info()[1].__str__()
			dialogs.msg_dialog(self.mw, self.app.appdata.app_name, msg,
							sec, gtk.MESSAGE_ERROR)
			return

		if undo:
			pass
		else:
			self.undo += [self.current_dir, ]
		self.current_dir = "" + pathname
		self.update_view()
Beispiel #8
0
	def set_path(self, pathname, undo=False):
		try:
			os.listdir(pathname)
		except:
			msg = _('Access error to')
			msg = "%s '%s'" % (msg, pathname)
			sec = sys.exc_info()[1].__str__()
			dialogs.msg_dialog(self.mw, self.app.appdata.app_name, msg,
							sec, gtk.MESSAGE_ERROR)
			return

		if undo:
			pass
		else:
			self.undo += [self.current_dir, ]
		self.current_dir = "" + pathname
		self.update_view()
Beispiel #9
0
 def load(self, pathname):
     msg = _('Request to open file')
     msg = "%s '%s'" % (msg, pathname)
     sec = _('The open operation will be implemented soon.')
     dialogs.msg_dialog(self.mw, self.appdata.app_name, msg, sec,
                        gtk.MESSAGE_INFO)
Beispiel #10
0
 def _edit_stub(self):
     msg = _('Model editor is not found for ')
     msg = "%s '%s'" % (msg, self.app.current_doc.doc_file)
     sec = _('Install model editor and try again.')
     dialogs.msg_dialog(self.mw, self.app.appdata.app_name, msg, sec)
Beispiel #11
0
	def load(self, pathname):
		msg = _('Request to open file')
		msg = "%s '%s'" % (msg, pathname)
		sec = _('The open operation will be implemented soon.')
		dialogs.msg_dialog(self.mw, self.appdata.app_name, msg,
						sec, gtk.MESSAGE_INFO)
Beispiel #12
0
	def _edit_stub(self):
		msg = _('Model editor is not found for ')
		msg = "%s '%s'" % (msg, self.app.current_doc.doc_file)
		sec = _('Install model editor and try again.')
		dialogs.msg_dialog(self.mw, self.app.appdata.app_name, msg, sec)