AutoHotkey Homepage AutoHotkey Community
Let's help each other out
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

SteamLab 0.8.3.1 a - Take control of Steam!
Goto page Previous  1, 2, 3, 4, 5, 6, 7  Next
 
Post new topic   Reply to topic    AutoHotkey Community Forum Index -> Scripts & Functions
View previous topic :: View next topic  
Author Message
Jero3n



Joined: 19 Jan 2007
Posts: 150

PostPosted: Thu Jan 24, 2008 5:49 pm    Post subject: Reply with quote

Is it going well with steamlab?
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Fri Jan 25, 2008 3:14 am    Post subject: Reply with quote

I've been away for the past 8 days on business and haven't had a chance to work on SteamLab Sad

Other than that, I've got functional SteamTabs and that rocks! I've got a lot of tweaking and bug fixing to do, but I'll have a lot of downtime over the next couple of days to do it.

SteamLab 0.9, which is several weeks late now, will come out with the SteamTabs alpha included, so you can use the SteamDock and/or the SteamTabs.

With the SteamDock and the tray menu, SteamLab's windows are opened as new Steam-like windows. When opened via the SteamTabs, however, the window becomes an overlay on top of the main Steam window and fully integrates into it (you can close and re-open Steam and the tab will still be there)

I've added additional functionality to SteamWin which allows SW_Create to create a dock instead of a full Steam window, while still allowing the rest of the SteamWin commands to work the same. So that means with one variable change, you can create the exact same window as either a dock-type window or a full-blown Steam window with titlebar and all. This allows for a lot of future customization options, too. Especially when Dock() works on multiple hosts Smile
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Fri Jan 25, 2008 3:27 am    Post subject: Reply with quote

Also coming, maybe tomorrow if I have time, are lots of context menus in SteamLab (Thanks to MMenu), sort of like the tray menu, but context sensitive. You'll be able to right-click listview items and other SteamLab elements.

Also coming soon are context-sensitive help tooltips that are toggleable (and of course that fit in with the SteamWin theme), to explain things as needed.
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Sat Jan 26, 2008 3:13 am    Post subject: Reply with quote

PlayNC Launcher has been incorporated into the next SteamLab release as well, so will support the AutoRun functions as well as have a menu entry in SteamLab if it is installed.

And ATI Tray Tools as well (finally!) Smile
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
Jero3n



Joined: 19 Jan 2007
Posts: 150

PostPosted: Tue Jan 29, 2008 7:58 pm    Post subject: Reply with quote

I really want to know how you made the listview you showed in that screenshot! Shocked
Just spotted it, and it looks great Very Happy
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Sat Feb 02, 2008 2:37 am    Post subject: Reply with quote

Thank you Smile You mean the ListView inside the Steam window?

I created it by placing a ListView in its own window with no titlebar (so it fills the window), then using Dock() and Anchor() to keep it in the right place.

I'm actually working now on implementing custom ListView headers and hopefully a custom ListView scrollbar to match Steam as well. I'll keep you posted Smile
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Sat Feb 02, 2008 3:16 am    Post subject: Reply with quote

As an update, the Games tab is working. SteamTabs still needs a lot of tweaking in general, but I never open the individual games updates or CD key windows anymore because the Games tab shows all!

It currently displays and searches for updates for all of your Steam Shortcuts and Source Mods. It also manages CD keys for any of those games from the same listview and allows custom copying of the key for direct pasting into installers.

Note that not one of my source mods actually has an update on the patch site I'm using, so I haven't been able to test any mod updates.

I'm going to try to use ModDB instead when searching for Mod updates. It'll take some more custom code but it should find updates to almost every mod then. And my download function does not freeze AutoHotKey so mod files can download over HTTP directly in SteamLab without hindering the rest of the script Smile So actually downloading the mod files over HTTP won't be an issue (thanks to Sean!)

I have also consolidated many of the include files and will hopefully be able to slim down the library functions as well. I have also consolidated almost all program functions into the functions.ahk file to separate it from the GUI code and sub-labels. Overall the code is now more organized and should be easier to tweak.
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Sat Feb 02, 2008 3:33 am    Post subject: Reply with quote

Coming ASAP: Icons next to each game title in the list, just like Steam Smile
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Wed Feb 06, 2008 12:50 am    Post subject: Reply with quote

The fabled (and coming soon I swear) 0.9 release now includes Stardock Central integration (mainly for Sins of a Solar Empire updates!)

Still looking for more launcher/updater/tool integration suggestions if anyone has any. There is a growing list applications SteamLab can automatically download, install, and launch, and I'm looking for more!

I also plan to support launch scheduling (eg. launch this program every 3 days, or launch this program once a week, or launch this program upon startup [already supported], etc.)

Also in the works as I type (or just prior to and just after typing, precisely) is a full-blown Settings window that encapsulates most new INI options.
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Wed Feb 06, 2008 2:26 am    Post subject: Reply with quote

I've just implemented a better application launching system

Now all application settings (Download URL, Exe, Installer, RegKey, and settings) are stored within the Ini file and the code simply parses that to get the tools. This means that the tools are now fully dynamic (including the tray menu launch items!)

Adding new tools is now a lot easier, and I'll be able to implement custom tools into the Tools settings window which allow you to add any application you want, optionally enabling auto-downloading and auto-installing of the application.

Another limitation removed!
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
Jero3n



Joined: 19 Jan 2007
Posts: 150

PostPosted: Wed Feb 06, 2008 9:58 am    Post subject: Reply with quote

When are you going to release it?
And when do you think the standalone skinning function is finished?
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Sat Feb 09, 2008 2:12 am    Post subject: Reply with quote

