[CONFIGURATION]

* NEW: Update the state of many components.

[DEVELOPMENT ENVIRONMENT]
* NEW: The project property dialog now uses an IconPanel.
* NEW: New design of the component tab in the project property dialog.

[GB.GUI.BASE]
* NEW: GridView: The background of the sorted column is now lighter.

[GB.QT4.WEBKIT]
* NEW: WebView.History is a new virtual access to get the number of entries 
  in the history, to set or get the current history entry index, and to get
  or set the history maximum capacity.


git-svn-id: svn://localhost/gambas/trunk@6788 867c0c6c-44f3-4631-809d-bfa615b0a4ec
This commit is contained in:
Benoît Minisini 2015-01-01 11:46:48 +00:00
parent 9482afcd01
commit d3ebb6ccc8
40 changed files with 480 additions and 570 deletions

Binary file not shown.

File diff suppressed because it is too large Load diff

View file

@ -1124,7 +1124,7 @@
{ picFilter PictureBox { picFilter PictureBox
MoveScaled(0,0,3,3) MoveScaled(0,0,3,3)
Mouse = Mouse.Pointing Mouse = Mouse.Pointing
Picture = Picture["img/32/filter.png"] Picture = Picture["img/32/filter-menu.png"]
Stretch = True Stretch = True
AutoResize = True AutoResize = True
} }

View file

