Re: GtkApplication with different ApplicationWindows



I tested it with "normal" GtkWindows, and yes, they work the same way
GtkApplicationWindows do.
But in my case I have multiple application windows with different
semantics. And this is not the intention behind GtkApplication. I guess
I could make it work, but it would be really happy and result in unnice
code.
One could argue that my requirements are the result of bad application
design but I am quite happy with this approach. I will go a similar way
Joel has suggested. I will derive my own application object from
GApplication, not GtkApplication, so I have all the wonderful things
like process uniqueness, DBus communication, and so on and in my own
object I will implement window tracking with my application-specific
semantics.

On 08/15/16 00:13, Victor Aurélio Santos wrote:
This is what i found on the GtkApplication docs:

While GtkApplication works fine with plain GtkWindows, it is recommended to use it together with 
GtkApplicationWindow.

So, you can use just a GtkWindow, or "TaskWindow" for say...

I've not tested, but it should work.

2016-08-13 10:21 GMT-03:00  <zahlenmeer gmx de>:
This is exactly what I thought of, but I also want to allow to run my
program without the main window (like ./prog --task which only opens a
task window). So I would have to run a GtkApplication without any
GtkApplicationWindow. As the applications life cycle is tied to its
ApplicationWindows this approach just seems wrong.

On 08/13/16 14:14, Victor Aurélio Santos wrote:
GtkApplicationWindow, loads a menubar  from resources automatically if
they exists.
So, You can have main window as GtkApplicationWindow and have tasks as
GtkWindow.

For GtkWindow you'll add a GtkMenuBar to it as any widget.

I'm not a Gtk+ expert, but this is how I would do.

2016-08-13 8:22 GMT-03:00  <zahlenmeer gmx de>:
Hi everyone,
I am working on a project where I am struggling to decide which
classes/objects I should use. I use gtk3 but it's still a classical
application, so no fancy appmenu, CSD and not primarily designed for the
Gnome DE.

The program works as follows:
- A unique main window, with a main menu bar
- Multiple task windows, all with a task menu bar
- The program can be called with ./prog --task to only open the task
window, not the main window

The first thing one would find in the documentation is GtkApplication
and GtkApplicationWindow, but those have some limitations I currently
don't know how to deal with:
- Different menubars for different windows (main window vs. task window)

So the idea would be to use a normal GtkWindow for the task windows, but
in this case I have:
- Application life-cycle without a GtkApplicationWindow?

So for me the most promising solution would be to skip GtkApplication
and GtkApplicationWindow at all, using plain GtkWindows and writing my
custom application class. Of course this means extra work to get all the
nice benefits GtkApplication offers out of the box.

Do you have any ideas how I could design my application accordingly?

Kind regards
_______________________________________________
gtk-app-devel-list mailing list
gtk-app-devel-list gnome org
https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list



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





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]