Subject | Hash | Author | Date (UTC) |
---|---|---|---|
implement adding of single feed | e938d0a6d769c7caf876dfdba9f43ce668eb4690 | Alex | 2022-07-12 22:05:10 |
implement group adding | d347e25e93e94f711c4098fecc9775af22eb7309 | Alex | 2022-07-12 20:12:00 |
make parser to work somehow | bb968a00680246434eb1f9795ebde4babea3fb05 | Alex | 2022-07-12 05:19:43 |
some preparations for parsing | 0259ef32db69fdb45bc9e67d88c74aca4ae69ce6 | Alex | 2022-07-12 03:59:45 |
prepare png icon | b7dc494acb640d92c5b7b49bc2ee93fd5a0d521c | Alex | 2022-07-11 07:17:47 |
fetching is ready | 0d01c38238a2ea7e39bc671de1997294231d8549 | Alex | 2022-07-11 06:37:06 |
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 |
File | Lines added | Lines deleted |
---|---|---|
IvoRSS.hws | 7 | 0 |
feedtree.hws | 29 | 3 |
File IvoRSS.hws changed (mode: 100755) (index 0ea6e9a..6cb6edc) | |||
... | ... | Function p_MUIEvent(msg) | |
112 | 112 | Case "fdtm_addgroup": | Case "fdtm_addgroup": |
113 | 113 | p_CreateGroup() | p_CreateGroup() |
114 | 114 | ||
115 | Case "menu_add": | ||
116 | FallThrough | ||
117 | Case "fdtm_add": | ||
118 | p_AddFeed() | ||
119 | |||
115 | 120 | Case "menu_hide": | Case "menu_hide": |
116 | 121 | FallThrough | FallThrough |
117 | 122 | Case "fdtm_hide": | Case "fdtm_hide": |
... | ... | Function p_MUIEvent(msg) | |
158 | 163 | ||
159 | 164 | Case "Button": | Case "Button": |
160 | 165 | Switch msg.ID | Switch msg.ID |
166 | Case "addbtn": | ||
167 | p_AddFeed() | ||
161 | 168 | Case "fetchbtn": | Case "fetchbtn": |
162 | 169 | p_FetchCurrent() | p_FetchCurrent() |
163 | 170 | Case "fetchallbtn": | Case "fetchallbtn": |
File feedtree.hws changed (mode: 100755) (index 73109d1..14185c9) | |||
... | ... | EndFunction | |
125 | 125 | ||
126 | 126 | Function p_CreateGroup() | Function p_CreateGroup() |
127 | 127 | Local s$, ok = StringRequest("Create Group", "Enter new group name") | Local s$, ok = StringRequest("Create Group", "Enter new group name") |
128 | If s$ = "" Then Return() | ||
129 | Local found, t = mui.DoMethod(#LIST_TREE, "FindName", "Root", "\27b"..s$, "") | ||
128 | |||
129 | If EmptyStr(s$) Then Return() | ||
130 | s$ = StripStr(s$) | ||
130 | 131 | If p_HasItem(s$, "Root") | If p_HasItem(s$, "Root") |
131 | 132 | mui.Set("status", "Contents", "\27bGroup "..s$ .. " already exists") | mui.Set("status", "Contents", "\27bGroup "..s$ .. " already exists") |
132 | 133 | Else | Else |
... | ... | EndFunction | |
139 | 140 | ||
140 | 141 | ||
141 | 142 | ||
143 | Function p_AddFeed() | ||
144 | Local type, data$ = GetClipboard() | ||
145 | Local s$, ok = StringRequest("Add RSS feed", "Enter feed adress", | ||
146 | IIf(type = #CLIPBOARD_TEXT And StartsWith(data$, "http"), | ||
147 | {Text=data$}, {})) | ||
148 | If EmptyStr(s$) Then Return() | ||
149 | s$ = StripStr(s$) | ||
150 | ;č zjednodušená kontrola, pokud řetězec obsahuje procenta, | ||
151 | ;č považujeme ho za "eskejpnutý". | ||
152 | ;č Na případ, kdy uživatel strčí do URLu osamělý znak procenta vysereme | ||
153 | /* houby, takhle hurl eskejpne úplně všechno | ||
154 | If True ;FindStr(s$, "%") = -1 | ||
155 | easy = hurl.Easy() | ||
156 | s$ = easy:Escape(s$) | ||
157 | easy:Close() | ||
158 | EndIf */ | ||
159 | If p_HasItem(s$, "Root") | ||
160 | mui.Set("status", "Contents", s$ .. " \27balready exists") | ||
161 | Else | ||
162 | mui.DoMethod(#LIST_TREE, "Insert", "\27".."5"..s$, s$, "Root", | ||
163 | IIf(mui.Get(#LIST_TREE, "Active")="Off", "Tail","Active"), | ||
164 | "Active") | ||
165 | EndIf | ||
166 | EndFunction | ||
167 | |||
142 | 168 | ||
143 | 169 | ;č Kurňadrát, RapaGUI takové starosti nemá... | ;č Kurňadrát, RapaGUI takové starosti nemá... |
144 | 170 | ;č jen pro zábavu | ;č jen pro zábavu |
... | ... | Function p_HasItem(nodeid$, muiid) | |
151 | 177 | Local isFound, t = mui.DoMethod(#LIST_TREE, "GetEntry", muiid, "Head", "") | Local isFound, t = mui.DoMethod(#LIST_TREE, "GetEntry", muiid, "Head", "") |
152 | 178 | While isFound | While isFound |
153 | 179 | ;InsertItem(tabletree, {id=t.id, name=t.name, isNode=t.node, parent=nodeid}) | ;InsertItem(tabletree, {id=t.id, name=t.name, isNode=t.node, parent=nodeid}) |
154 | If t.id = nodeid$ Then Return(True) | ||
180 | If LowerStr(t.id) = LowerStr(nodeid$) Then Return(True) | ||
155 | 181 | If t.Node And p_HasItem(nodeid$, t.muiid) Then Return(True) | If t.Node And p_HasItem(nodeid$, t.muiid) Then Return(True) |
156 | 182 | isFound, t = mui.DoMethod(#LIST_TREE, "GetEntry", t.muiid, "Next", "") | isFound, t = mui.DoMethod(#LIST_TREE, "GetEntry", t.muiid, "Next", "") |
157 | 183 | Wend | Wend |