List of commits:
Subject Hash Author Date (UTC)
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 dad148576a106072f87be33803e7a916cb044d35 - implement feed tree filling
Author: Alex
Author date (UTC): 2022-07-05 17:09
Committer name: Alex
Committer date (UTC): 2022-07-05 17:09
Parent(s): b42586a38c98a4087937b8f85f7dd2570cb61bf7
Signer:
Signing key:
Signing status: N
Tree: 7a9210892f296f28aa24e5f6f0fd805e72298cbc
File Lines added Lines deleted
AppWindow.xml 2 2
IvoRSS.hws 25 1
feedtree.hws 69 0
File AppWindow.xml changed (mode: 100755) (index 0f65b59..56602c7)
13 13 </menu> </menu>
14 14 </menustrip> </menustrip>
15 15
16 <window id="win" muiid="MAIN" title="IvoRSS" screentitle="IvoRSS 0.1" notify="closerequest" menustrip="mainstrip" appwindow="true">
16 <window id="win" muiid="MAIN" title="IvoRSS" screentitle="IvoRSS" notify="closerequest" menustrip="mainstrip" appwindow="true">
17 17 <hgroup> <hgroup>
18 <listview id="lv3" frame="readlist" notify="appmessage" weight="50"><column/></listview>
18 <listtree id="feedtree" title="RSS feeds" notify="active" />
19 19 <vgroup> <vgroup>
20 20 <text id="channel_title" PreParse="\33b"/> <text id="channel_title" PreParse="\33b"/>
21 21 <text id="channel_description"/> <text id="channel_description"/>
File IvoRSS.hws changed (mode: 100755) (index ee41046..b94ff01)
4 4 @APPCOPYRIGHT "© 2022, Aleksei Gerasimov" @APPCOPYRIGHT "© 2022, Aleksei Gerasimov"
5 5 @APPAUTHOR "Aleksei Gerasimov" @APPAUTHOR "Aleksei Gerasimov"
6 6 @APPDESCRIPTION "Simple RSS reader" @APPDESCRIPTION "Simple RSS reader"
7 @APPIDENTIFIER "ivorss"
7 8 @REQUIRE "muiroyale", {Version=1, Revision=7} @REQUIRE "muiroyale", {Version=1, Revision=7}
8 9 @REQUIRE "hurl" @REQUIRE "hurl"
9 10 @REQUIRE "xmlparser" @REQUIRE "xmlparser"
 
11 12
12 13 @FILE 1, "AppWindow.xml" @FILE 1, "AppWindow.xml"
13 14
15 @INCLUDE "feedtree.hws"
16
17
14 18
15 19 /* /*
16 20 ** Handles all incoming events ** Handles all incoming events
 
... ... p:Close()
128 132
129 133
130 134
131
132 135
136 p_FillListTree("feedtree", dFeeds) ; dFeeds is imported from feedtree.hws
137
138
139 p_DumpListTree("feedtree", "root", 0)
140
141
142 ;sum$ = MD5Str(s$)
143
144 ;OpenURL(url$)
145
146 ;t = CreateList()
147
148 ; prf = {lastfile$ = "test.txt", lastxpos = 100, lastypos = 200}
149 ; SavePrefs(prf)
150
151 ;prf = {lastfile$ = "Unnamed", lastxpos = 0, lastypos = 0}
152 ; LoadPrefs(prf)
153
154
155
156 ;Print(GetCatalogString(4, "default string"))
133 157
134 158 Repeat Repeat
135 159 WaitEvent WaitEvent
File feedtree.hws added (mode: 100755) (index 0000000..16bcef5)
1
2 dFeeds = CreateList() ;defaultFeeds
3 InsertItem(dFeeds, {id="PowerPC" , name="PowerPC", isNode=True, parent="Root"})
4 InsertItem(dFeeds, {
5 id="https://www.powerpc-notebook.org/en/feed/",
6 name="GNU/Linux Open Hardware PowerPC notebook Feed",
7 isNode=False, parent="PowerPC"})
8 InsertItem(dFeeds, {
9 id="https://www.powerpc-notebook.org/en/comments/feed/",
10 name="GNU/Linux Open Hardware PowerPC notebook Comments Feed",
11 isNode=False, parent="PowerPC"})
12
13 ;<link rel="alternate" type="application/rss+xml" title="GNU/Linux Open Hardware PowerPC notebook &raquo; Feed" href="https://www.powerpc-notebook.org/en/feed/" />
14 ;<link rel="alternate" type="application/rss+xml" title="GNU/Linux Open Hardware PowerPC notebook &raquo; Comments Feed" href="https://www.powerpc-notebook.org/en/comments/feed/" />
15
16
17 InsertItem(dFeeds, {id="Amiga" , name="Amiga", isNode=True, parent="Root"})
18 ;InsertItem(dFeeds, {id="" , name="John Doe", isNode=True, parent="Root"})
19 ;InsertItem(dFeeds, {id= , name="John Doe", isNode=True, parent="Root"})
20 ;InsertItem(dFeeds, {id= , name="John Doe", isNode=True, parent="Root"})
21 ;InsertItem(dFeeds, {id= , name="John Doe", isNode=True, parent="Root"})
22 ;InsertItem(dFeeds, {id= , name="John Doe", isNode=True, parent="Root"})
23 ;InsertItem(dFeeds, {id= , name="John Doe", isNode=True, parent="Root"})
24 ;InsertItem(dFeeds, {id= , name="John Doe", isNode=True, parent="Root"})
25 ;InsertItem(dFeeds, {id= , name="John Doe", isNode=True, parent="Root"})
26
27
28
29 ;name, isNode, id, parent
30 /*
31 Function p_InsertNode(i, t, listtree$)
32 Local flags$ = IIf(t.isNode, "List", "")
33 DebugPrint(i, t.id)
34 mui.DoMethod(listtree$, "Insert", t.name, t.id, t.parent, "Tail", flags$)
35 EndFunction
36 */
37
38
39 Function p_FillListTree(listtree$, treetable)
40 mui.Set(listtree$, "Quiet", True)
41 ;č ForEach začíná od 1 a teprve na konci se vrací k 0
42 ;ForEach(treetable, p_InsertNode, listtree$)
43
44 For _i, t In IPairs(treetable)
45 mui.DoMethod(listtree$, "Insert",
46 t.name, t.id, t.parent, "Tail", IIf(t.isNode, "List", ""))
47 Next
48 mui.Set(listtree$, "Quiet", False)
49 EndFunction
50
51
52
53
54
55 Function p_DumpListTree(id$, node, indent)
56 Local found, t = mui.DoMethod(id$, "GetEntry", node, "Head", "")
57 While found = True
58 If indent > 0
59 DebugPrint(RepeatStr(" ", indent) ..
60 IIf(t.Node = True, "+", "") .. t.name)
61 Else
62 DebugPrint(IIf(t.Node = True, "+", "") .. t.name)
63 EndIf
64 If t.Node = True Then p_DumpListTree(id$, t.muiid, indent + 4)
65 found, t = mui.DoMethod(id$, "GetEntry", t.muiid, "Next", "")
66 Wend
67 EndFunction
68
69
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