q2rad 0.1.201__py3-none-any.whl → 0.1.202__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of q2rad might be problematic. Click here for more details.

q2rad/q2actions.py CHANGED
@@ -18,6 +18,7 @@ from q2gui.q2model import Q2CursorModel
18
18
  from q2rad.q2raddb import last_error, insert
19
19
  from q2rad.q2utils import q2cursor, choice_form, choice_column, Q2_save_and_run, Q2Form, int_
20
20
  from q2gui import q2app
21
+
21
22
  # from q2rad import Q2Form
22
23
 
23
24
  import gettext
@@ -44,17 +45,9 @@ class Q2Actions(Q2Form, Q2_save_and_run):
44
45
  self.add_action("Copy to", icon="❖", worker=self.copy_to)
45
46
 
46
47
  def create_form(self):
48
+ from q2rad.q2forms import Q2Forms
49
+
47
50
  self.add_control("id", "", datatype="int", pk="*", ai="*", noform=1, nogrid=1)
48
- self.add_control(
49
- "name",
50
- _("Form"),
51
- disabled="*",
52
- to_table="forms",
53
- to_column="name",
54
- related="name",
55
- datatype="char",
56
- datalen=100,
57
- )
58
51
  self.add_control("action_text", _("Action text"), datatype="char", datalen=100)
59
52
  self.add_control("/")
60
53
  if self.add_control("/t", _("Main"), tag="tab"):
@@ -119,8 +112,22 @@ class Q2Actions(Q2Form, Q2_save_and_run):
119
112
  control="radio",
120
113
  datatype="int",
121
114
  )
115
+ self.add_control("/")
116
+ self.add_control("/f")
117
+ self.add_control(
118
+ "name",
119
+ _("Form"),
120
+ # disabled="*",
121
+ to_table="forms",
122
+ to_column="name",
123
+ to_form=Q2Forms(),
124
+ related="name",
125
+ datatype="char",
126
+ datalen=100,
127
+ )
122
128
 
123
129
  self.add_control("/s")
130
+
124
131
  self.add_control("/t", _("Action Script"))
