Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. My (very preliminary) Win8 + WinRT impression!

My (very preliminary) Win8 + WinRT impression!

Scheduled Pinned Locked Moved The Lounge
c++wpfcomdesignperformance
24 Posts 12 Posters 2 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Pete OHanlon

    Super Lloyd wrote:

    But.. I hate this fullscreen mode! I have a 26" screen for god sake, why a window with just, say, a button and a text box need 26"? Why?

    Do you really want me to answer that in some mindnumbing depth, or are you just venting?

    Forgive your enemies - it messes with their heads

    My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

    S Offline
    S Offline
    Super Lloyd
    wrote on last edited by
    #4

    Although... I'm not sure what you meant so... please, do reply, so that I can understand what was in the back of your mind!!!

    A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

    1 Reply Last reply
    0
    • S Super Lloyd

      Nah, I was just scared.... I recovered my mind since then. It's pretty obvious it can't be like that in the final release. Currently VS11 doesn't let you create normal (windowed) app, it's pretty obvious it'll be there in the final release. They just want people to play with fullscreen app! I guess I can humor them, it shouldn't be too hard to make turn my fullscreen app into a windowed one, I'll just have to change the top level container...

      A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

      P Offline
      P Offline
      Pete OHanlon
      wrote on last edited by
      #5

      OK, well you have to remember that WinRT is meant to be for what are called "immersive" applications in MS speak. More importantly, the surface has to be entirely WinRT - it does not support GDI, so airspace issues are avoided altogether by requiring these applications to be full screen. This also avoids performance penalties and conforms to one of the underlying principals, that Metro apps are full screen - consistent with the behaviour of Metro on WP7. If you want to create normal style desktop applications, you are going to have to fall back to the standard windows tooling.

      Forgive your enemies - it messes with their heads

      My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

      S F 2 Replies Last reply
      0
      • P Pete OHanlon

        OK, well you have to remember that WinRT is meant to be for what are called "immersive" applications in MS speak. More importantly, the surface has to be entirely WinRT - it does not support GDI, so airspace issues are avoided altogether by requiring these applications to be full screen. This also avoids performance penalties and conforms to one of the underlying principals, that Metro apps are full screen - consistent with the behaviour of Metro on WP7. If you want to create normal style desktop applications, you are going to have to fall back to the standard windows tooling.

        Forgive your enemies - it messes with their heads

        My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

        S Offline
        S Offline
        Super Lloyd
        wrote on last edited by
        #6

        Mm... I think this is more a "pre-alpha" issue. I did read about the C++ COM improvement they made for VS11. Look at that: http://msdn.microsoft.com/en-us/library/windows/apps/hh454076(v=VS.85).aspx[^] What I'm hoping for is a WPF like API (WinRT!) which is much faster! And can easily mix and match normal "WPF drawing" and DirectX content! Also, for some reason didn't like Managed C++ (IIRC because it was quite cumbersome to write a normal WinForm/WPF GUI app with little benefit) but this new version of C++ seems to have more speed and less clutter to do just that! :)

        A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

        P 1 Reply Last reply
        0
        • S Super Lloyd

          Mm... I think this is more a "pre-alpha" issue. I did read about the C++ COM improvement they made for VS11. Look at that: http://msdn.microsoft.com/en-us/library/windows/apps/hh454076(v=VS.85).aspx[^] What I'm hoping for is a WPF like API (WinRT!) which is much faster! And can easily mix and match normal "WPF drawing" and DirectX content! Also, for some reason didn't like Managed C++ (IIRC because it was quite cumbersome to write a normal WinForm/WPF GUI app with little benefit) but this new version of C++ seems to have more speed and less clutter to do just that! :)

          A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

          P Offline
          P Offline
          Pete OHanlon
          wrote on last edited by
          #7

          Super Lloyd wrote:

          Mm... I think this is more a "pre-alpha" issue.

          Sorry, but it's not. WinRT apps are fullscreen apps. This is the WinDiv approach I'm afraid.

          Forgive your enemies - it messes with their heads

          My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

          S 1 Reply Last reply
          0
          • P Pete OHanlon

            Super Lloyd wrote:

            Mm... I think this is more a "pre-alpha" issue.

            Sorry, but it's not. WinRT apps are fullscreen apps. This is the WinDiv approach I'm afraid.

            Forgive your enemies - it messes with their heads

            My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

            S Offline
            S Offline
            Super Lloyd
            wrote on last edited by
            #8

            Mm.... in which case the next best thing to hope is that they improved the WPF perf on par with WinRT, that we can still use the new C++ / COM extension with normal .NET class and that they have improved the DirectX interoperability with WPF! :) (Speaking of which SharpDX is quite good but I have some flickering when resizing my DX apps, which I'd like to get rid off!)

            A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

            1 Reply Last reply
            0
            • S Super Lloyd

              I think I will finally able to write C++ app! I love how they improved COM and it feels like normal C++ and you can write UI in XAML and use databinding!! I love the performance! But.. I hate this fullscreen mode! I have a 26" screen for god sake, why a window with just, say, a button and a text box need 26"? Why?

              A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

              N Offline
              N Offline
              Nish Nishant
              wrote on last edited by
              #9

              Before you get all excited C++/Xaml is WinRT only. Means you can't use it for normal desktop apps or for WPF/SL. And WinRT apps will always be fullscreen / immersive. You can have 2+ apps side-by-side though but together they will still be fulscreen.

              Regards, Nish


              My technology blog: voidnish.wordpress.com

              V M 2 Replies Last reply
              0
              • S Super Lloyd

                I think I will finally able to write C++ app! I love how they improved COM and it feels like normal C++ and you can write UI in XAML and use databinding!! I love the performance! But.. I hate this fullscreen mode! I have a 26" screen for god sake, why a window with just, say, a button and a text box need 26"? Why?

                A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

                N Offline
                N Offline
                Nemanja Trifunovic
                wrote on last edited by
                #10

                Super Lloyd wrote:

                and it feels like normal C++

                :~ That looks like C++/CLI, not normal C++, although apparently we'll be able to write WinRT code in standard C++ as well.

                utf8-cpp

                N P 2 Replies Last reply
                0
                • N Nemanja Trifunovic

                  Super Lloyd wrote:

                  and it feels like normal C++

                  :~ That looks like C++/CLI, not normal C++, although apparently we'll be able to write WinRT code in standard C++ as well.

                  utf8-cpp

                  N Offline
                  N Offline
                  Nish Nishant
                  wrote on last edited by
                  #11

                  Nemanja Trifunovic wrote:

                  although apparently we'll be able to write WinRT code in standard C++ as well.

                  Provided you are fine with making all those COM calls yourself. I'd think it's far easier to use a syntax that is already familiar. I reckon they figured not many use it for managed code, so they may as well use the same parsers and stuff for native code :-)

                  Regards, Nish


                  My technology blog: voidnish.wordpress.com

                  R 1 Reply Last reply
                  0
                  • N Nish Nishant

                    Nemanja Trifunovic wrote:

                    although apparently we'll be able to write WinRT code in standard C++ as well.

                    Provided you are fine with making all those COM calls yourself. I'd think it's far easier to use a syntax that is already familiar. I reckon they figured not many use it for managed code, so they may as well use the same parsers and stuff for native code :-)

                    Regards, Nish


                    My technology blog: voidnish.wordpress.com

                    R Offline
                    R Offline
                    Rama Krishna Vavilala
                    wrote on last edited by
                    #12

                    Nishant Sivakumar wrote:

                    I'd think it's far easier to use a syntax that I am already familiar.

                    FTFY! Not many people use c++/cli (last time I counted it was only 1 person using C++/CLI) ):) COM programmers still prefer to do it the COM way which feels more C++.

                    N 1 Reply Last reply
                    0
                    • R Rama Krishna Vavilala

                      Nishant Sivakumar wrote:

                      I'd think it's far easier to use a syntax that I am already familiar.

                      FTFY! Not many people use c++/cli (last time I counted it was only 1 person using C++/CLI) ):) COM programmers still prefer to do it the COM way which feels more C++.

                      N Offline
                      N Offline
                      Nish Nishant
                      wrote on last edited by
                      #13

                      Rama Krishna Vavilala wrote:

                      COM programmers still prefer to do it the COM way which feels more C++.

                      Well eventually it's a choice. People can still use standard C++/COM or use C++/CX and cut down development time big time.

                      Regards, Nish


                      My technology blog: voidnish.wordpress.com

                      R 1 Reply Last reply
                      0
                      • N Nish Nishant

                        Rama Krishna Vavilala wrote:

                        COM programmers still prefer to do it the COM way which feels more C++.

                        Well eventually it's a choice. People can still use standard C++/COM or use C++/CX and cut down development time big time.

                        Regards, Nish


                        My technology blog: voidnish.wordpress.com

                        R Offline
                        R Offline
                        Rama Krishna Vavilala
                        wrote on last edited by
                        #14

                        Nishant Sivakumar wrote:

                        C++/CX and cut down development time big time.

                        The problem with the new syntax is that people have to learn it. I still get confused with sometimes with the ^ syntax. Whereas in standard COM you do not have to do anything special. You get smart pointers, you know how to call a method and with smart types )_bstr_t,_variant_t things gets even more simple. The only thing available in the new syntax is . instead of ->. That may cut development time slightly as you have to type only 1 character instead of 2. Apart from that I do not see any other benefit.

                        J 1 Reply Last reply
                        0
                        • N Nish Nishant

                          Before you get all excited C++/Xaml is WinRT only. Means you can't use it for normal desktop apps or for WPF/SL. And WinRT apps will always be fullscreen / immersive. You can have 2+ apps side-by-side though but together they will still be fulscreen.

                          Regards, Nish


                          My technology blog: voidnish.wordpress.com

                          V Offline
                          V Offline
                          Vark111
                          wrote on last edited by
                          #15

                          Nishant Sivakumar wrote:

                          You can have 2+ apps side-by-side though but together they will still be fulscreen.

                          How does that work if my full-screen app needs all 1024x768 (or whatever) pixels to display itself?

                          N 1 Reply Last reply
                          0
                          • V Vark111

                            Nishant Sivakumar wrote:

                            You can have 2+ apps side-by-side though but together they will still be fulscreen.

                            How does that work if my full-screen app needs all 1024x768 (or whatever) pixels to display itself?

                            N Offline
                            N Offline
                            Nish Nishant
                            wrote on last edited by
                            #16

                            Vark111 wrote:

                            How does that work if my full-screen app needs all 1024x768 (or whatever) pixels to display itself?

                            Xaml usage recommends not specifying pixels and instead using relative sizes/alignments. That way the UI auto-resizes as required.

                            Regards, Nish


                            My technology blog: voidnish.wordpress.com

                            V 1 Reply Last reply
                            0
                            • N Nish Nishant

                              Vark111 wrote:

                              How does that work if my full-screen app needs all 1024x768 (or whatever) pixels to display itself?

                              Xaml usage recommends not specifying pixels and instead using relative sizes/alignments. That way the UI auto-resizes as required.

                              Regards, Nish


                              My technology blog: voidnish.wordpress.com

                              V Offline
                              V Offline
                              Vark111
                              wrote on last edited by
                              #17

                              Gotcha

                              1 Reply Last reply
                              0
                              • N Nemanja Trifunovic

                                Super Lloyd wrote:

                                and it feels like normal C++

                                :~ That looks like C++/CLI, not normal C++, although apparently we'll be able to write WinRT code in standard C++ as well.

                                utf8-cpp

                                P Offline
                                P Offline
                                Pete OHanlon
                                wrote on last edited by
                                #18

                                Nemanja Trifunovic wrote:

                                apparently we'll be able to write WinRT code in standard C++ as well

                                I'm not sure where you've read this. AFAIK, you have to conform to the CX format to work with WinRT - you will still be able to use libraries such as boost, but you have to use this syntax for actual WinRT libraries if you want to actually have your code "Activatable".

                                Forgive your enemies - it messes with their heads

                                My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                                S 1 Reply Last reply
                                0
                                • S Super Lloyd

                                  I think I will finally able to write C++ app! I love how they improved COM and it feels like normal C++ and you can write UI in XAML and use databinding!! I love the performance! But.. I hate this fullscreen mode! I have a 26" screen for god sake, why a window with just, say, a button and a text box need 26"? Why?

                                  A train station is where the train stops. A bus station is where the bus stops. On my desk, I have a work station.... _________________________________________________________ My programs never have bugs, they just develop random features.

                                  C Offline
                                  C Offline
                                  CLaurin
                                  wrote on last edited by
                                  #19

                                  I want to make my app work across all win8 form factors and I'm fine with touch-first/metro as a paradigm. But I'm concerned how my app will work on desktop environments where desktop apps are the norm. Can someone see my metro app on the screen next to multiple desktop apps? What I really fear is that I will have to write 2 separate apps, one for metro and one for desktop. It seems I won't be able to combine the formats into one executable that auto selects (or even offers the user an option) to run as metro or desktop. How does task manager really work? I understand that non-visible metro apps are suspended. What about desktop apps? Do they get suspended when metro apps are running? Are there 2 different task managers? One for metro, one for desktop? Is win8 a seamless experience from touchpad to desktop? It seems desktop apps on the touchpad will be second class... as they should be. But it seems metro will be second class on my desktop... which shouldn't be the case. Maybe this is why Hyper-v is avail on win8 client. I can run Win8 as a vm on my Win8 pc. I'll run metro stuff in the vm and desktop stuff on the host.

                                  modified on Friday, September 16, 2011 9:35 AM

                                  1 Reply Last reply
                                  0
                                  • P Pete OHanlon

                                    OK, well you have to remember that WinRT is meant to be for what are called "immersive" applications in MS speak. More importantly, the surface has to be entirely WinRT - it does not support GDI, so airspace issues are avoided altogether by requiring these applications to be full screen. This also avoids performance penalties and conforms to one of the underlying principals, that Metro apps are full screen - consistent with the behaviour of Metro on WP7. If you want to create normal style desktop applications, you are going to have to fall back to the standard windows tooling.

                                    Forgive your enemies - it messes with their heads

                                    My blog | My articles | MoXAML PowerToys | Mole 2010 - debugging made easier - my favourite utility

                                    F Offline
                                    F Offline
                                    Fabio Franco
                                    wrote on last edited by
                                    #20

                                    Pete O'Hanlon wrote:

                                    by requiring these applications to be full screen

                                    I wonder how this will impact tasks that require one to look at two application at the same time. Will this ever allow this new approach to be the only? How is this gonna be in multi monitor environments? I still need to see this for myself, but I see problems of a full screen only on some scenarios. A phone and a tablet? ok, but on a desktop? Maybe not always.

                                    "To alcohol! The cause of, and solution to, all of life's problems" - Homer Simpson

                                    A 1 Reply Last reply
                                    0
                                    • N Nish Nishant

                                      Before you get all excited C++/Xaml is WinRT only. Means you can't use it for normal desktop apps or for WPF/SL. And WinRT apps will always be fullscreen / immersive. You can have 2+ apps side-by-side though but together they will still be fulscreen.

                                      Regards, Nish


                                      My technology blog: voidnish.wordpress.com

                                      M Offline
                                      M Offline
                                      Member 96
                                      wrote on last edited by
                                      #21

                                      Nishant Sivakumar wrote:

                                      And WinRT apps will always be fullscreen

                                      Huh, missed that somehow in all the hoopla. I actually *like* that idea, non maximized windows drive me batty when I see them on other people's pc's while they are trying to work in some kind of tiny window.


                                      There is no failure only feedback

                                      1 Reply Last reply
                                      0
                                      • R Rama Krishna Vavilala

                                        Nishant Sivakumar wrote:

                                        C++/CX and cut down development time big time.

                                        The problem with the new syntax is that people have to learn it. I still get confused with sometimes with the ^ syntax. Whereas in standard COM you do not have to do anything special. You get smart pointers, you know how to call a method and with smart types )_bstr_t,_variant_t things gets even more simple. The only thing available in the new syntax is . instead of ->. That may cut development time slightly as you have to type only 1 character instead of 2. Apart from that I do not see any other benefit.

                                        J Offline
                                        J Offline
                                        James Lonero
                                        wrote on last edited by
                                        #22

                                        The new ^ reminds me of pointers in Pascal. Ahh, the old days. C# is way more fun.

                                        1 Reply Last reply
                                        0
                                        • F Fabio Franco

                                          Pete O'Hanlon wrote:

                                          by requiring these applications to be full screen

                                          I wonder how this will impact tasks that require one to look at two application at the same time. Will this ever allow this new approach to be the only? How is this gonna be in multi monitor environments? I still need to see this for myself, but I see problems of a full screen only on some scenarios. A phone and a tablet? ok, but on a desktop? Maybe not always.

                                          "To alcohol! The cause of, and solution to, all of life's problems" - Homer Simpson

                                          A Offline
                                          A Offline
                                          Adar Wesley
                                          wrote on last edited by
                                          #23

                                          Metro applications can be docked one next to the other, one application docked to the right and the other docked to the left, so you can see both at the same time.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups