Browse Source

bug report module

* change modules authors and website
* avoid anchors recursivity crash
* update README
Eduardo Bart 8 years ago
parent
commit
788a831f24
39 changed files with 204 additions and 66 deletions
  1. 0
    1
      BUGS
  2. 2
    2
      README.rdoc
  3. 0
    2
      TODO
  4. 2
    2
      modules/client/client.otmod
  5. 2
    2
      modules/client_background/background.otmod
  6. 2
    2
      modules/client_entergame/entergame.otmod
  7. 2
    2
      modules/client_locales/locales.otmod
  8. 2
    2
      modules/client_modulemanager/modulemanager.otmod
  9. 2
    2
      modules/client_options/options.otmod
  10. 2
    2
      modules/client_terminal/terminal.otmod
  11. 2
    2
      modules/client_topmenu/topmenu.otmod
  12. 1
    1
      modules/core_lib/core_lib.otmod
  13. 1
    1
      modules/core_styles/core_styles.otmod
  14. 2
    1
      modules/game/game.otmod
  15. 2
    2
      modules/game_battle/battle.otmod
  16. 36
    0
      modules/game_bugreport/bugreport.lua
  17. 15
    0
      modules/game_bugreport/bugreport.otmod
  18. 40
    0
      modules/game_bugreport/bugreport.otui
  19. 2
    2
      modules/game_combatcontrols/combatcontrols.otmod
  20. 2
    2
      modules/game_console/console.otmod
  21. 2
    2
      modules/game_containers/containers.otmod
  22. 2
    2
      modules/game_healthbar/healthbar.otmod
  23. 2
    2
      modules/game_hotkeys/hotkeys_manager.otmod
  24. 2
    2
      modules/game_inventory/inventory.otmod
  25. 2
    2
      modules/game_minimap/minimap.otmod
  26. 2
    2
      modules/game_npctrade/npctrade.otmod
  27. 2
    2
      modules/game_outfit/outfit.otmod
  28. 39
    0
      modules/game_playertrade/playertrade.lua
  29. 2
    2
      modules/game_playertrade/playertrade.otmod
  30. 3
    1
      modules/game_questlog/questlog.lua
  31. 2
    2
      modules/game_questlog/questlog.otmod
  32. 3
    3
      modules/game_ruleviolation/ruleviolation.otmod
  33. 2
    2
      modules/game_skills/skills.otmod
  34. 3
    3
      modules/game_textbooks/textbooks.lua
  35. 2
    2
      modules/game_textbooks/textbooks.otmod
  36. 2
    2
      modules/game_textmessage/textmessage.otmod
  37. 2
    2
      modules/game_viplist/viplist.otmod
  38. 10
    2
      src/framework/ui/uianchorlayout.cpp
  39. 1
    1
      src/framework/ui/uianchorlayout.h

+ 0
- 1
BUGS View File

@@ -1,6 +1,5 @@
1 1
 == CRASHS
2 2
 modules recursivity makes client crash, it should generate a warning
3
-anchors recursivity makes the client crash
4 3
 
5 4
 == P1 BUGS (affects game play)
6 5
 sometimes minimap desync Z pos

+ 2
- 2
README.rdoc View File

@@ -13,7 +13,7 @@ Beyond of it's flexibility with scripts, otclient comes with tons of other featu
13 13
 the creation of new client side stuff in otserv that was not possible before. These include,
14 14
 sound system, graphics effects with shaders, particle engines, modules/addons system, animated textures,
15 15
 styleable user interface, transparency, multi language, in game lua terminal, an OpenGL 1.1/2.0 ES engine that make possible to
16
-run on mobile platforms like Android, iPhone and iPad and much more. Otclient is also flexible enough to
16
+run on mobile platforms like Androi/iPhon/iPad and much more. Otclient is also flexible enough to
17 17
 create tibia tools like map editors just using scripts, because it wasn't designed to be just a
18 18
 client, instead otclient was designed to be a combination of a framework and tibia APIs.
19 19
 
@@ -50,7 +50,7 @@ We are currently needing help in the following areas:
50 50
 * Designing new UI themes or improving the current one
51 51
 * Translating the client to other languages
52 52
 * Documenting lua APIs and creating tutorials
53
-* Scripting in lua new modules or improving the current ones
53
+* Scripting with lua new modules or improving the current ones
54 54
 * Porting otclient to other otserv protocols (8.54, 8.7, 9.x, etc)
55 55
 * Spreading otclient project over the web and bring it to new possible contributors
56 56
 * Testing the client itself to report bugs and missing features in our bug tracker

+ 0
- 2
TODO View File

@@ -3,12 +3,10 @@ game_shaders (with shader manager)
3 3
 game_map (with save/load/options)
4 4
 game_minimap (with all tibia functionality)
5 5
 game_playertrade
