Deviant Login Shop  Join deviantART for FREE Take the Tour
×



Details

Submitted on
May 29, 2012
File Size
35.5 KB
Submitted with
Sta.sh
Link
Thumb
Embed

Stats

Views
12,026 (7 today)
Favourites
48 (who?)
Comments
61
Downloads
2,891 (3 today)

License

Creative Commons License
Some rights reserved. This work is licensed under a
Creative Commons Attribution-Noncommercial-Share Alike 3.0 License.
×
Hexagonads Launcher 2.0 by YGKtech Hexagonads Launcher 2.0 by YGKtech
It's finally done. Months in the making, this is my total overhaul of my most popular skin to date, Hexagonads.

Every facet of the skin has been re-programmed and expanded. And I mean expanded a LOT. The final version of Hexagonads 1.0 consisted of 647 lines of code. Version 2.0 is the product of 1,591 lines of code.

**************************************************

This is an application launcher for Rainmeter, made as part of my ongoing "Project Ghost" suite.

Each hexagon is an button which can be set to open any program or folder on your computer.

The buttons change color when you mouse over them, and flash when clicked.

You can change the dimensions of the array to suite your preferences. The current limit is a 8 x 8 array. To do so, simply change the count.X and count.Y variables in the *.ini file.

Better yet, if you don't like the size of the buttons, the whole skin can be made larger or smaller by adjusting a single variable. Open the *.ini file and find the variable "scale = 2.5". Increasing this number will shrink the skin and lowering it will make the skin larger.

To add programs to the launcher, you will need to find the directory path of your desired program/folder and add it to a "Path#,#" variable of your choice. For example; to set the top left hexagon to launch the windows calculator, open the .ini file and find the line:

Path1,1 =

and change it to:

Path1,1 = C:WindowsSystem32calc

The preview image should help you to find which lines correspond to which hexagons.

Following each "Path#,#" variable is a "Tip#,#" variable. here you can write a title that will be displayed in the middle of the button. There are also settings for removing the titles or enabling Tool-tip's that will use the same text.

Wallpaper in the background is Wallpaper is El-Felipe's Wallpaper

VS is mini'em all by snipes2

NOTE: even though not all 64 hexagons are displayed, rainmeter still creates a frame around the hidden ones, if you simply disable the "keep on screen" option this shouldn't matter. I am working on a way to fix the underlying issues, but it is easy enough to just change the setting for now.

EDIT: replaced a few instances of #black# with #norm#. changing the value of #norm# should effect all hexagons now.
Add a Comment:
 
:iconscorpia14:
scorpia14 Mar 17, 2014  Hobbyist General Artist
Great skin and I love it, but im having issues changing the color of the font. Do you know what I can do to fix it? and the font face is not changing ether. Thx!
Reply
:iconygktech:
YGKtech Mar 19, 2014  Hobbyist Interface Designer
This is another quirk I'll need to fix in the next release:  there are two key color variables in the skin, #hover# and #norm#, when you mouse over a button, the hexagon changes color from #norm# to #hover#, and the text does the opposite, switching from #hover# to #norm#.  I thought this would be a good way to ensure a good contrast between the button and the text, and for the most part it is, but it makes changing the font color somewhat difficult.  Whenever someone asks a question about how to make a certain modification to one of my skins I like to reply with a generalized guide so everyone can see how to do it, here we go:


