Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

DLL Talk / BlueGUI: Windows in Toolbars?

Author
Message
CompuWiz
22
Years of Service
User Offline
Joined: 21st Nov 2002
Location:
Posted: 31st Jul 2005 09:11
Hi,

I'm looking to acheive an interface somewhat similiar to the interface of FPS Creator using BlueGUI. (I am completely and totally guessing that FPS Creator itself, uses Blue). What I am going for is a toolbox window gadget that can be moved around, just like any toolbox window gadget. However, when you place this window over a toolbar, it almost "jumps into" the toolbar, copying all of its buttons onto that location on the toolbar. I was just wondering if there's any built in way to do this.

At first, I thought that it was simply a very clever bit of code on the part of The Game Creators. Both a toolbar containing the icons needed AND a window consisting of the exact same icons are created. Then the window is hidden. Before the icons in the toolbar, there is a splitter. Now the code simply checks for a mouseclick on the splitter icon, upon which the icons are removed from the toolbar and the window is shown. However, this presents a problem because when you drag the window back to the toolbar, the icons will "jump back" to toolbar wherever your mouse pointer was. Meaning that you can position them anywhere you like on the toolbar. And as far as I know, there is no functionality for this in Blue.

So if anyone else has any ideas, or knows of a built-in way to acheive this effect, please let me know. I would be most grateful of any help that anyone has.

Thanks again,
Nick Small.

P.S. On an unrelated sidenote, I'm having a problem with the deletegadget command. If I say deletegadget(handle), Dark Basic won't let me compile. I MUST say deletegadget (handle). The difference being the space before the parenthesis.

P.P.S. On another unrelated sidenote, I can call all of the commands relating to tabs (e.g. createtabs, addtab, etc.) without ever calling startblue. I don't know if this is a bug or not, and I haven't looked into the problem with anything other than tabs, but I just thought that I'd let Rob know.

Lightning Wheels-Ultimate Roller Coaster Simulator
IanG
20
Years of Service
User Offline
Joined: 25th Sep 2004
Location: Cyberspace
Posted: 31st Jul 2005 13:10
fpscreater is only partly wrote in pro, if i remember correctly the engine is wrote in pro but the nice looking gui was made in ye olde c++

Used to be Phoenix_insane registered in september 2003 despite what the date says to the left <--
PC - amd athlon xp 2600+, 1280mb, GeForce FX 5200 128mb, 200gb, xp pro sp2
Xolatron old
20
Years of Service
User Offline
Joined: 25th Jan 2004
Location: The Star Forge Language: DBpro
Posted: 31st Jul 2005 16:57
That's a 'rebar' you're talking about - it contains portable toolbars. There is no functionality for these in BlueGUI, but they can be created form the WindowsAPI. See Accessing windows API and the Message Queue and Windows API Code and see if Keaz has got rebar code working.

-Xol

Keaz
21
Years of Service
User Offline
Joined: 22nd Sep 2003
Location: Somewhere in south Texas
Posted: 31st Jul 2005 17:34
Not quite yet but I'm very close should be post by the end of the day. I'm going to slowly work in all the controls. As it happens ReBar is next on my list. The none default controls take a little more work than the standard ones so it might be a little while.

Breaking Stuff=Fun!,Bug Testing<>Fun!, Bug Testing=Breaking Stuff, so...
Bug Testing=Fun! Hmmmm....
DOES NOT COMPUTE! SYSTEM MALFUNTION!
Xolatron old
20
Years of Service
User Offline
Joined: 25th Jan 2004
Location: The Star Forge Language: DBpro
Posted: 31st Jul 2005 17:48
Awesome! Great work Keaz . When you finish I'd like to put rebars into IonRay IDE - most apps have those rather than toolbars these days.

-Xol

CompuWiz
22
Years of Service
User Offline
Joined: 21st Nov 2002
Location:
Posted: 31st Jul 2005 21:03
Hi,

Great, thanks! Honestly, I've never heard of a "rebar", but now I have! I look forward to seeing your work, Keaz. However, if I were to use the WinAPI, wouldn't it be extremely difficult and require me to basically recreate Blue because of the way DarkBASIC Pro works? I'm not to sure on this, but I remember Rob saying something about how Blue works, that he has to make a new window for each gadget or something because DarkBASIC doesn't use pointers (those definitly need to be added soon). Can anyone clarify?

Thanks again,
Nick Small.

Thanks, Nick Small.
Xolatron old
20
Years of Service
User Offline
Joined: 25th Jan 2004
Location: The Star Forge Language: DBpro
Posted: 31st Jul 2005 22:09 Edited at: 31st Jul 2005 22:11
Keaz is basically trying to recreate most of BlueGUI in DBpro. However, many API commands will work well with blue, and you could make a rebar and use it with blue fairly easily . For example, see the DarBlue Beta IDE thread for some code snippets that use windows to increase richEdit functionality.

P.S. 'Rebars' aren't known of by many people - because only the windows API refers to the as such. Most people just tink of them as toolbars because most toolbars have been replaced by rebars in modern applications.

-Xol

Rob K
Retired Moderator
22
Years of Service
User Offline
Joined: 10th Sep 2002
Location: Surrey, United Kingdom
Posted: 17th Aug 2005 14:06 Edited at: 17th Aug 2005 14:07
If you create a toolbar gadget in DBPro, Blue actually creates a rebar and mounts a toolbar in it.

Therefore if you use the gadgetHandle command on the toolbar gadget handle, you'll actually get the windows rebar handle. You can use this with Windows API functions to manipulate the rebar.

Some of the commands do work without calls to startBlue - but it would be difficult to create a useful functional app without the call.


BlueGUI Windows Plugin

Login to post a reply

Server time is: 2024-11-21 18:47:24
Your offset time is: 2024-11-21 18:47:24