[go: up one dir, main page]

Menu

[r13]: / minimpypreferences.py  Maximize  Restore  History

Download this file

98 lines (77 with data), 3.8 kB

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
#!/usr/bin/env python
import sys
try:
import pygtk
pygtk.require("2.0")
except:
print("pygtk Not Availible")
sys.exit(1)
try:
import gtk
import pango
except:
print("GTK Not Availible")
sys.exit(1)
class PrefWin(object):
def delete_event(self, widget, event):
self.window.destroy()
def __init__(self, parent):
self.parent = parent
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.set_title("MinimPy Program Preferences")
self.window.connect("delete_event", self.delete_event)
self.window.set_border_width(10)
self.window.set_transient_for(parent.window)
self.window.set_modal(True)
table = gtk.Table(11, 2)
self.set_tab_pos_cbo = gtk.combo_box_new_text()
self.set_tab_pos_cbo.append_text("Left")
self.set_tab_pos_cbo.append_text("Right")
self.set_tab_pos_cbo.append_text("Top")
self.set_tab_pos_cbo.append_text("Bottom")
self.set_tab_pos_cbo.set_active(parent.notebook.get_tab_pos())
self.set_tab_pos_cbo.connect("changed", self.set_tab_pos_cbo_changed)
label = gtk.Label("Program Tab Positions")
table.attach(label, 0, 1, 0, 1)
table.attach(self.set_tab_pos_cbo, 1, 2, 0, 1)
#self.fixed_text_fg_color_light_btn = gtk.ColorButton(parent.fixed_text_fg_color_light)
#label = gtk.Label("Fixed Text Foreground Color Light")
#table.attach(label, 0, 1, 7, 8, xoptions=gtk.EXPAND)
#table.attach(self.fixed_text_fg_color_light_btn, 1, 2, 7, 8, xoptions=gtk.EXPAND)
sep = gtk.HSeparator()
table.attach(sep, 0, 2, 1, 2)
self.load_recent_chk = gtk.CheckButton("Load Last Project on Startup*")
self.load_recent_chk.set_active(self.parent.config.getboolean('project', 'load_recent'))
table.attach(self.load_recent_chk, 0, 2, 2, 3)
sep = gtk.HSeparator()
table.attach(sep, 0, 2, 3, 4)
self.research_mode_chk = gtk.CheckButton("Research Mode*")
self.research_mode_chk.set_active(self.parent.config.getboolean('interface', 'research_mode'))
table.attach(self.research_mode_chk, 0, 2, 4, 5)
self.alt_random_chk = gtk.CheckButton("Use Operating System's Random Number Generator*")
self.alt_random_chk.set_active(self.parent.config.getboolean('operations', 'alt_random'))
table.attach(self.alt_random_chk, 0, 2, 5, 6)
sep = gtk.HSeparator()
table.attach(sep, 0, 2, 6, 7)
label = gtk.Label("*Will be activated after restart")
table.attach(label, 0, 2, 7, 8)
btn = gtk.Button(None, gtk.STOCK_SAVE)
btn.connect("clicked", self.save_prefs)
table.attach(btn, 0, 1, 8, 9, xoptions=gtk.EXPAND)
btn = gtk.Button(None, gtk.STOCK_CLOSE)
btn.connect("clicked", self.close_window)
table.attach(btn, 1, 2, 8, 9, xoptions=gtk.EXPAND)
self.window.add(table)
self.window.show_all()
def set_tab_pos_cbo_changed(self, cbo, data=None):
self.parent.notebook.set_tab_pos(self.set_tab_pos_cbo.get_active())
def save_prefs(self, widget, data=None):
self.parent.config.set('interface', 'tab_pos', self.set_tab_pos_cbo.get_active())
self.parent.config.set('interface', 'research_mode', self.research_mode_chk.get_active())
self.parent.config.set('project', 'load_recent', self.load_recent_chk.get_active())
self.parent.config.set('operations', 'alt_random', self.alt_random_chk.get_active())
with open(self.parent.config_file, 'wb') as config_file:
self.parent.config.write(config_file)
self.window.destroy()
def close_window(self, widget, data=None):
self.window.destroy()