Shellstyle.dll file modification Methods in Visual style _ Application Tips

Source: Internet
Author: User
Tags border color numeric value
Shellstyle.dll file modifications in Visual style
2007-3-8 11:25:00
Author: silencer
Shellstyle.dll Modified * Part of the content reference from WHISTL3R Shellstyle Tutorial

Preliminary knowledge
The structure of the 1.shellstyle.dll
Uifiles:
UIFile1: Defining Forms and Task List styles
UIFile2: Defining Control Panel Styles

Resources: List of resource files
10,11,12: Music Folder
13,14,15: Pictures folder
16,17,18: Finding
19,20,21: Video Folders
22, 26: Control Panel
25: System folders
100,101,102,103,104,105,106,107: Panel Open/Close button
110,112: Panel Top Bar
120: Background

Strings: Defines a commonly used string or numeric value (font, size)

CPWEBVW. CSS: Defining user Account Form Styles

2. Use of resources
Rcstr (str_id)
Number in Str_id:strings

Rcbmp (bmp_id, stretching, Transparent_color, WIDTH, HEIGHT, Size_flag, MIRROR)
Number in Bmp_id:resources
Stretching: Fill Mode 1 = Normal, 3, = repeat, 6 = stretch, 7 = 32bit bitmap
Transparent_color: Color ignored when padding #RRGGBB
width, Height: widths, heights
Size_flag: Image Size 1 = Use picture default size, 0 = use specified size
MIRROR: Reverse 0 = normal, 1 = reverse

Rcint (str_id)//convert string to numeric value
Number in Str_id:strings

DTB (Handlemap (a), b,c)//guessing is a way to get the images in the current topic, but the images represented by A,b,c values are not very clear

Sysmetric (ID)//System Variable table
ID Desirable value:
0 Screen width
1 screen Height
2 Width of sizable window frame
3 Height of sizable window frame
4 Width of scroll arrows on vertical scroll bar
5 Height of scroll arrows on vertical scroll bar
6 Width of scroll arrows on horizontal scroll bar
7 Height of scroll arrows on horizontal scroll bar
8 Height of window title
9 Width of non-sizable window frame
The Height of non-sizable window frame
One Width of DOUBLE or PANEL window frame
The Height of DOUBLE or PANEL window frame
Scroll box width on horizontal Scroll bar in text editing windows
Scroll box height on vertical Scroll bar in text editing windows
Minimized window icon width
Minimized window icon Height
Maximum insertion point Width
Maximum insertion point Height
Single-line Menu Bar Height
Maximized window width
Maximized window height
Kanji Window Height
Minimum Sizable window width
Minimum Sizable window height
Minimum window width
num Minimum Window Height
Windows controls Width
Window Controls Height
1 if mouse hardware present; otherwise 0
1 for Microsoft Windows debugging version; otherwise 0
1 if mouse buttons swapped; otherwise 0
Width of a button in a half-caption window ' s caption or title bar
The Height of Half-caption window caption area

Core part
The writing of Uifile
The content in Uifile is that many structures are
<style resid=***>
...
Element [Id=atom (* * *)]
{...}
Element [Id=atom (* * *)]
{...}
...
...
</style>
Code snippet that defines the style of a particular part and its inner elements
The attributes that can be included are
Contentalign://Element position. can have the following values
Top:topleft, TopRight, Topcenter
Middle:middleleft, MiddleRight, MiddleCenter
Bottom:bottomleft, BottomRight, Bottomcenter
Wrap:wrapleft, Wrapright, Wrapcenter//Only available for text

Background://Background color
Foreground://Foreground color
BorderColor://Border Color These 3 properties can have the following values
RGB (red,green,blue)//rgb color
ARGB (Alpha,red,green,blue)//contains alpha channel
Gradient (ARGB (alpha,red,green,blue), ARGB (Alpha,red,green,blue), Direction)//fade, 1th color variable to upper left, 2nd right lower driection: direction 0 = Horizontal, 1 = Vertical
Black, white, red, green, blue, ...//Direct description
Windows, windowtext, ButtonFace, Buttonshadow, Buttonlight, ButtonText, ScrollBar, Hotlight, Activecaption, CaptionText ...//System colors

FontSize://font size
Using values from the strings table

Fontface://font
Using values from the strings table

FontStyle://font style
Use normal, bold, italic, underline, etc.

Borderthickness:rect (Left,top,right,bottom); Border width

Margin:rect (Left,top,right,bottom); Edge width that remains unchanged when zooming
Padding:rect (Left,top,right,bottom); Element position

Take the XP default theme Luna UIFile1 as an example
<style resid=main>//main form
Duilistview [Id=atom (ListView)]//list browsing
{
Contentalign:middlecenter;
Fontsize:sysmetric (-16); Sysmetric is the system variable table, the corresponding variable type is shown in the preceding table
Fontweight:sysmetric (-17);
Fontstyle:sysmetric (-18);
FONTFACE:SYSMETRICSTR (6);
}
Duiaxhost [Id=atom (preview)]//Slide Sorter
{
Contentalign:middlecenter;
Borderthickness:rect (20RP,20RP,20RP,20RP);
Bordercolor:rgb (255,0,0);
}
Element
{
Background:argb (0,0,0,0);
}
Element [Id=atom (blockade)]//System Folder
{
Background:rgb (99,117,214);
Borderthickness:rect (0RP,0RP,1RP,1RP);
Bordercolor:white;
}
Element [Id=atom (blockadeaccent)]//Split line between main window and side bar
{
Background:gradient (ARGB (0,148,187,255), ARGB (0,99,117,214), 1);
}
Element [Id=atom (blockadeclient)]//System folder background picture
{
Contentalign:bottomright;
Padding:rect (10RP,0RP,0RP,0RP);
}
Element [Id=atom (Blockadetitle)]//title ("These files are hidden")
{
FONTFACE:RCSTR (2);
Fontsize:rcint (PT);
Fontweight:rcint (11);
Foreground:rgb (214,223,245);
Background:argb (0,0,0,0);
Padding:rect (0RP,20RP,10RP,0RP);
Contentalign:wrapleft;
}
Element [Id=atom (Blockademessage)]//title ("This folder contains make your system ...")
{
FONTFACE:RCSTR (2);
Fontsize:rcint () pt;
Fontweight:rcint (12);
Foreground:white;
Background:argb (0,0,0,0);
Padding:rect (1RP,15RP,10RP,0RP);
Contentalign:wrapleft;
}
element [Id=atom (Blockadeclear)]//"Show this folder Contents" General Status
{
Margin:rect (0RP,20RP,0RP,0RP);
}
button [Id=atom (Blockadeclearbutton)][keyfocused]//"Show this folder Contents" keyboard trigger
{
Contentalign:focusrect;
}
Element [Id=atom (Blockadecleartext)]
{
FONTFACE:RCSTR (1);
Fontsize:rcint (PT);
Fontweight:rcint (10);
Foreground:white;
Background:argb (0,0,0,0);
Contentalign:wrapleft;
Padding:rect (3RP,0RP,0RP,0RP);
}
element [Id=atom (Blockadecleartext)][mousefocused]//"Show this folder Contents" Mouse Trigger
{
Cursor:hand;
Fontstyle:underline;
}
</style>
The elements in the following blocks are no longer in the details, features see WHISTL3R's Shellstyle Tutorial
<style resid=mainsectionss>
<style resid=mainsectiontaskss>
<style resid=sectionss>
<style resid=sectiontaskss>
<style resid=taskpane>
<style resid=namespaceiteminfolist>

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.