Commit Graph

115 Commits

Author SHA1 Message Date
jsmorley
3c98527338 Add: Formulas now allowed in the following settings:
LineWidth
LineLength
StartAngle
RotationAngle
Angle
ImageRotate
MinValue
MaxValue
IfAboveValue
IfEqualValue
IfBelowValue
2012-02-19 15:45:43 +00:00
Birunthan Mohanathas
35be827071 - Changed std::transform(..., ::towlower/::towupper) to _wcsupr/_wcslwr
- MathParser: Fixed stack overflow (and possible crash) when the nested conditional limit is exceeded
2012-01-25 16:00:49 +00:00
spx
ebec08914a Adjusted copyright notice.
http://www.gnu.org/licenses/gpl-2.0.html
2012-01-23 06:36:15 +00:00
spx
3bebd7002a Minor tweaks. 2011-12-09 19:49:06 +00:00
spx
8e8b7d1268 Code tweaks and cleanup. 2011-12-04 22:18:40 +00:00
spx
34005f14a4 Switched from std::wstring.compare() to wcscmp(). 2011-11-27 08:30:39 +00:00
Birunthan Mohanathas
b02371276f Minor tweaks. 2011-11-16 16:47:20 +00:00
spx
bbe733b437 Code tweaks and cleanups. 2011-11-10 13:44:19 +00:00
Birunthan Mohanathas
1e9d424c99 Made log messages more consistent. 2011-11-09 09:27:06 +00:00
spx
a209bf15d0 - Fixed Button issue: http://rainmeter.net/forum/viewtopic.php?t=10274&p=59935
- Removed unneeded NULL checks.
- Other code tweaks and cleanups.
2011-11-08 10:32:57 +00:00
spx
f1266f6815 Fixed a mistake on r1010. 2011-11-01 06:01:12 +00:00
spx
1aaa03308c Code cleanup. 2011-11-01 04:56:46 +00:00
Birunthan Mohanathas
f14d751604 - Added #CURRENTFILE# variable
- Changes to log strings
2011-09-09 16:31:55 +00:00
Birunthan Mohanathas
f17602ee1d - Manage Skins: Load order can now be changed
- Fixed that the PLAY/PLAYLOOP commands didn't work with relative paths
- Errors that used to display in a messagebox are now logged and shown in the About Log dialog (which is opened when an error occurs)
- Some minor tweaks
2011-09-08 14:39:25 +00:00
spx
d054ce8e5c Minor tweaks. 2011-06-06 12:27:19 +00:00
Birunthan Mohanathas
a92bdd9b18 Cosmetic changes to code. 2011-03-29 19:21:57 +00:00
spx
a2316446ca Switched map/hash_map/set for caching to unordered_map/unordered_set. 2011-02-18 16:26:58 +00:00
spx
fe9fd9f476 Code cleanup. 2011-02-15 16:26:54 +00:00
spx
1ba57f2adf Fixed some Lua related issues.
Removed some internal functions from exposed functions for Lua.
Code cleanup and optimizing for VC2010.
2011-02-15 13:22:19 +00:00
spx
f4a16a1a0a Fixed crash when freeing the LocalFont. 2011-01-31 19:57:59 +00:00
spx
7ea3a762ac - Fixed that r716 (precompiled header) doesn't work on x64.
- Now uses constructor initialization list in each class.
- TintedImage: Code cleanup.
2011-01-29 00:11:01 +00:00
spx
0ad2ef9414 Code cleanup. 2011-01-24 10:15:05 +00:00
spx
3569412464 Code cleanup. 2011-01-23 14:24:34 +00:00
spx
235841e01f Added AutoScale=2 and "k" postfix to Meter=STRING.
----
For instance:
A=2800000000, B=0

- AutoScale=0
AutoScale is disabled. Uses Scale value. (Same as before.)
A="2800000000", B="0"

- AutoScale=1
Scales value by 1024. (Same as before.)
A="2.6 G", B="0.0 "

- AutoScale=2
Scales value by 1000.
A="2.8 G", B="0.0 "

- AutoScale=1k
Scales value by 1024, and uses kilo as the lowest unit.
A="2.6 G", B="0.0 k"

- AutoScale=2k
Scales value by 1000, and uses kilo as the lowest unit.
A="2.8 G", B="0.0 k"
----
2011-01-19 15:31:45 +00:00
spx
7ae8f298f8 - Modified font caching. (Fixed an issue that LocalFont file is locked until exiting Rainmeter.)
- Disabled checked iterators in release mode. (_SECURE_SCL=0)
http://msdn.microsoft.com/en-us/library/aa985965.aspx
Note: _SECURE_SCL defaults to 0 in release mode in VC10(=VC2010).
2011-01-17 22:39:40 +00:00
spx
f4bfe8f4fc - Added #CURRENTSECTION# variable.
For instance:
-----
[Variables]
Var=#CURRENTSECTION#

[StyleString]
Text=#CURRENTSECTION#

[MeterString]
Meter=String
MeterStyle=StyleString
Prefix="#CURRENTSECTION# / "
Postfix=" / #Var#"
-----
Displays:
MeterString / MeterString / Variables

