It is currently September 26th, 2020, 1:31 am

FileView plugin 2.1

Share and get help with Plugins and Addons
User avatar
eclectic-tech
Rainmeter Sage
Posts: 4116
Joined: April 12th, 2012, 9:40 pm
Location: Cedar Point, Ohio, USA

Re: FileView plugin 2.1

Post by eclectic-tech »

Virginityrocks wrote:Is there a way fileview could in the future, somehow, preload all of the 'pages' of the folder? If I access a folder with fileview, then proceed to scroll, it treats each scroll as a new access to that folder, causing a noticeable delay. Once I've scrolled the folder once fully, the problem goes away (I assume that's because that information is saved to ram). But the first time I load and scroll a folder, there is a delay of 3+ seconds for each page of scrolling.
I am experiencing the same delay when accessing a folder the first time with fileview... my delay can be as long as 10 seconds. :o
This only happens the first time the folder is scanned. Once the plugin has found all items, reaction time is normal.
I have been using the same skins for over a year and only noticed this in the last month or so, if that helps?

Any thoughts appreciated... oh, yeah, I did disable windows search indexing as described in a post above with no change :p
User avatar
Virginityrocks
Posts: 510
Joined: February 26th, 2011, 10:22 pm

Re: FileView plugin 2.1

Post by Virginityrocks »

Yeah. It'd be nice if the whole folder could be scanned when the skin is refreshed, so it eliminates the delay when scrolling.
User avatar
Brian
Developer
Posts: 2063
Joined: November 24th, 2011, 1:42 am
Location: Utah

Re: FileView plugin 2.1

Post by Brian »

I have a few skins that use FileView, and they do not show any noticeable lag, even when scanning large folders.

A FileView parent measure should index all its requested information when the parent measure updates (not the normal update cycle, but when you command FileView to get new information). When a child measure asks the parent for new indexed information (like scrolling through the items in the folder), it should be fairly instantaneous since the parent already has that information. If you traverse through the file system, the parent will have to gather the information again - and there is no way around that since the plugin it would be very inefficient to keep information on every file in memory.

Could either of you (or both) provide a simple test skin that is showing the behavior? The only things I can think of that could slow this process down is using the Recursion option and/or not updating the relevant meters then redrawing.

-Brian
User avatar
eclectic-tech
Rainmeter Sage
Posts: 4116
Joined: April 12th, 2012, 9:40 pm
Location: Cedar Point, Ohio, USA

Re: FileView plugin 2.1

Post by eclectic-tech »

Brian

Try this skin. I added a note in the [Variables] section... all you should need to modify is the 'Menu1Path' variable.
The low default Update rate is for quicker response, but I all my other menus (that do not exhibit delays) are set the same.

System Specs:
4.0.0 beta r2618 64-bit (Jul 13 2016)
Windows 10 Pro 64-bit (build 14393)
Path: C:\Program Files\Rainmeter\
IniFile: C:\Users\John\AppData\Roaming\Rainmeter\Rainmeter.ini
SkinPath: C:\Users\John\Documents\Rainmeter\Skins\

EDIT: There is no such thing as a SIMPLE fileview skin! :rolmfao:

Code: Select all

[Rainmeter]
Update=100
DynamicWindowSize=1
Group=#RootConfig# | DynamicMenu
OnRefreshAction=[mMenuPath]
OnUnfocusAction=[!DeActivateConfig "#RootConfig#\Menus\#MenuLocation#\#MenuName#\#MenuName#Menu" "#MenuName#Menu.ini"][!Redraw]

MouseOverAction=["#@#Addons\RainFocus\RainFocus.exe"]
;!!!NOTE: You Must have Rainmeter 2.5.0 beta r1696 (Nov 18 2012) installed for scroll to work
; Update available at: http://rainmeter.net/cms/

; [ Variables ] ===========================================

[Variables]
;=======================================================================================
; Brian: edit the 'Menu1Path' variable; mine was set to a folder in the skin @Resources containing 12 shortcuts to programs
; That should show you a list when you load the skin
; This is a compilation of all the @included files I use
; It did the same as my separate files when first loaded after restarting Rainmeter... locked up Rainmeter for 10 seconds, then displayed the list... additional load/unload work without a delay
;=======================================================================================
MenuLocation=TaskBar
MenuName=Menu_02
Menu1Name=Programs
Menu1Path=C:\Users\John\Documents\Rainmeter\Skins\Dynamic\@Resources\Programs
CurrentMenuPath=#Menu1Path#
MenuNumber=1
Page=0
NumberMenuItems=15
IconSize=Medium
;=======================================================================================
;  		---WEATHER INFO from http://www.weather.com
;=======================================================================================
Location=USOH0602
Unit=F
;=======================================================================================
;  		---WORLD TIME INFO
;=======================================================================================
;Locations
;
; You have to set locations here.
; There has been a change on the website, so this becomes a little more difficult.
; Go to https://time.yandex.com/
; Add a city you like.
; Move mouse over that city. Click the gear icon.
; Click "Informer".
; Look at the displayed code. Copy the number after "geoid=" for each city, one at a time, and replace the number code after each 'Location#=' below.
; Save this file. Refresh or Unload/Load the skin

