Announcement

Collapse
No announcement yet.

GTK+ 3.90.0 Released, Advancing Towards GTK 4.0

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #21
    Originally posted by brk0_0 View Post
    GTK is the bottleneck of the GNOME environment for me. A better API, even if close to OSX one, is welcome. But the focus should be on world class documentation and tutorials, to bring developers into it. That's a huge advantage of developing for OSX or Qt.
    I'm a NeXT/Apple alum. I've expected functionality from AppKit/FoundationKit from other platforms since the mid-90s and they all still have a long way to go. A robust API that does match OS X would be a huge boon for Linux and GNOME. Industry heavyweights would be willing to port from OS X with such a foundation.

    Comment


    • #22
      Originally posted by uid313 View Post
      Well it doesn't look or feel very object oriented with stuff like:
      gtk_button_new_with_label("Ok") instead of new Gtk.Button("Ok")
      Python doesn’t have (or need) the keyword “new” either. Does that mean it’s not object-oriented?

      And:
      gtk_button_set_label(ok_button, "text") instead of button.set_label("text")
      Python lets you implement “properties”, so you can write

      ok_button.label = "text"

      Does that make it better than object-oriented?



      Comment


      • #23
        Originally posted by Marc Driftmeyer View Post
        Industry heavyweights would be willing to port from OS X with such a foundation.
        Who are these “industry heavyweights” that are currently confined to OS X?

        Comment


        • #24
          Originally posted by uid313 View Post
          Well it doesn't look or feel very object oriented with stuff like:
          gtk_button_new_with_label("Ok") instead of new Gtk.Button("Ok")

          And:
          gtk_button_set_label(ok_button, "text") instead of button.set_label("text")
          Dafaq, man? So you want gtk+ rewritten in a language that looks like the one you're using ( Python ), but is also Rust, and definitely not C, and fast, and stable, and ... what else exactly? I still don't get the reason why you don't just continue using Python. That's what you like to look at. I get similar questions from people who ask me why I'm not using Hadoop/Hive/whatever ( I'm a data engineer ). They hear about the next buzzword and just HAVE to use them, no matter whether it's appropriate for their use case, or a total waste of time ( usually ). Things that have been around for more than 12 months are not obsolete. The bindings work particularly well, largely because gtk+ itself is written in C. You seem to be missing the point that a rewrite in another language would:

          1) not be what anyone actually hacking on gtk+ itself is interested in doing
          2) be a massive waste of time and effort
          3) not achieve anything
          4) not be something you yourself would be involved in
          5) sacrifice the multitude of language bindings - including the one that you're using.

          Originally posted by uid313 View Post
          GTK could stay with C, but I just hope that there will be some improvements to Gtk.Paned because I find it lacking.
          That's at least a more reasonable position. What's the bugzilla link for your GtkPaned issues? What's your opposition to writing your own container widget? I've written some custom widgets - mainly custom cell renderers for treeviews. It's not so hard. Maybe a container widget might be more challenging?

          Comment


          • #25
            Originally posted by uid313 View Post

            What, C++ is not object oriented?
            Actually, no. OO is about message-passing. C++ has no message-passing.

            People like to say C++ is OO just because it has classes and inheritance. But these two are not requiriment for considering one PL OO, and by themselves doesn't make a PL OO.

            Fun fact: It's possible to make a OO PL that doesn't have classes and inheritance.
            Last edited by Mateus Felipe; 04 April 2017, 05:26 AM.

            Comment


            • #26
              Originally posted by ldo17 View Post
              Python doesn’t have (or need) the keyword “new” either. Does that mean it’s not object-oriented?
              Python is object-oriented but it uses this weird OO.
              I often mistakenly write "new" when coding Python. Maybe it would be better if Python used "new", most other language seem to do it that way.

              Originally posted by ldo17 View Post
              Python lets you implement “properties”, so you can write

              ok_button.label = "text"

              Does that make it better than object-oriented?
              Pretty much all object-oriented languages supports properties.
              Properties are nice.

              Comment


              • #27
                Originally posted by dkasak View Post
                Dafaq, man? So you want gtk+ rewritten in a language that looks like the one you're using ( Python ), but is also Rust, and definitely not C, and fast, and stable, and ... what else exactly?
                C++.

                Originally posted by dkasak View Post
                I still don't get the reason why you don't just continue using Python. That's what you like to look at.
                I don't like to look at Python, neither to code it in.
                It is shit, I have to run my software then it crashes, then I do Ctrl+C, doesn't work, Ctrl+D doesn't work, Ctrl+Z then I'm back on the shell. Try to run it again, oh it doesn't work, I have to kill the Python process. Now I can run it again.
                No type checking, bugs creep in easily, no interfaces. No compille-time checking, so you have to run the application and interact with it until it crashes so you can fix things.
                I code in Python because the alternative would be C or Vala.

                I would prefer to code in C# on .NET Core but unfortunately there seems to be no GObject Introspection bindings.
                It would make it so much easier to architect a clean design and save me so much time to have all these static typing and compile-time checks. It would be so much more productive.

                Originally posted by dkasak View Post
                That's at least a more reasonable position. What's the bugzilla link for your GtkPaned issues? What's your opposition to writing your own container widget? I've written some custom widgets - mainly custom cell renderers for treeviews. It's not so hard. Maybe a container widget might be more challenging?
                Because I shouldn't have to write a custom widget for this.

                Comment


                • #28
                  Originally posted by uid313 View Post
                  C++.
                  What about gtkmm? I've never used it myself, I've only really used C directly with gtk.

                  Originally posted by uid313 View Post
                  I would prefer to code in C# on .NET Core but unfortunately there seems to be no GObject Introspection bindings.
                  It would make it so much easier to architect a clean design and save me so much time to have all these static typing and compile-time checks. It would be so much more productive.
                  I assume gtk# is lacking? Granted, my experience with C# is limited, let alone gtk#.

                  Comment


                  • #29
                    Originally posted by uid313 View Post
                    Python is object-oriented but it uses this weird OO.
                    It does full multiple inheritance, which is supported by only one other language I know of—C++.

                    I often mistakenly write "new" when coding Python. Maybe it would be better if Python used "new", most other language seem to do it that way.
                    By “most other language”, do you mean “Java”?

                    Because C++ only uses “new” for objects created on the heap, not for ones on the stack. Java (like Python) puts all objects on the heap. So you would think the word “new” would be redundant there, would it not? Yet Java requires the word “new” for object creation. Why?

                    Pretty much all object-oriented languages supports properties.
                    You can’t do them in C++ or Java. Or C#, as far as I know.

                    Comment


                    • #30
                      Originally posted by Mystro256 View Post
                      What about gtkmm? I've never used it myself, I've only really used C directly with gtk.

                      I assume gtk# is lacking? Granted, my experience with C# is limited, let alone gtk#.
                      I haven't tried gtkmm.

                      Gtk# is for .NET and is an outdated library.
                      I was requesting GObject Introspection for .NET Core which is the new .NET, and with GI you could have latest GTK and other libraries.

                      Comment

                      Working...
                      X