fzeet 0.5.1 → 0.5.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/examples/Raw/UIRibbon/Command.dll +0 -0
- data/examples/Raw/UIRibbon/Command.rb +24 -0
- data/examples/Raw/UIRibbon/Command.rbw +51 -0
- data/examples/Raw/UIRibbon/Command.xml +65 -0
- data/examples/Raw/UIRibbon/Minimal.dll +0 -0
- data/examples/Raw/UIRibbon/Minimal.rb +18 -0
- data/examples/Raw/UIRibbon/Minimal.rbw +39 -0
- data/examples/Raw/UIRibbon/Minimal.xml +55 -0
- data/examples/UIRibbon/Command.dll +0 -0
- data/examples/UIRibbon/Command.rb +24 -0
- data/examples/UIRibbon/Command.rbw +20 -0
- data/examples/UIRibbon/Command.xml +65 -0
- data/examples/UIRibbon/Minimal.dll +0 -0
- data/examples/UIRibbon/Minimal.rb +18 -0
- data/examples/UIRibbon/Minimal.rbw +8 -0
- data/examples/UIRibbon/Minimal.xml +55 -0
- data/examples/UIRibbon/Viewer.rbw +9 -0
- data/lib/fzeet/windows/com.rb +3 -5
- data/lib/fzeet/windows/uiribbon.rb +14 -9
- data/lib/fzeet/windows.rb +1 -1
- metadata +20 -3
Binary file
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# Generated by the UIRibbon build, do NOT modify
|
2
|
+
|
3
|
+
CmdAppMenu = 2
|
4
|
+
CmdQAT = 3
|
5
|
+
CmdTab1 = 4
|
6
|
+
CmdTab1_LabelTitle_RESID = 60001
|
7
|
+
CmdTab1Group1 = 5
|
8
|
+
CmdTab1Group1_LabelTitle_RESID = 60002
|
9
|
+
CmdTab1Group1_LabelDescription_RESID = 60003
|
10
|
+
CmdTab1Group1_TooltipDescription_RESID = 60004
|
11
|
+
CmdTab1Group1_SmallImages_RESID = 60005
|
12
|
+
CmdTab1Group1_LargeImages_RESID = 60006
|
13
|
+
CmdItem1 = 6
|
14
|
+
CmdItem1_LabelTitle_RESID = 60007
|
15
|
+
CmdItem1_LabelDescription_RESID = 60008
|
16
|
+
CmdItem1_TooltipDescription_RESID = 60009
|
17
|
+
CmdItem1_SmallImages_RESID = 60010
|
18
|
+
CmdItem1_LargeImages_RESID = 60011
|
19
|
+
CmdButton1 = 7
|
20
|
+
CmdButton1_LabelTitle_RESID = 60012
|
21
|
+
CmdButton1_LabelDescription_RESID = 60013
|
22
|
+
CmdButton1_TooltipDescription_RESID = 60014
|
23
|
+
CmdButton1_SmallImages_RESID = 60015
|
24
|
+
CmdButton1_LargeImages_RESID = 60016
|
@@ -0,0 +1,51 @@
|
|
1
|
+
require 'fzeet'
|
2
|
+
|
3
|
+
include Fzeet::Windows
|
4
|
+
|
5
|
+
def onItem1(*args)
|
6
|
+
Fzeet.message __method__
|
7
|
+
|
8
|
+
UIF.SetUICommandProperty(CmdButton1, UI_PKEY_Enabled, PROPVARIANT[:bool, true])
|
9
|
+
UIF.SetUICommandProperty(CmdItem1, UI_PKEY_Enabled, PROPVARIANT[:bool, false])
|
10
|
+
end
|
11
|
+
|
12
|
+
def onButton1(*args)
|
13
|
+
Fzeet.message __method__
|
14
|
+
|
15
|
+
UIF.SetUICommandProperty(CmdItem1, UI_PKEY_Enabled, PROPVARIANT[:bool, true])
|
16
|
+
UIF.SetUICommandProperty(CmdButton1, UI_PKEY_Enabled, PROPVARIANT[:bool, false])
|
17
|
+
end
|
18
|
+
|
19
|
+
UICH = UICommandHandler.new
|
20
|
+
|
21
|
+
def UICH.Execute(*args)
|
22
|
+
case args[0]
|
23
|
+
when CmdItem1
|
24
|
+
onItem1(*args)
|
25
|
+
when CmdButton1
|
26
|
+
onButton1(*args)
|
27
|
+
end
|
28
|
+
|
29
|
+
S_OK
|
30
|
+
end
|
31
|
+
|
32
|
+
UIA = UIApplication.new
|
33
|
+
|
34
|
+
def UIA.OnCreateUICommand(*args)
|
35
|
+
UICH.QueryInterface(UICH.class::IID, args[-1])
|
36
|
+
|
37
|
+
S_OK
|
38
|
+
end
|
39
|
+
|
40
|
+
UIF = UIFramework.new
|
41
|
+
|
42
|
+
Fzeet::Application.run { |window|
|
43
|
+
UIF.Initialize(window.handle, UIA)
|
44
|
+
UIF.LoadUI(LoadRibbonDll(), "APPLICATION_RIBBON\0".encode('utf-16le'))
|
45
|
+
|
46
|
+
window.on(:destroy) {
|
47
|
+
UICH.Release
|
48
|
+
UIA.Release
|
49
|
+
UIF.Destroy; UIF.Release
|
50
|
+
}
|
51
|
+
}
|
@@ -0,0 +1,65 @@
|
|
1
|
+
<?xml version='1.0' encoding='utf-8' ?>
|
2
|
+
<Application xmlns='http://schemas.microsoft.com/windows/2009/Ribbon'>
|
3
|
+
<Application.Commands>
|
4
|
+
<Command Name='cmdAppMenu' />
|
5
|
+
|
6
|
+
<Command Name='cmdQAT' />
|
7
|
+
|
8
|
+
<Command Name='cmdTab1' LabelTitle='Tab1' />
|
9
|
+
<Command Name='cmdTab1Group1' LabelTitle='&Group1' LabelDescription='LabelDescription...' TooltipDescription='TooltipDescription...'>
|
10
|
+
<Command.SmallImages>
|
11
|
+
<Image>../../res/go-next-small.bmp</Image>
|
12
|
+
</Command.SmallImages>
|
13
|
+
<Command.LargeImages>
|
14
|
+
<Image>../../res/go-next.bmp</Image>
|
15
|
+
</Command.LargeImages>
|
16
|
+
</Command>
|
17
|
+
|
18
|
+
<Command Name='cmdItem1' LabelTitle='&Item1' LabelDescription='LabelDescription...' TooltipDescription='TooltipDescription...'>
|
19
|
+
<Command.SmallImages>
|
20
|
+
<Image>../../res/go-previous-small.bmp</Image>
|
21
|
+
</Command.SmallImages>
|
22
|
+
<Command.LargeImages>
|
23
|
+
<Image>../../res/go-previous.bmp</Image>
|
24
|
+
</Command.LargeImages>
|
25
|
+
</Command>
|
26
|
+
|
27
|
+
<Command Name='cmdButton1' LabelTitle='&Button1' LabelDescription='LabelDescription...' TooltipDescription='TooltipDescription...'>
|
28
|
+
<Command.SmallImages>
|
29
|
+
<Image>../../res/go-next-small.bmp</Image>
|
30
|
+
</Command.SmallImages>
|
31
|
+
<Command.LargeImages>
|
32
|
+
<Image>../../res/go-next.bmp</Image>
|
33
|
+
</Command.LargeImages>
|
34
|
+
</Command>
|
35
|
+
</Application.Commands>
|
36
|
+
|
37
|
+
<Application.Views>
|
38
|
+
<Ribbon>
|
39
|
+
<Ribbon.ApplicationMenu>
|
40
|
+
<ApplicationMenu CommandName='cmdAppMenu'>
|
41
|
+
<MenuGroup Class='MajorItems'>
|
42
|
+
<Button CommandName='cmdItem1' />
|
43
|
+
</MenuGroup>
|
44
|
+
</ApplicationMenu>
|
45
|
+
</Ribbon.ApplicationMenu>
|
46
|
+
|
47
|
+
<Ribbon.QuickAccessToolbar>
|
48
|
+
<QuickAccessToolbar CommandName='cmdQAT'>
|
49
|
+
<QuickAccessToolbar.ApplicationDefaults>
|
50
|
+
<Button CommandName='cmdItem1' />
|
51
|
+
<Button CommandName='cmdButton1' />
|
52
|
+
</QuickAccessToolbar.ApplicationDefaults>
|
53
|
+
</QuickAccessToolbar>
|
54
|
+
</Ribbon.QuickAccessToolbar>
|
55
|
+
|
56
|
+
<Ribbon.Tabs>
|
57
|
+
<Tab CommandName='cmdTab1'>
|
58
|
+
<Group CommandName='cmdTab1Group1' SizeDefinition='OneButton'>
|
59
|
+
<Button CommandName='cmdButton1' />
|
60
|
+
</Group>
|
61
|
+
</Tab>
|
62
|
+
</Ribbon.Tabs>
|
63
|
+
</Ribbon>
|
64
|
+
</Application.Views>
|
65
|
+
</Application>
|
Binary file
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# Generated by the UIRibbon build, do NOT modify
|
2
|
+
|
3
|
+
CmdAppMenu = 2
|
4
|
+
CmdQAT = 3
|
5
|
+
CmdTab1 = 4
|
6
|
+
CmdTab1_LabelTitle_RESID = 60001
|
7
|
+
CmdTab1Group1 = 5
|
8
|
+
CmdTab1Group1_LabelTitle_RESID = 60002
|
9
|
+
CmdTab1Group1_LabelDescription_RESID = 60003
|
10
|
+
CmdTab1Group1_TooltipDescription_RESID = 60004
|
11
|
+
CmdTab1Group1_SmallImages_RESID = 60005
|
12
|
+
CmdTab1Group1_LargeImages_RESID = 60006
|
13
|
+
CmdButton1 = 6
|
14
|
+
CmdButton1_LabelTitle_RESID = 60007
|
15
|
+
CmdButton1_LabelDescription_RESID = 60008
|
16
|
+
CmdButton1_TooltipDescription_RESID = 60009
|
17
|
+
CmdButton1_SmallImages_RESID = 60010
|
18
|
+
CmdButton1_LargeImages_RESID = 60011
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'fzeet'
|
2
|
+
|
3
|
+
include Fzeet::Windows
|
4
|
+
|
5
|
+
def onButton1(*args)
|
6
|
+
Fzeet.message __method__
|
7
|
+
end
|
8
|
+
|
9
|
+
UICH = UICommandHandler.new
|
10
|
+
|
11
|
+
def UICH.Execute(*args)
|
12
|
+
case args[0]
|
13
|
+
when CmdButton1
|
14
|
+
onButton1(*args)
|
15
|
+
end
|
16
|
+
|
17
|
+
S_OK
|
18
|
+
end
|
19
|
+
|
20
|
+
UIA = UIApplication.new
|
21
|
+
|
22
|
+
def UIA.OnCreateUICommand(*args)
|
23
|
+
UICH.QueryInterface(UICH.class::IID, args[-1])
|
24
|
+
|
25
|
+
S_OK
|
26
|
+
end
|
27
|
+
|
28
|
+
UIF = UIFramework.new
|
29
|
+
|
30
|
+
Fzeet::Application.run { |window|
|
31
|
+
UIF.Initialize(window.handle, UIA)
|
32
|
+
UIF.LoadUI(LoadRibbonDll(), "APPLICATION_RIBBON\0".encode('utf-16le'))
|
33
|
+
|
34
|
+
window.on(:destroy) {
|
35
|
+
UICH.Release
|
36
|
+
UIA.Release
|
37
|
+
UIF.Destroy; UIF.Release
|
38
|
+
}
|
39
|
+
}
|
@@ -0,0 +1,55 @@
|
|
1
|
+
<?xml version='1.0' encoding='utf-8' ?>
|
2
|
+
<Application xmlns='http://schemas.microsoft.com/windows/2009/Ribbon'>
|
3
|
+
<Application.Commands>
|
4
|
+
<Command Name='cmdAppMenu' />
|
5
|
+
|
6
|
+
<Command Name='cmdQAT' />
|
7
|
+
|
8
|
+
<Command Name='cmdTab1' LabelTitle='Tab1' />
|
9
|
+
<Command Name='cmdTab1Group1' LabelTitle='&Group1' LabelDescription='LabelDescription...' TooltipDescription='TooltipDescription...'>
|
10
|
+
<Command.SmallImages>
|
11
|
+
<Image>../../res/go-next-small.bmp</Image>
|
12
|
+
</Command.SmallImages>
|
13
|
+
<Command.LargeImages>
|
14
|
+
<Image>../../res/go-next.bmp</Image>
|
15
|
+
</Command.LargeImages>
|
16
|
+
</Command>
|
17
|
+
|
18
|
+
<Command Name='cmdButton1' LabelTitle='&Button1' LabelDescription='LabelDescription...' TooltipDescription='TooltipDescription...'>
|
19
|
+
<Command.SmallImages>
|
20
|
+
<Image>../../res/go-next-small.bmp</Image>
|
21
|
+
</Command.SmallImages>
|
22
|
+
<Command.LargeImages>
|
23
|
+
<Image>../../res/go-next.bmp</Image>
|
24
|
+
</Command.LargeImages>
|
25
|
+
</Command>
|
26
|
+
</Application.Commands>
|
27
|
+
|
28
|
+
<Application.Views>
|
29
|
+
<Ribbon>
|
30
|
+
<Ribbon.ApplicationMenu>
|
31
|
+
<ApplicationMenu CommandName='cmdAppMenu'>
|
32
|
+
<MenuGroup Class='MajorItems'>
|
33
|
+
<Button CommandName='cmdButton1' />
|
34
|
+
</MenuGroup>
|
35
|
+
</ApplicationMenu>
|
36
|
+
</Ribbon.ApplicationMenu>
|
37
|
+
|
38
|
+
<Ribbon.QuickAccessToolbar>
|
39
|
+
<QuickAccessToolbar CommandName='cmdQAT'>
|
40
|
+
<QuickAccessToolbar.ApplicationDefaults>
|
41
|
+
<Button CommandName='cmdButton1' />
|
42
|
+
</QuickAccessToolbar.ApplicationDefaults>
|
43
|
+
</QuickAccessToolbar>
|
44
|
+
</Ribbon.QuickAccessToolbar>
|
45
|
+
|
46
|
+
<Ribbon.Tabs>
|
47
|
+
<Tab CommandName='cmdTab1'>
|
48
|
+
<Group CommandName='cmdTab1Group1' SizeDefinition='OneButton'>
|
49
|
+
<Button CommandName='cmdButton1' />
|
50
|
+
</Group>
|
51
|
+
</Tab>
|
52
|
+
</Ribbon.Tabs>
|
53
|
+
</Ribbon>
|
54
|
+
</Application.Views>
|
55
|
+
</Application>
|
Binary file
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# Generated by the UIRibbon build, do NOT modify
|
2
|
+
|
3
|
+
CmdAppMenu = 2
|
4
|
+
CmdQAT = 3
|
5
|
+
CmdTab1 = 4
|
6
|
+
CmdTab1_LabelTitle_RESID = 60001
|
7
|
+
CmdTab1Group1 = 5
|
8
|
+
CmdTab1Group1_LabelTitle_RESID = 60002
|
9
|
+
CmdTab1Group1_LabelDescription_RESID = 60003
|
10
|
+
CmdTab1Group1_TooltipDescription_RESID = 60004
|
11
|
+
CmdTab1Group1_SmallImages_RESID = 60005
|
12
|
+
CmdTab1Group1_LargeImages_RESID = 60006
|
13
|
+
CmdItem1 = 6
|
14
|
+
CmdItem1_LabelTitle_RESID = 60007
|
15
|
+
CmdItem1_LabelDescription_RESID = 60008
|
16
|
+
CmdItem1_TooltipDescription_RESID = 60009
|
17
|
+
CmdItem1_SmallImages_RESID = 60010
|
18
|
+
CmdItem1_LargeImages_RESID = 60011
|
19
|
+
CmdButton1 = 7
|
20
|
+
CmdButton1_LabelTitle_RESID = 60012
|
21
|
+
CmdButton1_LabelDescription_RESID = 60013
|
22
|
+
CmdButton1_TooltipDescription_RESID = 60014
|
23
|
+
CmdButton1_SmallImages_RESID = 60015
|
24
|
+
CmdButton1_LargeImages_RESID = 60016
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'fzeet'
|
2
|
+
|
3
|
+
include Fzeet
|
4
|
+
|
5
|
+
Application.run { |window|
|
6
|
+
UIRibbon.new(window).
|
7
|
+
on(CmdItem1) { |args|
|
8
|
+
message 'on(CmdItem1)'
|
9
|
+
|
10
|
+
window.ribbon[CmdButton1].enabled = true
|
11
|
+
args[:sender].enabled = false
|
12
|
+
}.
|
13
|
+
|
14
|
+
on(CmdButton1) { |args|
|
15
|
+
message 'on(CmdButton1)'
|
16
|
+
|
17
|
+
window.ribbon[CmdItem1].enabled = true
|
18
|
+
args[:sender].enabled = false
|
19
|
+
}
|
20
|
+
}
|
@@ -0,0 +1,65 @@
|
|
1
|
+
<?xml version='1.0' encoding='utf-8' ?>
|
2
|
+
<Application xmlns='http://schemas.microsoft.com/windows/2009/Ribbon'>
|
3
|
+
<Application.Commands>
|
4
|
+
<Command Name='cmdAppMenu' />
|
5
|
+
|
6
|
+
<Command Name='cmdQAT' />
|
7
|
+
|
8
|
+
<Command Name='cmdTab1' LabelTitle='Tab1' />
|
9
|
+
<Command Name='cmdTab1Group1' LabelTitle='&Group1' LabelDescription='LabelDescription...' TooltipDescription='TooltipDescription...'>
|
10
|
+
<Command.SmallImages>
|
11
|
+
<Image>../res/go-next-small.bmp</Image>
|
12
|
+
</Command.SmallImages>
|
13
|
+
<Command.LargeImages>
|
14
|
+
<Image>../res/go-next.bmp</Image>
|
15
|
+
</Command.LargeImages>
|
16
|
+
</Command>
|
17
|
+
|
18
|
+
<Command Name='cmdItem1' LabelTitle='&Item1' LabelDescription='LabelDescription...' TooltipDescription='TooltipDescription...'>
|
19
|
+
<Command.SmallImages>
|
20
|
+
<Image>../res/go-previous-small.bmp</Image>
|
21
|
+
</Command.SmallImages>
|
22
|
+
<Command.LargeImages>
|
23
|
+
<Image>../res/go-previous.bmp</Image>
|
24
|
+
</Command.LargeImages>
|
25
|
+
</Command>
|
26
|
+
|
27
|
+
<Command Name='cmdButton1' LabelTitle='&Button1' LabelDescription='LabelDescription...' TooltipDescription='TooltipDescription...'>
|
28
|
+
<Command.SmallImages>
|
29
|
+
<Image>../res/go-next-small.bmp</Image>
|
30
|
+
</Command.SmallImages>
|
31
|
+
<Command.LargeImages>
|
32
|
+
<Image>../res/go-next.bmp</Image>
|
33
|
+
</Command.LargeImages>
|
34
|
+
</Command>
|
35
|
+
</Application.Commands>
|
36
|
+
|
37
|
+
<Application.Views>
|
38
|
+
<Ribbon>
|
39
|
+
<Ribbon.ApplicationMenu>
|
40
|
+
<ApplicationMenu CommandName='cmdAppMenu'>
|
41
|
+
<MenuGroup Class='MajorItems'>
|
42
|
+
<Button CommandName='cmdItem1' />
|
43
|
+
</MenuGroup>
|
44
|
+
</ApplicationMenu>
|
45
|
+
</Ribbon.ApplicationMenu>
|
46
|
+
|
47
|
+
<Ribbon.QuickAccessToolbar>
|
48
|
+
<QuickAccessToolbar CommandName='cmdQAT'>
|
49
|
+
<QuickAccessToolbar.ApplicationDefaults>
|
50
|
+
<Button CommandName='cmdItem1' />
|
51
|
+
<Button CommandName='cmdButton1' />
|
52
|
+
</QuickAccessToolbar.ApplicationDefaults>
|
53
|
+
</QuickAccessToolbar>
|
54
|
+
</Ribbon.QuickAccessToolbar>
|
55
|
+
|
56
|
+
<Ribbon.Tabs>
|
57
|
+
<Tab CommandName='cmdTab1'>
|
58
|
+
<Group CommandName='cmdTab1Group1' SizeDefinition='OneButton'>
|
59
|
+
<Button CommandName='cmdButton1' />
|
60
|
+
</Group>
|
61
|
+
</Tab>
|
62
|
+
</Ribbon.Tabs>
|
63
|
+
</Ribbon>
|
64
|
+
</Application.Views>
|
65
|
+
</Application>
|
Binary file
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# Generated by the UIRibbon build, do NOT modify
|
2
|
+
|
3
|
+
CmdAppMenu = 2
|
4
|
+
CmdQAT = 3
|
5
|
+
CmdTab1 = 4
|
6
|
+
CmdTab1_LabelTitle_RESID = 60001
|
7
|
+
CmdTab1Group1 = 5
|
8
|
+
CmdTab1Group1_LabelTitle_RESID = 60002
|
9
|
+
CmdTab1Group1_LabelDescription_RESID = 60003
|
10
|
+
CmdTab1Group1_TooltipDescription_RESID = 60004
|
11
|
+
CmdTab1Group1_SmallImages_RESID = 60005
|
12
|
+
CmdTab1Group1_LargeImages_RESID = 60006
|
13
|
+
CmdButton1 = 6
|
14
|
+
CmdButton1_LabelTitle_RESID = 60007
|
15
|
+
CmdButton1_LabelDescription_RESID = 60008
|
16
|
+
CmdButton1_TooltipDescription_RESID = 60009
|
17
|
+
CmdButton1_SmallImages_RESID = 60010
|
18
|
+
CmdButton1_LargeImages_RESID = 60011
|
@@ -0,0 +1,55 @@
|
|
1
|
+
<?xml version='1.0' encoding='utf-8' ?>
|
2
|
+
<Application xmlns='http://schemas.microsoft.com/windows/2009/Ribbon'>
|
3
|
+
<Application.Commands>
|
4
|
+
<Command Name='cmdAppMenu' />
|
5
|
+
|
6
|
+
<Command Name='cmdQAT' />
|
7
|
+
|
8
|
+
<Command Name='cmdTab1' LabelTitle='Tab1' />
|
9
|
+
<Command Name='cmdTab1Group1' LabelTitle='&Group1' LabelDescription='LabelDescription...' TooltipDescription='TooltipDescription...'>
|
10
|
+
<Command.SmallImages>
|
11
|
+
<Image>../res/go-next-small.bmp</Image>
|
12
|
+
</Command.SmallImages>
|
13
|
+
<Command.LargeImages>
|
14
|
+
<Image>../res/go-next.bmp</Image>
|
15
|
+
</Command.LargeImages>
|
16
|
+
</Command>
|
17
|
+
|
18
|
+
<Command Name='cmdButton1' LabelTitle='&Button1' LabelDescription='LabelDescription...' TooltipDescription='TooltipDescription...'>
|
19
|
+
<Command.SmallImages>
|
20
|
+
<Image>../res/go-next-small.bmp</Image>
|
21
|
+
</Command.SmallImages>
|
22
|
+
<Command.LargeImages>
|
23
|
+
<Image>../res/go-next.bmp</Image>
|
24
|
+
</Command.LargeImages>
|
25
|
+
</Command>
|
26
|
+
</Application.Commands>
|
27
|
+
|
28
|
+
<Application.Views>
|
29
|
+
<Ribbon>
|
30
|
+
<Ribbon.ApplicationMenu>
|
31
|
+
<ApplicationMenu CommandName='cmdAppMenu'>
|
32
|
+
<MenuGroup Class='MajorItems'>
|
33
|
+
<Button CommandName='cmdButton1' />
|
34
|
+
</MenuGroup>
|
35
|
+
</ApplicationMenu>
|
36
|
+
</Ribbon.ApplicationMenu>
|
37
|
+
|
38
|
+
<Ribbon.QuickAccessToolbar>
|
39
|
+
<QuickAccessToolbar CommandName='cmdQAT'>
|
40
|
+
<QuickAccessToolbar.ApplicationDefaults>
|
41
|
+
<Button CommandName='cmdButton1' />
|
42
|
+
</QuickAccessToolbar.ApplicationDefaults>
|
43
|
+
</QuickAccessToolbar>
|
44
|
+
</Ribbon.QuickAccessToolbar>
|
45
|
+
|
46
|
+
<Ribbon.Tabs>
|
47
|
+
<Tab CommandName='cmdTab1'>
|
48
|
+
<Group CommandName='cmdTab1Group1' SizeDefinition='OneButton'>
|
49
|
+
<Button CommandName='cmdButton1' />
|
50
|
+
</Group>
|
51
|
+
</Tab>
|
52
|
+
</Ribbon.Tabs>
|
53
|
+
</Ribbon>
|
54
|
+
</Application.Views>
|
55
|
+
</Application>
|
data/lib/fzeet/windows/com.rb
CHANGED
@@ -44,7 +44,6 @@ module Fzeet
|
|
44
44
|
|
45
45
|
attach_function :CoCreateInstance, [:pointer, :pointer, :ulong, :pointer, :pointer], :long
|
46
46
|
|
47
|
-
=begin
|
48
47
|
module COM
|
49
48
|
module Interface
|
50
49
|
def self.[](*args)
|
@@ -79,7 +78,7 @@ module Fzeet
|
|
79
78
|
|
80
79
|
attr_reader :vtbl
|
81
80
|
|
82
|
-
VTBL.members.each { |name|
|
81
|
+
self::VTBL.members.each { |name|
|
83
82
|
define_method(name) { |*args|
|
84
83
|
raise "#{self}.#{name} failed." if Windows.FAILED(result = @vtbl[name].call(self, *args)); result
|
85
84
|
}
|
@@ -110,7 +109,7 @@ module Fzeet
|
|
110
109
|
|
111
110
|
attr_reader :vtbl
|
112
111
|
|
113
|
-
VTBL.members.each { |name|
|
112
|
+
self::VTBL.members.each { |name|
|
114
113
|
define_method(name) { |*args|
|
115
114
|
raise "#{self}.#{name} failed." if Windows.FAILED(result = @vtbl[name].call(self, *args)); result
|
116
115
|
}
|
@@ -162,7 +161,7 @@ module Fzeet
|
|
162
161
|
@refc -= 1
|
163
162
|
end
|
164
163
|
|
165
|
-
(VTBL.members - IUnknown::VTBL.members).each { |name|
|
164
|
+
(self::VTBL.members - IUnknown::VTBL.members).each { |name|
|
166
165
|
define_method(name) { |*args|
|
167
166
|
E_NOTIMPL
|
168
167
|
}
|
@@ -183,6 +182,5 @@ module Fzeet
|
|
183
182
|
]
|
184
183
|
|
185
184
|
Unknown = COM::Instance[IUnknown]
|
186
|
-
=end
|
187
185
|
end
|
188
186
|
end
|
@@ -6,9 +6,11 @@ module Fzeet
|
|
6
6
|
ffi_convention :stdcall
|
7
7
|
|
8
8
|
def LoadRibbonDll(name = File.basename($0, '.rbw'), opts = {})
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
path = File.dirname(File.expand_path($0))
|
10
|
+
|
11
|
+
if !File.exist?("#{path}/#{name}.dll") || (
|
12
|
+
File.exist?("#{path}/#{name}.xml") &&
|
13
|
+
test(?M, "#{path}/#{name}.xml") > test(?M, "#{path}/#{name}.dll")
|
12
14
|
)
|
13
15
|
|
14
16
|
opts[:sdkroot] ||= "#{ENV['SystemDrive']}/Program Files/Microsoft SDKs/Windows/v7.1"
|
@@ -43,22 +45,25 @@ module Fzeet
|
|
43
45
|
# "#{opts[:gcc]}" -shared -o"#{name}.dll" "#{ENV['TEMP']}/#{name}.o" >> "#{name}.log"
|
44
46
|
# CMD
|
45
47
|
|
46
|
-
raise "Ribbon build failed - see #{name}.log for details." if File.read("#{name}.log") =~ /error/i
|
48
|
+
raise "Ribbon build failed - see #{path}/#{name}.log for details." if File.read("#{path}/#{name}.log") =~ /error/i
|
49
|
+
|
50
|
+
File.open("#{path}/#{name}.rb", 'w') { |rb|
|
51
|
+
rb.puts "# Generated by the UIRibbon build, do NOT modify\n\n"
|
47
52
|
|
48
|
-
|
49
|
-
File.foreach("#{name}.h") { |line|
|
53
|
+
File.foreach("#{path}/#{name}.h") { |line|
|
50
54
|
rb.puts "#{$1[0].upcase}#{$1[1..-1]} = #{$2}" if line =~ /^\s*#define\s+(\w+)\s+(\d+)/
|
51
55
|
}
|
52
56
|
}
|
53
57
|
|
54
58
|
%w{bml h rc}.each { |ext|
|
55
|
-
File.delete("#{name}.#{ext}") if File.exist?("#{name}.#{ext}")
|
59
|
+
File.delete("#{path}/#{name}.#{ext}") if File.exist?("#{path}/#{name}.#{ext}")
|
56
60
|
} if opts[:clean]
|
57
61
|
end
|
58
62
|
|
59
|
-
require name
|
63
|
+
require "#{path}/#{name}"
|
60
64
|
|
61
|
-
raise "LoadLibrary('#{
|
65
|
+
raise "LoadLibrary('#{path}/#{name}.dll') failed." if
|
66
|
+
(hdll = LoadLibrary("#{path}/#{name}.dll")).null?
|
62
67
|
|
63
68
|
hdll.tap { at_exit { FreeLibrary(hdll) } }
|
64
69
|
end
|
data/lib/fzeet/windows.rb
CHANGED
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 5
|
8
|
-
-
|
9
|
-
version: 0.5.
|
8
|
+
- 2
|
9
|
+
version: 0.5.2
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Radoslav Peev
|
@@ -14,7 +14,7 @@ autorequire:
|
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
16
|
|
17
|
-
date: 2010-08-
|
17
|
+
date: 2010-08-24 00:00:00 +03:00
|
18
18
|
default_executable:
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
@@ -95,6 +95,14 @@ files:
|
|
95
95
|
- examples/Raw/Hello.rbw
|
96
96
|
- examples/Raw/LifeCycle.rbw
|
97
97
|
- examples/Raw/Minimal.rbw
|
98
|
+
- examples/Raw/UIRibbon/Command.rbw
|
99
|
+
- examples/Raw/UIRibbon/Minimal.rbw
|
100
|
+
- examples/Raw/UIRibbon/Command.xml
|
101
|
+
- examples/Raw/UIRibbon/Minimal.xml
|
102
|
+
- examples/Raw/UIRibbon/Command.rb
|
103
|
+
- examples/Raw/UIRibbon/Minimal.rb
|
104
|
+
- examples/Raw/UIRibbon/Command.dll
|
105
|
+
- examples/Raw/UIRibbon/Minimal.dll
|
98
106
|
- examples/Command.rbw
|
99
107
|
- examples/Hello.rbw
|
100
108
|
- examples/Inheritance.rbw
|
@@ -115,6 +123,15 @@ files:
|
|
115
123
|
- examples/Dialog/Dialog.rbw
|
116
124
|
- examples/Dialog/DialogApplication.rbw
|
117
125
|
- examples/Dialog/FileDialog.rbw
|
126
|
+
- examples/UIRibbon/Command.rbw
|
127
|
+
- examples/UIRibbon/Minimal.rbw
|
128
|
+
- examples/UIRibbon/Viewer.rbw
|
129
|
+
- examples/UIRibbon/Command.xml
|
130
|
+
- examples/UIRibbon/Minimal.xml
|
131
|
+
- examples/UIRibbon/Command.rb
|
132
|
+
- examples/UIRibbon/Minimal.rb
|
133
|
+
- examples/UIRibbon/Command.dll
|
134
|
+
- examples/UIRibbon/Minimal.dll
|
118
135
|
- LICENSE
|
119
136
|
has_rdoc: true
|
120
137
|
homepage:
|