Re: Using Gtk.Builder to create a menubar.

2018-04-25 Thread c.buhtz
Dear Eric,

thank you for your quick reply.

> There is a basic setup for the Gtk Application in Python here
> https://developer.gnome.org/gnome-devel-demos/stable/hello-world.py.html.en

Nice to know. Very helpful.

> For C you can check 
> https://github.com/cecashon/OrderedSetVelociRaptor/blob/master/Misc/Csamples/gtk_app1.c
> which has a menu but doesn't use builder with an application. Maybe
> partial help.

This code doesn't help me with my problem but brings up two questions.

1.
It uses "QMenu" (from Gtk or Gio?) to build a menu structure. I would
prefere this way instead of an XML string. It should be possible
in Python, too? Gtk.Menu or Gio.Menu?

2.
It uses " gtk_application_set_menubar()" which I don't want to use.
Because there is no "gtk_application_set_TOOLBAR()"! I need the menubar
and the toolbar as a widget to add them myself to the main window.
Or a " gtk_application_set_toolbar()" - don't understand why there
isn't one.

It couldn't be so hard to create a menubar and a toolbar with
PyGObject?! Am I the first one who tries this? ;)
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list


Re: Using Gtk.Builder to create a menubar.

2018-04-25 Thread Eric Cashon via gtk-app-devel-list

 

There is a basic setup for the Gtk Application in Python here

https://developer.gnome.org/gnome-devel-demos/stable/hello-world.py.html.en

For C you can check 

https://github.com/cecashon/OrderedSetVelociRaptor/blob/master/Misc/Csamples/gtk_app1.c

which has a menu but doesn't use builder with an application. Maybe partial 
help.

Eric

___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list



Using Gtk.Builder to create a menubar.

2018-04-25 Thread c.buhtz
X-Post: I was redirected from
https://mail.gnome.org/archives/python-hackers-list/2018-April/msg4.html
to here.

I try to use Gtk.Builder to create a menubar. It is not working
because the documentation is not clear for me. There is no exmple for
a IMO usual thing like a menubar.

To improve documentation and the help other new users I created a
question with example code on StackOverflow.
https://stackoverflow.com/q/49964906/4865723

Currently I can put the XML-string and the Gio.Action together. Not
sure if this is the correct way!? But the next step is the main
problem. I don't know how to create a menubar widget out of it.

btw: I don't want to use Gtk.Application.set_menubar(). Because there
is no Gtk.Application.set_toolbar() and currently I see no advantage on
having a Gtk-based application object.

This is the code

#!/usr/bin/env python3
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk
from gi.repository import Gio

class Window(Gtk.ApplicationWindow):
def __init__(self):
Gtk.Window.__init__(self)
self.set_default_size(200, 100)

#
self.interface_info = """

  

  Foo
  
Bar
  

  

"""

builder = Gtk.Builder.new_from_string(self.interface_info, -1)

action_bar = Gio.SimpleAction.new('bar', None)
action_bar.connect('activate', self.on_menu)
self.add_action(action_bar)

menubar = builder.get_object('TheMenu')

# layout
self.layout = Gtk.Box(orientation=Gtk.Orientation.VERTICAL)
self.layout.pack_start(menubar, True, True, 0)
self.add(self.layout)

self.connect('destroy', Gtk.main_quit)
self.show_all()

def on_menu(self, widget):
print(widget)

if __name__ == '__main__':
win = Window()
Gtk.main()
___
gtk-app-devel-list mailing list
gtk-app-devel-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list