Git Product home page Git Product logo

Comments (15)

lainz avatar lainz commented on May 23, 2024 1

Ok, it worth reporting it in the bugtracker, so it can be fixed, can you add some screenshot so I can share there?

from bgracontrols.

Alexey-T avatar Alexey-T commented on May 23, 2024

You can use https://github.com/Alexey-T/ATSynEdit in your package maybe.

from bgracontrols.

lainz avatar lainz commented on May 23, 2024

Hi, that looks really advanced. It can be used like a normal edit control in some way?

from bgracontrols.

Alexey-T avatar Alexey-T commented on May 23, 2024

Yes, it has TATEdit which is one-line version (child) of TATSynEdit.

from bgracontrols.

lainz avatar lainz commented on May 23, 2024

Ok thanks. For sure having that control into account, we only need to implement the painting (like rounded borders and gradient fill for example).

from bgracontrols.

circular17 avatar circular17 commented on May 23, 2024

So I suppose there is a drawer that can be customized? That would be great to have a beautiful syntax highlighted editor. Though to make a TEdit seems a bit much. Rather a TSynEdit?

Also I wonder if it handles unicode stuff, like non spacing markers, right-to-left script and embedding. This is handled by the multiline layout in BGRATextBidi. If you look at the following example, you will see that this could be made a new component by plugging it in a TBCStyleCustomControl (the control need to be focusable).
https://github.com/bgrabitmap/bgrabitmap/tree/master/test/testbiditext2

I am thinking maybe we can do a TBCEdit with a Multiline boolean property based on BGRATextBidi. Making it single line is just about filtering out characters that split lines/paragraphs.

from bgracontrols.

lainz avatar lainz commented on May 23, 2024

I'm not sure if theming a full syntax highlighter will be a good idea, since anyways modern code editors doesn't use gradients and rounded borders, it's always plain colors.

But yes it will be good to make an edit control, and if we can do 2 different ones will be good too, one with synedit and other with bcstylecustomcontrol to have more options, doesn't matter having 2 different controls, anyways for example we have a lot of button controls to choose from, and every single one is useful for something.

from bgracontrols.

lainz avatar lainz commented on May 23, 2024

Attached a project that uses a TBCPanel and a TEdit.
EditControl.zip

You can use a plain color for the background of the TEdit and of the TBCPanel.
bgraedit

That is how it looks under Windows. How it looks under Linux and macOS, please test, and if it looks ok we can make a simple component including that template, like we did for BCCombobox that's just a button and a listbox 👍

from bgracontrols.

lainz avatar lainz commented on May 23, 2024

Hi, anyone tested it, looks good on Linux and macOS?

from bgracontrols.

circular17 avatar circular17 commented on May 23, 2024

It works on MacOS. Though the cursor is black so can't really see it on the dark background.

from bgracontrols.

lainz avatar lainz commented on May 23, 2024

Ok, so it doesn't work well on all platforms..

from bgracontrols.

circular17 avatar circular17 commented on May 23, 2024

Yeah but it is more like a bug of TEdit with custom background color

from bgracontrols.

circular17 avatar circular17 commented on May 23, 2024

Reported: https://bugs.freepascal.org/view.php?id=38033

from bgracontrols.

lainz avatar lainz commented on May 23, 2024

Thanks =)

from bgracontrols.

lainz avatar lainz commented on May 23, 2024

Hope the bug is fixed soon. I think we don't need an edit, just using a BCPanel as border and a regular edit looks fine for me:
Captura de pantalla 2020-11-28 224409

So I close this, if at some time we need it for some other reason, we can try coding that.

from bgracontrols.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.