- Additional changes for r677.
* Obsoleted DebugLog(). Use LogWithArgs() with LOG_DEBUG instead.
* Added Log().
2010-12-20 08:57:37 +00:00
JamesAC
c50f1c27f2 - Replace DebugLog() with LogWithArgs(int nLevel, const WCHAR* format, ... ), so that variable strings can be logged but the log level can be set to those other than LOG_DEBUG
- Note: DebugLog() is still in the code as I was not sure whether it is required to maintain Litestep interoperability
- Replaced instances of LOG_DEBUG where other log levels would be more appropriate
2010-12-19 23:06:13 +00:00
spx
d1a7b604df Core dll:
- Replace swprintf/wsprintf/wcscpy/wcscat to _snwprintf_s/wcsncpy_s/wcsncat_s.
- Changed printf format parameter strictly for supporting both 32bit and 64bit.
- Fixed an issue that !RainmeterWriteKeyValue doesn't accept %APPDATA%\Rainmeter path.
- Code cleanup.
2010-12-16 20:35:44 +00:00
mapeki
c516bf8310 Added Lua Stuff
There are a few changes to the core Rainmeter code.
2010-12-12 17:08:36 +00:00
Birunthan Mohanathas
6efbd23314 Adding ImageCrop and MeasureName/ImageName changes by spx. 2010-12-05 15:34:37 +00:00
spx
96c81ac516 - Added BackgroundMode=4 for tiling background image.
- Added tinting functions for Background.
- Added "ImageCrop" option to Meter=IMAGE/BAR/HISTOGRAM/ROTATOR and Background.
- Added "Tile" option to Meter=IMAGE.
- Some code cleanups.
2010-12-04 15:07:28 +00:00
spx
999ab0bd18 Code optimization. 2010-11-25 22:00:34 +00:00
spx
0e1486f0be Code optimization. 2010-11-25 15:34:49 +00:00
spx
d302aa675a Code cleanups. 2010-11-22 19:52:10 +00:00
spx
45e33ce704 - Code cleanup.
- MeterLine: Small performance improvement on Draw().
2010-11-19 07:33:58 +00:00
spx
f689bbe6f1 Small code optimization. 2010-11-16 20:12:27 +00:00
Birunthan Mohanathas
0dd7ab194f Fixed that %10, %11, etc. doesn't work. 2010-11-14 18:55:34 +00:00
spx
cab258a7e5 Code optimization and removed unused part for reducing core dll size. 2010-11-11 20:24:59 +00:00
spx
dbc021d299 Minor code tweaks & cleanups. 2010-11-05 03:25:21 +00:00
spx
1668de5a3b Code cleanup & cosmetics. 2010-10-31 20:13:32 +00:00
Birunthan Mohanathas
11588043de Error messages now display meter/measure in question. 2010-09-21 16:45:29 +00:00
spx
5ab0192d41 NumOfDecimals is now enabled when Percentual=1 in STRING meter. 2010-09-15 12:52:40 +00:00
spx
2cb88b0733 Shrunk some string buffer size. 2010-09-13 20:06:52 +00:00
jsmorley
eee8d9bb1c Changed ToolTip function to allow using %1, %2 etc. as appropriate for various meter types:
Line, String: %1, %2, %3, ...
Histogram: %1, %2
Others: %1
2010-09-10 17:29:30 +00:00
spx
a6f2f01036 Some code changes for optimization 2010-03-30 22:37:05 +00:00
spx
06ec730bfd - Added the workaround to pin the window to desktop in Vista/7 with Aero.
- Added !RainmeterSetTransparency, !RainmeterShowFade, !RainmeterHideFade, !RainmeterToggleFade.

- Added the function to log the installed font families to the log file when Debug=1 is set.

- Added the workaround for issue 145. The wrong drawing position was fixed when AntiAlias=0 is set.
2010-03-20 19:40:30 +00:00
jsmorley
3166c5d5f2 MattKings Changes:
1) New feature of Meter=String
StringCase= [NONE | LOWER | UPPER | PROPER]
2) Changes to SetVariable to allow mathematical formulas and functions to be used in setting a variable.
2010-03-18 19:48:14 +00:00
spx
506b6b84f3 FIXED: IMAGE and STRING meter were not compatible with a new value-reading method of r330. 2010-02-09 06:53:34 +00:00
spx
6088470157 - CHANGED: ConfigParser now reads value strictly. Note that this change affects the
reading of various skin setting values.

 For instance:
 - OK
  FontSize=10
  FontSize=0
 - NG (uses default value instead)
  FontSize=
  FontSize=ABC
  FontSize=20ABC (has been parsed as "FontSize=20" until now.)

- CHANGED: FontSize=0(invisible) is now able to use in Meter=STRING.

- Fixed the problem that the window doesn't move into the screen correctly when KeepOnScreen is 1.
2010-02-08 14:12:47 +00:00
spx
c9fd071177 Changed behavior so as not to indicate the error message box when DynamicVariables is 1 and FontSize is 0. (issue 126)
FIXED: Virtual Bytes usage for an x64 process with perfmon plugin does not display value greater than 4 GB (issue 113)
The numerical value greater than 32bit can be now displayed when NumOfDecimals is 0 in Meter=STRING.
Fixed the broken compatibility in Windows 2000. (AboutDialog, SysInfo)
2010-02-04 07:16:22 +00:00
spx
07c9f62e40 Fixed: Wrong font is used due to the font caching problem. 2009-10-11 13:03:20 +00:00
Kimmo Pekkola
0b4ba32924 Added cache for the fonts.
Fixed a memory leak in the string meter.
Changed the library project to use precompiled headers.
2009-10-07 16:45:14 +00:00
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