@ -444,6 +444,7 @@ Public Sub InitWebViewWith(hWebView As WebView, iType As Integer, sSymbol As Str
'Debug sUrl 'Debug sUrl
hWebView.Url = sUrl hWebView.Url = sUrl
Endif Endif
hWebView.History.Clear
Else Else

View file

@ -1,6 +1,7 @@
' Gambas class file ' Gambas class file
Static Private $bShowUsed As Boolean Static Private $bShowUsed As Boolean
Static Private $bShowDeprecated As Boolean
Static Private $bShowLibraries As Boolean Static Private $bShowLibraries As Boolean
Private $hCheck As Picture Private $hCheck As Picture
@ -103,11 +104,15 @@ Public Sub Form_Open()
gvwComponent.Columns[3].Width = 24 gvwComponent.Columns[3].Width = 24
gvwComponent.Columns[3].Expand = False gvwComponent.Columns[3].Expand = False
chkShowUsed.Value = $bShowUsed mnuShowUsed.Value = $bShowUsed
mnuShowDeprecated.Value = $bShowDeprecated
'chkShowBeta.Value = $bShowBeta 'chkShowBeta.Value = $bShowBeta
$bCanInitComponents = True $bCanInitComponents = True
tabProject.Index = 0 ipnProject.Index = 0
panSearchProject.H = Desktop.Scale * 3.5
btnClearFilter.W = panSearchProject.H
RefreshComponents RefreshComponents
RefreshLibraries RefreshLibraries
@ -117,7 +122,7 @@ Public Sub Form_Open()
If $bShowLibraries Then If $bShowLibraries Then
$bShowLibraries = False $bShowLibraries = False
tabProject.Index = LIBRARY_TAB ipnProject.Index = LIBRARY_TAB
Endif Endif
End End
@ -408,10 +413,12 @@ Private Sub RefreshComponents(Optional bKeep As Boolean)
For Each sLib In aComp For Each sLib In aComp
hComp = CComponent.All[sLib] hComp = CComponent.All[sLib]
If hComp.Hidden Then Continue If hComp.Hidden Then Continue
If Not $bShowUsed Or If $cComp[hComp.Key].Value Then If Not $cComp[hComp.Key].Value Then
If $bShowUsed Then Continue
If Not $bShowDeprecated And If hComp.State = CComponent.DEPRECATED Then Continue
Endif
If $sFilter And If Not hComp.Match($sFilter) Then Continue If $sFilter And If Not hComp.Match($sFilter) Then Continue
$aComp.Add(hComp.Key) $aComp.Add(hComp.Key)
Endif
Next Next
If aNotFound.Count Then If aNotFound.Count Then
@ -421,7 +428,7 @@ Private Sub RefreshComponents(Optional bKeep As Boolean)
gvwComponent.Rows.Count = $aComp.Count gvwComponent.Rows.Count = $aComp.Count
gvwComponent.Rows.Height = -1 gvwComponent.Rows.Height = -1
tabProject_Arrange gvwComponent_Arrange
End End
@ -595,7 +602,7 @@ Public Sub gvwComponent_Click()
Dim hCompItem As ComponentItem Dim hCompItem As ComponentItem
Dim sDep As String Dim sDep As String
If panAboutComponent.Visible Then AboutComponent If webAboutComponent.Visible Then AboutComponent
If gvwComponent.Column <> 0 Then Return If gvwComponent.Column <> 0 Then Return
@ -698,9 +705,16 @@ End
' END ' END
Public Sub chkShowUsed_Click() Public Sub mnuShowUsed_Click()
$bShowUsed = chkShowUsed.Value $bShowUsed = mnuShowUsed.Value
RefreshComponents(True)
End
Public Sub mnuShowDeprecated_Click()
$bShowDeprecated = mnuShowDeprecated.Value
RefreshComponents(True) RefreshComponents(True)
End End
@ -764,35 +778,45 @@ End
' '
' End ' End
Private Sub AboutComponent() Private Sub AboutComponent() As Boolean
Dim hCompItem As ComponentItem Dim hCompItem As ComponentItem
Dim sKey As String Dim sKey As String
Try hCompItem = $cComp[$aComp[gvwComponent.Row]] Try hCompItem = $cComp[$aComp[gvwComponent.Row]]
If Not hCompItem Then Return If Not hCompItem Then Return True
Try sKey = hCompItem.Key Try sKey = hCompItem.Key
If Not sKey Then Return If Not sKey Then Return True
'MHelp.GotoComponent(sKey) 'MHelp.GotoComponent(sKey)
webAboutComponent.Zoom = 0.75 webAboutComponent.Zoom = 0.75
MHelp.InitWebViewWith(webAboutComponent, MHelp.TYPE_COMPONENT, sKey) MHelp.InitWebViewWith(webAboutComponent, MHelp.TYPE_COMPONENT, sKey,, "v&nh&l=" & MHelp.GetLanguage())
End End
Public Sub btnHelp_Click() Public Sub btnHelp_Click()
If panAboutComponent.Visible Then If webAboutComponent.Visible Then
panAboutComponent.Hide If webAboutComponent.History.Index Then
btnHelp.Picture = Picture["icon:/small/up"] webAboutComponent.Back
Else
webAboutComponent.Hide
btnForward.Hide
panComponent.Show
btnHelp.Picture = Picture["icon:/small/next"]
btnHelp.Text = Shortcut(("About component"), "A") & "..."
Endif
Else Else
AboutComponent If AboutComponent() Then Return
panAboutComponent.Show webAboutComponent.Show
Try gvwComponent.Current.EnsureVisible btnForward.Show
btnHelp.Picture = Picture["icon:/small/down"] panComponent.Hide
'Try gvwComponent.Current.EnsureVisible
btnHelp.Text = ""
btnHelp.Picture = Picture["icon:/small/previous"]
Endif Endif
@ -1097,12 +1121,6 @@ Private Sub UpdateIcon()
End End
Public Sub lstComponent_Click()
If panAboutComponent.Visible Then AboutComponent
End
Public Sub btnInsertLib_Click() Public Sub btnInsertLib_Click()
Dim hLib As CLibraryInfo Dim hLib As CLibraryInfo
@ -1171,7 +1189,7 @@ Private Sub RefreshLibraries()
Next Next
tabProject_Arrange gvwComponent_Arrange
End End
@ -1247,7 +1265,7 @@ Public Sub UncheckComponents(aComp As String[])
End End
Public Sub tabProject_Arrange() Public Sub gvwComponent_Arrange()
Dim I As Integer Dim I As Integer
@ -1343,13 +1361,13 @@ Public Sub timFilterComponent_Timer()
End End
Public Sub tabProject_Click() Public Sub ipnProject_Click()
If tabProject.Text = ("Components") Then If ipnProject.Text = ("Components") Then
txtFilterComponent.SetFocus txtFilterComponent.SetFocus
Else If tabProject.Text = ("Options") Then Else If ipnProject.Text = ("Options") Then
panHttpServer.Enabled = IsChecked("gb.web") 'Project.Components.Exist("gb.web") panHttpServer.Enabled = IsChecked("gb.web") 'Project.Components.Exist("gb.web")
Else If tabProject.Text = ("Statistics") Then Else If ipnProject.Text = ("Statistics") Then
UpdateStat UpdateStat
Endif Endif
@ -1393,3 +1411,21 @@ Private Sub UpdateStat()
gvwStat.Columns[0].Width += 16 gvwStat.Columns[0].Width += 16
End End
Public Sub btnForward_Click()
webAboutComponent.Forward
End
Public Sub webAboutComponent_Click((Frame) As WebFrame)
btnForward.Enabled = webAboutComponent.History.Index < webAboutComponent.History.Max
End
Public Sub picFilter_MouseDown()
mnuComponent.Popup(picFilter.ScreenX, picFilter.ScreenY + picFilter.H)
End

View file

@ -1,11 +1,12 @@
# Gambas Form File 3.0 # Gambas Form File 3.0
{ Form Form { Form Form
MoveScaled(0,2,93,78) MoveScaled(0,2,110,77)
Text = ("Project properties") Text = ("Project properties")
Icon = Picture["icon:/small/edit"] Icon = Picture["icon:/small/edit"]
Persistent = True Persistent = True
Resizable = False Resizable = False
Arrangement = Arrange.Vertical
{ mnuInsertEnv Menu { mnuInsertEnv Menu
{ Menu1 Menu mnuInsertEnv { Menu1 Menu mnuInsertEnv
Name = "Menu1" Name = "Menu1"
@ -72,10 +73,21 @@
Tag = "LIBOVERLAY_SCROLLBAR=0" Tag = "LIBOVERLAY_SCROLLBAR=0"
} }
} }
{ tabProject TabPanel { mnuComponent Menu
MoveScaled(1,1,91,71) { mnuShowUsed Menu
Text = ("Show only components used in project")
Toggle = True
}
{ mnuShowDeprecated Menu
Text = ("Show deprecated components")
Toggle = True
}
}
{ ipnProject IconPanel
MoveScaled(0,0,108,70)
Expand = True
Arrangement = Arrange.Vertical Arrangement = Arrange.Vertical
Count = 6 Count = 7
Index = 0 Index = 0
Text = ("General") Text = ("General")
{ Panel1 Panel { Panel1 Panel
@ -94,7 +106,7 @@
MoveScaled(53,11,29,0) MoveScaled(53,11,29,0)
} }
{ HPanel1 HPanel { HPanel1 HPanel
MoveScaled(1,11,84,55) MoveScaled(1,11,84,58)
Expand = True Expand = True
AutoResize = True AutoResize = True
Spacing = True Spacing = True
@ -157,32 +169,29 @@
Wrap = True Wrap = True
} }
{ Label11 Label { Label11 Label
MoveScaled(0,37,16,4) MoveScaled(0,38,16,4)
Font = Font["Bold"] Font = Font["Bold"]
Text = ("Author(s)") Text = ("Author(s)")
} }
{ txtAuthor TextArea { txtAuthor TextArea
MoveScaled(18,37,57,17) MoveScaled(18,38,57,20)
Expand = True Expand = True
Wrap = True Wrap = True
} }
} }
Index = 1 Index = 1
Text = ("Components") Text = ("Components")
{ Panel7 HBox { panComponent VBox
MoveScaled(1,1,88,6) MoveScaled(2,2,82,35)
Spacing = True
Margin = True
{ panSearchProject Panel
MoveScaled(1,1,29,3)
Background = Color.TextBackground
Expand = True Expand = True
{ panSearchProject Panel
MoveScaled(0,0,29,3)
Background = Color.TextBackground
Arrangement = Arrange.Horizontal Arrangement = Arrange.Horizontal
Border = Border.Plain
{ picFilter PictureBox { picFilter PictureBox
MoveScaled(0,0,3,3) MoveScaled(0,0,3,3)
Mouse = Mouse.Pointing Mouse = Mouse.Pointing
Picture = Picture["img/32/filter.png"] Picture = Picture["img/32/filter-menu.png"]
Stretch = True Stretch = True
AutoResize = True AutoResize = True
} }
@ -198,61 +207,56 @@
Picture = Picture["icon:/small/clear"] Picture = Picture["icon:/small/clear"]
} }
} }
{ chkShowUsed CheckBox
MoveScaled(51,0,35,4)
AutoResize = True
Text = ("Show only components used in project")
}
}
{ timFilterComponent #Timer
#MoveScaled(34,1)
Delay = 500
}
{ Separator4 Separator { Separator4 Separator
MoveScaled(34,8,21,0) MoveScaled(32,6,21,0)
} }
{ gvwComponent GridView { gvwComponent GridView
MoveScaled(5,11,78,25) MoveScaled(3,9,78,25)
Expand = True Expand = True
Border = False Border = False
Mode = Select.Single Mode = Select.Single
Grid = False Grid = False
Padding = 4 Padding = 4
} }
}
{ webAboutComponent HelpView
MoveScaled(6,38,46,7)
Visible = False
Expand = True
}
{ timFilterComponent #Timer
#MoveScaled(76,41)
Delay = 500
}
{ Separator2 Separator { Separator2 Separator
MoveScaled(1,38,24,0) MoveScaled(2,50,24,0)
} }
{ HBox14 HBox { HBox14 HBox
MoveScaled(1,39,84,6) MoveScaled(2,61,79,6)
Spacing = True
Margin = True Margin = True
{ btnHelp Button { btnHelp Button
MoveScaled(0,0,35,4) MoveScaled(0,0,23,4)
Text = Shortcut(("About component"), "c") & "..." AutoResize = True
Picture = Picture["icon:/small/up"] Text = Shortcut(("About component"), "A") & "..."
Picture = Picture["icon:/small/next"]
}
{ btnForward Button
MoveScaled(24,0,4,4)
Visible = False
AutoResize = True
Picture = Picture["icon:/small/next"]
} }
{ Panel3 Panel { Panel3 Panel
MoveScaled(39,0,7,4) MoveScaled(51,0,7,4)
Expand = True Expand = True
} }
{ btnUndo Button { btnUndo Button
MoveScaled(62,0,17,4) MoveScaled(60,0,17,4)
Text = Shortcut(("Reset"), "R") Text = Shortcut(("Reset"), "R")
Picture = Picture["icon:/small/undo"] Picture = Picture["icon:/small/undo"]
} }
} }
{ panAboutComponent Panel
MoveScaled(1,46,84,13)
Visible = False
Expand = True
Arrangement = Arrange.Vertical
{ Separator5 Separator
MoveScaled(24,1,24,0)
}
{ webAboutComponent HelpView
MoveScaled(8,4,46,7)
Expand = True
}
}
Index = 2 Index = 2
Text = ("Libraries") Text = ("Libraries")
{ Panel4 Panel { Panel4 Panel
@ -283,6 +287,9 @@
Border = False Border = False
Mode = Select.Single Mode = Select.Single
} }
{ Separator7 Separator
MoveScaled(25,51,23,0)
}
{ HBox18 HBox { HBox18 HBox
MoveScaled(1,53,84,6) MoveScaled(1,53,84,6)
Spacing = True Spacing = True
@ -317,27 +324,48 @@
} }
Index = 3 Index = 3
Text = ("Environment") Text = ("Environment")
{ VBox1 VBox { tvwEnv TableView
MoveScaled(1,1,84,29) MoveScaled(3,6,68,20)
Expand = True Expand = True
Margin = True Border = False
{ Label17 Label Padding = 4
MoveScaled(1,1,24,3) Header = GridView.Horizontal
Font = Font["Bold"]
Text = ("Arguments")
} }
{ Separator8 Separator
MoveScaled(30,31,24,0)
}
{ HBox3 HBox
MoveScaled(1,36,40,6)
Spacing = True
Margin = True
{ btnInsertEnv MenuButton
MoveScaled(0,0,19,4)
Text = ("&Insert")
Picture = Picture["icon:/small/add"]
Menu = "mnuInsertEnv"
}
{ btnRemoveEnv Button
MoveScaled(20,0,17,4)
Text = Shortcut(("Remove"), "R")
Picture = Picture["icon:/small/remove"]
}
}
Index = 4
Text = ("Arguments")
{ tvwArg TableView { tvwArg TableView
MoveScaled(1,5,50,16) MoveScaled(6,4,58,19)
Expand = True Expand = True
Border = False
Padding = 4 Padding = 4
Header = GridView.Vertical Header = GridView.Vertical
} }
{ Panel8 Panel { Separator9 Separator
MoveScaled(21,22,5,1) MoveScaled(26,27,34,0)
} }
{ HBox2 HBox { HBox2 HBox
MoveScaled(2,24,53,4) MoveScaled(9,45,53,6)
Spacing = True Spacing = True
Margin = True
{ btnInsertArg Button { btnInsertArg Button
MoveScaled(0,0,17,4) MoveScaled(0,0,17,4)
Text = Shortcut(("Insert"), "I") Text = Shortcut(("Insert"), "I")
@ -357,45 +385,7 @@
Picture = Picture["icon:/small/down"] Picture = Picture["icon:/small/down"]
} }
} }
} Index = 5
{ Separator1 Separator
MoveScaled(6,31,42,0)
}
{ Panel5 VBox
MoveScaled(1,33,85,26)
Expand = True
Margin = True
{ Label18 Label
MoveScaled(0,0,24,3)
Font = Font["Bold"]
Text = ("Environment variables")
}
{ tvwEnv TableView
MoveScaled(0,4,68,13)
Expand = True
Padding = 4
Header = GridView.Horizontal
}
{ Panel9 Panel
MoveScaled(20,18,7,1)
}
{ HBox3 HBox
MoveScaled(0,21,40,4)
Spacing = True
{ btnInsertEnv MenuButton
MoveScaled(0,0,19,4)
Text = ("&Insert")
Picture = Picture["icon:/small/add"]
Menu = "mnuInsertEnv"
}
{ btnRemoveEnv Button
MoveScaled(20,0,17,4)
Text = Shortcut(("Remove"), "R")
Picture = Picture["icon:/small/remove"]
}
}
}
Index = 4
Text = ("Options") Text = ("Options")
{ Panel6 VBox { Panel6 VBox
MoveScaled(0,0,89,66) MoveScaled(0,0,89,66)
@ -576,7 +566,7 @@
} }
} }
} }
Index = 5 Index = 6
Text = ("Statistics") Text = ("Statistics")
{ gvwStat GridView { gvwStat GridView
MoveScaled(10,7,62,25) MoveScaled(10,7,62,25)
@ -586,14 +576,26 @@
} }
Index = 0 Index = 0
} }
{ Separator1 Separator
MoveScaled(54,70,23,0)
}
{ Panel10 HBox
MoveScaled(29,71,63,6)
Spacing = True
Margin = True
{ Panel11 Panel
MoveScaled(5,1,8,3)
Expand = True
}
{ btnOK Button { btnOK Button
MoveScaled(59,73,16,4) MoveScaled(22,1,17,4)
Text = ("OK") Text = ("OK")
Default = True Default = True
} }
{ btnCancel Button { btnCancel Button
MoveScaled(76,73,16,4) MoveScaled(40,1,18,4)
Text = ("Cancel") Text = ("Cancel")
Cancel = True Cancel = True
} }
}
} }

