comparison bin/curvecalc @ 1228:af7bf271aaae

update CC gtk theme Ignore-this: b639ebc884c1e0ffc1f6f2257d995467
author Drew Perttula <drewp@bigasterisk.com>
date Mon, 08 Jun 2015 09:28:30 +0000
parents 5e905ff44e84
children b8e2b8acb02c
comparison
equal deleted inserted replaced
1227:6a1076af059e 1228:af7bf271aaae
54 self.graph, self.opts, self.session = graph, opts, session 54 self.graph, self.opts, self.session = graph, opts, session
55 self.curveset, self.music = curveset, music 55 self.curveset, self.music = curveset, music
56 self.lastSeenInputTime = 0 56 self.lastSeenInputTime = 0
57 self.currentSubterms = [] # Subterm objects that are synced to the graph 57 self.currentSubterms = [] # Subterm objects that are synced to the graph
58 58
59 self.setTheme()
59 wtree = self.wtree = Gtk.Builder() 60 wtree = self.wtree = Gtk.Builder()
60 wtree.add_from_file("light9/curvecalc/curvecalc.glade") 61 wtree.add_from_file("light9/curvecalc/curvecalc.glade")
61 mainwin = wtree.get_object("MainWindow") 62 mainwin = wtree.get_object("MainWindow")
62 63
63 mainwin.connect("destroy", self.onQuit) 64 mainwin.connect("destroy", self.onQuit)
64 wtree.connect_signals(self) 65 wtree.connect_signals(self)
65 Gtk.rc_parse("theme/marble-ice/gtk-2.0/gtkrc") 66
66 Gtk.rc_parse_string("""style "default" {font_name = "sans 9"}""")
67 if self.opts.reload:
68 self.refreshTheme()
69 mainwin.show_all() 67 mainwin.show_all()
70 68
71 mainwin.connect("delete-event", lambda *args: reactor.crash()) 69 mainwin.connect("delete-event", lambda *args: reactor.crash())
72 def updateTitle(): 70 def updateTitle():
73 mainwin.set_title("curvecalc - %s" % 71 mainwin.set_title("curvecalc - %s" %
116 self.setupNewSubZone() 114 self.setupNewSubZone()
117 self.acceptDragsOnCurveViews() 115 self.acceptDragsOnCurveViews()
118 116
119 # may not work 117 # may not work
120 wtree.get_object("paned1").set_position(600) 118 wtree.get_object("paned1").set_position(600)
121 119
122 def setupNewSubZone(self): 120 def setupNewSubZone(self):
123 self.wtree.get_object("newSubZone").drag_dest_set( 121 self.wtree.get_object("newSubZone").drag_dest_set(
124 flags=Gtk.DestDefaults.ALL, 122 flags=Gtk.DestDefaults.ALL,
125 targets=[Gtk.TargetEntry('text/uri-list', 0, 0)], 123 targets=[Gtk.TargetEntry('text/uri-list', 0, 0)],
126 actions=Gdk.DragAction.COPY) 124 actions=Gdk.DragAction.COPY)
293 [master.remove(c) for c in master.get_children()] 291 [master.remove(c) for c in master.get_children()]
294 for term in self.currentSubterms: 292 for term in self.currentSubterms:
295 add_one_subterm(term, self.curveset, master) 293 add_one_subterm(term, self.curveset, master)
296 master.show_all() 294 master.show_all()
297 log.debug("%s table children showing" % len(master.get_children())) 295 log.debug("%s table children showing" % len(master.get_children()))
298 296
299 def refreshTheme(self): 297 def setTheme(self):
300 Gtk.rc_reparse_all() 298 settings = Gtk.Settings.get_default()
301 reactor.callLater(1, self.refreshTheme) 299 settings.set_property("gtk-application-prefer-dark-theme", True)
302 300
301 providers = []
302 providers.append(Gtk.CssProvider())
303 providers[-1].load_from_path("theme/Just-Dark/gtk-3.0/gtk.css")
304 providers.append(Gtk.CssProvider())
305 providers[-1].load_from_data('''
306 * { font-size: 92%; }
307 .button:link { font-size: 7px }
308 ''')
309
310 screen = Gdk.Display.get_default_screen(Gdk.Display.get_default())
311 for p in providers:
312 Gtk.StyleContext.add_provider_for_screen(
313 screen, p,
314 Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
315
303 def onSubtermChildAdded(self, subtermsTable, *args): 316 def onSubtermChildAdded(self, subtermsTable, *args):
304 # this would probably work, but isn't getting called 317 # this would probably work, but isn't getting called
305 log.info("onSubtermChildAdded") 318 log.info("onSubtermChildAdded")
306 v = subtermsTable.get_parent().props.vadjustment 319 v = subtermsTable.get_parent().props.vadjustment
307 v.props.value = v.props.upper 320 v.props.value = v.props.upper