Skip to content

Commit d70820d

Browse files
jjdelcerrojjdelcerro
authored andcommitted
Arreglado que se oculte el formulario de preview cuando se presenta un form a None o que no tiene items. refs https://redmine.gvsig.net/redmine/issues/4866
1 parent 868c8e1 commit d70820d

File tree

2 files changed

+23
-4
lines changed

2 files changed

+23
-4
lines changed

designer.py

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,9 @@
6868
from addons.mobileforms.items.connectedstringcombo.item import MobileFormItemConnectedStringComboFactory
6969
from addons.mobileforms.items.map.item import MobileFormItemMapFactory
7070

71+
from javax.swing import JScrollPane
72+
from javax.swing import JViewport
73+
7174
class TraceFunction(object):
7275
def __init__(self, fn, name=None):
7376
self.__fn = fn
@@ -299,7 +302,8 @@ def setForm(self, form):
299302
self.lstFormItems.getModel().clear()
300303
self.pnlItem.removeAll()
301304
self.pnlItem.revalidate()
302-
305+
self.tableSetVisible(self.tblPreviewForm,False)
306+
303307
self.updateListOfFormItems(form)
304308

305309
if form!=None:
@@ -312,6 +316,8 @@ def setForm(self, form):
312316
self.cboForms.setEnabled(False)
313317
self.cboForms.setSelectedIndex(index)
314318
self.cboForms.setEnabled(True)
319+
if not form.isEmpty():
320+
self.tableSetVisible(self.tblPreviewForm,True)
315321

316322
def createFormItemAddPopup(self):
317323
popup = JPopupMenu()
@@ -403,7 +409,8 @@ def lstPreviewForms_change(self, event):
403409
if event.getValueIsAdjusting() :
404410
return
405411
form = self.lstPreviewForms.getSelectedValue()
406-
if form == None:
412+
if form == None or form.isEmpty():
413+
self.tableSetVisible(self.tblPreviewForm,False)
407414
return
408415
model = DefaultTableModel()
409416
model.addColumn("")
@@ -419,9 +426,18 @@ def lstPreviewForms_change(self, event):
419426
model.addColumn(TableColumn(0,100,renderer, editor))
420427
self.tblPreviewForm.setColumnModel(model)
421428
self.tblPreviewForm.getTableHeader().setUI(None)
422-
self.tblPreviewForm.setVisible(True)
429+
self.tableSetVisible(self.tblPreviewForm,True)
423430
self.cboForms.setSelectedItem(form)
424-
431+
432+
def tableSetVisible(self, table, isVisible):
433+
parent = table.getParent()
434+
if isinstance(parent,JViewport):
435+
parent = parent.getParent()
436+
if isinstance(parent,JScrollPane):
437+
parent.setVisible(isVisible)
438+
else:
439+
table.setVisible(isVisible)
440+
425441
def btnFileOpen_click(self, *args):
426442
i18n = ToolsLocator.getI18nManager()
427443
f = openFileDialog(

form.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,4 +158,7 @@ def items(self):
158158

159159
def __iter__(self):
160160
return self.__items.__iter__()
161+
162+
def isEmpty(self):
163+
return len(self.__items)<1
161164

0 commit comments

Comments
 (0)