Binary file not shown.

After

Width:  |  Height:  |  Size: 628 B

View file

@ -1,5 +1,5 @@
# Gambas Project File 3.0 # Gambas Project File 3.0
# Compiled with Gambas 3.6.0 # Compiled with Gambas 3.6.90
Title=gb.gui.base Title=gb.gui.base
Startup=FIconView Startup=FIconView
Version=3.6.90 Version=3.6.90

View file

@ -665,7 +665,7 @@ Public Sub ScrollArea_Draw()
'Paint.Begin(Draw.Device) 'Paint.Begin(Draw.Device)
Paint.ClipRect = hClip Paint.ClipRect = hClip
Paint.Brush = Paint.Color(Color.SetAlpha(Color.LightForeground, 224)) Paint.Brush = Paint.Color(Color.SetAlpha(Style.ForegroundOf(Me), 252))
With $hColumns[iSort] With $hColumns[iSort]

View file

@ -1,4 +1,4 @@
[Component] [Component]
Key=gb.util Key=gb.util
Version=3.6.90 Version=3.6.90
State=2 State=1

View file

@ -5,7 +5,7 @@ Public Sub Main()
Dim I As Integer Dim I As Integer
For I = 2014 To 2030 For I = 2014 To 2030
Print I;; Date.Eastern(I) Print I;; Date.EasterDay(I)
Next Next
End End

View file

@ -3,4 +3,4 @@ Author=Benoît Minisini
Require=gb.gtk,gb.opengl Require=gb.gtk,gb.opengl
Type=Form Type=Form
Implement=OpenGLViewer Implement=OpenGLViewer
State=NotFinished State=Stable

View file

@ -1,3 +1,3 @@
[Component] [Component]
Author=Benoît Minisini Author=Benoît Minisini
State=NotFinished State=Stable

View file

@ -1,12 +1,7 @@
[Component] [Component]
Key=gb.xml Key=gb.xml
Name=XML tools based on libxml
Name[es]=Herramientas XML basadas en libxml
Name[pl]=Narzędzia XML bazujące na libxml
Name[fr]=Outils XML basés sur libxml
Name[tr]=libxml tabanlı XML araçları
Author=Daniel Campos Fernández Author=Daniel Campos Fernández
State=1 State=Deprecated
Implements=XML Implements=XML

View file

@ -1,4 +1,4 @@
[Component] [Component]
Author=Benoît Minisini Author=Benoît Minisini
State=NotFinished State=Stable
Require=gb.image Require=gb.image

View file

@ -1,3 +1,3 @@
[Component] [Component]
Author=Benoît Minisini Author=Benoît Minisini
State=NotFinished State=Stable

View file

@ -3,4 +3,4 @@ Key=gb.opengl
Author=Laurent Carlier Author=Laurent Carlier
Need=OpenGLViewer Need=OpenGLViewer
Requires=gb.image Requires=gb.image
State=1 State=Stable

View file

@ -3,4 +3,4 @@ Key=gb.opengl.glsl
Author=Laurent Carlier Author=Laurent Carlier
Need=OpenGLViewer Need=OpenGLViewer
Require=gb.opengl Require=gb.opengl
State=1 State=Stable

View file

@ -3,4 +3,4 @@ Key=gb.opengl.glu
Author=Laurent Carlier Author=Laurent Carlier
Need=OpenGLViewer Need=OpenGLViewer
Requires=gb.opengl Requires=gb.opengl
State=1 State=Stable

View file

@ -1,3 +1,3 @@
[Component] [Component]
Author= Author=Benoît Minisini
Alpha=1 State=Stable

View file

@ -1,12 +1,8 @@
[Component] [Component]
Key=gb.pdf Key=gb.pdf
Name=PDF renderer component based on Poppler library
Name[fr]=Composant de rendu PDF basé sur la bibliothèque Poppler
Name[es]= Componente para renderizado PDF basado en la librer<65> Poppler
Name[tr]=Poppler kitaplığı tabanlı PDF karıştırıcı bileşeni
Author=Daniel Campos Fernández,Benoît Minisini,Ian Haywood Author=Daniel Campos Fernández,Benoît Minisini,Ian Haywood
Requires=gb.image Requires=gb.image
State=1 State=Stable

View file

@ -3,4 +3,4 @@ Author=Laurent Carlier,Benoît Minisini
Require=gb.qt4,gb.opengl Require=gb.qt4,gb.opengl
Type=Form Type=Form
Implement=OpenGLViewer Implement=OpenGLViewer
State=NotFinished State=Stable

View file

