General

What features would you most like to see in Delphi?

The feature I'd most like to see in Delphi is....

You've used all your votes and won't be able to post a new idea, but you can still search and comment on existing ideas.

There are two ways to get more votes:

  • When an admin closes an idea you've voted on, you'll get your votes back from that idea.
  • You can remove your votes from an open idea you support.
  • To see ideas you have already voted on, select the "My feedback" filter and select "My open ideas".
(thinking…)

Enter your idea and we'll search to see if someone has already suggested it.

If a similar idea already exists, you can support and comment on it.

If it doesn't exist, you can post your idea so others can support it.

Enter your idea and we'll search to see if someone has already suggested it.

  1. Add the features that Spring4D, natively on VLC and Firmonkey. Example: Filters in for..in, TEnumerator improved ... etc.

    Add the features that Spring4D, natively on VLC and Firmonkey.
    Example: Filters in for..in, TEnumerator improved ... etc.

    9 votes
    Vote
    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      You have left! (?) (thinking…)
      0 comments  ·  Flag idea as inappropriate…  ·  Admin →
    • Multi-Platform support in Web Documentation

      Due to the new target platforms, documentation web site should reflect each and every object in which platform it is supported or not supported. Or partially supported. Since there are too many objects it might be reasonable to start with units high level documentation and finish with singular methods.

      a simple table for each object might be put on top of each documentation page (either horizontal or vertical)

      Win32, Win64, OsX, Android, Ios
      full - partial - none - full - full

      3 votes
      Vote
      Sign in
      Check!
      (thinking…)
      Reset
      or sign in with
      • facebook
      • google
        Password icon
        I agree to the terms of service
        Signed in as (Sign out)
        You have left! (?) (thinking…)
        0 comments  ·  Flag idea as inappropriate…  ·  Admin →
      • Recommended Setup/Deployment tool

        Older versions of IDE were shipped with InstallShield (Express edition) so it was possible to create an installer for my application.
        This is now missing (however ISO image is huuuge!)

        Please add some (3rd party) tool for creating installations (like RAD & Installer http://rad-installer.com/ or any other).

        8 votes
        Vote
        Sign in
        Check!
        (thinking…)
        Reset
        or sign in with
        • facebook
        • google
          Password icon
          I agree to the terms of service
          Signed in as (Sign out)
          You have left! (?) (thinking…)
          0 comments  ·  Flag idea as inappropriate…  ·  Admin →
        • Drastic changes in the translator admire those who travel to Delphi

          Drastic changes in the translator admire those who travel to Delphi
          Or to encourage the transition to Delphi
          This policy pursued by Microsoft

          procedure TFrmMain.Panel1Click(Sender: TObject);
          {

          }

          Or as

          procedure TFrmMain.Panel1Click(Sender: TObject);

          end sub

          procedure TFrmMain.Panel1Click(Sender: TObject);
          {
          var i:Integer;

          }

          procedure TFrmMain.Panel1Click(Sender: TObject);
          {

          var i:Integer;
          for i :=0 to 100
          {
          // do anything
          }

          }

          procedure TFrmMain.Panel1Click(Sender: TObject);
          {

          if i=1 then
          {

          }

          }

          try

          finally

          end;

          try

          end try

          finally

          end;

          7 votes
          Vote
          Sign in
          Check!
          (thinking…)
          Reset
          or sign in with
          • facebook
          • google
            Password icon
            I agree to the terms of service
            Signed in as (Sign out)
            You have left! (?) (thinking…)
            0 comments  ·  Flag idea as inappropriate…  ·  Admin →
          • BIDI support for FMX

            Support BIDI in FMX

            9 votes
            Vote
            Sign in
            Check!
            (thinking…)
            Reset
            or sign in with
            • facebook
            • google
              Password icon
              I agree to the terms of service
              Signed in as (Sign out)
              You have left! (?) (thinking…)
              0 comments  ·  Flag idea as inappropriate…  ·  Admin →
            • TalkBack for Android

              TalkBack support for Android

              7 votes
              Vote
              Sign in
              Check!
              (thinking…)
              Reset
              or sign in with
              • facebook
              • google
                Password icon
                I agree to the terms of service
                Signed in as (Sign out)
                You have left! (?) (thinking…)
                1 comment  ·  Flag idea as inappropriate…  ·  Admin →
              • Full BiDi (RightToLeft) support for iOS and Android

                Full BiDi (RightToLeft) support for iOS and Android.

                9 votes
                Vote
                Sign in
                Check!
                (thinking…)
                Reset
                or sign in with
                • facebook
                • google
                  Password icon
                  I agree to the terms of service
                  Signed in as (Sign out)
                  You have left! (?) (thinking…)
                  0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                • Better "Cloud" documentation

                  The Cloud documentation on the wiki ( http://docwiki.embarcadero.com/RADStudio/XE7/en/Developing_Cloud_Applications ) is scant and confusing and the Code Explorer example does not work and the code is confusing.

                  The links at the bottom of the page ( for example, Amazon Simple Queue Service Documentation (aws.amazon.com) ) take you to the Amazon page, which is not very useful. There should be a See Also section AND an External Links section.

                  I cannot work out from the wiki documentation just how to use these components. The documentation is that poor.

                  Please vote for this to be improved. I would love to have great documentation…

                  1 vote
                  Vote
                  Sign in
                  Check!
                  (thinking…)
                  Reset
                  or sign in with
                  • facebook
                  • google
                    Password icon
                    I agree to the terms of service
                    Signed in as (Sign out)
                    You have left! (?) (thinking…)
                    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                  • 64-bit support for OSX (required for new API functions including Force Touch)

                    I need an option to create 64-bit executables for OSX. This is because Apple requires 64-bit applications in order to use some new API functions. This includes support for the new Force Touch Trackpads.

                    6 votes
                    Vote
                    Sign in
                    Check!
                    (thinking…)
                    Reset
                    or sign in with
                    • facebook
                    • google
                      Password icon
                      I agree to the terms of service
                      Signed in as (Sign out)
                      You have left! (?) (thinking…)
                      0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                    • Referencing generic types in DFMs should work

                      It's impossible to reference generic descendents of TForm or TFrame inside a DFM file.

                      Something like this unfortunately doesn't work:

                      object FrameDetail: TFrameDetail<TMyDataObject>
                      end;

                      8 votes
                      Vote
                      Sign in
                      Check!
                      (thinking…)
                      Reset
                      or sign in with
                      • facebook
                      • google
                        Password icon
                        I agree to the terms of service
                        Signed in as (Sign out)
                        You have left! (?) (thinking…)
                        0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                      • Non generic interfaces should be able to contain generic methods

                        I can define a class like this:

                        TDeserializer = class
                        public
                        function Deserialize<T: IDeserializable>(SerializedObject: string): T;
                        end;

                        But I'm not able to hide this class behind an interface since that is not possible:

                        IDeserializer = interface
                        function Deserialize<T: IDeserializable>(SerializedObject: string): T;
                        end;

                        I don't see any reason why this shouldn't work.

                        5 votes
                        Vote
                        Sign in
                        Check!
                        (thinking…)
                        Reset
                        or sign in with
                        • facebook
                        • google
                          Password icon
                          I agree to the terms of service
                          Signed in as (Sign out)
                          You have left! (?) (thinking…)
                          0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                        • Let interfaces inherit from multiple interfaces

                          Unitl now it's not possible to define a interface like this:

                          IReaderAndWriter = interface(IReader, IWriter)

                          3 votes
                          Vote
                          Sign in
                          Check!
                          (thinking…)
                          Reset
                          or sign in with
                          • facebook
                          • google
                            Password icon
                            I agree to the terms of service
                            Signed in as (Sign out)
                            You have left! (?) (thinking…)
                            0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                          • Include a powerful Grid/Treeview component

                            it would be really nice if Delphi would include and support some sort of powerful grid/tree view, such as Virtual Treeview. I am currently using LMDInnovative's ElXTree component which also has virtual capabilities (important for me). This sort of component is too fundamental and important for any program to have to rely on 3rd parties for. I know LMD has no plans to support FireMonkey in the future with it and may even decide to drop or stop supporting their ElPack components. Another possibility is TurboPack which includes a virtual tree. But it would still better to have Delphi include…

                            5 votes
                            Vote
                            Sign in
                            Check!
                            (thinking…)
                            Reset
                            or sign in with
                            • facebook
                            • google
                              Password icon
                              I agree to the terms of service
                              Signed in as (Sign out)
                              You have left! (?) (thinking…)
                              1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                            • Type inference for scoped enumerations

                              If I assign a value to a variable of most simple data types I just assign a value, e.g.

                              AInteger := 1;
                              ADouble := 1;
                              AString := 'Hello';

                              etc. There's no need to specify a type:

                              AInteger := Integer.1;

                              However, with scoped enumerations commonly used especially in FireMonkey I do need to specify the type:

                              Layout1.Align := TAlignLayout.Client;

                              This is very wordy, frequently catches out newbies and means I often have to look up type names.

                              Instead the compiler should know what type I am assigning to (or passing a parameter to) and /infer/ the type of the enumeration from…

                              1 vote
                              Vote
                              Sign in
                              Check!
                              (thinking…)
                              Reset
                              or sign in with
                              • facebook
                              • google
                                Password icon
                                I agree to the terms of service
                                Signed in as (Sign out)
                                You have left! (?) (thinking…)
                                2 comments  ·  Flag idea as inappropriate…  ·  Admin →
                              • New edition of between Starter and Professional

                                New edition is Professional without Database components, or Starter with source codes.

                                10 votes
                                Vote
                                Sign in
                                Check!
                                (thinking…)
                                Reset
                                or sign in with
                                • facebook
                                • google
                                  Password icon
                                  I agree to the terms of service
                                  Signed in as (Sign out)
                                  You have left! (?) (thinking…)
                                  0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                • IDE Change Cache

                                  1. Give the user an option to auto-save difference files for each changed file at frequency chosen by the user (default to 2 minutes).
                                  1.1 The system should immediately flag if it encounters errors when auto-saving but allow all other auto-saves to proceed.
                                  1.1.1 Failure to auto-save should allow the user to choose the following options:
                                  1.1.1.1 Don't auto-save that file (valid until the file or IDE is closed)
                                  1.1.1.2 Save the file to a new location or to a new name
                                  1.1.1.3 Revert the file to its original (non-edited) state
                                  1.1.1.4 Ignore auto-save (will come up again next auto-save…

                                  2 votes
                                  Vote
                                  Sign in
                                  Check!
                                  (thinking…)
                                  Reset
                                  or sign in with
                                  • facebook
                                  • google
                                    Password icon
                                    I agree to the terms of service
                                    Signed in as (Sign out)
                                    You have left! (?) (thinking…)
                                    1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                                  • Native StackTrace Implementation

                                    Getting a StackTrace via the Exception class is currently only possible through the implementation of a third party exception logger. It would be good if EMBT implemented a native version for Delphi.

                                    19 votes
                                    Vote
                                    Sign in
                                    Check!
                                    (thinking…)
                                    Reset
                                    or sign in with
                                    • facebook
                                    • google
                                      Password icon
                                      I agree to the terms of service
                                      Signed in as (Sign out)
                                      You have left! (?) (thinking…)
                                      1 comment  ·  Flag idea as inappropriate…  ·  Admin →
                                    • Tabbed Document Interface (TDI)

                                      The current way of managing multiple documents is via tabs (like web browsers do), however I think it should be done better than a hack on MDI to change the cosmetics. It should go beyond the current MDI limitations by:

                                      1. managing child TDI forms locally to the component / parent TDI form
                                      2. allow multiple TDI parent forms in an application
                                      3. the TDI parent need not be the main form
                                      4. ribbon controls (both the native and 3rd party e.g. DevExpress) placed on the child TDI can merge onto the TDI parent form's ribbon
                                      5. the tabs can…

                                      15 votes
                                      Vote
                                      Sign in
                                      Check!
                                      (thinking…)
                                      Reset
                                      or sign in with
                                      • facebook
                                      • google
                                        Password icon
                                        I agree to the terms of service
                                        Signed in as (Sign out)
                                        You have left! (?) (thinking…)
                                        0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                      • New Generic List Syntax for parameters

                                        Currently we have open array parameters that simply place items within square brackets - simple, readable, fast. It would be nice to have syntax to do the same with generic collections. Obviously this would only be available once ARC has been implemented across all of Delphi.

                                        the syntax I propose is in the third parameter of the function call below:

                                        MyCall(Arg1, Arg2, TList<['AB', 'CD', 'EF']>);

                                        The simplest type that applies to everything in the open array of the above example is string, so the equivalent longhand for the TList constructor would be:

                                        with TList<string>.Create do
                                        for value in TStringDynArray.Create(['A', 'B',…

                                        2 votes
                                        Vote
                                        Sign in
                                        Check!
                                        (thinking…)
                                        Reset
                                        or sign in with
                                        • facebook
                                        • google
                                          Password icon
                                          I agree to the terms of service
                                          Signed in as (Sign out)
                                          You have left! (?) (thinking…)
                                          0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                        • Multiple monitor and non-embedded form support in the IDE

                                          Prior to Firemonkey, the IDE supported forms being able to break away from code and being able to move forms or code to a second monitor. This enhanced and reduced development. Because Firemonkey doesn't support this, the feature was removed.
                                          At the least, there could be auto detection for the project to allow this in VCL mode. Or expand the Debug/development desktops to be VCL Debug / VCL development and same for FM.

                                          5 votes
                                          Vote
                                          Sign in
                                          Check!
                                          (thinking…)
                                          Reset
                                          or sign in with
                                          • facebook
                                          • google
                                            Password icon
                                            I agree to the terms of service
                                            Signed in as (Sign out)
                                            You have left! (?) (thinking…)
                                            0 comments  ·  Flag idea as inappropriate…  ·  Admin →
                                          ← Previous 1 3 4 5 8 9
                                          • Don't see your idea?

                                          General

                                          Feedback and Knowledge Base