each button label corresponds to a [t#,#] section (for example, the top-left button's label is [t1,1]) in each of these sections I have the line:
FontColor = #hover#

by changing #hover# to a color value or a different variable assigned to a color value, you can change the color of the font when the skin loads.  But that alone isn't enough, because in the code for each button I set the font color to either #norm# or #hover# whenever the button changes color, in order to maintain contrast.  So even if you change the color of the font when the skin loads, as soon as you move your mouse over a button the text color will change back to #hover/norm#.

The best solution to this I can think of would be to create a new pair of color variables, #Font.norm# and #Font.hover#, which you can do by adding the following lines to the [variables] section:

Font.norm = #blue#
Font.hover = #red#

(here I am using the color variables included in the skin by include=allcolors.inc which copies a list of ~800 color variables into the program, you can find the file in the skin folder to see what's available, you can also use any of rainmeter's color codes, they provide a color picker for these here: rainmeter.net/color  simply replace blue and red with whatever color's you would like the font to switch between when you move your mouse over a button, they can be the same color if you'd like) 

then rewrite the [r#,#] and [t#,#] sections you use to make use of these variables.  Here is how [r1,1] and [t1,1] would look after the change:

[r1,1]
Meter = image
Group = Hex | C1 | R1
MeterStyle = sButton | sRow1 | sCol1
ImageTint = #norm#
ToolTipText = #Tip1,1#
MouseOverAction = !Execute [!SetOption r1,1 ImageTint #hover#][!SetOption t1,1 FontColor #Font.hover#][!update]
MouseLeaveAction = !Execute [!SetOption r1,1 ImageTint #norm#][!SetOption t1,1 FontColor #Font.norm#][!update]
LeftMouseDownAction = !Execute [!SetOption r1,1 ImageTint #norm#][!SetOption t1,1 FontColor #Font.norm#][!update][!SetOption r1,1 ImageTint #hover#][!SetOption t1,1 FontColor #Font.hover#][!update]
LeftMouseUpAction = !Execute [!SetOption r1,1 ImageTint #norm#][!SetOption t1,1 FontColor #Font.norm#][!update][!SetOption r1,1 ImageTint #hover#][!SetOption t1,1 FontColor #Font.hover#][!update]["#Path1,1#"]

[t1,1]
Meter = String
Group = Strings | C1 | R1
MeterStyle = sText
FontColor = #Font.norm#
Text = #Tip1,1#

notice that wherever I set FontColor to #hover# I now set it to #Font.norm# and wherever I set it to #norm# I set it to #Font.hover#, this is because the original code always had text be #hover# when the button was #norm# and vice versa.

adding the new color variables is easy enough, but changing all the button and label sections to use them may be a bit tedious, if you have a good text editor like notepad++ you can use find & replace operations to efficiently make the changes, or if you only use a few buttons you can figure out which meter's they correspond to and make the changes by hand.


As for the font face not changing, all you should need to do is change this line near the bottom of the [variables] section:

    Font.face = Trebuchet MS

to whatever font you want, in theory that is.  I've has some trouble in the past getting Rainmeter to use fonts, mostly because I don't think there is a way to see all the fonts rainmeter has access to, and without an encyclopedic knowledge of font's I don't really know which ones I can expect to work.  I know changing it to Times New Roman works (though that is a terrible font for labeling buttons, too narrow), I would assume you have access to all the fonts MS word has access to, so you can try previewing fonts in there are copying their names into the skin config file to see if they work.  Here is the rainmeter font guide for further reference: docs.rainmeter.net/tips/fonts-…

Thanks for your enthusiasm for my skin, comments like this make me want to get back into rainmeter coding, but it's hard to find the enthusiasm/free time as a full time computer science student with a part-time job that also involves programming.  I love programming but I can only do so much of it in a day before I get tired of it.  Let me know if you have any more questions about the skin, I don't update skins much but I do keep an eye on my messages and try my best to help people who leave a comment.
Reply
:iconbootboss:
I know this is maybe a bit too much to ask for XD But I really love this and I have it up all and running, but I cant just get the icons to work... Is it possible that someone could show an example of how the code looks for their working setup? It would help me out alot :)
Reply
:iconygktech:
YGKtech Feb 8, 2014  Hobbyist Interface Designer
have you followed the guide I posted in the comments? I should probably make a update to include the code by default, but I haven't gotten around to it yet and I'm not likely to do so any time soon.

once you have added to code I posted to your Hexagonads.ini file, you just need to add the name of the image file you want to use to the right [t#,#] meter and it should show up just fine. (you also need to put the image file in the Hexagonads skin folder, the same place the Hexagonads.ini file is located).

If you still can't get it working after doing that, make sure you have the latest version of rainmeter.  If it is still not working you can send me your code, or I could try and motivate myself to make a proper update to this.
Reply
:iconkknight321:
Is there a way to have multiply color for it, than just 1 color throughout? Sorry if it a stupid question ^^"
Reply
:iconygktech:
YGKtech Mar 2, 2014  Hobbyist Interface Designer
For some reason I never noticed this question, I'm sure you aren't checking back regularly looking for an answer, but I'll post one anyways in case someone else is wondering the same thing.

I short, yes.  Is is possible to have each button have different colors, but there isn't a easy way to do it yet.  You can change the colors for a specific hexagon by editing the appropriate [r#,#] section of the config file.
Each button has a section in the file like this, and they all have this line:
 
     ImageTint = #norm#

By replacing #norm# with a different color, either using a color code or using one of the many color variables provided by my include files available here: ygktech.deviantart.com/gallery…
you will change the color of the hexagon when the skin is loaded.  But as soon as you mouse over or click on the button it will be set back to #norm#, so you will have to replace #norm# in all of the Mouse Action statements as well, so it can be a bit tedious.

If you have a good text editor you can use a "replace all in selected" operation to change all instances of #norm# in a selected region of text with some other string (the variable name or color code for your desired color).

As you can see, the change boils down to replacing a few lines of text, but it can become quite tedious to do it on a large scale.  Eventually I would like to make some revisions to this skin to make it easier to customize, and maybe even have it randomize the colors when you click on a button, but don't expect anything out of me in the near future.

As always, if my explanation wasn't clear, let me know what you need help with and I'll do my best to try and help you.
Reply
:iconkknight321:
Your explanation is clear-cut, helps me understand a whole lot of thing :) I really appreciate it... But....I'm a lazy person...So, for now..HAhahaaa...
Reply
:iconsugarnoodle:
Hey I had the problem with the half hexagon and when I found the halfhex.png and deleted it everything was ok but now I cannot drag the hexagons anywhere even with the "Keep it on the screen"- Off :/
What I change to the Anchor part to make it dragable from another hexagon? Please help :/
Reply
:iconygktech:
YGKtech Sep 18, 2013  Hobbyist Interface Designer
If you just delete the LeftMouseDownAction and LeftMouseUpAction portions of [r1,1] (or any other of the hexagon meters) it should let you drag from that hexagon.
Reply
:iconsugarnoodle:
Yeah it worked fine!Thank you!
Reply
Add a Comment: