List of commits:
Subject Hash Author Date (UTC)
read feeds from feeds.json U¾ivatel asi bude chtit mít své fidy u sebe de14a1e9f5a99f79e44985073df04e89bae2c116 Alex 2022-07-11 01:26:52
prepare default feeds d2b45f0007c30da84662b8b2a1f2118d03e30e1f Alex 2022-07-11 01:25:58
prepare Lock&Unlock f76041ef4fa2b6d5301afb34bda5de13f8ff2701 Alex 2022-07-10 00:37:38
prepare downloading routines f12d337da75c3cefe4ef0ccb3f08472e7701b058 Alex 2022-07-09 23:52:36
move default feeds to feeds.hws 6efc0f7c1767a2feba618938c8f83eab43f93b0e Alex 2022-07-09 14:16:44
set up EmptyNodes attribute 41e19a0974fbf63f959fe7e3135d2efb9cb48ce6 Alex 2022-07-09 11:44:03
disable icon menu 540099f84a9d1a567dd079ca8ba5ac667ec8945f Alex 2022-07-08 23:37:47
implement tree manipulation commands dfa3a877079a75d7c5a724bb9c6e84a6db1d4677 Alex 2022-07-08 21:07:10
implement coping to clipboard 380b60dad4bd182a92199db5cde4339baaa84521 Alex 2022-07-08 20:35:05
prepare context menus eb75fc61825de235f63b47176ca9ec88f8966d2b Alex 2022-07-08 15:01:46
add cycle chains b0d80feff1cfb953d50a79e7773077a846cc72c2 Alex 2022-07-08 12:25:15
prepare layout 46613958a1e87944104f74aa77ebb106dc22a2ad Alex 2022-07-07 23:36:19
implement Load/Save feeds' tree ce6ded536ef07a49e96f181c07c84c1239ef607d Alex 2022-07-05 23:10:44
implement feed tree filling dad148576a106072f87be33803e7a916cb044d35 Alex 2022-07-05 17:09:20
implement item selection b42586a38c98a4087937b8f85f7dd2570cb61bf7 Alex 2022-06-19 02:42:29
show items list ee6686fc57690fc236aefc334861dbf0fd65b2ce Alex 2022-06-19 01:42:38
parse channel title and description 96ec5e38931158d27a75c0fe922fd14a8647dba1 Alex 2022-06-18 23:53:49
add XML parser... 4f2d6297a47fe2f9f377bf9ce5afd9545cf9ae2f Alex 2022-06-18 14:29:17
prepare textfield b88f2e78f55a4ba7e62f674bcdf38615f3d3eb09 Alex 2022-06-18 02:35:37
initial commit 702a1b31f80bf565bf20cc6ecc4e9d748d772363 Alex 2022-06-17 23:42:13
Commit de14a1e9f5a99f79e44985073df04e89bae2c116 - read feeds from feeds.json U¾ivatel asi bude chtit mít své fidy u sebe
Author: Alex
Author date (UTC): 2022-07-11 01:26
Committer name: Alex
Committer date (UTC): 2022-07-11 01:26
Parent(s): d2b45f0007c30da84662b8b2a1f2118d03e30e1f
Signer:
Signing key:
Signing status: N
Tree: c60b453a61e750dd95081241484facaa15687b10
File Lines added Lines deleted
AppWindow.xml 2 2
IvoRSS.hws 40 23
File AppWindow.xml changed (mode: 100755) (index 688580a..2256855)
15 15 <item/> <item/>
16 16 <item id="menu_hide" notify="selected" shortcut="H">Hide all</item> <item id="menu_hide" notify="selected" shortcut="H">Hide all</item>
17 17 <item id="menu_expand" notify="selected">Expand all</item> <item id="menu_expand" notify="selected">Expand all</item>
18 <item id="menu_save" notify="selected" shortcut="S">Save arragement</item>
18 <!-- <item id="menu_save" notify="selected" shortcut="S">Save arragement</item> -->
19 19 <item/> <item/>
20 20 <item id="menu_fetchall" notify="selected" shortcut="F">Fetch all</item> <item id="menu_fetchall" notify="selected" shortcut="F">Fetch all</item>
21 21 </menu> </menu>
 
35 35 <item/> <item/>
36 36 <item id="fdtm_hide" notify="selected">Hide all</item> <item id="fdtm_hide" notify="selected">Hide all</item>
37 37 <item id="fdtm_expand" notify="selected">Expand all</item> <item id="fdtm_expand" notify="selected">Expand all</item>
38 <item id="fdtm_save" notify="selected">Save arragement</item>
38 <!-- <item id="fdtm_save" notify="selected">Save arragement</item>-->
39 39 <item/> <item/>
40 40 <item id="fdtm_fetch" notify="selected">Fetch current</item> <item id="fdtm_fetch" notify="selected">Fetch current</item>
41 41 <item id="fdtm_fetchall" notify="selected">Fetch all</item> <item id="fdtm_fetchall" notify="selected">Fetch all</item>
File IvoRSS.hws changed (mode: 100755) (index ba15c31..4c0cfe6)
12 12
13 13 @FILE 1, "AppWindow.xml" @FILE 1, "AppWindow.xml"
14 14
15 @INCLUDE "feeds.hws"
15 ; Generates default feeds
16 ; and puts to feeds.json
17 ;@INCLUDE "feeds.hws"
18
16 19 @INCLUDE "feedtree.hws" @INCLUDE "feedtree.hws"
17 20
18 21 @BRUSH 1, "128px-Feed-icon.png", {LoadAlpha=True, ScaleHeight=32, ScaleWidth=32} @BRUSH 1, "128px-Feed-icon.png", {LoadAlpha=True, ScaleHeight=32, ScaleWidth=32}
 
