-
Re: Getting the ball rolling. Which VB6 projects are you working on?
There are quite a few people working on understanding the format of the FRX files, Wayne at TB, Carles at RB and possibly Olaf. It would seem sensible if those people and others dumped their knowledge in any reasonable form in some type of repository (a sticky thread here?) so that the VB6 world could benefit in true open source form.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
What's not covered by the work people did here:
https://www.vbforums.com/showthread....e-of-FRX-files
It includes a full class for reading them Olaf posted.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
I mean, I don't know anything about FRX personally. However, Carles of RB fame says he is having problems with fully understanding the FRX format causing a delay, SDO mentioned same above and if I remember correctly, Wayne Phillips was mentioning an issue with FRX understanding causing problems recently. Many heads working on the same problem but perhaps not talking to each other and therefore not finding the same resource?
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Quote:
Originally Posted by
xiaoyao
VB6 CONTROLS,RC6Widgets,VBCCR,YOU have three ul controls,
if you add .net ui,web ui(button,div,html table),you will have 5 types ui list
I've used Web-UI in other projects, but I haven't had time to transplante it to my FormViewer yet. As for .Net-UI (WinForm), this can only be considered next year when I have time.
Quote:
Originally Posted by
yokesee
Good job SearchingDataOnly hallucinating
Thanks.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Quote:
Originally Posted by
fafalone
I've used Olaf's cParseFRX, but it can only read part of the resources from FRX files.
Quote:
Originally Posted by
yereverluvinuncleber
I mean, I don't know anything about FRX personally. However, Carles of RB fame says he is having problems with fully understanding the FRX format causing a delay, SDO mentioned same above and if I remember correctly, Wayne Phillips was mentioning an issue with FRX understanding causing problems recently. Many heads working on the same problem but perhaps not talking to each other and therefore not finding the same resource?
Wayne seems to have solved the FRX problem, but twinBasic is commercial software, and there's no reason to ask Wayne to share his knowledge.
In this forum, it seems that only The trick has the ability to solve this problem.
-
2 Attachment(s)
Re: Getting the ball rolling. Which VB6 projects are you working on?
Quote:
Originally Posted by
fafalone
Looking good... hopefully the project explorer will have a view to support nested folders without limiting to same file type? That's been driving us all nuts for 25 years.
Excellent advice. I added a button to my project explorer to show the vbp folder. Now, my project explorer can support nested folders without limiting to same file type.
I have one goal: my Script-IDE can eliminate all the flaws of VB6-IDE, but does not require any plugins/addins.
-
1 Attachment(s)
Re: Getting the ball rolling. Which VB6 projects are you working on?
Olaf and jpbro have helped me solve the FRX problem. Now my FormViewer can correctly read/display all VBCCR controls in VB-Forms. Thank you so much, Olaf and jpbro.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Superb SDO. Making progress!
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
The most VB6-like IDE in history, he can call it the number one in the world's top simulation show.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Quote:
Originally Posted by
yereverluvinuncleber
Superb SDO. Making progress!
Thanks.
Quote:
Originally Posted by
xiaoyao
The most VB6-like IDE in history, he can call it the number one in the world's top simulation show.
My IDE is a brand new IDE, but VB6ers will find that every operation is familiar to them, which will be a wonderful feeling. Moreover, they will inadvertently discover a lot of new magical features.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Just testing my Panzer Earth VB6 Widget on Linux/Wine. Rather successful.
https://www.vbforums.com/images/ieimages/2023/07/12.png
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Congratulations. Are you using RC6Widgets? Or just used RC6.Cairo?
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Next thing to test is the same installer on ReactOS. If I am successful will post a screenshot of that soon enough.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Quote:
Originally Posted by
SearchingDataOnly
Congratulations. Are you using RC6Widgets? Or just used RC6.Cairo?
A mix of native forms for the prefs, the licence and the one-page help. The rotating earth and the about are RC generated widgets. RC5. I'm only taking the functionality that VB6 lacks at the moment and replacing that with RC enhancements. Don't need the resulting complexity of pulling in too much at a time. VB6 works and is usable for the basic functionality. The fact that it all works seamlessly on Linux+Wine impresses me.
There is one tiny issue that I may raise with Olaf, on a separate thread, the borderless Cairo form leaves a tiny remnant window on Wine, you cannot see it above as it is hidden, I am wondering where I raise such issues and who is likely to test/fix them. Not many will be doing what I am doing...
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
One small thing I learned today was the fact that the RC forms allow some design time properties to be changed at runtime. Form.showInTaskbar has proven to be quite useful. Desktop 'widgets' of the Yahoo widget form might run into their tens on your desktop, being lightweight in form, I can have 50 running simultaneously with no overhead., Reproducing those in VB6 - you don't want all of them showing up in the taskbar but you might allow one or two on occasion when developing, debugging &c. I have a prefs toggle where you can turn that off and on as you desire, quite nice.
P.S. Mentioning Linux/Wine in the last post, well, enabling the showInTaskbar functionality that works well on Windows does nothing on Wine/Linux. Looking at the debug information a lot of the Win API calls are merely stubs with a lot of them missing. Not much I can do there except raise a Wine bug.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Hi All,
I've been away, and pretty sickly, still am, but coding/drawing when able. It's actually stupefying and dizzying to read stuff lately. So bravo to all the posters adding images. :) Your stuff looks good. I'm talking about you in particular yereverluvinuncleber.
I've been modifying the Cairo Graphic Autobuilder to make it universal, though some things still need minor tweaks here and there. Here's a sample of the crystal outputs. I like these as much as the colourful, see-through slimes. Thought I would share the picture, as I wasn't expecting these to be as groovy as they turned out to be.
https://www.vbforums.com/images/ieimages/2023/07/19.jpg
Full image here: -> https://i.postimg.cc/rpcCbf7G/Entity-Collection.jpg
In the Monstergirl game, one needs to collect minerals and such for a special purposes. So when you go mining in various places, these things might pop out for your benefit.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Lovely stuff, I don't want us to become too self-congratulatory but your graphics do the job. They look very good indeeeed. I think the graphic aspect of an app. is what really shows that VB6 can be taken beyond its natural graphical bounds.
Do tell what you use to create these on a graphical level. Personally I use a very old copy of Photoshop CS ver 8.0. There are reasons.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Doing a lot more work on UI Ribbons.
https://www.vbforums.com/images/ieimages/2023/07/16.png
The main application menu, which allows SplitButtons that show control groups with optional headers.
https://www.vbforums.com/images/ieimages/2023/07/17.png
There's 3 different types of color pickers with various quick options, plus a button that brings up the standard color picker dialog
https://www.vbforums.com/images/ieimages/2023/07/18.png
The built in font picker has a dropdown where all the fonts are rendered in their own face. The buttons on the left control contextual tabs that you only want in some views:
https://www.vbforums.com/images/ieimages/2023/07/19.png
https://www.vbforums.com/images/ieimages/2023/07/20.png
It also makes popup context menus and minitoolbars that can be shown anywhere; these can look much nicer than regular menu APIs.
https://www.vbforums.com/images/ieimages/2023/07/15.png
Special help button; I put a nice TaskDialog in to help which uses the gradient-without-shield trick from my cTaskDialog project.
*Might* considering backporting it to VB6. It would be simple enough if someone wanted to. But it's all twinBASIC for now. There's a much simpler proof-of-concept and instructions writeup on my GitHub, I'm just finishing up the next one shown here (the Font control is a monster to link up with a RichTextBox).
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Yereverluvinuncleber, Hmm, ok, to begin with. Crystals are kind of easy fare.
Step 1. Draw a semi transparent crystal, in colours, ie, orange to red to purple for example. Orange for bright areas, reddish for middle, purple blend for dark. Use references, you can find plenty here. (Don't make them black and white). https://www.freepik.com/vectors/crystal
Transparency is important, ie, some areas are see through, just like real crystals. Other shiny or dark areas are not.
Step 2. Splatter your crystal on a Cairo Surface, in whatever orientation you like. Or, rotate it, paste it around it’s bottom axis for a fan effect. Basically, that’s your crystal mineral form. Also, Copy this surface to a clone surface (used later).
Hue shift the original, use this code to do that, https://www.vbforums.com/showthread....=1#post5569890, make sure you add in the ‘other’ function in that post, the actual RGB stuff, link is in the post BEN321. Now your part mineral will be colourized in a new shade.
Step 3. Pre-saved colour splattering. You need lots of Photoshop surfaces with just random colour splotches. Apply one of these surfaces to the crystal as ‘Color’, or ‘Multiply’, or ‘Color Burn’, or other effect. Alpha randomized too. These colour surfaces are just whatever colour splatters, or sprays, or gradient effects tickle your fancy on any given day. Have lots, I've got about 12.
Step 4. Apply that original earlier copied 'Clone surface' via “Overlay”, or “Multiply”, or "Color Burn", or "Color Dodge" this adds extra shifting hues to the finished crystal. Making it look like it's reflecting other coloured light. In other words, the hue shifted crystal gets the original pasted over itself again, but with a random effect.
Step 5. One can add any base dirt picture and colourize it too. That's it’s supporting rock.
Anyway, that's how I make the crystals. In parts, with backing dirt, and other static crystals within too. The Hue-Shift is the trick, and applying copies of oneself under various effects gives you the majestic appearances.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
fafalone ... are you creating the ribbonbar?
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
It's the Windows UI Ribbon Framework. You provide the layout information via an .xml file, add the compiled xml and the resource file it generates to your app, then activate it/load the ui through the ribbon COM coclass UIRibbonFramework and interact with it through it's related interfaces, some you implement and some you call... IUIApplication, IUICommandHandler, IUIRibbon, etc.
It's the same control used by Explorer, Wordpad, and Paint.
There's a detailed writeup for how it works on the GitHub repo.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
I am testing my RC5/6 apps on Linux and Mac os x using Wine with positive results (as shown on the separate thread), also starting to replace the eye-candy simple YWE widgets with VB6/RC alternatives. I have a simple VB6 template code for desktop widget that have just a simple function (perhaps a single clicking event with basic animation) and that will do for the moment.
I have Olaf's PSD parser combined with one of my more complicated widgets, forms, code 'n all to see how it reacts working together. So far, seamless. Just a minor issue to contend with and a biggie that I need to find a workaround for. Pictures later.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Quote:
Originally Posted by
fafalone
You provide the layout information via an .xml file, add the compiled xml and the resource file it generates to your app
Very much how the old YWE engine used to operate. I was thinking some more about writing a XML to FRM converter to allow the XML forms we use in YWE to generate the preferences to be converted to VB native forms. I might yet do that.
Despite me hating using the ribbon, it is good to see VB6 being able to create such apps.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
@fafalone,
I'd like to know how to get "standard colors", that is, where are these standard colors defined? Or, what is the basis for your definition of "standard colors" in post#578? Thanks!
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
It's a preset.
<DropDownColorPicker CommandName="cmdDropDownColorPickerStandardColors" ColorTemplate="StandardColors"/>
the command it's referring to in CommandName is just the entry that defines the ID#, caption, and image:
Code:
<Command Name="cmdDropDownColorPickerStandardColors" Symbol="IDC_COLORSTD" Id="2003">
<Command.LabelTitle>
<String Id="2003">Standard Colors</String>
</Command.LabelTitle>
<Command.LargeImages>
<Image Id="203">Res/Colors32.bmp</Image>
</Command.LargeImages>
</Command>
https://www.vbforums.com/images/ieimages/2023/07/21.png
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
So you have to include all those bitmaps in your resources? Aren't there standard buttons provided somewhere in a system library?
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
For what? The color swatches? Those are autogenerated, along with the rest of the color popup; just need to include the main button icons. Everything on the font control is automatic too.
It's basically an upgrade to the menu system; there's no way to use icons from a standard library for your menus either, have to not just have the image file (from disk or a resource), but convert it into an HBITMAP. Here you just need the file and it compiles it into the .res automatically.
I found a really good ribbon designer that handles all the XML generation, so I'm no longer doing that by hand. It's open source (and readily compiles) but written in Delphi:
https://www.vbforums.com/images/ieimages/2023/07/22.png
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Quote:
Originally Posted by
fafalone
It's a preset.
<DropDownColorPicker CommandName="cmdDropDownColorPickerStandardColors" ColorTemplate="StandardColors"/>
the command it's referring to in CommandName is just the entry that defines the ID#, caption, and image:
Code:
<Command Name="cmdDropDownColorPickerStandardColors" Symbol="IDC_COLORSTD" Id="2003">
<Command.LabelTitle>
<String Id="2003">Standard Colors</String>
</Command.LabelTitle>
<Command.LargeImages>
<Image Id="203">Res/Colors32.bmp</Image>
</Command.LargeImages>
</Command>
https://www.vbforums.com/images/ieimages/2023/07/21.png
Thank you, fafalone.
-
1 Attachment(s)
Re: Getting the ball rolling. Which VB6 projects are you working on?
-
1 Attachment(s)
Re: Getting the ball rolling. Which VB6 projects are you working on?
-
1 Attachment(s)
Re: Getting the ball rolling. Which VB6 projects are you working on?
My ColorPicker:
(The prototype comes from wqweto's ColorPicker. I rewrote wqweto's ColorPicker with RC6.Cairo. Thank you, wqweto)
-
1 Attachment(s)
Re: Getting the ball rolling. Which VB6 projects are you working on?
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
SDO, you will have a VB6 IDE (clone & improved) and its components, a forms designer and a code editor, a new scripting language based upon VB6 interpreted to VB6?, is that summary correct?
Your own compiler, interpreter, debugger? When/how's that going to arrive?
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
That looks pretty much like a Wordpad clone, nicely done. Does this project only work in TwinBasic? What does it need to be VB6 compatible?
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
For VB6 it's just a bunch of small things... little niceties that make things easier... you'd need to replace tbShellLib with oleexp, copy all the APIs it uses from tbShellLib since those aren't in oleexp, and replace all the tb-only syntax I used, like Dim x As Long = y with Dim x As Long: x = y, += and -= operators with the long form, move the subclassing to a module and move the AddressOf self to a FARPROC-- or switch the method to a VB6 self-sub method for forms; remove attributes like [ Description("...") ] and [ TypeHint(..) ] (really neat, lets you assign an enum for Intellisense to display to a non-Long variable in calls/declares), change the Decimal handling a little, where you find vbNullPtr you need to go to the API in question and replace the UDT in that argument with As Any then change vbNullPtr to ByVal 0. Replace App.BuildPath with another way of referring the compiled exe (for running in the IDE). Remove #Region tags.
The only thing I'm not 100% sure on is whether Err.Raise will suffice as an alternative to Err.LastHResult. I think it will but if not you'd need to do a couple vtable swaps to Function versions of implemented interface methods.
I haven't posted the fancy demo on GitHub yet; just polishing a few last parts and doing the writeup. It'll be up later tonight. There's a much simpler introductory demo already up; the instructs really only different in how you import the resource... for VB6 you'd just use Project->Add File and add the .res to a project, rather than use the import helper vbp.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Yeah, regarding GitHub, I don't have any experience with it and I find it a bit confusing so this may be a dumb question but is there a way to download the whole project at once (maybe as a ZIP file) instead of downloading each file one by one?
Nevermind, found it, need to click on the "Code" drop-down and there is the ZIP download, lolz! :D
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Quote:
Originally Posted by
VanGoghGaming
Yeah, regarding GitHub, I don't have any experience with it and I find it a bit confusing so this may be a dumb question but is there a way to download the whole project at once (maybe as a ZIP file) instead of downloading each file one by one?
Install github desktop and clone/fork the repository, alternatively, there should also be a green code button., clicking on that should give you the choice of downloading the zipfile.
-
Re: Getting the ball rolling. Which VB6 projects are you working on?
Quote:
Originally Posted by
fafalone
Wonderful !