Announcement

Collapse
No announcement yet.

No More DECLARES! MACROS 12 Levels - what are your best features?

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

  • No More DECLARES! MACROS 12 Levels - what are your best features?

    What are the new features, you like most?
    Let me start:

    I don't know how many of you have already seen the Online help and realized, that we do not have to DECLARE everything, when its not in the right Order.

    No more DECLARES needed for this!

    And 12 Levels of MACRO / INCLUDE nesting!

    And then ... just taking one out

    #INCLUDE ONCE - prevents includes from beeing included twice
    #OPTIMIZE - just recompile and its perfectly ALIGNED (faster).

    Also the comple ASM Mnemonics are in now!

    I think these are my favourite new features besides the Objects!

  • #2
    As it seems, no longer the need for variants back and forth for object call
    Com server made very easy(!)
    Classes in general.. (with CONSTRUCTOR,DESTRUCTOR)
    Return value for DDT extended.
    Open file and browse for folder.
    Clipboard
    Imagelist(!)
    Acode handles different formats, handy
    Shell return value.
    hellobasic

    Comment


    • #3
      Let's not forget Jose's new includes.
      Several are com based and will bring so much more functionality.
      At least in more easy to use way.
      hellobasic

      Comment


      • #4
        One of the features that is significant for me is the improved printing from the IDE. I won't have to file so many pages under G, those that I never labeled.

        Doesn't seem like much, but it's going to be a boon for me.
        Rod
        In some future era, dark matter and dark energy will only be found in Astronomy's Dark Ages.

        Comment


        • #5
          As someone who prefers to use the DDT statements over direct API calls, I'm very pleased to see that the new DDT extensions seem to cover 99% of the cases where I have had to revert to API calls, even common dialogs!
          - LJ

          Comment


          • #6
            These are not DDT specific functions.
            DISPLAY OPENFILE for example is not related to DDT.
            ISWIN is not related to DDT.

            CONTROL ADD is related and that is unfortunate.
            If the callback option is not used i assume it's valid for SDK windows as well but then, it's specified for DDT only.

            What is *very* unfortunate are calls like: COMBOBOX Add
            The help says "Handle of the dialog that owns the combobox."
            And the See also part has a link to DDT.
            I am pretty sure it can be used with SDK but it's not specified we could.
            Maybe this can be clarified in a future help that it can (or not)
            hellobasic

            Comment


            • #7
              Well, all seems very very ... I have no words.

              Anyhow:
              http://www.powerbasic.com/support/he...astatement.htm
              http://www.powerbasic.com/support/he..._functions.htm

              This will open the possibility to create DDT callbacks also for notification messages and not only for %WM_COMMAND.
              The new CB.xxxx are very powerful.

              Eros
              Last edited by Eros Olmi; 13 Aug 2008, 07:49 AM.
              thinBasic programming language
              Win10 64bit - 8GB Ram - i7 M620 2.67GHz - NVIDIA Quadro FX1800M 1GB

              Comment


              • #8
                And besides all then new COM ... so much more

                The new DDT extensions for "list" type controls have another boon for DDT users. This is that many of the formerly API only calls have now been wrapped, judiciously selecting those that most would anticipate using. And, here's the inherent advantage, all are base 1. So if you have been using a mix of DDT and API for your GUI management, trying to keep the base 0 and base 1 indexing straight, now it is all base 1, if you can accomplish your mission using the vastly expanded DDT for LISTBOX, COMBOBOX, LISTVIEW, TREEVIEW command set. Likely for many they will be able to accomplish more GUI programming using only DDT.

                Many of us will really like the simplified DDT for TAB controls, lots of built in help that makes TAB controls much easier, with some real added value, in the compiler, that helps manage them in a GUI much more automatically.

                Then there is also the addition of in-language IMAGELIST, PROGRESSBAR, STATUSBAR, TOOLBAR management without needing to go back and forth between DDT and API calls.

                Now lest it escape notice, Bob and PB have added far better support in DDT for individual control CALLBACKS. Maybe you already noticed that the new #MESSAGE metastatement sets which windows messages %WM_COMMAND and/or %WM_NOTIFY will be sent to the control callback. This does not mean however that you might not need to use sub-classing to go beyond those messages, such as for key trapping.

                Other features that add power include the EXE statement that concisely replaces a series of API calls we previously used to get the path\filename of the executing program ... usually so we could derive and form path\filenames for supporting and output files.

                PATHSCAN$ and PATHNAME$ should prove to be really useful for many programs, but lest we forget COMMAND$ has been improved for easy retrieval of command line arguments.

                Another big improvement is in the area of FONTs. While existing FONT statements in GRAPHIC and XPRINT continue to be supported in these versions, there is a the new command set in the language for adding and releasing fonts. No need to resort to mixing API for this GUI need.

                Many of us may recall there have been several threads over the years about the DIR$ functionality, now we can see how it has received a real PB improvement with the new ONLY keyword. You also might checkout the TO clause there and muse on how you would use it.

                Some have mentioned the expanded ASM and have you noticed the new TIX function ... ah yes a built in CPU cycle counter.

                This beta cycle has been long to be sure, and as some have noticed here, the expansion and improvement of PB BASIC is one of, if not the largest, product upgrade ever. When you get your copy, you may want to look at the DDT and COM Samples since many have been revised using some of the PBWin 9 improvements.

                This thread started off with attention to the new forward referencing (internal procedures) compiler. Seems like I've seen MCM and others asking for that for a few years. But for purists ... you can still DECLARE internal procedures before you use them
                Rick Angell

                Comment


                • #9
                  Thats just what i waned to see in this Post:
                  Many people, many different interests.

                  One of the features that is significant for me is the improved printing from the IDE. I won't have to file so many pages under G, those that I never labeled.
                  Hehe, I have not even noticed that one

                  And the

                  This will open the possibility to create DDT callbacks also for notification messages and not only for %WM_COMMAND.
                  The new CB.xxxx are very powerful.
                  may be nice to have, but I did never dream from this, and maybe also did not know that I need it.

                  So we see, there is something in for mostly everybody.

                  About this

                  No more DECLARES needed for this!
                  And 12 Levels of MACRO / INCLUDE nesting
                  #INCLUDE ONCE - prevents includes from beeing included twice
                  Complete ASM Command-Set
                  I can say, that we - as users - can not do (much/)anything about it if this would not be built into the compiler. We could just make workarounds.
                  Thats why i am happy its now in there!

                  While a "ah yes a built in CPU cycle counter." etc. is also nice to have, but this is nothing we did not have before.
                  It was just two SUB's. Thats a important difference for me about new features. Those things we can not implement ourselves.
                  Last edited by Theo Gottwald; 13 Aug 2008, 01:51 PM.

                  Comment

                  Working...
                  X