#deluxedraw — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #deluxedraw, aggregated by home.social.
-
Running on Linux too.
-
Running on Linux too.
-
I extracted the Sinclair font from a Spectrum ROM and generated a .bdf file from it that I can use with Deluxe Draw and any other program that supports the bdf format 🙂
UPDATE:
Here is my updated repo with sinclair.bdf and many other fonts.
https://github.com/ha1tch/bdf-fonts/tree/main -
I extracted the Sinclair font from a Spectrum ROM and generated a .bdf file from it that I can use with Deluxe Draw and any other program that supports the bdf format 🙂
UPDATE:
Here is my updated repo with sinclair.bdf and many other fonts.
https://github.com/ha1tch/bdf-fonts/tree/main -
guiscii
Draw UI in plain text → get working Deluxe UI widgets.
Introducing guiscii: Look mum, no XML!!! Refocusing now to improve the GUI code so I can ship proper UIs in my tools.
-
guiscii
Draw UI in plain text → get working Deluxe UI widgets.
Introducing guiscii: Look mum, no XML!!! Refocusing now to improve the GUI code so I can ship proper UIs in my tools.
-
Studying palette icons in Deluxe Paint and Photoshop. It's about time that Deluxe Draw gets rid of its text-based buttons.
-
Studying palette icons in Deluxe Paint and Photoshop. It's about time that Deluxe Draw gets rid of its text-based buttons.
-
This is another prototype where I'm putting together some of the earliest optimised canvas drawing I had written for the first Deluxe Draw version (last month), I replaced the bespoke hardcoded GUI elements with Deluxe UI widgets (newly written, in the last couple of weeks), and re-implemented parts of (last week's) ZX Draw code example I had written for Deluxe UI.
In theory, if this experiment succeeds, I should be able to deliver a Deluxe Draw that is able to work with both, modern layered pixmap painting, and with old ZX Spectrum mode painting. And with Deluxe UI running unmodified on Mac, Linux, and Windows!
So far, so good!
#ZXSpectrum #Spectrum #Speccy #DeluxeDraw #DeluxeUI #pixelart #golang #foss
-
This is another prototype where I'm putting together some of the earliest optimised canvas drawing I had written for the first Deluxe Draw version (last month), I replaced the bespoke hardcoded GUI elements with Deluxe UI widgets (newly written, in the last couple of weeks), and re-implemented parts of (last week's) ZX Draw code example I had written for Deluxe UI.
In theory, if this experiment succeeds, I should be able to deliver a Deluxe Draw that is able to work with both, modern layered pixmap painting, and with old ZX Spectrum mode painting. And with Deluxe UI running unmodified on Mac, Linux, and Windows!
So far, so good!
#ZXSpectrum #Spectrum #Speccy #DeluxeDraw #DeluxeUI #pixelart #golang #foss
-
Not much to report. Working on a new attempt to reconcile the Deluxe Draw prototype I had written earlier with the second prototype of a ZX Spectrum painting program, fusing both into a single concept. I made a little progress today!
-
Not much to report. Working on a new attempt to reconcile the Deluxe Draw prototype I had written earlier with the second prototype of a ZX Spectrum painting program, fusing both into a single concept. I made a little progress today!
-
Also, this is the Deluxe UI demo program in the 'examples' folder called "w98", which aims to offer a custom theme that looks like Windows 98, this time running on Linux too.
-
Also, this is the Deluxe UI demo program in the 'examples' folder called "w98", which aims to offer a custom theme that looks like Windows 98, this time running on Linux too.
-
Deluxe UI with ZX Draw on Linux, and a native host OS dialog box that actually works!
Ensuring that the toolkit works across all three major desktop GUIs may not look like much if you're coming from Electron-world but it does matter a lot that this is just a small self-contained binary with minimal OpenGL dependencies (also no JVM, .NET CLR, GTK or QT needed).
At least to me it does matter! This gives me more confidence that I can actually write competent desktop GUI stuff and complete #DeluxeDraw for general pixel art as intended, and maybe the Postman substitute "Getman" as well (especially without massive Electron / Chrome / Node dependencies)
#ZXDraw #ZXSpectrum #Speccy #DeluxeUI #DeluxeDraw #golang #foss #NOELECTRON
-
Deluxe UI with ZX Draw on Linux, and a native host OS dialog box that actually works!
Ensuring that the toolkit works across all three major desktop GUIs may not look like much if you're coming from Electron-world but it does matter a lot that this is just a small self-contained binary with minimal OpenGL dependencies (also no JVM, .NET CLR, GTK or QT needed).
At least to me it does matter! This gives me more confidence that I can actually write competent desktop GUI stuff and complete #DeluxeDraw for general pixel art as intended, and maybe the Postman substitute "Getman" as well (especially without massive Electron / Chrome / Node dependencies)
#ZXDraw #ZXSpectrum #Speccy #DeluxeUI #DeluxeDraw #golang #foss #NOELECTRON
-
Minor rendering problems on Linux and Windows, tested on actual running machines. These errors have already been fixed on Mac. Only need to port the fixes. It ports!!
-
Minor rendering problems on Linux and Windows, tested on actual running machines. These errors have already been fixed on Mac. Only need to port the fixes. It ports!!
-
OOPS! WHAT HAVE I DONE? 🤣
-
OOPS! WHAT HAVE I DONE? 🤣
-
Native host OS about box works.
#ZXSpectrum #pixelart #Spectrum #speccy #golang #foss #DeluxeDraw
-
Native host OS about box works.
#ZXSpectrum #pixelart #Spectrum #speccy #golang #foss #DeluxeDraw
-
Alright, painting, saving, and loading works now. Still fixing some menu problems with the z-order.
#DeluxeDraw #pixelart #foss #ZXSpectrum #Speccy #Spectrum #golang
-
Alright, painting, saving, and loading works now. Still fixing some menu problems with the z-order.
#DeluxeDraw #pixelart #foss #ZXSpectrum #Speccy #Spectrum #golang
-
Just for fun another little throwaway app that has helped me to find some problems with the menu system (they're not always observing the z-order, as you can see in the screenshot).
So far it seems that you can actually build a working app using this, save for minor details. OS host integration is almost working too. All in all a great experiment to wrap another Deluxe Draw work day!
#golang #foss #zxspectrum #speccy #spectrum #pixelart #DeluxeDraw
-
Just for fun another little throwaway app that has helped me to find some problems with the menu system (they're not always observing the z-order, as you can see in the screenshot).
So far it seems that you can actually build a working app using this, save for minor details. OS host integration is almost working too. All in all a great experiment to wrap another Deluxe Draw work day!
#golang #foss #zxspectrum #speccy #spectrum #pixelart #DeluxeDraw
-
It kind of makes sense for creative apps like a pixel art tool to be able to pick colours. I'm not sure I would do a good job of coming up with a competent replacement to be honest.
This is exactly where some host OS components make sense.
-
It kind of makes sense for creative apps like a pixel art tool to be able to pick colours. I'm not sure I would do a good job of coming up with a competent replacement to be honest.
This is exactly where some host OS components make sense.
-
Experimenting with native OS integration of Deluxe Draw for stuff that makes sense to offload to the host OS.
We already have OS dialog boxes, and they already work just fine, but I'm considering whether it makes sense to integrate other parts too, like modal windows and system menus, on certain hosts.
-
Experimenting with native OS integration of Deluxe Draw for stuff that makes sense to offload to the host OS.
We already have OS dialog boxes, and they already work just fine, but I'm considering whether it makes sense to integrate other parts too, like modal windows and system menus, on certain hosts.
-
-
-
If you so choose, you can use ASCII palette indices in DPF files, just like you would in XPM files. But in DPF there's no reason you wouldn't use any Unicode codepoint for palette indices. In fact, if you use coloured square emojis instead of plain ASCII characters,.
If you do it that way, when you cat a .dpf file with icons, what you will get will be... oh surprise!...icons!
-
If you so choose, you can use ASCII palette indices in DPF files, just like you would in XPM files. But in DPF there's no reason you wouldn't use any Unicode codepoint for palette indices. In fact, if you use coloured square emojis instead of plain ASCII characters,.
If you do it that way, when you cat a .dpf file with icons, what you will get will be... oh surprise!...icons!
-
Now I'm thinking how to reconcile the typical layered pixmap editor that Deluxe Draw aims to implement with the ZX Spectrum colour model.
That would require the editor to support layers of different resolutions:
- background plane with attributes (32 x 24)
- bitmap plane on top (256x192) acquiring colours from the attribute layer underneath.
It could conceivably be construed as a blend mode of sorts. That might possibly work.
The blend mode seems doable, the different resolutions per layer is more tricky or possibly hacky.
-
Now I'm thinking how to reconcile the typical layered pixmap editor that Deluxe Draw aims to implement with the ZX Spectrum colour model.
That would require the editor to support layers of different resolutions:
- background plane with attributes (32 x 24)
- bitmap plane on top (256x192) acquiring colours from the attribute layer underneath.
It could conceivably be construed as a blend mode of sorts. That might possibly work.
The blend mode seems doable, the different resolutions per layer is more tricky or possibly hacky.
-
It kind of works. Obviously this is not Deluxe Draw itself, but a little icon editor I hacked together quickly, I just couldn't stand all the palette buttons with only text.
As a welcome side effect, the DPF file format used for icons will be the same format I'm going to use for Deluxe Draw palettes. A palette file is a DPF file that only has palette information and no pixels in it. If you think of it for a moment, it makes you question why nobody else did it the right way before.
Palettes are metadata about pixels. There's no good reason to create palette file formats, palettes are part of the same thing.
-
It kind of works. Obviously this is not Deluxe Draw itself, but a little icon editor I hacked together quickly, I just couldn't stand all the palette buttons with only text.
As a welcome side effect, the DPF file format used for icons will be the same format I'm going to use for Deluxe Draw palettes. A palette file is a DPF file that only has palette information and no pixels in it. If you think of it for a moment, it makes you question why nobody else did it the right way before.
Palettes are metadata about pixels. There's no good reason to create palette file formats, palettes are part of the same thing.
-
There are two reasons why I needed to get palette handling done early on during the development of Deluxe Draw:
You need palettes for themes, and you need themes for a decent GUI. If every new colour you use is an improvised hack you end up with terrible looking GUIs of the sort everyone has decided not to use.
You can't have standard system icons if you don't agree on a stable palette. I needed to stabilise at least one minimal palette so I could have a regular icon format, and icons for Deluxe Draw.
The Deluxe Pixmap Format (.dpf) is a text-based file format that is easy to read and write. The child of .xmp pixmaps and .bdf fonts. XMP pixmaps are cool but they only store one single image. BDF fonts are cool but they only store monochrome bitmaps. DPF is meant to store any number of named indexed-colour icons or glyphs.
You can only know how these icons are going to look in another system if you guarantee a stable palette is going to be available.
So there you go.
-
There are two reasons why I needed to get palette handling done early on during the development of Deluxe Draw:
You need palettes for themes, and you need themes for a decent GUI. If every new colour you use is an improvised hack you end up with terrible looking GUIs of the sort everyone has decided not to use.
You can't have standard system icons if you don't agree on a stable palette. I needed to stabilise at least one minimal palette so I could have a regular icon format, and icons for Deluxe Draw.
The Deluxe Pixmap Format (.dpf) is a text-based file format that is easy to read and write. The child of .xmp pixmaps and .bdf fonts. XMP pixmaps are cool but they only store one single image. BDF fonts are cool but they only store monochrome bitmaps. DPF is meant to store any number of named indexed-colour icons or glyphs.
You can only know how these icons are going to look in another system if you guarantee a stable palette is going to be available.
So there you go.
-
ASE and ACO palettes exported from Deluxe Draw import without a hitch in Photoshop (for whoever needs that).
-
ASE and ACO palettes exported from Deluxe Draw import without a hitch in Photoshop (for whoever needs that).
-
Now that's a better organised Deluxe Draw palette system!
With many thanks to @garvalf for the helpful ideas.
-
Now that's a better organised Deluxe Draw palette system!
With many thanks to @garvalf for the helpful ideas.
-
This is how the tweaked Deluxe Draw palette looks like at this time.
Thanks @garvalf for all the excellent recommendations.
Here it is in GIMP palette format
https://pastebin.com/MuezmTArAnd here's the Go program I used to generate the files:
https://pastebin.com/88WWKQ9q -
This is how the tweaked Deluxe Draw palette looks like at this time.
Thanks @garvalf for all the excellent recommendations.
Here it is in GIMP palette format
https://pastebin.com/MuezmTArAnd here's the Go program I used to generate the files:
https://pastebin.com/88WWKQ9q -
UPDATED HERE:
https://oldbytes.space/@haitchfive/114846423915001825Request for comments:
Do you like my 25-colour palette?
It's meant to be used as the reference palette for the Deluxe Draw default stencils and icons.Let me know!
-
UPDATED HERE:
https://oldbytes.space/@haitchfive/114846423915001825Request for comments:
Do you like my 25-colour palette?
It's meant to be used as the reference palette for the Deluxe Draw default stencils and icons.Let me know!
-
To be honest, it may never be integrated with the main application when it's a delivered product. But it's exercises like this where you learn the most, finding out what are the limits of extensibility and what the level of pain will be like for other developers using this stuff.
-
To be honest, it may never be integrated with the main application when it's a delivered product. But it's exercises like this where you learn the most, finding out what are the limits of extensibility and what the level of pain will be like for other developers using this stuff.
-
Because I'm ahead of schedule I feel I am morally allowed to go down rabbit holes like... working on a Windows 98 theme for the Deluxe Draw UI toolkit... hehehehe 🤣
-
Because I'm ahead of schedule I feel I am morally allowed to go down rabbit holes like... working on a Windows 98 theme for the Deluxe Draw UI toolkit... hehehehe 🤣
-
Implementing OS integration stuff such as common file dialogs, system clipboard copying and pasting, and accepting desktop file drops. Some other things like using the system caret may prove more tricky, the library api has a method to inquiry system integration capabilities as they are being implemented across platforms. At this time I'm testing on Mac but I'm already preparing equivalent functionality for Windows and Linux integrations. Hopefully the Gnome/KDE divide won't be too rough.
-
Implementing OS integration stuff such as common file dialogs, system clipboard copying and pasting, and accepting desktop file drops. Some other things like using the system caret may prove more tricky, the library api has a method to inquiry system integration capabilities as they are being implemented across platforms. At this time I'm testing on Mac but I'm already preparing equivalent functionality for Windows and Linux integrations. Hopefully the Gnome/KDE divide won't be too rough.
-
You can never have too many widgets.
-
You can never have too many widgets.
-
Kind of nice if you start to think of it, the text editor now actually edits text. 🤣
-
Kind of nice if you start to think of it, the text editor now actually edits text. 🤣