Commit Graph

13 Commits

Author SHA1 Message Date
Kimmo Pekkola
4274397806 The m_FontCollection wasn't initialized so it could cause a crash on exit.
Some code cleanup.
2009-09-04 17:18:15 +00:00
Kimmo Pekkola
4bf4e51126 Reverted the changes from r209. 2009-09-04 16:37:51 +00:00
jsmorley
8239919333 Added MeterStyle functionality:
Rainy, given the "issues" listed at the bottom of this comment, I leave it to you whether to create a build using this revision or use r208 for the build.  I would like to start testing MeterStyle, but there are a few more things it needs work on.

What is MeterStyle?

MeterStyle
This will allow users to create CSS-like "Styles" for meters. This means that all the parameters of a meter can be defined in the style, and then many meters can use the style to eliminate copy / pasting the same parameters over and over on multiple meters. (Examples: FontColor=, FontSize= etc.)

How do I use it?

You will create a new [Section] (as many as you want) in the .ini. The section(s) can have any name.

[MyStringStyle]

Then you will tell Rainmeter that this is a "MeterStyle" and not a measure or meter

Style=Meter

Note: The "value" of the key "Style" can be anything. It can be used to add a description of the style if you like. Style=This style is for the AccuWeather part of this skin
It is however required, both to tell Rainmeter it is not a meter or measure and to have the MeterStyle routines parse it.

Then you define parameters you want to use in the style

FontColor=#FontColor#
FontFace=TheSansBold-Caps
FontSize=11
StringEffect=SHADOW
StringStyle=BOLD
StringAlign=LEFT
AntiAlias=1

Then in any or all meters, you just use

[MeterName]
Meter=STRING (or any other meter type)
MeterStyle=MyStringStyle

None of the parameters in the style are then required to be actually in the meter(s). They are "inherited" from the MeterStyle.

Note: This works and has had preliminary testing with dynamic variables like FontColor=[MeasureName] and regular variables like FontColor=#FontColor#. It doesn't matter if the [Variables] section or the [MeasureName] measure is before or after the [StyleName] in the .ini file.

What if I want to override a MeterStyle parameter on a meter?

Sure. Just put in any parameter with a value different from the one defined in the MeterStyle and the one in the meter will take presidence. All non-defined parameters will still use the MeterStyle value.

[MeterName]
Meter=STRING
MeterStyle=MyStringStyle
FontColor=100,100,100,50

What are these "known issues" you are on about?

This is still a bit of a work in progress. Right now you cannot define X or Y in a style. You can define W and H, but NOT for a STRING meter. You cannot define a "Transformation Matrix" in a style. MattKing will be looking into these tomorrow. W and H in a string meter is our top priority. We will also look at X and Y and hope for an easy solution. Transformation Matrix may have to come later.
2009-09-04 14:48:28 +00:00
jsmorley
dc365cfb6e Reconciled all changes by Rainy and the branch with MattKing's LocalFont function. The trunk now contains all current code changes.
Added changes to RANDOM function based on Rainy's input.  If there were multiple RANDOM statements in multiple CALC measure, they would all get the same random number.  Fixed.

Added new RANDOM function and LocalFont to the help files and History.htm
2009-09-03 00:33:46 +00:00
Kimmo Pekkola
9fcd6896de Added NULL checks for the CConfigParser::ReadString()'s parameters (http://code.google.com/p/rainmeter/issues/detail?id=105).
The font and registry handle are now free'ed properly if Initialize() is called multiple times.
2009-09-02 17:04:47 +00:00
Kimmo Pekkola
c6fdbf7b60 Dynamic variables can be used to change the font in the string Meter.cpp.
Removed the error message if the meter's dimensions are 0.
2009-08-27 17:05:10 +00:00
Kimmo Pekkola
f5f257a595 Previous beta changed everything to be case sensitive. Fixed. 2009-08-27 15:42:24 +00:00
Kimmo Pekkola
8563915b4b String meter supports now shadow and border effects. 2009-07-29 12:54:05 +00:00
Kimmo Pekkola
fce069e2c7 The antialias setting can be set for all meters. 2009-07-29 11:52:01 +00:00
Kimmo Pekkola
dd9ab1dc04 Added support for transformation matrix in meters. 2009-07-27 11:48:57 +00:00
Kimmo Pekkola
e2448f42b1 Added 64-bit compilation configuration.
The bitmap meter supports transition frames now.
Few Vista/Win7 fixes (the rainmeter.ini is now in %APPDATA%).
2009-07-21 12:26:50 +00:00
Kimmo Pekkola
5d2f960552 Code cleanup. 2009-02-14 10:11:28 +00:00
Kimmo Pekkola
30edc895f2 2009-02-10 18:37:48 +00:00