I'm hesitant to give a date at this point because I'm trying to tweak a lot of things and am enhancing almost every aspect of the program (since I've learned so much since I started writing it). I'm going to try and release a version this weekend. I will also try to simultaneously release the standalone SteamWin package, including my latest changes, additions, tweaks, etc.

I'm also including a new custom, and most likely temporary, icon set which are various 3d "box" designs depending on SteamLab's current function.

So far I have the standard icon, a Downloading icon, and an Alert icon (for when updates are found, for instance).

I would still love some fresh icons that I could stick with to really capture SteamLab's essense, but these will at least look a lot better than the previous icon for now, and will hopefully help to slightly re-invigorate the image in version 0.9.

So look for a lot more updates this weekend, including, hopefully, a release.
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Sat Feb 09, 2008 2:24 am    Post subject: Reply with quote

For performance, and just better coding, I'm eliminating a lot of the timers in SteamLab and using a single timer which checks various things depending on the status of their variables.

There will still be various timers used throughout SteamLab, but the only constant timers will be:
1. The new "monitor" timer which changes the tray icon, checks which tools are running, checks download status, monitors schedules, etc.
2. The SteamWin timer which starts when you open the first SteamWin window and stops when you close the last one. The purpose of this timer is to handle things like titlebar statuses (so that non-active windows are greyed out, for instance). This timer needs to be a part of SteamWin and needs to run a lot more often than the monitor timer, so I chose to keep it separate.

Until I find a better way, this is the best I can come up with, and it seems to work a lot better than the previous method, which I'm still working on eradicating, which was starting new timers for everything that was persistent.

Update: The performance increase so far because of this is definitely noticeable. Startup is a lot faster, the tray menu is more responsive, and SteamWin windows open immediately.

More-over, this will allow me to implement a function I've been wanting to implement for a while... auto-detecting if a game is running and disabling all possibly-performance-affecting monitoring functions until it is closed.

I have also split up these monitoring checks to further improve any delays or performance issues by making most of the non-urgent checks run based on a multiple of some number. Each step generally uses a different number so that it usually won't run in the same check as a lot of other checks.

The result is a single timer which runs a lot of different functions at different times very quickly.

This seems to have done a lot to decrease resource usage, and SteamLab is speeding up even more!
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Sat Feb 09, 2008 4:30 am    Post subject: Reply with quote

SteamLab now also knows which of your "tools" is currently running, and uses that information in its various functions, as well as placing a checkmark next to it in the Run menu if it is running. Unfortunately this is currently based on the Exe name, so if it is a common name SteamLab might think the app is running when it is really something else. But most friendly apps use fairly unique Exe names (and this is the case for every one of the tools which SteamLab can currently integrate, luckily)

I have been tweaking this behavior to only make any modifications to anything if there is actually a change in the program's state, so performance does not seem to be affected except a brief "blip" where MMenu is unresponsive while a checkmark is being placed or removed. Unfortunately I doubt there is any way around this, but unless your tools are for some reason closing and opening while you're browsing the menu, you won't notice this.

4 tray icon states are now fully built in and able to be used, however the actual statuses for those icons are not currently being set by the various functions that they are for, so only the main icon shows in the tray.

Before the release, however, the different icons will be used for while SteamLab is downloading, or if there is an alert. Like the above, I have tweaked this to only ever update the icon if it is different than before, so performance will not be affected.

Apart from icons, the tooltip associated with the tray icon will be updated to display individual download progress, just like the Steam tray icon.

The priority of the icons which determines which one to display is like this:

1. Alert (Always displayed if there is an alert available)
2. Processing (Doing something possibly performance intensive)
3. Downloading (Displayed if downloads in progress and no Alert available)
3. SteamLab (If no other statuses are found, use program icon)

Any suggestions for other state-based icons that might provide useful information to the user?
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]


Last edited by bmcclure on Sat Feb 09, 2008 5:01 am; edited 3 times in total
Back to top
View user's profile Send private message
bmcclure



Joined: 24 Nov 2007
Posts: 446

PostPosted: Sat Feb 09, 2008 4:46 am    Post subject: Reply with quote

To add to that, I have streamlined the installation process which extracts all required files to their proper directories from auto-extracted zip, so SteamLab now installs itself every time it's run (but never overwrites existing files unless it is an updated version). So all you ever need is the Exe to have a working installation, even if it was already installed, and any existing files you have won't be overwritten (especially config files).

Just like Steam (see the trend here?) Smile

Oh, and a double-click on the SteamLab tray icon will now bring up the main Steam window (especially useful with the new SteamTabs feature). So feel free to hide that Steam tray icon if your tray is getting cluttered Smile

Since Steam also has a couple different icon states depending on whether or now it's downloading, I'm toying with the concept of using another state icon for SteamLab if Steam is downloading but SteamLab isn't, and yet another "hybrid" icon if both apps are downloading... further negating the need to keep both tray icons visible at once. I'm still not sure how to detect whether or not Steam is downloading, however.

I could offer the option to use the Steam icon right from Steam's installation directory, instead of the main SteamLab icon, as well, however I don't know if inserting Steam's icon would be violating anything, even though I wouldn't be moving it out of Steam's directory. So I'll have to look into that further.
_________________
-Ben

SteamLab
SteamLab Wiki

[Broken] - My industrial music [on GarageBand]
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    AutoHotkey Community Forum Index -> Scripts & Functions All times are GMT
Goto page Previous  1, 2, 3, 4, 5, 6, 7  Next
Page 5 of 7

 
Jump to:  
You can post new topics in this forum
You can reply to topics in this forum


Powered by phpBB © 2001, 2005 phpBB Group