Location1=200
;Los Angeles

Location2=202
;New York

Location3=10393
;London

Location4=213
;Moscow

Location5=10619
;Singapore

Location6=21265
;Melbourne

HideWCNames=0

;=======================================================================================
;  		---GMAIL OPTIONS
;=======================================================================================
GmailUser={UserName}
GmailPass={Password}
;=======================================================================================
;  		---NOW PLAYING MUSIC NAVIGATOR OPTIONS
;=======================================================================================
PathToMP=C:\Program Files (x86)\WinAmp\winamp.exe
Pause=1
SyncWallToTrack=0
Player0=WinAmp
Player0interface=WinAmp
Player1=WLM
Player1interface=WLM
Player2=AIMP
Player2interface=AIMP
Player3=foobar2000
Player3interface=CAD
Player4=iTunes
Player4interface=iTunes
Player5=J.River
Player5interface=CAD
Player6=Jukebox
Player6interface=CAD
Player7=MediaMonkey
Player7interface=MediaMonkey
Player8=MusicBee
Player8interface=CAD
Player9=Spotify
Player9interface=Spotify
Player10=WMP
Player10interface=WMP
;foobar2000 Uses CAD... foo_cad plugin needed
;J.River Uses CAD... intcad plugin needed
;Jukebox Uses CAD... intcad plugin needed
;MusicBee Uses CAD... version 1.2 or higher
;Spotify partially supported... see NowPlaying 
;WLM partially supports: Last.fm Client, TTPlayer, OpenPandora, and Zune
;=======================================================================================
;  		---GALLERY OPTIONS
;=======================================================================================
WallPath=C:\Users\John\Pictures\Walls
WallChangeRate=0
GalleryInterval=120
NoteChangeInterval=30
IdleSeconds=1800
;=======================================================================================
;  		---CLOCK OPTIONS
;=======================================================================================
24HourTime=0
TBClockWidth=155
ClockSize=3
TimeFormat=%#I:%M %p
DateFormat=%B %#d %Y
;=======================================================================================
;  		-- FONTS AND COLOR OPTIONS
;=======================================================================================
HDD1=C:\
HDD2=D:\
HDD3=E:\
HDD4=Z:\
Theme=Blank
FontName=#FontName1#
FontName1=Trebuchet MS
FontName2=Bradley Hand ITC
FontName3=Polo
FontName4=Segoe UI
FontName5=Avenir LT 35 Light
FontName6=SOMA-Roman
FontName7=
FontHeight=10
TextColor=163,198,15
TextAlpha=255
TextStyle=Normal
TextSelectStyle=Bold
TextEffect=None
TextEffectColor=29,14,7
TextEffectAlpha=255
SelectionBarColor=233,35,7
;,64
LineClr=#TBColor1#
LineAlpha=192
HideShadow=0
; ==============================
; Pantone colors 2016
UserColor1=247,202,201
UserColor1Name=Rose Quartz
UserColor2=247,120,107
UserColor2Name=Peach Echo
UserColor3=145,168,208
UserColor3Name=Serenity
UserColor4=3,79,132
UserColor4Name=Snorkel Blue
UserColor5=250,224,60
UserColor5Name=Buttercup
UserColor6=152,221,222
UserColor6Name=Limpet Shell
UserColor7=152,150,164
UserColor7Name=Lilac Gray
UserColor8=221,65,50
UserColor8Name=Fiesta
UserColor9=177,143,106
UserColor9Name=Iced Coffee
UserColor10=121,199,83
UserColor10Name=Green Flash
Red=200,20,20
Blue=20,20,200
Green=20,200,20
Gold=200,180,80
Yellow=255,240,60
Grey=128,128,128
DarkGrey=64,64,64
Black=0,0,0
White=255,255,255
GreyScaleIcons=0
IconTintColor=#TextColor#
BGTintColor=#TBColor1#
AliasOnOff=1
;=======================================================================================
;  		---BACKGROUND COLOR ANIMATION SETTINGS
;=======================================================================================
TBGradAngle=90
AnimPlay=1
AnimSpeed=2
AnimUpdateDivider=1
TBBorder=4
;=======================================================================================
;  		---TASKBAR SETTINGS
;=======================================================================================
TBBackImage=bar0
TBBevel=0
TBBackTile=0
TBWidth=#ScreenAreaWidth#
TBHeight=32
TBButtonWidth=110
TBButtonHeight=24
TBButtonAlpha=255
TBLabelAlign=Center
;Shade Color
TBColor1=29,14,7
;,#TBAlpha#
TBAlpha=192
;Main Color
TBColor2=29,14,7
;,#TBAlpha2#
TBAlpha2=128
;=======================================================================================
;  		--  SIDEBAR OPTIONS
;=======================================================================================
SBBackImage=#TBBackImage#
SBAlpha=192
SBBorder=10
SBWidth=220
SBHeight=(#ScreenAreaHeight#-#TBHeight#)
SBBackTile=0
SBButtonHeight=50
;=======================================================================================
;  		--  MENU OPTIONS
;=======================================================================================
MenuBack=#TBBackImage#
MenuAlpha=64
MenuTile=0
Action=Click
ToggleOnAction=1
MenuPanelWidth=#SBWidth#
MenuStyle=Menu#Icons#Icons
NumberMenuItems=15
; Icons= [Y, N, O = only]
Icons=Y
HideExt=1
PositionBarWidth=4
PositionBarColor=#TBColor2#
PositionBarAlpha=128
HighlightBarTextColor=#TextColor#
HighlightColor=#TextColor#
MenuBarColor=#TBColor1#
MenuBarAlpha=32
MenuBarHeight=19
;=======================================================================================
;  		-- DOCK OPTIONS
;=======================================================================================
DockBackground=dock1
HideDockBack=0
HideIconBase=1
DockItems=8
IconBaseImage=platter0
;		-- Height for text
PanelHeight=200
;		-- Text Panel Height (Notes Also)
PanelWidth=(#SBWidth#*0.88)
;		-- Text Panel Width (Notes Also)
;=======================================================================================
;  		--  MISC OPTIONS
;=======================================================================================
Station=Deep Space One
IconSize=Medium
StyleNumber=1
SBStatus=1
LineHeight=(#FontHeight#*1.8)
SetPage=Settings
Page=0
SearchFor=widgets
SBNewsActive=1
;--- USER LIST TYPE OPTION
; List Styles based on 'Icon=' value: 
; N=text list(no icons) 
; Y=text list (with icons)
; O=text tool tip (only icons)
Icons=Y
ExtSub=".com":"",".bat":"",".lnk":"",".m3u":"",".xspf":"",".pls":"",".exe":"",".scf":"","":"-"
; Substitute extensions to make menu display "cleaner"
MenuNumber=1

; Set number of items to display on 1 page of menu
TotalPages=[mPages]
; Calculate the total number of pages so page down does not show blanks
Get=(?(?=\n)\n(.*)\r.*)
; Lookahead assertion for webparse; ignores empty items (up to 99 max)

; [ Styles ] =====================================

[Style1]
X=(#SBBorder#+4)
Y=#LineHeight#r
W=160
H=(#LineHeight#)
ClipString=1
StringAlign=LEFT
StringStyle=#TextStyle#
StringEffect=#TextEffect#
FontFace=#FontName#
FontSize=#FontHeight#
FontColor=#TextColor#
FontEffectColor=#TextEffectColor#,#TextEffectAlpha#
AntiAlias=#AliasOnOff#
SolidColor=0,0,0,1

[Style2]
X=(#SBBorder#+4)
Y=#LineHeight#r
W=160
H=(#LineHeight#+2)
ClipString=1
StringAlign=LEFT
StringStyle=#TextSelectStyle#
StringEffect=#TextEffect#
FontFace=#FontName#
FontSize=#FontHeight#
FontColor=#TextColor#,#TextAlpha#
FontEffectColor=#TextEffectColor#,#TextEffectAlpha#
AntiAlias=#AliasOnOff#
SolidColor=#SelectionBarColor#,150

[StyleBar]
FontFace=#FontName#
FontSize=#FontHeight#
FontColor=#TextColor#
FontEffectColor=#TextEffectColor#
AntiAlias=#AliasOnOff#
ClipString=1

[StyleBarHi]
FontFace=#FontName#
FontSize=#FontHeight#
FontColor=#TextColor#
FontEffectColor=#TextEffectColor#
AntiAlias=#AliasOnOff#
ClipString=1


;----------------------------------------------------
; Styles
;----------------------------------------------------

[TextStyle]
FontFace=#FontName#
FontColor=#TextColor#
FontSize=#FontHeight#
FontEffectColor=#TextEffectColor#
StringStyle=#TextStyle#
StringEffect=#TextEffect#
AntiAlias=#AliasOnOff#
W=(#MenuPanelWidth#-#SBBorder#*6)
H=#LineHeight#
ClipString=1

[TextHighlight]
FontFace=#FontName#
FontColor=#TextColor#
FontSize=#FontHeight#
FontEffectColor=#TextEffectColor#
StringStyle=#TextSelectStyle#
StringEffect=#TextEffect#
W=(#MenuPanelWidth#-#SBBorder#*4)
H=#LineHeight#
ClipString=1

[IconStyle]
X=(#SBBorder#+5)
Y=r
H=#LineHeight#
AntiAlias=#AliasOnOff#

[HighlightStyle]
SolidColor=0,0,0,1
X=(#SBBorder#+5)
Y=5R
W=(#MenuPanelWidth#-#SBBorder#*4)
H=([Index1Icon:H] > [Index1Info:H] ? ([Index1Icon:H]+2) : ([Index1Info:H]+2))
DynamicVariables=1
MouseOverAction=[!SetOption #CURRENTSECTION# SolidColor "#SelectionBarColor#,150"][!SetOption #CURRENTSECTION# StringStyle #TextSelectStyle#][!UpdateMeter #CURRENTSECTION#][!Redraw]
MouseLeaveAction=[!SetOption #CURRENTSECTION# SolidColor ""][!SetOption #CURRENTSECTION# StringStyle #TextStyle#][!UpdateMeter #CURRENTSECTION#][!Redraw]

[InfoStyle]
X=5R
Y=r
W=(#MenuPanelWidth#-#SBBorder#*6)
H=#LineHeight#
Text="%1 "
;Text="%1 #CRLF#%2 #CRLF#%3 "
AutoScale=1
AntiAlias=#AliasOnOff#
ClipString=1

; [ Measures ] =============================================
[mMenuPath]
Measure=Calc
Formula=#MenuNumber#
Substitute="9":"#Menu9Path#","8":"#Menu8Path#","7":"#Menu7Path#","6":"#Menu6Path#","5":"#Menu5Path#","4":"#Menu4Path#","3":"#Menu3Path#","2":"#Menu2Path#","1":"#Menu1Path#"
FinishAction=[!SetVariable CurrentMenuPath "[*mMenuPath*]"][!WriteKeyValue Variables CurrentMenuPath "[*mMenuPath*]" "#CurrentPath#MenuVariables.inc"][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!Update][!Redraw]
DynamicVariables=1
; Determines the current menu, sets and writes the variable

[mPages]
Measure=Calc
Formula=Trunc((([mFolderCount]+[mFileCount])-1)/#NumberMenuItems#)
DynamicVariables=1
; Divides the total items by number on each page to determine how many pages are in the menu. If there are more than 99 files it will limit the pages to the 6... 6 is manually determined by the calculating 99/NumberMenuItems. If you use shorter menus the totalpages will be higher.

[mPageNumber]
Measure=Calc
Formula=(#Page#+1)
DynamicVariables=1

[mPageTotal]
Measure=Calc
Formula=(#TotalPages#+1)
DynamicVariables=1

[mPageUp]
Measure=Calc
Formula=(#Page#-1>0)? (#Page#-1):0
DynamicVariables=1
; Moves the menu up 1 page (lower numbered page is "higher" on the menu). Checks if lower than first page "0" and if it is, returns "0"; stops at top page.

[mPageDn]
Measure=Calc
Formula=((#Page#+1)>#TotalPages#)? #TotalPages#:(#Page#+1)
DynamicVariables=1
; Moves the menu down 1 page (lower numbered page is "higher" on the menu). Checks if higher than total pages and if it is, returns total pages; stops at last page.

[mPagePositionPercent]
Measure=Calc
Formula=((mPageNumber/mPageTotal)*100)
MaxValue=100
DynamicVariables=1
; Calculates the bar graph height based on the current page number compared to (divided by) the total number of items in the menu. 

;----------------------------------------------------
; Measures
;----------------------------------------------------

[mPath]
Measure=Plugin
Plugin=FileView
Path="#CurrentMenuPath#"
ShowDotDot=0
;SortAscending=0
;SortType=Type
;SortDateType=Created
;Recursive=1
;ShowFolder=0
;ShowFile=0
ShowHidden=0
HideExtensions=#HideExt#
;Extensions="jpg;png"
Count=#NumberMenuItems#

[mFolderCount]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FolderCount

[mFileCount]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileCount

;----------------------------------------------------
; Index 1

[mIndex1Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=1

[mIndex1Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=1

;----------------------------------------------------
; Index 2

[mIndex2Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=2

[mIndex2Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=2

;----------------------------------------------------
; Index 3

[mIndex3Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=3

[mIndex3Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=3

;----------------------------------------------------
; Index 4

[mIndex4Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=4

[mIndex4Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=4

;----------------------------------------------------
; Index 5

[mIndex5Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=5

[mIndex5Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=5

;----------------------------------------------------
; Index 6

[mIndex6Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=6

[mIndex6Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=6

;----------------------------------------------------
; Index 7

[mIndex7Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=7

[mIndex7Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=7

;----------------------------------------------------
; Index 8

[mIndex8Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=8

[mIndex8Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=8

;----------------------------------------------------
; Index 9

[mIndex9Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=9

[mIndex9Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=9

;----------------------------------------------------
; Index 10

[mIndex10Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=10

[mIndex10Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=10

;----------------------------------------------------
; Index 11

[mIndex11Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=11

[mIndex11Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=11

;----------------------------------------------------
; Index 12

[mIndex12Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=12

[mIndex12Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=12

;----------------------------------------------------
; Index 13

[mIndex13Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=13

[mIndex13Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=13

;----------------------------------------------------
; Index 14

[mIndex14Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=14

[mIndex14Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=14

;----------------------------------------------------
; Index 15

[mIndex15Name]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=FileName
Index=15

[mIndex15Icon]
Measure=Plugin
Plugin=FileView
Path=[mPath]
Type=Icon
IconSize=#IconSize#
Index=15


[mTBAnim]
Measure=Calc
Formula=(mTBAnim%360)+#AnimSpeed#*#AnimPlay#
UpdateDivider=#AnimUpdateDivider#
DynamicVariables=1

[mNumberItems]
Measure=Calc
Formula=(#NumberMenuItems#+5>25)? 10:(#NumberMenuItems#+5)
DynamicVariables=1

; [ Meters ] =====================================

[Background]
Meter=Image
;ImageName=#@#Images\#MenuBack#
X=#SBBorder#
;Y=#MenuBarHeight#
W=(#MenuPanelWidth#-#SBBorder#*2-10)
H=((#NumberMenuItems#*1.1)*([Index1Icon:H] > [Index1Info:H] ? ([Index1Icon:H]+4) : ([Index1Info:H]+4)))
ImageTint=#BGTintColor#
Tile=#SidebarTile#
SolidColor=#TBColor1#,#TBAlpha#
SolidColor2=#TBColor2#
GradientAngle=(#TBGradAngle#+[mTBAnim])
ScaleMargins=30,30,30,30
MouseScrollUpAction=[Play #@#Sounds\page-flip-2.wav][!CommandMeasure mPath "PageUp"][!SetVariable Page [mPageUp]][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MouseScrollDownAction=[Play #@#Sounds\page-flip-2.wav][!CommandMeasure mPath "PageDown"][!SetVariable Page [mPageDn]][!UpdateMeasure *][!UpdateMeter *][!Redraw]
MiddleMouseUpAction=["%windir%\explorer.exe" /e,"#CurrentMenuPath#"]
AntiAlias=#AliasOnOff#
DynamicVariables=1
Hidden=0
; Scrolls menu pages

[Shadow]
Meter=Image
ImageName=#@#Images\shadow16
X=(#SBBorder#+6)
Y=([Background:H]+#MenuBarHeight#)
W=((#MenuPanelWidth#-#SBBorder#*2)-22)
H=16
ScaleMargins=0,0,1,0
Hidden=#HideShadow#
DynamicVariables=1

[ShadowCorner]
Meter=Image
ImageName=#@#Images\shadow32
X=R
Y=-16r
W=32
H=32
ScaleMargins=0,0,0,0
Hidden=#HideShadow#
DynamicVariables=1

[SidebarShadow]
Meter=Image
ImageName=#@#Images\shadow16h
X=16r
Y=8
W=16
H=(([Background:H]+#MenuBarHeight#)-24)
ScaleMargins=0,0,0,1
Hidden=#HideShadow#
Group=DynamicMenuTaskbar
DynamicVariables=1

[PageUp]
Meter=IMAGE
X=(#MenuPanelWidth#-#SBBorder#*2)
Y=0
W=10
H=10
ImageName=#@#\Images\up
LeftMouseUpAction=[Play #@#Sounds\page-flip-2.wav][!CommandMeasure mPath "PageUp"][!SetVariable Page [mPageUp]][!UpdateMeasure *][!UpdateMeter *][!Redraw]
; RightMouseUpAction=["#CurrentPath#@Resources\Options\configmenu.exe"]
; ToolTipText=Middle-click to Update Menu#CRLF#Right-click to Configure
DynamicVariables=1
Group=Bar | List
;; Writes the new value for the page to the included variable file; this makes it a permanent change

[PagePosition]
Meter=BAR
MeasureName=mPagePositionPercent
X=((#MenuPanelWidth#-#SBBorder#*2+3)+(2-#PositionBarWidth#/2))
Y=R
W=#PositionBarWidth#
H=([Background:H]-20)
BarOrientation=VERTICAL
BarColor=#PositionBarColor#,#PositionBarAlpha#
Flip=1
SolidColor=0,0,0,1
LeftMouseUpAction=[Play #@#Sounds\page-flip-2.wav][!CommandMeasure mPath "PageDown"][!SetVariable Page [mPageDn]][!UpdateMeasure *][!UpdateMeter *][!Redraw]
RightMouseUpAction=[Play #@#Sounds\page-flip-2.wav][!CommandMeasure mPath "PageUp"][!SetVariable Page [mPageUp]][!UpdateMeasure *][!UpdateMeter *][!Redraw]
; MouseScrollUpAction=[Play #@#Sounds\page-flip-2.wav][!WriteKeyValue Variables Page [mPageUp] "#CurrentPath#MenuVariables.inc"][!Refresh]
; MouseScrollDownAction=[Play #@#Sounds\page-flip-2.wav][!WriteKeyValue Variables Page [mPageDn] "#CurrentPath#MenuVariables.inc"][!Refresh]
DynamicVariables=1
Group=Bar | List
;; Shows your location based on position in the directory list

[PageDown]
Meter=IMAGE
X=(#MenuPanelWidth#-#SBBorder#*2)
Y=([Background:H]+10)
W=10
H=10
ImageName=#@#Images\down
LeftMouseUpAction=[Play #@#Sounds\page-flip-2.wav][!CommandMeasure mPath "PageDown"][!SetVariable Page [mPageDn]][!UpdateMeasure *][!UpdateMeter *][!Redraw]
DynamicVariables=1
Group=Bar | List
;; Writes the new value for the page to the included variable file

; [Path]
; Meter=String
; MeasureName=mMenuPath
; MeterStyle=TextStyle | TextHighlight
; W=(([Background:W])*0.81)
; Text="%1 "
; X=(#SBBorder#+2)
; ClipString=1

[Index1]
Meter=Image
MeterStyle=HighlightStyle
Y=4
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex1Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index1Icon]
Meter=Image
MeasureName=mIndex1Icon
MeterStyle=IconStyle

[Index1Info]
Meter=String
MeasureName=mIndex1Name
MeterStyle=TextStyle | InfoStyle

[Index2]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex2Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index2Icon]
Meter=Image
MeasureName=mIndex2Icon
MeterStyle=IconStyle

[Index2Info]
Meter=String
MeasureName=mIndex2Name
MeterStyle=TextStyle | InfoStyle

[Index3]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex3Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index3Icon]
Meter=Image
MeasureName=mIndex3Icon
MeterStyle=IconStyle

[Index3Info]
Meter=String
MeasureName=mIndex3Name
MeterStyle=TextStyle | InfoStyle

[Index4]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex4Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index4Icon]
Meter=Image
MeasureName=mIndex4Icon
MeterStyle=IconStyle

[Index4Info]
Meter=String
MeasureName=mIndex4Name
MeterStyle=TextStyle | InfoStyle

[Index5]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex5Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index5Icon]
Meter=Image
MeasureName=mIndex5Icon
MeterStyle=IconStyle

[Index5Info]
Meter=String
MeasureName=mIndex5Name
MeterStyle=TextStyle | InfoStyle

[Index6]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex6Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index6Icon]
Meter=Image
MeasureName=mIndex6Icon
MeterStyle=IconStyle

[Index6Info]
Meter=String
MeasureName=mIndex6Name
MeterStyle=TextStyle | InfoStyle

[Index7]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex7Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index7Icon]
Meter=Image
MeasureName=mIndex7Icon
MeterStyle=IconStyle

[Index7Info]
Meter=String
MeasureName=mIndex7Name
MeterStyle=TextStyle | InfoStyle

[Index8]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex8Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index8Icon]
Meter=Image
MeasureName=mIndex8Icon
MeterStyle=IconStyle

[Index8Info]
Meter=String
MeasureName=mIndex8Name
MeterStyle=TextStyle | InfoStyle

[Index9]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex9Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index9Icon]
Meter=Image
MeasureName=mIndex9Icon
MeterStyle=IconStyle

[Index9Info]
Meter=String
MeasureName=mIndex9Name
MeterStyle=TextStyle | InfoStyle

[Index10]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex10Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index10Icon]
Meter=Image
MeasureName=mIndex10Icon
MeterStyle=IconStyle

[Index10Info]
Meter=String
MeasureName=mIndex10Name
MeterStyle=TextStyle | InfoStyle

[Index11]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex11Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index11Icon]
Meter=Image
MeasureName=mIndex11Icon
MeterStyle=IconStyle

[Index11Info]
Meter=String
MeasureName=mIndex11Name
MeterStyle=TextStyle | InfoStyle

[Index12]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex12Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index12Icon]
Meter=Image
MeasureName=mIndex12Icon
MeterStyle=IconStyle

[Index12Info]
Meter=String
MeasureName=mIndex12Name
MeterStyle=TextStyle | InfoStyle

[Index13]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex13Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index13Icon]
Meter=Image
MeasureName=mIndex13Icon
MeterStyle=IconStyle

[Index13Info]
Meter=String
MeasureName=mIndex13Name
MeterStyle=TextStyle | InfoStyle

[Index14]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex14Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index14Icon]
Meter=Image
MeasureName=mIndex14Icon
MeterStyle=IconStyle

[Index14Info]
Meter=String
MeasureName=mIndex14Name
MeterStyle=TextStyle | InfoStyle

[Index15]
Meter=Image
MeterStyle=HighlightStyle
LeftMouseUpAction=[Play "#@#Sounds\clickerx.wav"][!CommandMeasure mIndex15Name "FollowPath"][!UpdateMeasure mPath][!WriteKeyValue Variables Page 0 "#CurrentPath#MenuVariables.inc"][!UpdateMeter *][!Redraw]

[Index15Icon]
Meter=Image
MeasureName=mIndex15Icon
MeterStyle=IconStyle

[Index15Info]
Meter=String
MeasureName=mIndex15Name
MeterStyle=TextStyle | InfoStyle


[MenuBar]
Meter=Image
;ImageName=#@#Images\button-#theme#
;#MenuBack#
X=#SBBorder#
Y=([Background:H])
W=(#MenuPanelWidth#-(#SBBorder#+4))
H=#MenuBarHeight#
ImageTint=#TBColor1#
;SolidColor=#TBColor1#,#TBAlpha#
;SolidColor2=#TBColor2#
;GradientAngle=(#TBGradAngle#+[mTBAnim])
ScaleMargins=2,1,2,1
Tile=#TBBackTile#
DynamicVariables=1
;; Menu bar: allows you to open the menu folder

[MenuFolderNavUp]
Meter=IMAGE
ImageName=#@#Images\circleup
X=(#SBBorder#*2-8)
Y=3r
W=12
H=12
ImageTint=#TextColor#
LeftMouseUpAction=[!CommandMeasure mPath "PreviousFolder"][!UpdateMeasure mPath][!SetVariable Page 0][!UpdateMeter *][!Redraw]
ToolTipText=Previous Folder

[MenuBarText]
Meter=String
MeterStyle=TextStyle
X=((#MenuPanelWidth#-#SBBorder#*2)/2)
Y=6r
W=(#MenuPanelWidth#-#SBBorder#*8)
StringAlign=CENTERCENTER
SolidColor=0,0,0,64
Text=#Menu1Name# ~ [mPageNumber]/[mPageTotal]
LeftMouseUpAction=[Play #@#Sounds\clickerx.wav]["[mMenuPath]"][!ToggleGroup DynamicMenu]
;[!DeActivateConfig "#RootConfig#\Menus\#MenuLocation#\#MenuName#\#MenuName#Menu" "#MenuName#Menu.ini"]
;[!ToggleGroup DynamicMenu]
ToolTipText=Open Folder
DynamicVariables=1

[MenuFolderSize]
Meter=IMAGE
ImageName=#@#Images\circleplus
X=(#MenuPanelWidth#-#SBBorder#*2-28)
Y=([MenuFolderNavUp:Y])
W=12
H=12
ImageTint=#TextColor#
;LeftMouseUpAction=[!WriteKeyValue Variables "NumberMenuItems" "[mNumberItems]" "#CurrentPath#MenuVariables.inc"][!Refresh]
ToolTipText=List Size
DynamicVariables=1

[MenuFolderClose]
Meter=Image
ImageName=#@#Images\circlex
X=1R
Y=r
W=12
H=12
ImageTint=#TextColor#
LeftMouseUpAction=[Play #@#Sounds\clickerx.wav][!DeActivateConfig "#RootConfig#\Menus\#MenuLocation#\#MenuName#\#MenuName#Menu" "#MenuName#Menu.ini"][!Redraw]
ToolTipText=Close List
DynamicVariables=1


[IAmThere4IAm]
Meter=String
Hidden=1

[MetaData]
Name=DYNAMIC ~ Menus & Docks
Author=Eclectic Tech 
Information='Dynamic' suite, for the Windows system monitoring tool, Rainmeter, was designed to simplify setup and changes to the skin as related to the end users system.
Menus and Dockable Launch Icons can be dynamically setup by middle-clicking and selecting the desired link to a folder or file located on your system. Button titles, Icon tooltips, and menu details are all handled in the skin.
There is no need to make changes to the code. Adding additional menus or icon launchers is as simple as copying a folder, changing folder and menu name, and refreshing Rainmeter.
License=Creative Commons Attribution-Noncommercial-Share Alike No-Derivatives 3.0 License
Version=3.2016.05.24
User avatar
Brian
Developer
Posts: 2063
Joined: November 24th, 2011, 1:42 am
Location: Utah

Re: FileView plugin 2.1

Post by Brian »

HAHA, simple...

Your skin runs just fine on my system - even if I point the path to a very large folder (like C:\Windows).

The plugin asks the system for the information, so perhaps something is slowing this process down.

Read this: http://answers.microsoft.com/en-us/windows/wiki/windows_10-update/system-file-check-sfc-scan-and-repair-system-files/bc609315-da1f-4775-812c-695b60477a93
Basically, you will run sfc /scannow from an elevated command prompty (as a Admin), then Dism /Online /Cleanup-Image /CheckHealth (and if it finds errors, then run Dism /Online /Cleanup-Image /RestoreHealth).

Another option you can try: http://www.tenforums.com/general-support/7009-file-explorer-extremely-slow-unstable.html.
This is basically disabling the Quick Access stuff in Windows 10, and possibly disabling some shell extensions.

From here, I have no idea what to tell you since I am not seeing what the problem is. Seems Windows 10 related since you more then likely upgraded to the Anniversary Update (1607) recently.

-Brian
User avatar
jsmorley
Developer
Posts: 21387
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: FileView plugin 2.1

Post by jsmorley »

It's practically instantaneous on my system as well, no matter where I point the path.

4.0.0 beta r2618 64-bit (Jul 13 2016)
Windows 10 Pro 64-bit (build 14393)
Path: C:\Program Files\Rainmeter\
IniFile: C:\Users\Jeffrey\AppData\Roaming\Rainmeter\Rainmeter.ini
SkinPath: C:\Users\Jeffrey\Documents\Rainmeter\Skins\
User avatar
eclectic-tech
Rainmeter Sage
Posts: 4116
Joined: April 12th, 2012, 9:40 pm
Location: Cedar Point, Ohio, USA

Re: FileView plugin 2.1

Post by eclectic-tech »

Thanks for the info and feedback...

I ran both commands and there were now errors or corruption. O.O
sfc-dism1.png
I also look at the forum10 post, I already had a setting to open ThisPC and uncheck the options for quick access and recent files.

After doing that, I rebooted and the skin did the same thing. The symptom on my PC is similar to the issue of faded skins reported here, but I think the symptom is due to the blocking that is happening while the plugin scans the folder.

I will continue to see if I can find an answer, but I believe you are correct that something on my system is at fault, not Rainmeter or the plugin!

Thanks for listening to me complain and for the suggestions! :rosegift:
You do not have the required permissions to view the files attached to this post.
User avatar
Brian
Developer
Posts: 2063
Joined: November 24th, 2011, 1:42 am
Location: Utah

Re: FileView plugin 2.1

Post by Brian »

Just for fun, could you try the attached version? Just extract the plugin and place it in your Program Files\Rainmeter\Plugins folder.

Note: This is a 64-bit version, let me know if you need a 32 bit one.

File Removed.

-Brian
User avatar
eclectic-tech
Rainmeter Sage
Posts: 4116
Joined: April 12th, 2012, 9:40 pm
Location: Cedar Point, Ohio, USA

Re: FileView plugin 2.1

Post by eclectic-tech »

No change :-(

I tried my suite & virginityrock's DropTop and both still lock up Rainmeter. In my suite it is when my shortcut folder is first accessed. The Download and Recent folders in DropTop may be even worse with this version (enough to generate a system message about Rainmeter not responding).

Thanks for trying... Any diagnostics I might be able to run that would give you any details?
User avatar
Brian
Developer
Posts: 2063
Joined: November 24th, 2011, 1:42 am
Location: Utah

Re: FileView plugin 2.1

Post by Brian »

Interesting that it was slower with that version.

I was reading through some microsoft docs and found a small optimization that I was hoping was improve performance, but looks like it didn't work out.

Here is a link to the ms doc:
https://msdn.microsoft.com/en-us/library/windows/desktop/aa364419(v=vs.85).aspx - Specifically the dwAdditionalFlags option.

This is what optimization said:
Uses a larger buffer for directory queries, which can increase performance of the find operation.

Anyway.....looks like not much can be done at this time. This really feels like a problem with the new anniversary update from Microsoft. Obviously it only effects some configurations/systems. I will keep an eye for a solution.

-Brian