@ -151,7 +151,7 @@ BEGIN_METHOD_VOID(Cookie_free)
END_METHOD END_METHOD
GB_DESC CCookieDesc[] = GB_DESC CookieDesc[] =
{ {
GB_DECLARE("Cookie", sizeof(CCOOKIE)), GB_DECLARE("Cookie", sizeof(CCOOKIE)),

View file

@ -32,7 +32,7 @@
#ifndef __CCOOKIEJAR_CPP #ifndef __CCOOKIEJAR_CPP
extern GB_DESC CCookieDesc[]; extern GB_DESC CookieDesc[];
//extern GB_DESC CCookieJarDesc[]; //extern GB_DESC CCookieJarDesc[];
#else #else

View file

@ -163,7 +163,7 @@ BEGIN_METHOD_VOID(WebDownload_free)
END_METHOD END_METHOD
GB_DESC CWebDownloadDesc[] = GB_DESC WebDownloadDesc[] =
{ {
GB_DECLARE("WebDownload", sizeof(CWEBDOWNLOAD)), GB_DECLARE("WebDownload", sizeof(CWEBDOWNLOAD)),
@ -241,7 +241,7 @@ BEGIN_METHOD_VOID(WebDownloads_exit)
END_METHOD END_METHOD
GB_DESC CWebDownloadsDesc[] = GB_DESC WebDownloadsDesc[] =
{ {
GB_DECLARE("WebDownloads", 0), GB_VIRTUAL_CLASS(), GB_DECLARE("WebDownloads", 0), GB_VIRTUAL_CLASS(),

View file

@ -31,8 +31,8 @@
#ifndef __CWEBDOWNLOAD_CPP #ifndef __CWEBDOWNLOAD_CPP
extern GB_DESC CWebDownloadDesc[]; extern GB_DESC WebDownloadDesc[];
extern GB_DESC CWebDownloadsDesc[]; extern GB_DESC WebDownloadsDesc[];
#else #else

View file

@ -144,7 +144,7 @@ END_PROPERTY
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
GB_DESC CWebFrameChildrenDesc[] = GB_DESC WebFrameChildrenDesc[] =
{ {
GB_DECLARE(".WebFrame.Children", sizeof(CWEBFRAME)), GB_VIRTUAL_CLASS(), GB_DECLARE(".WebFrame.Children", sizeof(CWEBFRAME)), GB_VIRTUAL_CLASS(),
@ -154,7 +154,7 @@ GB_DESC CWebFrameChildrenDesc[] =
GB_END_DECLARE GB_END_DECLARE
}; };
GB_DESC CWebFrameDesc[] = GB_DESC WebFrameDesc[] =
{ {
GB_DECLARE("WebFrame", sizeof(CWEBFRAME)), GB_DECLARE("WebFrame", sizeof(CWEBFRAME)),

View file

@ -32,8 +32,8 @@
#ifndef __CWEBFRAME_CPP #ifndef __CWEBFRAME_CPP
extern GB_DESC CWebFrameChildrenDesc[]; extern GB_DESC WebFrameChildrenDesc[];
extern GB_DESC CWebFrameDesc[]; extern GB_DESC WebFrameDesc[];
#else #else

View file

@ -89,7 +89,7 @@ BEGIN_PROPERTY(WebHitTest_Element)
END_PROPERTY END_PROPERTY
GB_DESC CWebHitTestDesc[] = GB_DESC WebHitTestDesc[] =
{ {
GB_DECLARE("WebHitTest", sizeof(CWEBHITTEST)), GB_NOT_CREATABLE(), GB_DECLARE("WebHitTest", sizeof(CWEBHITTEST)), GB_NOT_CREATABLE(),

View file

@ -32,8 +32,7 @@
#ifndef __CWEBHITTEST_CPP #ifndef __CWEBHITTEST_CPP
extern GB_DESC CWebHitTestDesc[]; extern GB_DESC WebHitTestDesc[];
//extern GB_DESC CCookieJarDesc[];
#else #else

View file

@ -380,7 +380,7 @@ END_PROPERTY
/***************************************************************************/ /***************************************************************************/
GB_DESC CWebViewSettingsDesc[] = GB_DESC WebViewSettingsDesc[] =
{ {
GB_DECLARE(".WebView.Settings", 0), GB_DECLARE(".WebView.Settings", 0),
@ -391,7 +391,7 @@ GB_DESC CWebViewSettingsDesc[] =
GB_END_DECLARE GB_END_DECLARE
}; };
GB_DESC CWebSettingsFontsDesc[] = GB_DESC WebSettingsFontsDesc[] =
{ {
GB_DECLARE(".WebSettings.Fonts", 0), GB_VIRTUAL_CLASS(), GB_DECLARE(".WebSettings.Fonts", 0), GB_VIRTUAL_CLASS(),
@ -410,7 +410,7 @@ GB_DESC CWebSettingsFontsDesc[] =
GB_END_DECLARE GB_END_DECLARE
}; };
GB_DESC CWebSettingsIconDatabaseDesc[] = GB_DESC WebSettingsIconDatabaseDesc[] =
{ {
GB_DECLARE(".WebSettings.IconDatabase", 0), GB_VIRTUAL_CLASS(), GB_DECLARE(".WebSettings.IconDatabase", 0), GB_VIRTUAL_CLASS(),
@ -421,7 +421,7 @@ GB_DESC CWebSettingsIconDatabaseDesc[] =
GB_END_DECLARE GB_END_DECLARE
}; };
GB_DESC CWebSettingsCacheDesc[] = GB_DESC WebSettingsCacheDesc[] =
{ {
GB_DECLARE(".WebSettings.Cache", 0), GB_VIRTUAL_CLASS(), GB_DECLARE(".WebSettings.Cache", 0), GB_VIRTUAL_CLASS(),
@ -432,7 +432,7 @@ GB_DESC CWebSettingsCacheDesc[] =
GB_END_DECLARE GB_END_DECLARE
}; };
GB_DESC CWebSettingsProxyDesc[] = GB_DESC WebSettingsProxyDesc[] =
{ {
GB_DECLARE(".WebSettings.Proxy", 0), GB_VIRTUAL_CLASS(), GB_DECLARE(".WebSettings.Proxy", 0), GB_VIRTUAL_CLASS(),
@ -445,7 +445,7 @@ GB_DESC CWebSettingsProxyDesc[] =
GB_END_DECLARE GB_END_DECLARE
}; };
GB_DESC CWebSettingsDesc[] = GB_DESC WebSettingsDesc[] =
{ {
GB_DECLARE("WebSettings", 0), GB_DECLARE("WebSettings", 0),

View file

@ -32,12 +32,12 @@
#ifndef __CWEBSETTINGS_CPP #ifndef __CWEBSETTINGS_CPP
extern GB_DESC CWebViewSettingsDesc[]; extern GB_DESC WebViewSettingsDesc[];
extern GB_DESC CWebSettingsFontsDesc[]; extern GB_DESC WebSettingsFontsDesc[];
extern GB_DESC CWebSettingsIconDatabaseDesc[]; extern GB_DESC WebSettingsIconDatabaseDesc[];
extern GB_DESC CWebSettingsCacheDesc[]; extern GB_DESC WebSettingsCacheDesc[];
extern GB_DESC CWebSettingsProxyDesc[]; extern GB_DESC WebSettingsProxyDesc[];
extern GB_DESC CWebSettingsDesc[]; extern GB_DESC WebSettingsDesc[];
#else #else

View file

@ -58,6 +58,9 @@ DECLARE_EVENT(EVENT_NEW_FRAME);
DECLARE_EVENT(EVENT_AUTH); DECLARE_EVENT(EVENT_AUTH);
DECLARE_EVENT(EVENT_DOWNLOAD); DECLARE_EVENT(EVENT_DOWNLOAD);
#define HISTORY (WIDGET->history())
static QNetworkAccessManager *_network_access_manager = 0; static QNetworkAccessManager *_network_access_manager = 0;
static CWEBVIEW *_network_access_manager_view = 0; static CWEBVIEW *_network_access_manager_view = 0;
static QT_COLOR_FUNC _old_after_set_color; static QT_COLOR_FUNC _old_after_set_color;
@ -188,6 +191,8 @@ static void after_set_color(void *_object)
} }
} }
//-------------------------------------------------------------------------
BEGIN_METHOD(WebView_new, GB_OBJECT parent) BEGIN_METHOD(WebView_new, GB_OBJECT parent)
MyWebView *wid = new MyWebView(QT.GetContainer(VARG(parent))); MyWebView *wid = new MyWebView(QT.GetContainer(VARG(parent)));
@ -579,11 +584,59 @@ BEGIN_PROPERTY(WebView_Document)
END_PROPERTY END_PROPERTY
/***************************************************************************/ //-------------------------------------------------------------------------
GB_DESC CWebViewAuthDesc[] = BEGIN_PROPERTY(WebViewHistory_Count)
GB.ReturnInteger(HISTORY->count());
END_PROPERTY
BEGIN_PROPERTY(WebViewHistory_Max)
GB.ReturnInteger(HISTORY->count() - 1);
END_PROPERTY
BEGIN_PROPERTY(WebViewHistory_Index)
if (READ_PROPERTY)
GB.ReturnInteger(HISTORY->currentItemIndex());
else
{
int index = VPROP(GB_INTEGER);
if (index < 0 || index >= HISTORY->count())
{
GB.Error(GB_ERR_ARG);
return;
}
HISTORY->goToItem(HISTORY->itemAt(index));
}
END_PROPERTY
BEGIN_PROPERTY(WebViewHistory_MaxSize)
if (READ_PROPERTY)
GB.ReturnInteger(HISTORY->maximumItemCount());
else
HISTORY->setMaximumItemCount(VPROP(GB_INTEGER));
END_PROPERTY
BEGIN_METHOD_VOID(WebViewHistory_Clear)
int max = HISTORY->maximumItemCount();
HISTORY->setMaximumItemCount(0);
HISTORY->setMaximumItemCount(max);
END_METHOD
//-------------------------------------------------------------------------
GB_DESC WebViewAuthDesc[] =
{ {
GB_DECLARE(".WebView.Auth", sizeof(CWEBVIEW)), GB_VIRTUAL_CLASS(), GB_DECLARE_VIRTUAL(".WebView.Auth"),
GB_PROPERTY_READ("Url", "s", WebViewAuth_Url), GB_PROPERTY_READ("Url", "s", WebViewAuth_Url),
GB_PROPERTY_READ("Realm", "s", WebViewAuth_Realm), GB_PROPERTY_READ("Realm", "s", WebViewAuth_Realm),
@ -593,7 +646,20 @@ GB_DESC CWebViewAuthDesc[] =
GB_END_DECLARE GB_END_DECLARE
}; };
GB_DESC CWebViewDesc[] = GB_DESC WebViewHistoryDesc[] =
{
GB_DECLARE_VIRTUAL(".WebView.History"),
GB_PROPERTY_READ("Count", "i", WebViewHistory_Count),
GB_PROPERTY_READ("Max", "i", WebViewHistory_Max),
GB_PROPERTY("Index", "i", WebViewHistory_Index),
GB_PROPERTY("MaxSize", "i", WebViewHistory_MaxSize),
GB_METHOD("Clear", NULL, WebViewHistory_Clear, NULL),
GB_END_DECLARE
};
GB_DESC WebViewDesc[] =
{ {
GB_DECLARE("WebView", sizeof(CWEBVIEW)), GB_INHERITS("Control"), GB_DECLARE("WebView", sizeof(CWEBVIEW)), GB_INHERITS("Control"),
@ -624,6 +690,7 @@ GB_DESC CWebViewDesc[] =
GB_PROPERTY_SELF("Settings", ".WebView.Settings"), GB_PROPERTY_SELF("Settings", ".WebView.Settings"),
GB_PROPERTY_SELF("Auth", ".WebView.Auth"), GB_PROPERTY_SELF("Auth", ".WebView.Auth"),
GB_PROPERTY_SELF("History", ".WebView.History"),
GB_METHOD("Back", NULL, WebView_Back, NULL), GB_METHOD("Back", NULL, WebView_Back, NULL),
GB_METHOD("Forward", NULL, WebView_Forward, NULL), GB_METHOD("Forward", NULL, WebView_Forward, NULL),

View file

@ -37,9 +37,10 @@
#ifndef __CWEBVIEW_CPP #ifndef __CWEBVIEW_CPP
extern GB_DESC CWebViewAuthDesc[]; extern GB_DESC WebViewAuthDesc[];
extern GB_DESC CWebViewDesc[]; extern GB_DESC WebViewHistoryDesc[];
extern GB_DESC CWebViewDownloadsDesc[]; extern GB_DESC WebViewDownloadsDesc[];
extern GB_DESC WebViewDesc[];
#else #else

View file

@ -3,7 +3,7 @@ Key=gb.qt4.webkit
Author=Benoît Minisini Author=Benoît Minisini
Type=Form Type=Form
Require=gb.qt4 Require=gb.qt4
State=NotFinished State=Stable
[Form] [Form]
Control=WebView Control=WebView

View file

@ -48,22 +48,23 @@ QT_INTERFACE QT;
GB_DESC *GB_CLASSES[] EXPORT = GB_DESC *GB_CLASSES[] EXPORT =
{ {
CWebDownloadDesc, WebDownloadDesc,
CWebDownloadsDesc, WebDownloadsDesc,
CWebHitTestDesc, WebHitTestDesc,
CCookieDesc, CookieDesc,
CWebSettingsIconDatabaseDesc, WebSettingsIconDatabaseDesc,
CWebSettingsCacheDesc, WebSettingsCacheDesc,
CWebSettingsFontsDesc, WebSettingsFontsDesc,
CWebSettingsProxyDesc, WebSettingsProxyDesc,
CWebSettingsDesc, WebSettingsDesc,
WebElementStyleDesc, WebElementStyleDesc,
WebElementDesc, WebElementDesc,
CWebFrameChildrenDesc, WebFrameChildrenDesc,
CWebFrameDesc, WebFrameDesc,
CWebViewSettingsDesc, WebViewSettingsDesc,
CWebViewAuthDesc, WebViewAuthDesc,
CWebViewDesc, WebViewHistoryDesc,
WebViewDesc,
NULL NULL
}; };

View file

@ -1,5 +1,5 @@
[Component] [Component]
Key=gb.xml Key=gb.xml
Author=Adrien Prokopowicz Author=Adrien Prokopowicz
State=1 State=Stable
Implements=XML Implements=XML

View file

@ -1,5 +1,5 @@
[Component] [Component]
Key=gb.xml.html Key=gb.xml.html
Author=Adrien Prokopowicz Author=Adrien Prokopowicz
State=1 State=Stable
Require=gb.xml Require=gb.xml

View file

@ -1,11 +1,6 @@
[Component] [Component]
Key=gb.xml.xslt Key=gb.xml.xslt
Name=XSLT tools based on libxslt
Name[es]=Herramientas XSLT basadas en libxslt
Name[pl]=Narzędzia XSLT bazujące na libxslt
Name[fr]=Outils XSLT basés sur libxslt
Name[tr]=libxslt tabanlı XSLT araçları
Author=Daniel Campos Fernández Author=Daniel Campos Fernández
Require=gb.xml Require=gb.xml
State=1 State=Stable

View file

@ -1,3 +1,3 @@
[Component] [Component]
Author=Tobias Boege Author=Tobias Boege
State=Unstable State=Stable