... ... Function p_MUIEvent(msg)
33 36 Case "Window": Case "Window":
34 37 Switch msg.Attribute Switch msg.Attribute
35 38 Case "CloseRequest": Case "CloseRequest":
36 End
39 p_SaveFeeds()
40 End
37 41 EndSwitch EndSwitch
38 42 Case "Menuitem": Case "Menuitem":
39 43 Switch msg.ID Switch msg.ID
 
... ... Function p_MUIEvent(msg)
45 49 Case "menu_about_muiroyale": Case "menu_about_muiroyale":
46 50 mui.DoMethod("app", "AboutMUIRoyale") mui.DoMethod("app", "AboutMUIRoyale")
47 51 Case "menu_quit": Case "menu_quit":
52 p_SaveFeeds()
48 53 End End
49 54 Case "menu_muisettings": Case "menu_muisettings":
50 55 mui.DoMethod("app", "OpenConfigWindow") mui.DoMethod("app", "OpenConfigWindow")
 
... ... EndFunction
119 124
120 125 ;č stáhnout soubor ;č stáhnout soubor
121 126 Function p_Download(url$, filename$) Function p_Download(url$, filename$)
122 err_code, _empty_str$, count = ?DownloadFile(url$,
127 Local err_code, _empty_str$, count = ?DownloadFile(url$,
123 128 {File=filename$, Adapter = "hurl", Fail404=True, Encoded=True}, {File=filename$, Adapter = "hurl", Fail404=True, Encoded=True},
124 129 p_callback, url$) p_callback, url$)
125 130 p_Replay(err_code, count .. "bytes from " .. url$ .. " transmitted") p_Replay(err_code, count .. "bytes from " .. url$ .. " transmitted")
126 131 CheckEvents() ; keep MUI even more responsive CheckEvents() ; keep MUI even more responsive
132 Return(err_code)
127 133 EndFunction EndFunction
128 134
129 135
 
... ... Function p_CopyText()
161 167 p_Replay(err_code, "Text is copied") p_Replay(err_code, "Text is copied")
162 168 EndFunction EndFunction
163 169
164 mui.CreateGUI(ReadString(1))
165 InstallEventHandler({MUIRoyale = p_MUIEvent})
166 170
167 171
168 Function p_SaveFeeds()
169 cFeeds = p_DumpFeedTree("feedtree")
170 prf = {feeds=cFeeds, feedsdata={}}
171 err_code = ?SavePrefs(prf)
172 p_Replay(err_code, "Tree arrangement saved")
172
173
174
175
176 Function p_StartUpLoading()
177 ; default feeds are generated by feeds.hws
178 Local err_code, s$, _len = ?FileToString("feeds.json")
179 p_Replay(err_code, "Program started")
180
181 err_code = ?p_FillListTree("feedtree", DeserializeTable(s$))
182 p_Replay(err_code, "Feeds are imported")
183
184 feedsdata = {} ; Global
185 err_code = ?LoadPrefs(feedsdata)
186 p_Replay(err_code, "Settings loaded")
173 187 EndFunction EndFunction
174 188
189
190 Function p_SaveFeeds()
191 Local err_code = ?StringToFile(SerializeTable(
192 p_DumpFeedTree("feedtree")), "feeds.json")
193 p_Replay(err_code, "Tree arrangement saved")
175 194
195 err_code = ?SavePrefs(feedsdata)
196 p_Replay(err_code, "Settings saved")
197 EndFunction
198
199
200
176 201 Function p_HideFeeds() Function p_HideFeeds()
177 202 mui.DoMethod("feedtree", "close", "root", "all") mui.DoMethod("feedtree", "close", "root", "all")
178 203 EndFunction EndFunction
 
... ... EndFunction
199 224
200 225
201 226
202
203
204 ; dFeeds is imported from feeds.hws
205 prf = {feeds=dFeeds, feedsdata={}}
206 err_code = ?LoadPrefs(prf)
207 p_Replay(err_code, "Program started")
208
209 err_code = ?p_FillListTree("feedtree", prf.feeds)
210 p_Replay(err_code, "Settings loaded")
211 227
212 228
229 mui.CreateGUI(ReadString(1))
230 InstallEventHandler({MUIRoyale = p_MUIEvent})
213 231
232 p_StartUpLoading()
214 233
215
216
217
234 DebugPrint(err_code)
218 235
219 236 url$ = "https://www.powerpc-notebook.org/en/feed/" url$ = "https://www.powerpc-notebook.org/en/feed/"
220 237 StartTimer(1) StartTimer(1)
221 238 ;DownloadFile(url$, {File = "Feeds/feed.xml", Adapter = "hurl"}) ;DownloadFile(url$, {File = "Feeds/feed.xml", Adapter = "hurl"})
222 239 p_FetchFeed(url$, {}) p_FetchFeed(url$, {})
223 DebugPrint("This took", GetTimer(1), "ms")
240 DebugPrint("This took", GetTimer(1), "ms", err_code)
224 241 text$ = FileToString("feed.xml") text$ = FileToString("feed.xml")
225 242 ;mui.Set("textfield", "Text", text$) ;mui.Set("textfield", "Text", text$)
226 243
Hints:
Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://rocketgit.com/user/iam-git/IvoRSS

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@ssh.rocketgit.com/user/iam-git/IvoRSS

Clone this repository using git:
git clone git://git.rocketgit.com/user/iam-git/IvoRSS

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a merge request:
... clone the repository ...
... make some changes and some commits ...
git push origin main