* [ 1662486 ] Lazy loading tab not set window size for greatest tab
This commit is contained in:
parent
13445f27c1
commit
b606979670
|
|
@ -21,6 +21,7 @@ import java.awt.event.*;
|
||||||
import java.sql.*;
|
import java.sql.*;
|
||||||
import java.util.logging.*;
|
import java.util.logging.*;
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
|
|
||||||
import org.compiere.apps.form.*;
|
import org.compiere.apps.form.*;
|
||||||
import org.compiere.model.*;
|
import org.compiere.model.*;
|
||||||
import org.compiere.util.*;
|
import org.compiere.util.*;
|
||||||
|
|
@ -231,17 +232,24 @@ public class AMenuStartItem extends Thread implements ActionListener
|
||||||
return;
|
return;
|
||||||
|
|
||||||
SwingUtilities.invokeLater(m_updatePB); // 2
|
SwingUtilities.invokeLater(m_updatePB); // 2
|
||||||
frame.pack();
|
if (Ini.isPropertyBool(Ini.P_OPEN_WINDOW_MAXIMIZED) )
|
||||||
if (Ini.isPropertyBool(Ini.P_OPEN_WINDOW_MAXIMIZED) )
|
{
|
||||||
|
frame.pack();
|
||||||
frame.setExtendedState(Frame.MAXIMIZED_BOTH);
|
frame.setExtendedState(Frame.MAXIMIZED_BOTH);
|
||||||
|
}
|
||||||
|
|
||||||
// Center the window
|
// Center the window
|
||||||
SwingUtilities.invokeLater(m_updatePB); // 3
|
SwingUtilities.invokeLater(m_updatePB); // 3
|
||||||
if (Ini.isPropertyBool(Ini.P_OPEN_WINDOW_MAXIMIZED) ) {
|
if (Ini.isPropertyBool(Ini.P_OPEN_WINDOW_MAXIMIZED) )
|
||||||
|
{
|
||||||
frame.setVisible(true);
|
frame.setVisible(true);
|
||||||
frame.toFront();
|
frame.toFront();
|
||||||
} else
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
frame.validate();
|
||||||
AEnv.showCenterScreen(frame);
|
AEnv.showCenterScreen(frame);
|
||||||
|
}
|
||||||
|
|
||||||
m_menu.getWindowManager().add(frame);
|
m_menu.getWindowManager().add(frame);
|
||||||
|
|
||||||
|
|
@ -340,5 +348,5 @@ public class AMenuStartItem extends Thread implements ActionListener
|
||||||
} else
|
} else
|
||||||
AEnv.showCenterScreen(ff);
|
AEnv.showCenterScreen(ff);
|
||||||
} // startForm
|
} // startForm
|
||||||
|
|
||||||
} // StartItem
|
} // StartItem
|
||||||
|
|
|
||||||
|
|
@ -646,6 +646,8 @@ public final class APanel extends CPanel
|
||||||
// Size
|
// Size
|
||||||
if (windowSize != null)
|
if (windowSize != null)
|
||||||
setPreferredSize(windowSize);
|
setPreferredSize(windowSize);
|
||||||
|
else
|
||||||
|
revalidate();
|
||||||
Dimension size = getPreferredSize();
|
Dimension size = getPreferredSize();
|
||||||
log.info( "fini - " + size);
|
log.info( "fini - " + size);
|
||||||
m_curWinTab.requestFocusInWindow();
|
m_curWinTab.requestFocusInWindow();
|
||||||
|
|
@ -1033,7 +1035,12 @@ public final class APanel extends CPanel
|
||||||
}
|
}
|
||||||
else // Cur Tab Setting
|
else // Cur Tab Setting
|
||||||
{
|
{
|
||||||
m_mWorkbench.getMWindow(0).initTab(m_curTabIndex);
|
boolean needValidate = false;
|
||||||
|
if (m_mWorkbench.getMWindow(0).isTabInitialized(m_curTabIndex) == false)
|
||||||
|
{
|
||||||
|
m_mWorkbench.getMWindow(0).initTab(m_curTabIndex);
|
||||||
|
needValidate = true;
|
||||||
|
}
|
||||||
m_curGC.activate();
|
m_curGC.activate();
|
||||||
m_curTab = m_curGC.getMTab();
|
m_curTab = m_curGC.getMTab();
|
||||||
|
|
||||||
|
|
@ -1074,6 +1081,32 @@ public final class APanel extends CPanel
|
||||||
m_curTab.navigateCurrent(); // updates counter
|
m_curTab.navigateCurrent(); // updates counter
|
||||||
m_curGC.dynamicDisplay(0);
|
m_curGC.dynamicDisplay(0);
|
||||||
}
|
}
|
||||||
|
if (needValidate)
|
||||||
|
{
|
||||||
|
JFrame frame = Env.getFrame(APanel.this);
|
||||||
|
if (frame != null)
|
||||||
|
{
|
||||||
|
//not sure why, the following lines is needed to make dynamic resize work
|
||||||
|
//tested on jdk1.5, 1.6 using jgoodies look and feel
|
||||||
|
frame.getPreferredSize();
|
||||||
|
|
||||||
|
if (frame.getExtendedState() != JFrame.MAXIMIZED_BOTH)
|
||||||
|
{
|
||||||
|
frame.setMinimumSize(frame.getSize());
|
||||||
|
revalidate();
|
||||||
|
SwingUtilities.invokeLater(new Runnable() {
|
||||||
|
|
||||||
|
public void run() {
|
||||||
|
JFrame frame = Env.getFrame(APanel.this);
|
||||||
|
frame.validate();
|
||||||
|
AEnv.showCenterScreen(frame);
|
||||||
|
frame.setMinimumSize(null);
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
// else ##CHANGE
|
// else ##CHANGE
|
||||||
// m_curTab.navigateCurrent();
|
// m_curTab.navigateCurrent();
|
||||||
}
|
}
|
||||||
|
|
@ -2025,7 +2058,11 @@ public final class APanel extends CPanel
|
||||||
this, m_curWindowNo, vButton.getProcess_ID(), table_ID,
|
this, m_curWindowNo, vButton.getProcess_ID(), table_ID,
|
||||||
record_ID, startWOasking);
|
record_ID, startWOasking);
|
||||||
if (dialog.isValid())
|
if (dialog.isValid())
|
||||||
|
{
|
||||||
|
dialog.validate();
|
||||||
|
dialog.pack();
|
||||||
AEnv.showCenterWindow(Env.getWindow(m_curWindowNo), dialog);
|
AEnv.showCenterWindow(Env.getWindow(m_curWindowNo), dialog);
|
||||||
|
}
|
||||||
} // actionButton
|
} // actionButton
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue