Пример #1
0
def load (lang):
	# fileName = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'translations', lang)
	fileName = os.path.join( dataDir(), 'translations', lang )
	if Trace: print 'translation file:', fileName
	if os.path.exists(fileName):
		fh = open(fileName, 'rb')
		d = {}
		encoding = fh.readline().rstrip()
		while True:
			line = fh.readline()
			if line == '':
				break
			if line != '\n':
				l = line.rstrip().split('\t')
				while True:
					try:
						l.remove('')
					except ValueError:
						break
				f, t = l
				d[f] = t.decode(encoding)
		fh.close()
		return d
	else:
		if Trace: print 'no translation file found'
		return None
Пример #2
0
	def __init__ (self, par):
		self.msgLinks = None

		self.settings = loadSettings()
		self.settings['modified'] = False

		builder = gtk.Builder()
		# gladeFile = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'ide-gtk2.glade')
		gladeFile = os.path.join( util.dataDir(), 'ide-gtk2.glade' )
		if Trace: print 'gladeFile:', gladeFile
		builder.add_from_file( fileNameToGtk(gladeFile) )
		builder.connect_signals(self)

		self.mainWindow = builder.get_object('window1')
		self.setMainWindowSize()

		self.miSharpComment = builder.get_object('menuitem5')
		self.miSharpUnComment = builder.get_object('menuitem6')

		if GTKSV:
			view = NewSrcTextSView()
		else:
			view = NewSrcTextView()
		builder.get_object('scrolledwindow1').add(view)
		view.connect("expose-event", self.on_textview1_expose_event)
		view.connect("key-press-event", self.on_textview1_key_press_event)
		view.set_property("can-focus", True)
		view.set_property("has-focus", True)
		view.show()
		self.srcTextView = view

		if self.settings['font'] != None:
			self.srcTextView.modify_font(pango.FontDescription(self.settings['font']))

		self.msgTextView = builder.get_object('textview2')
		color = self.mainWindow.get_colormap().alloc_color(
			65535, 49152, 49152
		)
		self.msgErrTag = self.msgTextView.get_buffer().create_tag(background=color)
		self.msgErrTag.connect("event", self.msg_link_tag_event)
		color = self.mainWindow.get_colormap().alloc_color(
			65535, 65535, 32768
		)
		self.msgWarnTag = self.msgTextView.get_buffer().create_tag(background=color)
		self.msgWarnTag.connect("event", self.msg_link_tag_event)

		self.findWindow = builder.get_object('window2')
		self.findWindow.set_transient_for(self.mainWindow)
		self.findWindow.set_keep_above(True)
		self.findStr = builder.get_object('entry1')
		self.findReplStr = builder.get_object('entry2')
		self.findIgnCase = builder.get_object('checkbutton1')
		self.findRevDir = builder.get_object('checkbutton2')

		translateBuilder(builder)

		self.mainWindow.show()

		prof = profiles.profiles[0]
		self.do_new(prof=prof)
		if par == None:
			self.on_new(None)
		else:
			fileName, prof = par
			if os.path.exists(fileName):
				self.do_open(fileName, prof)
			else:
				self.do_new(prof=prof, fileName=fileName)
				self.do_save() # "touch"