mirror of
				https://github.com/python/cpython.git
				synced 2025-10-31 05:31:20 +00:00 
			
		
		
		
	*** empty log message ***
This commit is contained in:
		
							parent
							
								
									370a0837d1
								
							
						
					
					
						commit
						f9c6ddc40a
					
				
					 1 changed files with 95 additions and 0 deletions
				
			
		
							
								
								
									
										95
									
								
								Tools/pynche/TextViewer.py
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										95
									
								
								Tools/pynche/TextViewer.py
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,95 @@ | ||||||
|  | import sys | ||||||
|  | from Tkinter import * | ||||||
|  | from pynche import __version__ | ||||||
|  | import ColorDB | ||||||
|  | 
 | ||||||
|  | class TextViewer: | ||||||
|  |     def __init__(self, switchboard, parent=None): | ||||||
|  |         self.__sb = switchboard | ||||||
|  |         root = self.__root = Toplevel(parent, class_='Pynche') | ||||||
|  |         root.protocol('WM_DELETE_WINDOW', self.__withdraw) | ||||||
|  |         root.title('Pynche %s' % __version__) | ||||||
|  |         root.iconname('Pynche Text Window') | ||||||
|  |         root.bind('<Alt-q>', self.__quit) | ||||||
|  |         root.bind('<Alt-Q>', self.__quit) | ||||||
|  |         # | ||||||
|  |         # create the text widget | ||||||
|  |         # | ||||||
|  |         self.__text = Text(root, relief=SUNKEN, | ||||||
|  |                            background='black', | ||||||
|  |                            foreground='white', | ||||||
|  |                            width=35, height=15) | ||||||
|  |         self.__text.pack() | ||||||
|  |         self.__text.insert(0.0, '''\ | ||||||
|  | Insert some stuff here and play | ||||||
|  | with the buttons below to see | ||||||
|  | how the colors interact in | ||||||
|  | textual displays.''') | ||||||
|  |         # | ||||||
|  |         # variables | ||||||
|  |         self.__trackp = BooleanVar() | ||||||
|  |         self.__trackp.set(0) | ||||||
|  |         self.__which = IntVar() | ||||||
|  |         self.__which.set(4) | ||||||
|  |         # | ||||||
|  |         # track toggle | ||||||
|  |         self.__t = Checkbutton(root, text='Track color changes', | ||||||
|  |                                variable=self.__trackp, | ||||||
|  |                                relief=GROOVE) | ||||||
|  |         self.__t.pack(fill=X, expand=YES) | ||||||
|  |         frame = self.__frame = Frame(root) | ||||||
|  |         frame.pack() | ||||||
|  |         # | ||||||
|  |         # labels | ||||||
|  |         self.__labels = [] | ||||||
|  |         row = 2 | ||||||
|  |         for text in ('Text:', 'Selection:', 'Insertion:'): | ||||||
|  |             l = Label(frame, text=text) | ||||||
|  |             l.grid(row=row, column=0, sticky=E) | ||||||
|  |             self.__labels.append(l) | ||||||
|  |             row = row + 1 | ||||||
|  |         col = 1 | ||||||
|  |         for text in ('Foreground', 'Background'): | ||||||
|  |             l = Label(frame, text=text) | ||||||
|  |             l.grid(row=1, column=col) | ||||||
|  |             self.__labels.append(l) | ||||||
|  |             col = col + 1 | ||||||
|  |         # | ||||||
|  |         # radios | ||||||
|  |         self.__radios = [] | ||||||
|  |         val = 0 | ||||||
|  |         for col in (1, 2): | ||||||
|  |             for row in (2, 3, 4): | ||||||
|  |                 # there is no insertforeground option | ||||||
|  |                 if row==4 and col==1: | ||||||
|  |                     continue | ||||||
|  |                 r = Radiobutton(frame, variable=self.__which, | ||||||
|  |                                 value=(row-2)*2 + col-1) | ||||||
|  |                 r.grid(row=row, column=col) | ||||||
|  |                 self.__radios.append(r) | ||||||
|  | 
 | ||||||
|  |     def __quit(self, event=None): | ||||||
|  |         sys.exit(0) | ||||||
|  | 
 | ||||||
|  |     def __withdraw(self, event=None): | ||||||
|  |         self.__root.withdraw() | ||||||
|  | 
 | ||||||
|  |     def deiconify(self, event=None): | ||||||
|  |         self.__root.deiconify() | ||||||
|  | 
 | ||||||
|  |     def __forceupdate(self, event=None): | ||||||
|  |         self.__sb.update_views_current() | ||||||
|  | 
 | ||||||
|  |     def update_yourself(self, red, green, blue): | ||||||
|  |         colorname = ColorDB.triplet_to_rrggbb((red, green, blue)) | ||||||
|  |         which = self.__which.get() | ||||||
|  |         if which == 0: | ||||||
|  |             self.__text.configure(foreground=colorname) | ||||||
|  |         elif which == 1: | ||||||
|  |             self.__text.configure(background=colorname) | ||||||
|  |         elif which == 2: | ||||||
|  |             self.__text.configure(selectforeground=colorname) | ||||||
|  |         elif which == 3: | ||||||
|  |             self.__text.configure(selectbackground=colorname) | ||||||
|  |         elif which == 5: | ||||||
|  |             self.__text.configure(insertbackground=colorname) | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Barry Warsaw
						Barry Warsaw