125
132
  self.add_control(
126
133
  "action_worker",
@@ -151,7 +158,8 @@ class Q2Actions(Q2Form, Q2_save_and_run):
151
158
  seq = (
152
159
  int_(
153
160
  q2cursor(
154
- f"select max(seq) as maxseq from actions where name='{choice['name']}'", q2app.q2_app.db_logic
161
+ f"select max(seq) as maxseq from actions where name='{choice['name']}'",
162
+ q2app.q2_app.db_logic,
155
163
  ).r.maxseq
156
164
  )
157
165
  + 1
@@ -159,7 +167,7 @@ class Q2Actions(Q2Form, Q2_save_and_run):
159
167
  for x in rows:
160
168
  rec = self.model.get_record(x)
161
169
  rec["seq"] = seq
162
- rec["name"] = choice['name']
170
+ rec["name"] = choice["name"]
163
171
  seq += 1
164
172
  if not insert("actions", rec, q2app.q2_app.db_logic):
165
173
  print(last_error(q2app.q2_app.db_logic))
@@ -184,7 +192,7 @@ class Q2Actions(Q2Form, Q2_save_and_run):
184
192
  def select_child_form(self):
185
193
  choice = choice_form()
186
194
  if choice:
187
- self.s.child_form = choice['name']
195
+ self.s.child_form = choice["name"]
188
196
  if self.s.child_where == "":
189
197
  parent_pk = q2cursor(
190
198
  f"""select column
@@ -199,7 +207,7 @@ class Q2Actions(Q2Form, Q2_save_and_run):
199
207
  if self.s.child_where.startswith("=") or self.s.child_where == "":
200
208
  choice = choice_column(self.s.child_form)
201
209
  if choice:
202
- self.s.child_where = choice['col'] + self.s.child_where
210
+ self.s.child_where = choice["col"] + self.s.child_where
203
211
 
204
212
  def before_form_show(self):
205
213
  self.action_mode_valid()
q2rad/q2appmanager.py CHANGED
@@ -50,7 +50,6 @@ class AppManager(Q2Form):
50
50
  "upgrade",
51
51
  "Check updates",
52
52
  control="button",
53
- datalen=10,
54
53
  valid=q2app.q2_app.update_packages,
55
54
  )
56
55
 
@@ -76,7 +75,6 @@ class AppManager(Q2Form):
76
75
  "reload_assets",
77
76
  "Reload assets",
78
77
  control="button",
79
- datalen=10,
80
78
  valid=self.reload_assets,
81
79
  )
82
80
 
q2rad/q2lines.py CHANGED
@@ -102,17 +102,8 @@ class Q2Lines(Q2Form, Q2_save_and_run):
102
102
  self.add_action("Alter column", icon="🔧", worker=self.alter_column)
103
103
 
104
104
  def create_form(self):
105
+ from q2rad.q2forms import Q2Forms
105
106
  self.add_control("id", "", datatype="int", pk="*", ai="*", noform=1, nogrid=1)
106
- self.add_control(
107
- "name",
108
- _("Form"),
109
- # disabled="*",
110
- to_table="forms",
111
- to_column="name",
112
- related="name",
113
- datatype="char",
114
- datalen=100,
115
- )
116
107
  self.add_control("column", _("Column name"), datalen=50)
117
108
  self.add_control("/")
118
109
  if self.add_control("/t", _("Main")):
@@ -197,7 +188,6 @@ class Q2Lines(Q2Form, Q2_save_and_run):
197
188
  _("?"),
198
189
  mess=_("Open list of existing tables"),
199
190
  control="button",
200
- datalen=3,
201
191
  valid=self.select_linked_table,
202
192
  )
203
193
  self.add_control("to_table", gridlabel=_("To table"), datatype="char", datalen=100)
@@ -208,20 +198,20 @@ class Q2Lines(Q2Form, Q2_save_and_run):
208
198
  _("?"),
209
199
  mess=_("Open list of existing tables"),
210
200
  control="button",
211
- datalen=3,
212
201
  valid=self.select_linked_table_pk,
213
202
  )
214
203
  self.add_control("to_column", gridlabel=_("To field"), datatype="char", datalen=100)
215
204
  self.add_control("/")
216
205
  if self.add_control("/h", _("Data to show")):
206
+ self.add_control("/v")
217
207
  self.add_control(
218
208
  "select_column",
219
209
  _("?"),
220
210
  mess=_("Open list of existing columns"),
221
211
  control="button",
222
- datalen=3,
223
212
  valid=self.select_linked_table_column,
224
213
  )
214
+ self.add_control("/")
225
215
  self.add_control(
226
216
  "related", control="codesql", gridlabel=_("Data to show"), datatype="text"
227
217
  )
@@ -232,7 +222,6 @@ class Q2Lines(Q2Form, Q2_save_and_run):
232
222
  _("?"),
233
223
  mess=_("Open list of existing forms"),
234
224
  control="button",
235
- datalen=3,
236
225
  valid=self.select_linked_form,
237
226
  )
238
227
  self.add_control("to_form", gridlabel=_("Form to open"), datatype="char", datalen=100)
@@ -240,6 +229,20 @@ class Q2Lines(Q2Form, Q2_save_and_run):
240
229
 
241
230
  self.add_control("/")
242
231
 
232
+ self.add_control("/f")
233
+ self.add_control(
234
+ "name",
235
+ _("Form"),
236
+ # disabled="*",
237
+ to_table="forms",
238
+ to_column="name",
239
+ to_form=Q2Forms(),
240
+ related="name",
241
+ datatype="char",
242
+ datalen=100,
243
+ )
244
+ self.add_control("/")
245
+
243
246
  self.add_control("/s")
244
247
 
245
248
  self.add_control("/t", _("Comment"))
q2rad/q2queries.py CHANGED
@@ -171,6 +171,7 @@ class Q2QueryEdit(Q2Form):
171
171
  self.query_list = Q2QueryList(self)
172
172
  self.param_list = Q2ParamList()
173
173
  self.actions = Q2Actions()
174
+ self._db = None
174
175
  self.actions.add_action("Run F4", self.query_list.sql_runner, hotkey="F4")
175
176
 
176
177
  self.actions.show_main_button = 0
@@ -257,7 +258,7 @@ class Q2QueryList(Q2Form):
257
258
  sql = sql.replace(x, f"{value}")
258
259
  else:
259
260
  sql = sql.replace(x, f"'{value}'")
260
- q2cursor(sql).browse()
261
+ q2cursor(sql, q2_db=self.query_editor_form._db).browse()
261
262
 
262
263
  def sql_to_model(self, sql):
263
264
  self.model.update({"sql": sql}, self.current_row, refresh=False)
@@ -317,7 +318,6 @@ class Q2ParamList(Q2Form):
317
318
  return params
318
319
 
319
320
  def get_param(self, param):
320
- print(self.model.records)
321
321
  for x in self.model.records:
322
322
  if x["name"] == (param[1:] if param.startswith(":") else param[1:-1]):
323
323
  return x["value"]
q2rad/q2stylesettings.py CHANGED
@@ -114,8 +114,8 @@ class AppStyleSettings(Q2Form):
114
114
  self.q2_app.set_color_mode(color_mode)
115
115
 
116
116
  def font_size_valid(self):
117
- if int_(self.s.font_size) < 8:
118
- self.s.font_size = 8
117
+ if int_(self.s.font_size) < 10:
118
+ self.s.font_size = 10
119
119
  if self.s.apply:
120
120
  self.q2_app.q2style.font_size = int_(self.s.font_size)
121
121
  self.style_valid()
q2rad/q2utils.py CHANGED
@@ -217,7 +217,8 @@ class Q2Form(_Q2Form):
217
217
  f"""select *
218
218
  from log_{self.model.get_table_name()}
219
219
  where {pk} = '{self.r.__getattr__(pk)}'
220
- """
220
+ """,
221
+ q2_db=self.db,
221
222
  )
222
223
  elif choice == 3:
223
224
  where = self.model.get_where()
@@ -264,6 +265,7 @@ class Q2Form(_Q2Form):
264
265
  from q2rad.q2queries import Q2QueryEdit
265
266
 
266
267
  form.query_edit = Q2QueryEdit()
268
+ form.query_edit._db = self.db
267
269
  form.add_control("ql", "", widget=form.query_edit, nogrid=1, migrate=0)
268
270
 
269
271
  def after_form_show():
q2rad/version.py CHANGED
@@ -1 +1 @@
1
- __version__ = "0.1.201"
1
+ __version__ = "0.1.202"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: q2rad
3
- Version: 0.1.201
3
+ Version: 0.1.202
4
4
  Summary: RAD - database, GUI, reports
5
5
  Author: Andrei Puchko
6
6
  Author-email: andrei.puchko@gmx.de
@@ -1,24 +1,24 @@
1
1
  q2rad/__init__.py,sha256=Y0Up-UTXOmCYC9llNmTF10CpDDgF2kv10pyHT3-YwmQ,183
2
2
  q2rad/__main__.py,sha256=zP4JARM-FzFHM-vWLehx7c5N4v4m_F-TuMobCdFzr4Q,824
3
- q2rad/q2actions.py,sha256=Xqrpm68e36KVzyrmbDP8wDJfh-C_PVS-YTCF5nAQdcU,8034
4
- q2rad/q2appmanager.py,sha256=FFty5-BvXou21kHabnBzetgKIpHL2JiYBsDtQrn_9cw,16028
3
+ q2rad/q2actions.py,sha256=eExRvOSyLhT_v1XCR-DmLEhQ9g_LRkrlyXnwDCjT0LM,8258
4
+ q2rad/q2appmanager.py,sha256=f_xM1XsYTRHdr3ZLBRVFKR3-jk_JbHMTZWjj8OxF_I4,15966
5
5
  q2rad/q2appselector.py,sha256=3VlYG2kn0cOVOuRfA3dWIStvtnyKZWmfbP9Jpb8w9VI,12595
6
6
  q2rad/q2constants.py,sha256=dQtN4OMvZw0FATDAFYjolI7eGMVUnNnbTl6qM-ggZ4I,3416
7
7
  q2rad/q2forms.py,sha256=A5VeBK8OdE3zn0L1TgvCk4OjpB1nLibJqBFfpVZr_Uc,10181
8
- q2rad/q2lines.py,sha256=5KcIh-uxOBfgRsVW30y-lhivSSZSlecmisNMTf5IWpY,16835
8
+ q2rad/q2lines.py,sha256=ttiINynYBnRbUg7WOs6xUNRT6h4iQrCiRecMN4Yaz8A,16970
9
9
  q2rad/q2make.py,sha256=wXoyBUwf2zaAl9JjWDCbjAteUElRq0O7ippyaMY9eug,6476
10
10
  q2rad/q2market.py,sha256=nyIBhZYqxNSlBXpcxdBRQ1vGSzWV8jI4cQoVa9JdRhE,2589
11
11
  q2rad/q2modules.py,sha256=N3OkUKfiwVZtmDyAtnJcs2Rprd7uIHd0HhjHTyFoN_s,4294
12
12
  q2rad/q2packages.py,sha256=ifRu8LuVrrTphiJe1JUVED_KB2sHJCPVnZq9VEh3K8w,3473
13
- q2rad/q2queries.py,sha256=ABbr66YRLmleo2wcpvwcQwSPt_htjQsYXgoCqRRQSbo,12512
13
+ q2rad/q2queries.py,sha256=EXcau1UCdPrvTvsYr0857NoXldmrkhdrkmbUTk5LrMQ,12536
14
14
  q2rad/q2rad.py,sha256=6tdOqShosy379Q_5MtTKl4_9vISvYrukT2XVMoM-QdQ,45868
15
15
  q2rad/q2raddb.py,sha256=ISqT5EBFO7eaXcQRNpA0hMiRU84kbd-FcfckwKMlGfs,4506
16
16
  q2rad/q2reports.py,sha256=Q-bZONOSDDQPrLziHTpW_L6FS82CkWzxITkv5EX5x98,84439
17
- q2rad/q2stylesettings.py,sha256=_aK-44kFfkaEGdwH7FzRs1KP7nsP08bL8t8OmdjM2eY,4767
18
- q2rad/q2utils.py,sha256=EODL46tMih2tQOV20e5nkNoKeNPyPQZ_YZFk-eAJC2M,19104
19
- q2rad/version.py,sha256=b5gX_HTnsuQMze8B7eGOfsOt1vDe0UEoMwaH1dflSJM,23
20
- q2rad-0.1.201.dist-info/entry_points.txt,sha256=DmsJQE6f3wYuhdN2h6ARYxSe8_d03paeepfGpdVj5rs,42
21
- q2rad-0.1.201.dist-info/LICENSE,sha256=JRR3LlR18ghhYXT4G2cWgXmnxRvcuVcKlqncWWK4MRY,10347
22
- q2rad-0.1.201.dist-info/METADATA,sha256=8EsfMtwlrI5G0iQlxVuXW5V6M1layK13endlCMfyXTQ,3369
23
- q2rad-0.1.201.dist-info/WHEEL,sha256=WGfLGfLX43Ei_YORXSnT54hxFygu34kMpcQdmgmEwCQ,88
24
- q2rad-0.1.201.dist-info/RECORD,,
17
+ q2rad/q2stylesettings.py,sha256=rEJLyLzsffJEXnMbg9bPB3KHLjYfw-49QgrtcYOfGV0,4769
18
+ q2rad/q2utils.py,sha256=n8BBzh-2G05zSRJLv2cCx2919laN9FmxzLVHOOoyoyg,19180
19
+ q2rad/version.py,sha256=ENd5zaP0caBdahFV3gqq_Ugt-hgm_mU8gicYRh0aKO0,23
20
+ q2rad-0.1.202.dist-info/entry_points.txt,sha256=DmsJQE6f3wYuhdN2h6ARYxSe8_d03paeepfGpdVj5rs,42
21
+ q2rad-0.1.202.dist-info/LICENSE,sha256=JRR3LlR18ghhYXT4G2cWgXmnxRvcuVcKlqncWWK4MRY,10347
22
+ q2rad-0.1.202.dist-info/METADATA,sha256=ShW-j3uKVIZThOzdnmLcruBbWHFj-htcN1dKr_cXZag,3369
23
+ q2rad-0.1.202.dist-info/WHEEL,sha256=WGfLGfLX43Ei_YORXSnT54hxFygu34kMpcQdmgmEwCQ,88
24
+ q2rad-0.1.202.dist-info/RECORD,,