6
-game_ruleviolations
7 6
 
8 7
 == NOTABLE FEATURES
9 8
 make left panel optional
10 9
 must close last container when opening a new containers
11
-add options "Copy Text", "Copy Name", "Message" in console labels with a popupmenu
12 10
 move chat tabs
13 11
 save/load mini windows states/location when restarting the client
14 12
 graphics options menu

+ 2
- 2
modules/client/client.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: client
3 3
   description: Initialize the client and setups its main window
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
   autoload: true
7 7
   autoload-priority: 100
8 8
   reloadable: false

+ 2
- 2
modules/client_background/background.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: client_background
3 3
   description: Handles the background of the login screen
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - client_topmenu

+ 2
- 2
modules/client_entergame/entergame.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: client_entergame
3 3
   description: Manages enter game and character list windows
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - client_topmenu

+ 2
- 2
modules/client_locales/locales.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: client_locales
3 3
   description: Translates texts to selected language
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: baxnie
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - client_topmenu

+ 2
- 2
modules/client_modulemanager/modulemanager.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: client_modulemanager
3 3
   description: Manage other modules
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - client_topmenu

+ 2
- 2
modules/client_options/options.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: client_options
3 3
   description: Create the options window
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - client_topmenu

+ 2
- 2
modules/client_terminal/terminal.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: client_terminal
3 3
   description: Terminal for executing lua functions
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   @onLoad: |
8 8
     dofile 'terminal'

+ 2
- 2
modules/client_topmenu/topmenu.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: client_topmenu
3 3
   description: Create the top menu
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   @onLoad: |
8 8
     dofile 'topmenu'

+ 1
- 1
modules/core_lib/core_lib.otmod View File

@@ -2,7 +2,7 @@ Module
2 2
   name: core_lib
3 3
   description: Contains core lua classes, functions and constants used by other modules
4 4
   author: OTClient team
5
-  website: https://github.com/edubart/otclient
5
+  website: www.otclient.info
6 6
   autoload: true
7 7
   autoload-priority: 10
8 8
   reloadable: false

+ 1
- 1
modules/core_styles/core_styles.otmod View File

@@ -2,7 +2,7 @@ Module
2 2
   name: core_styles
3 3
   description: Contains ui styles used by other modules
4 4
   author: OTClient team
5
-  website: https://github.com/edubart/otclient
5
+  website: www.otclient.info
6 6
   autoload: true
7 7
   autoload-priority: 20
8 8
   reloadable: false

+ 2
- 1
modules/game/game.otmod View File

@@ -2,7 +2,7 @@ Module
2 2
   name: game
3 3
   description: Create the game interface, where the ingame stuff starts
4 4
   author: OTClient team
5
-  website: https://github.com/edubart/otclient
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game_tibiafiles
@@ -27,6 +27,7 @@ Module
27 27
     - game_playertrade
28 28
     - game_questlog
29 29
     - game_ruleviolation
30
+    - game_bugreport
30 31
 
31 32
   @onLoad: |
32 33
     importStyle 'styles/items.otui'

+ 2
- 2
modules/game_battle/battle.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_battle
3 3
   description: Manage battle window
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: andrefaramir
5
+  website: www.otclient.info
6 6
   icon: battle.png
7 7
 
8 8
   dependencies:

+ 36
- 0
modules/game_bugreport/bugreport.lua View File

@@ -0,0 +1,36 @@
1
+BugReport = {}
2
+
3
+local bugReportWindow
4
+local bugTextEdit
5
+local HOTKEY = 'Ctrl+Z'
6
+
7
+function BugReport.init()
8
+  importStyle 'bugreport.otui'
9
+
10
+  bugReportWindow = createWidget('BugReportWindow', rootWidget)
11
+  bugReportWindow:hide()
12
+
13
+  bugTextEdit = bugReportWindow:getChildById('bugTextEdit')
14
+
15
+  Keyboard.bindKeyDown(HOTKEY, BugReport.show)
16
+end
17
+
18
+function BugReport.terminate()
19
+  Keyboard.unbindKeyDown(HOTKEY)
20
+  bugReportWindow:destroy()
21
+  bugReportWindow = nil
22
+  bugTextEdit = nil
23
+end
24
+
25
+function BugReport.doReport()
26
+  g_game.reportBug(bugTextEdit:getText())
27
+  bugReportWindow:hide()
28
+  TextMessage.displayEventAdvance(tr('Bug report sent.'))
29
+end
30
+
31
+function BugReport.show()
32
+  bugTextEdit:setText('')
33
+  bugReportWindow:show()
34
+  bugReportWindow:raise()
35
+  bugReportWindow:focus()
36
+end

+ 15
- 0
modules/game_bugreport/bugreport.otmod View File

@@ -0,0 +1,15 @@
1
+Module
2
+  name: game_bugreport
3
+  description: Bug report interface (Ctrl+Z)
4
+  author: edubart
5
+  website: www.otclient.info
6
+
7
+  dependencies:
8
+    - game
9
+
10
+  @onLoad: |
11
+    dofile 'bugreport'
12
+    BugReport.init()
13
+
14
+  @onUnload: |
15
+    BugReport.terminate()

+ 40
- 0
modules/game_bugreport/bugreport.otui View File

@@ -0,0 +1,40 @@
1
+BugReportWindow < MainWindow
2
+  !text: tr('Report Bug')
3
+  size: 280 250
4
+  &onEnter: BugReport.doReport
5
+  @onEscape: self:hide()
6
+
7
+  Label
8
+    id: bugLabel
9
+    !text: tr('Please use this dialog to only report bugs. Do not report rule violations here!')
10
+    text-wrap: true
11
+    anchors.top: parent.top
12
+    anchors.left: parent.left
13
+    anchors.right: parent.right
14
+    height: 32
15
+
16
+  MultilineTextEdit
17
+    id: bugTextEdit
18
+    anchors.top: bugLabel.bottom
19
+    anchors.left: parent.left
20
+    anchors.right: parent.right
21
+    anchors.bottom: sendButton.top
22
+    margin-top: 4
23
+    margin-bottom: 8
24
+
25
+  Button
26
+    id: sendButton
27
+    !text: tr('Send')
28
+    anchors.bottom: cancelButton.bottom
29
+    anchors.right: cancelButton.left
30
+    margin-right: 10
31
+    width: 80
32
+    &onClick: BugReport.doReport
33
+
34
+  Button
35
+    id: cancelButton
36
+    !text: tr('Cancel')
37
+    anchors.bottom: parent.bottom
38
+    anchors.right: parent.right
39
+    width: 80
40
+    @onClick: self:getParent():hide()

+ 2
- 2
modules/game_combatcontrols/combatcontrols.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_combatcontrols
3 3
   description: Combat controls window
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_console/console.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_console
3 3
   description: Manage chat window
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart, andrefaramir, baxnie
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_containers/containers.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_containers
3 3
   description: Manage containers
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart, baxnie
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_healthbar/healthbar.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_healthbar
3 3
   description: Displays health and mana points
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_hotkeys/hotkeys_manager.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_hotkeys
3 3
   description: Manage client hotkeys
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: andrefaramir
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_inventory/inventory.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_inventory
3 3
   description: View local player equipments window
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: baxnie, edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_minimap/minimap.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_minimap
3 3
   description: Manage minimap
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_npctrade/npctrade.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_npctrade
3 3
   description: NPC trade interface
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: andrefaramir, baxnie
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_outfit/outfit.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_outfit
3 3
   description: Change local player outfit
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: baxnie, edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 39
- 0
modules/game_playertrade/playertrade.lua View File

@@ -1,7 +1,46 @@
1 1
 PlayerTrade = {}
2 2
 
3
+-- g_game.inspectTrade(counterOffer, index)
4
+-- g_game.acceptTrade()
5
+-- g_game.rejectTrade()
6
+
7
+local tradeWindow
8
+
9
+local function createTrade()
10
+  if tradeWindow then
11
+    tradeWindow:destroy()
12
+    tradeWindow = nil
13
+  end
14
+
15
+  tradeWindow = createWidget('TradeWindow', rootWidget)
16
+end
17
+
18
+local function onOwnTrade(name, items)
19
+  local firstItem = items[1]
20
+
21
+  local tradeItemWidget = tradeWindow:getChildById('tradeItem')
22
+  tradeItemWidget:setItem(firstItem)
23
+end
24
+
25
+local function onCounterTrade(name, items)
26
+
27
+end
28
+
29
+local function onCloseTrade()
30
+  tradeWindow:destroy()
31
+  tradeWindow = nil
32
+end
33
+
3 34
 function PlayerTrade.init()
35
+  importStyle 'tradewindow.otui'
36
+
37
+  connect(g_game, { onOwnTrade = onGameOwnTrade,
38
+                    onCounterTrade = onGameCounterTrade,
39
+                    onCloseTrade = onGameCloseTrade })
4 40
 end
5 41
 
6 42
 function PlayerTrade.terminate()
43
+  disconnect(g_game, { onOwnTrade = onGameOwnTrade,
44
+                       onCounterTrade = onGameCounterTrade,
45
+                       onCloseTrade = onGameCloseTrade })
7 46
 end

+ 2
- 2
modules/game_playertrade/playertrade.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_playertrade
3 3
   description: Allow to trade items with players
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 3
- 1
modules/game_questlog/questlog.lua View File

@@ -4,9 +4,6 @@ local questLogButton
4 4
 local questLogWindow
5 5
 local questLineWindow
6 6
 
7
-
8 7
 local function onGameQuestLog(quests)
9 8
   QuestLog.destroyWindows()
10 9
 
@@ -84,4 +81,7 @@ function QuestLog.terminate()
84 81
   disconnect(g_game, { onQuestLine= onGameQuestLine })
85 82
 
86 83
   QuestLog.destroyWindows()
84
+
85
+  questLogButton:destroy()
86
+  questLogButton = nil
87 87
 end

+ 2
- 2
modules/game_questlog/questlog.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_questlog
3 3
   description: View game quests status
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 3
- 3
modules/game_ruleviolation/ruleviolation.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_ruleviolation
3
-  description: Rule violation interface
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
3
+  description: Rule violation interface (Ctrl+Y)
4
+  author: andrefaramir
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_skills/skills.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_skills
3 3
   description: Manage skills window
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: baxnie, edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 3
- 3
modules/game_textbooks/textbooks.lua View File

@@ -15,15 +15,15 @@ local function onGameEditText(id, itemId, maxLength, text, writter, time)
15 15
   textEdit:setText(text)
16 16
   textEdit:setEnabled(writeable)
17 17
 
18
-  local desc = tr('You read the following')
18
+  local desc = ''
19 19
   if #writter > 0 then
20
-    desc = desc .. tr(', written by \n%s\n', writter)
20
+    desc = tr('You read the following, written by \n%s\n', writter)
21 21
 
22 22
     if #time > 0 then
23 23
       desc = desc .. tr('on %s.\n', time)
24 24
     end
25 25
   elseif #time > 0 then
26
-    desc = desc .. tr(', written on %s.\n', time)
26
+    desc = tr('You read the following, written on %s.\n', time)
27 27
   end
28 28
 
29 29
   if #text == 0 and not writeable then

+ 2
- 2
modules/game_textbooks/textbooks.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_textbooks
3 3
   description: Allow to edit text books and lists
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_textmessage/textmessage.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_textmessage
3 3
   description: Manage game text messages
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: edubart
5
+  website: www.otclient.info
6 6
 
7 7
   dependencies:
8 8
     - game

+ 2
- 2
modules/game_viplist/viplist.otmod View File

@@ -1,8 +1,8 @@
1 1
 Module
2 2
   name: game_viplist
3 3
   description: Manage vip list window
4
-  author: OTClient team
5
-  website: https://github.com/edubart/otclient
4
+  author: baxnie, edubart
5
+  website: www.otclient.info
6 6
 
7 7
   @onLoad: |
8 8
     dofile 'viplist'

+ 10
- 2
src/framework/ui/uianchorlayout.cpp View File

@@ -86,12 +86,20 @@ void UIAnchorLayout::removeWidget(const UIWidgetPtr& widget)
86 86
     removeAnchors(widget);
87 87
 }
88 88
 
89
-bool UIAnchorLayout::updateWidget(const UIWidgetPtr& widget, UIAnchorGroup& anchorGroup)
89
+bool UIAnchorLayout::updateWidget(const UIWidgetPtr& widget, UIAnchorGroup& anchorGroup, UIWidgetPtr first)
90 90
 {
91 91
     UIWidgetPtr parentWidget = getParentWidget();
92 92
     if(!parentWidget)
93 93
         return false;
94 94
 
95
+    if(first == widget) {
96
+        logError("child '", widget->getId(), "' of parent widget '", parentWidget->getId(), "' is recursively anchored to itself, please fix this");
97
+        return false;
98
+    }
99
+
100
+    if(!first)
101
+        first = widget;
102
+
95 103
     Rect newRect = widget->getRect();
96 104
     bool verticalMoved = false;
97 105
     bool horizontalMoved = false;
@@ -125,7 +133,7 @@ bool UIAnchorLayout::updateWidget(const UIWidgetPtr& widget, UIAnchorGroup& anch
125 133
             if(it != m_anchorsGroups.end()) {
126 134
                 UIAnchorGroup& hookedAnchorGroup = it->second;
127 135
                 if(!hookedAnchorGroup.isUpdated())
128
-                    updateWidget(hookedWidget, hookedAnchorGroup);
136
+                    updateWidget(hookedWidget, hookedAnchorGroup, first);
129 137
             }
130 138
         }
131 139
 

+ 1
- 1
src/framework/ui/uianchorlayout.h View File

@@ -79,7 +79,7 @@ protected:
79 79
     bool internalUpdate();
80 80
 
81 81
 private:
82
-    bool updateWidget(const UIWidgetPtr& widget, UIAnchorGroup& anchorGroup);
82
+    bool updateWidget(const UIWidgetPtr& widget, UIAnchorGroup& anchorGroup, UIWidgetPtr first = nullptr);
83 83
     std::map<UIWidgetPtr, UIAnchorGroup> m_anchorsGroups;
84 84
 };
85 85
 

Loading…
Cancel
Save