Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
开发团队
Flowable Engine
提交
1e538124
F
Flowable Engine
项目概览
开发团队
/
Flowable Engine
通知
9
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
F
Flowable Engine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
1e538124
编写于
3月 28, 2011
作者:
J
jbarrez
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
ACT-696: externalized all text labels
上级
b1c83dba
变更
27
隐藏空白更改
内联
并排
Showing
27 changed file
with
391 addition
and
126 deletion
+391
-126
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/Constant.java
...plorer2/src/main/java/org/activiti/explorer/Constant.java
+5
-2
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ExplorerApplication.java
.../main/java/org/activiti/explorer/ExplorerApplication.java
+15
-2
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/Messages.java
...plorer2/src/main/java/org/activiti/explorer/Messages.java
+114
-0
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/servlet/BootProcessEngineContextListener.java
...ti/explorer/servlet/BootProcessEngineContextListener.java
+2
-0
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/ExplorerLayout.java
...rc/main/java/org/activiti/explorer/ui/ExplorerLayout.java
+41
-40
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/MainLayout.java
...r2/src/main/java/org/activiti/explorer/ui/MainLayout.java
+4
-3
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/MainMenuBar.java
...2/src/main/java/org/activiti/explorer/ui/MainMenuBar.java
+4
-5
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/MainWindow.java
...r2/src/main/java/org/activiti/explorer/ui/MainWindow.java
+3
-1
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/FlowMenuBar.java
.../main/java/org/activiti/explorer/ui/flow/FlowMenuBar.java
+5
-2
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/ProcessDefinitionDetailPanel.java
...tiviti/explorer/ui/flow/ProcessDefinitionDetailPanel.java
+3
-2
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/ProcessDefinitionInfoComponent.java
...viti/explorer/ui/flow/ProcessDefinitionInfoComponent.java
+7
-5
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/listener/StartFlowClickListener.java
...iti/explorer/ui/flow/listener/StartFlowClickListener.java
+5
-1
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/login/CustomLoginForm.java
.../java/org/activiti/explorer/ui/login/CustomLoginForm.java
+5
-3
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/login/LoginPage.java
...c/main/java/org/activiti/explorer/ui/login/LoginPage.java
+5
-1
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/ManagementMenuBar.java
...rg/activiti/explorer/ui/management/ManagementMenuBar.java
+6
-5
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/db/DatabaseDetailPanel.java
...tiviti/explorer/ui/management/db/DatabaseDetailPanel.java
+4
-1
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/deployment/DeploymentDetailPanel.java
...lorer/ui/management/deployment/DeploymentDetailPanel.java
+5
-4
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/deployment/NewDeploymentListener.java
...lorer/ui/management/deployment/NewDeploymentListener.java
+3
-2
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/deployment/UploadPopupWindow.java
.../explorer/ui/management/deployment/UploadPopupWindow.java
+3
-2
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/job/JobDetailPanel.java
...g/activiti/explorer/ui/management/job/JobDetailPanel.java
+15
-11
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/profile/ProfilePage.java
...in/java/org/activiti/explorer/ui/profile/ProfilePage.java
+15
-14
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/task/TaskCommentPanel.java
.../java/org/activiti/explorer/ui/task/TaskCommentPanel.java
+2
-1
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/task/TaskCommentPopupWindow.java
...org/activiti/explorer/ui/task/TaskCommentPopupWindow.java
+6
-2
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/task/TaskDetailPanel.java
...n/java/org/activiti/explorer/ui/task/TaskDetailPanel.java
+13
-10
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/task/TaskMenuBar.java
.../main/java/org/activiti/explorer/ui/task/TaskMenuBar.java
+3
-2
modules/activiti-webapp-explorer2/src/main/resources/messages.properties
...i-webapp-explorer2/src/main/resources/messages.properties
+92
-0
modules/activiti-webapp-explorer2/src/main/webapp/VAADIN/themes/activiti/styles.css
...plorer2/src/main/webapp/VAADIN/themes/activiti/styles.css
+6
-5
未找到文件。
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/Constant.java
浏览文件 @
1e538124
...
...
@@ -21,10 +21,13 @@ import java.text.SimpleDateFormat;
*/
public
interface
Constant
{
// Resource bundle name
static
final
String
RESOURCE_BUNDLE
=
"messages"
;
// Date formatting
public
static
final
DateFormat
DEFAULT_DATE_FORMATTER
=
new
SimpleDateFormat
(
"dd MMM yyyy - hh:mm"
);
static
final
DateFormat
DEFAULT_DATE_FORMATTER
=
new
SimpleDateFormat
(
"dd MMM yyyy - hh:mm"
);
// Default diagram image extension, when name cannot be deducted from resource name
public
static
final
String
DEFAULT_DIAGRAM_IMAGE_EXTENSION
=
"png"
;
static
final
String
DEFAULT_DIAGRAM_IMAGE_EXTENSION
=
"png"
;
}
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ExplorerApplication.java
浏览文件 @
1e538124
...
...
@@ -15,6 +15,8 @@
*/
package
org.activiti.explorer
;
import
java.util.ResourceBundle
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
...
...
@@ -41,16 +43,21 @@ public class ExplorerApplication extends Application implements HttpServletReque
LogUtil
.
readJavaUtilLoggingConfigFromClasspath
();
}
private
static
ThreadLocal
<
ExplorerApplication
>
current
=
new
ThreadLocal
<
ExplorerApplication
>();
protected
static
ThreadLocal
<
ExplorerApplication
>
current
=
new
ThreadLocal
<
ExplorerApplication
>();
protected
MainWindow
mainWindow
;
protected
ResourceBundle
messages
;
public
void
init
()
{
initResourceBundle
();
this
.
mainWindow
=
new
MainWindow
();
setMainWindow
(
mainWindow
);
mainWindow
.
showLoginPage
();
}
protected
void
initResourceBundle
()
{
this
.
messages
=
ResourceBundle
.
getBundle
(
Constant
.
RESOURCE_BUNDLE
,
getLocale
());
}
/**
* Required to support multiple browser windows/tabs,
* see http://vaadin.com/web/joonas/wiki/-/wiki/Main/Supporting%20Multible%20Tabs
...
...
@@ -101,6 +108,12 @@ public class ExplorerApplication extends Application implements HttpServletReque
getMainWindow
().
addWindow
(
window
);
}
// Localisation
public
String
getMessage
(
String
key
)
{
return
messages
.
getString
(
key
);
}
// HttpServletRequestListener -------------------------------------------------------------------
public
void
onRequestStart
(
HttpServletRequest
request
,
HttpServletResponse
response
)
{
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/Messages.java
0 → 100644
浏览文件 @
1e538124
/* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package
org.activiti.explorer
;
/**
* @author Joram Barrez
*/
public
interface
Messages
{
// General
static
final
String
APP_TITLE
=
"app.title"
;
// Login
static
final
String
LOGIN_USERNAME
=
"login.username"
;
static
final
String
LOGIN_PASSWORD
=
"login.password"
;
static
final
String
LOGIN_BUTTON
=
"login.button"
;
static
final
String
LOGIN_FAILED_HEADER
=
"login.failed.header"
;
static
final
String
LOGIN_FAILED_INVALID
=
"login.failed.invalid"
;
// Header
static
final
String
HEADER_SEARCHBOX
=
"header.searchbox"
;
static
final
String
HEADER_LOGOUT
=
"header.logout"
;
// Main menu
static
final
String
MAIN_MENU_TASKS
=
"main.menu.tasks"
;
static
final
String
MAIN_MENU_FLOWS
=
"main.menu.flows"
;
static
final
String
MAIN_MENU_MANAGEMENT
=
"main.menu.management"
;
// Profile
static
final
String
PROFILE_ABOUT
=
"profile.about"
;
static
final
String
PROFILE_NAME
=
"profile.name"
;
static
final
String
PROFILE_JOBTITLE
=
"profile.jobtitle"
;
static
final
String
PROFILE_BIRTHDATE
=
"profile.birthdate"
;
static
final
String
PROFILE_LOCATION
=
"profile.location"
;
static
final
String
PROFILE_CONTACT
=
"profile.contact"
;
static
final
String
PROFILE_EMAIL
=
"profile.email"
;
static
final
String
PROFILE_PHONE
=
"profile.phone"
;;
static
final
String
PROFILE_TWITTER
=
"profile.twitter"
;
static
final
String
PROFILE_SKYPE
=
"profile.skype"
;
static
final
String
PROFILE_ACCOUNTS
=
"profile.accounts"
;
// Task menu
static
final
String
TASK_MENU_INBOX
=
"task.menu.inbox"
;
static
final
String
TASK_MENU_QUEUED
=
"task.menu.queued"
;
// Task details
static
final
String
TASK_CREATED
=
"task.created"
;
static
final
String
TASK_DUEDATE
=
"task.duedate"
;
static
final
String
TASK_COMPLETE
=
"task.complete"
;
static
final
String
TASK_COMPLETED
=
"task.task.completed"
;
static
final
String
TASK_RESET_FORM
=
"task.form.reset"
;
static
final
String
TASK_ADD_COMMENT
=
"task.comment.add"
;
static
final
String
TASK_COMMENT_POPUP_HEADER
=
"task.comment.popup.header"
;
// Flow menu
static
final
String
FLOW_MENU_MY_FLOWS
=
"flow.menu.my"
;
static
final
String
FLOW_MENU_LAUNCH_FLOW
=
"flow.menu.launch"
;
// Flow page
static
final
String
FLOW_CATEGORY
=
"flow.category"
;
static
final
String
FLOW_VERSION
=
"flow.version"
;
static
final
String
FLOW_DEPLOY_TIME
=
"flow.deploy.time"
;
static
final
String
FLOW_HEADER_DIAGRAM
=
"flow.header.diagram"
;
static
final
String
FLOW_NO_DIAGRAM
=
"flow.no.diagram"
;
static
final
String
FLOW_START
=
"flow.start"
;
static
final
String
FLOW_STARTED_NOTIFICATIOn
=
"flow.started.notification"
;
// Management menu
static
final
String
MGMT_MENU_DATABASE
=
"management.menu.database"
;
static
final
String
MGMT_MENU_DEPLOYMENTS
=
"management.menu.deployments"
;
static
final
String
MGMT_MENU_JOBS
=
"management.menu.jobs"
;
static
final
String
MGMT_MENU_DEPLOYMENTS_SHOW_ALL
=
"management.menu.deployments.show.all"
;
static
final
String
MGMT_MENU_DEPLOYMENTS_UPLOAD
=
"management.menu.deployments.upload"
;
// Job page
static
final
String
JOB_EXECUTE
=
"job.execute"
;
static
final
String
JOB_HEADER_EXECUTION
=
"job.header.execution"
;
static
final
String
JOB_RETRIES
=
"job.retries"
;
static
final
String
JOB_NO_RETRIES
=
"job.no.retries"
;
static
final
String
JOB_DEFAULT_NAME
=
"job.default.name"
;
static
final
String
JOB_TIMER
=
"job.timer"
;
static
final
String
JOB_MESSAGE
=
"job.message"
;
static
final
String
JOB_DUEDATE
=
"job.duedate"
;
static
final
String
JOB_NO_DUEDATE
=
"job.no.dudedate"
;
static
final
String
JOB_ERROR
=
"job.error"
;
static
final
String
JOB_NOT_EXECUTED
=
"job.not.executed"
;
// Deployment page
static
final
String
DEPLOYMENT_DELETE
=
"deployment.delete"
;
static
final
String
DEPLOYMENT_CREATE_TIME
=
"deployment.create.time"
;
static
final
String
DEPLOYMENT_HEADER_DEFINITIONS
=
"deployment.header.definitions"
;
static
final
String
DEPLOYMENT_HEADER_RESOURCES
=
"deployment.header.resources"
;
static
final
String
DEPLOYMENT_UPLOAD
=
"deployment.upload"
;
static
final
String
DEPLOYMENT_UPLOAD_DESCRIPTION
=
"deployment.upload.description"
;
// Database page
static
final
String
DATABASE_NO_ROWS
=
"database.no.rows"
;
// Upload
static
final
String
UPLOAD_SELECT
=
"upload.select"
;
static
final
String
UPLOAD_DROP
=
"upload.drop"
;
}
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/servlet/BootProcessEngineContextListener.java
浏览文件 @
1e538124
...
...
@@ -165,6 +165,8 @@ public class BootProcessEngineContextListener implements ServletContextListener
fozzie
.
setPassword
(
"fozzie"
);
identityService
.
saveUser
(
fozzie
);
identityService
.
createMembership
(
"fozzie"
,
"management"
);
byte
[]
pictureBytes
=
IoUtil
.
readInputStream
(
this
.
getClass
().
getClassLoader
().
getResourceAsStream
(
"org/activiti/explorer/images/fozzie.jpg"
),
null
);
Picture
picture
=
new
Picture
(
pictureBytes
,
"image/jpeg"
);
identityService
.
setUserPicture
(
"fozzie"
,
picture
);
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/ExplorerLayout.java
浏览文件 @
1e538124
...
...
@@ -21,75 +21,76 @@ package org.activiti.explorer.ui;
public
interface
ExplorerLayout
{
// Application theme
public
static
final
String
THEME
=
"activiti"
;
static
final
String
THEME
=
"activiti"
;
// Custom layouts (found in /VAADIN/themes/${THEME}/layouyts
public
static
final
String
CUSTOM_LAYOUT_DEFAULT
=
"activiti"
;
public
static
final
String
CUSTOM_LAYOUT_LOGIN
=
"login"
;
static
final
String
CUSTOM_LAYOUT_DEFAULT
=
"activiti"
;
static
final
String
CUSTOM_LAYOUT_LOGIN
=
"login"
;
// Locations defined in the layout .html files
public
static
final
String
LOCATION_LOGIN
=
"login-content"
;
public
static
final
String
LOCATION_CONTENT
=
"content"
;
public
static
final
String
LOCATION_SEARCH
=
"search"
;
public
static
final
String
LOCATION_MAIN_MENU
=
"main-menu"
;
public
static
final
String
LOCATION_HIDDEN
=
"hidden"
;
static
final
String
LOCATION_LOGIN
=
"login-content"
;
static
final
String
LOCATION_CONTENT
=
"content"
;
static
final
String
LOCATION_SEARCH
=
"search"
;
static
final
String
LOCATION_LOGOUT
=
"logout"
;
static
final
String
LOCATION_MAIN_MENU
=
"main-menu"
;
static
final
String
LOCATION_HIDDEN
=
"hidden"
;
// ----------
// Css styles
// ----------
// General
public
static
final
String
STYLE_SMALL_TEXTFIELD
=
"small"
;
public
static
final
String
STYLE_SEARCHBOX
=
"searchBox"
;
public
static
final
String
STYLE_LOGOUT_BUTTON
=
"logout"
;
public
static
final
String
STYLE_USER_PROFILE
=
"user"
;
public
static
final
String
STYLE_LABEL_BOLD
=
"bold"
;
static
final
String
STYLE_SMALL_TEXTFIELD
=
"small"
;
static
final
String
STYLE_SEARCHBOX
=
"searchBox"
;
static
final
String
STYLE_LOGOUT_BUTTON
=
"logout"
;
static
final
String
STYLE_USER_PROFILE
=
"user"
;
static
final
String
STYLE_LABEL_BOLD
=
"bold"
;
//Forms
public
static
final
String
STYLE_FORMPROPERTY_READONLY
=
"formprop-readonly"
;
public
static
final
String
STYLE_FORMPROPERTY_LABEL
=
"formprop-label"
;
static
final
String
STYLE_FORMPROPERTY_READONLY
=
"formprop-readonly"
;
static
final
String
STYLE_FORMPROPERTY_LABEL
=
"formprop-label"
;
// Login page
public
static
final
String
STYLE_LOGIN_PAGE
=
"login-general"
;
static
final
String
STYLE_LOGIN_PAGE
=
"login-general"
;
// Menu bar
public
static
final
String
STYLE_MENUBAR
=
"menubar"
;
public
static
final
String
STYLE_MENUBAR_BUTTON
=
"menu-button"
;
static
final
String
STYLE_MENUBAR
=
"menubar"
;
static
final
String
STYLE_MENUBAR_BUTTON
=
"menu-button"
;
// Action Bar
public
static
final
String
STYLE_ACTION_BAR
=
"action-bar"
;
static
final
String
STYLE_ACTION_BAR
=
"action-bar"
;
// Profile page
public
static
final
String
STYLE_PROFILE_LAYOUT
=
"profile-layout"
;
public
static
final
String
STYLE_PROFILE_HEADER
=
"profile-header"
;
public
static
final
String
STYLE_PROFILE_FIELD
=
"profile-field"
;
public
static
final
String
STYLE_PROFILE_PICTURE
=
"profile-picture"
;
static
final
String
STYLE_PROFILE_LAYOUT
=
"profile-layout"
;
static
final
String
STYLE_PROFILE_HEADER
=
"profile-header"
;
static
final
String
STYLE_PROFILE_FIELD
=
"profile-field"
;
static
final
String
STYLE_PROFILE_PICTURE
=
"profile-picture"
;
// Task pages
public
static
final
String
STYLE_TASK_LIST
=
"task-list"
;
public
static
final
String
STYLE_TASK_DETAILS
=
"task-details"
;
public
static
final
String
STYLE_TASK_DETAILS_HEADER
=
"task-details-header"
;
public
static
final
String
STYLE_TASK_COMMENT
=
"task-comment"
;
public
static
final
String
STYLE_TASK_COMMENT_AUTHOR
=
"task-comment-author"
;
public
static
final
String
STYLE_TASK_COMMENT_TIME
=
"task-comment-time"
;
public
static
final
String
STYLE_TASK_COMMENT_PICTURE
=
"task-comment-picture"
;
static
final
String
STYLE_TASK_LIST
=
"task-list"
;
static
final
String
STYLE_TASK_DETAILS
=
"task-details"
;
static
final
String
STYLE_TASK_DETAILS_HEADER
=
"task-details-header"
;
static
final
String
STYLE_TASK_COMMENT
=
"task-comment"
;
static
final
String
STYLE_TASK_COMMENT_AUTHOR
=
"task-comment-author"
;
static
final
String
STYLE_TASK_COMMENT_TIME
=
"task-comment-time"
;
static
final
String
STYLE_TASK_COMMENT_PICTURE
=
"task-comment-picture"
;
// Flow pages
public
static
final
String
STYLE_PROCESS_DEFINITION_LIST
=
"proc-def-list"
;
public
static
final
String
STYLE_PROCESS_DEFINITION_DETAILS_HEADER
=
"proc-def-details-header"
;
static
final
String
STYLE_PROCESS_DEFINITION_LIST
=
"proc-def-list"
;
static
final
String
STYLE_PROCESS_DEFINITION_DETAILS_HEADER
=
"proc-def-details-header"
;
// Database page
public
static
final
String
STYLE_DATABASE_DETAILS
=
"database-details"
;
public
static
final
String
STYLE_DATABASE_TABLE_ROW
=
"database-table-row"
;
static
final
String
STYLE_DATABASE_DETAILS
=
"database-details"
;
static
final
String
STYLE_DATABASE_TABLE_ROW
=
"database-table-row"
;
// Deployment page
public
static
final
String
STYLE_DEPLOYMENT_DETAILS_HEADER
=
"deployment-details-header"
;
public
static
final
String
STYLE_DEPLOYMENT_UPLOAD_DESCRIPTION
=
"upload-description"
;
public
static
final
String
STYLE_DEPLOYMENT_UPLOAD_BUTTON
=
"upload-button"
;
static
final
String
STYLE_DEPLOYMENT_DETAILS_HEADER
=
"deployment-details-header"
;
static
final
String
STYLE_DEPLOYMENT_UPLOAD_DESCRIPTION
=
"upload-description"
;
static
final
String
STYLE_DEPLOYMENT_UPLOAD_BUTTON
=
"upload-button"
;
// Jobs page
public
static
final
String
STYLE_JOB_DETAILS_HEADER
=
"job-details-header"
;
public
static
final
String
STYLE_JOB_EXCEPTION_MESSAGE
=
"job-exception-message"
;
public
static
final
String
STYLE_JOB_EXCEPTION_TRACE
=
"job-exception-trace"
;
static
final
String
STYLE_JOB_DETAILS_HEADER
=
"job-details-header"
;
static
final
String
STYLE_JOB_EXCEPTION_MESSAGE
=
"job-exception-message"
;
static
final
String
STYLE_JOB_EXCEPTION_TRACE
=
"job-exception-trace"
;
}
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/MainLayout.java
浏览文件 @
1e538124
...
...
@@ -15,6 +15,7 @@ package org.activiti.explorer.ui;
import
org.activiti.engine.identity.User
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.profile.ProfilePage
;
import
com.vaadin.ui.Button
;
...
...
@@ -47,7 +48,7 @@ public class MainLayout extends CustomLayout {
protected
void
initSearchBox
()
{
TextField
searchBox
=
new
TextField
();
searchBox
.
setInputPrompt
(
"Search tasks"
);
searchBox
.
setInputPrompt
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
HEADER_SEARCHBOX
)
);
searchBox
.
addStyleName
(
ExplorerLayout
.
STYLE_SMALL_TEXTFIELD
);
searchBox
.
addStyleName
(
ExplorerLayout
.
STYLE_SEARCHBOX
);
addComponent
(
searchBox
,
ExplorerLayout
.
LOCATION_SEARCH
);
...
...
@@ -73,7 +74,7 @@ public class MainLayout extends CustomLayout {
});
// logout button
Button
logout
=
new
Button
(
"Logout"
);
Button
logout
=
new
Button
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
HEADER_LOGOUT
)
);
logout
.
setStyleName
(
Reindeer
.
BUTTON_LINK
);
logout
.
addStyleName
(
ExplorerLayout
.
STYLE_LOGOUT_BUTTON
);
logout
.
setIcon
(
Images
.
WHITE_DIVIDER
);
...
...
@@ -88,7 +89,7 @@ public class MainLayout extends CustomLayout {
logoutGrid
.
addComponent
(
logout
,
1
,
0
);
// Add logout grid to header
addComponent
(
logoutGrid
,
"logout"
);
addComponent
(
logoutGrid
,
ExplorerLayout
.
LOCATION_LOGOUT
);
}
protected
void
initMainMenuBar
()
{
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/MainMenuBar.java
浏览文件 @
1e538124
...
...
@@ -14,6 +14,7 @@
package
org.activiti.explorer.ui
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.flow.FlowPage
;
import
org.activiti.explorer.ui.management.db.DatabasePage
;
import
org.activiti.explorer.ui.task.TaskInboxPage
;
...
...
@@ -34,29 +35,27 @@ public class MainMenuBar extends MenuBar {
public
MainMenuBar
()
{
super
();
Button
taskButton
=
createMenuBarButton
(
"Tasks"
);
Button
taskButton
=
createMenuBarButton
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
MAIN_MENU_TASKS
)
);
taskButton
.
addListener
(
new
ClickListener
()
{
public
void
buttonClick
(
ClickEvent
event
)
{
ExplorerApplication
.
getCurrent
().
switchView
(
new
TaskInboxPage
());
}
});
Button
flowButton
=
createMenuBarButton
(
"Flows"
);
Button
flowButton
=
createMenuBarButton
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
MAIN_MENU_FLOWS
)
);
flowButton
.
addListener
(
new
ClickListener
()
{
public
void
buttonClick
(
ClickEvent
event
)
{
ExplorerApplication
.
getCurrent
().
switchView
(
new
FlowPage
());
}
});
Button
managementButton
=
createMenuBarButton
(
"Management"
);
Button
managementButton
=
createMenuBarButton
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
MAIN_MENU_MANAGEMENT
)
);
managementButton
.
addListener
(
new
ClickListener
()
{
public
void
buttonClick
(
ClickEvent
event
)
{
ExplorerApplication
.
getCurrent
().
switchView
(
new
DatabasePage
());
}
});
createMenuBarButton
(
"Reports"
);
fillRemainingSpace
();
}
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/MainWindow.java
浏览文件 @
1e538124
...
...
@@ -12,6 +12,8 @@
*/
package
org.activiti.explorer.ui
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.navigation.NavigationFragmentChangeListener
;
import
org.activiti.explorer.navigation.UriFragment
;
import
org.activiti.explorer.ui.login.LoginPage
;
...
...
@@ -33,7 +35,7 @@ public class MainWindow extends Window {
protected
boolean
showingLoginPage
;
public
MainWindow
()
{
super
(
"Explorer - The Next generation"
);
super
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
APP_TITLE
)
);
setTheme
(
ExplorerLayout
.
THEME
);
}
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/FlowMenuBar.java
浏览文件 @
1e538124
...
...
@@ -13,6 +13,9 @@
package
org.activiti.explorer.ui.flow
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
com.vaadin.ui.MenuBar
;
...
...
@@ -29,8 +32,8 @@ public class FlowMenuBar extends MenuBar {
setWidth
(
"100%"
);
addItem
(
"My Flows"
,
null
);
addItem
(
"Launch Flow"
,
null
);
addItem
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
FLOW_MENU_MY_FLOWS
)
,
null
);
addItem
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
FLOW_MENU_LAUNCH_FLOW
)
,
null
);
}
}
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/ProcessDefinitionDetailPanel.java
浏览文件 @
1e538124
...
...
@@ -19,6 +19,7 @@ import org.activiti.engine.form.StartFormData;
import
org.activiti.engine.repository.Deployment
;
import
org.activiti.engine.repository.ProcessDefinition
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
org.activiti.explorer.ui.flow.listener.StartFlowClickListener
;
import
org.activiti.explorer.ui.form.FormPropertiesForm
;
...
...
@@ -141,7 +142,7 @@ public class ProcessDefinitionDetailPanel extends Panel {
actionsContainer
.
setSizeFull
();
actionsContainer
.
setSpacing
(
true
);
startFlowButton
=
new
Button
(
"Start flow"
);
startFlowButton
=
new
Button
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
FLOW_START
)
);
startFlowButton
.
addListener
(
new
StartFlowClickListener
(
processDefinition
,
flowPage
));
actionsContainer
.
addComponent
(
startFlowButton
);
...
...
@@ -159,7 +160,7 @@ public class ProcessDefinitionDetailPanel extends Panel {
protected
void
initCategory
()
{
if
(
processDefinition
.
getCategory
()
!=
null
)
{
categoryLabel
=
new
Label
(
"Category: "
+
processDefinition
.
getCategory
());
categoryLabel
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
FLOW_CATEGORY
)
+
processDefinition
.
getCategory
());
categoryLabel
.
addStyleName
(
Reindeer
.
LABEL_SMALL
);
addComponent
(
categoryLabel
);
}
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/ProcessDefinitionInfoComponent.java
浏览文件 @
1e538124
...
...
@@ -17,7 +17,8 @@ import org.activiti.engine.ProcessEngines;
import
org.activiti.engine.RepositoryService
;
import
org.activiti.engine.repository.Deployment
;
import
org.activiti.engine.repository.ProcessDefinition
;
import
org.activiti.explorer.Constant
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
org.activiti.explorer.ui.Images
;
...
...
@@ -82,7 +83,7 @@ public class ProcessDefinitionInfoComponent extends VerticalLayout {
timeDetails
.
setComponentAlignment
(
grid
,
Alignment
.
MIDDLE_LEFT
);
// Version
Label
version
=
new
Label
(
"Version "
+
processDefinition
.
getVersion
());
Label
version
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
FLOW_VERSION
)
+
processDefinition
.
getVersion
());
version
.
addStyleName
(
ExplorerLayout
.
STYLE_LABEL_BOLD
);
version
.
setSizeUndefined
();
grid
.
addComponent
(
version
);
...
...
@@ -90,7 +91,7 @@ public class ProcessDefinitionInfoComponent extends VerticalLayout {
// Deployment time
if
(
deployment
.
getDeploymentTime
()
!=
null
)
{
Label
createTime
=
new
Label
(
"Deployed "
+
new
PrettyTime
().
format
(
deployment
.
getDeploymentTime
()));
Label
createTime
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
FLOW_DEPLOY_TIME
)
+
new
PrettyTime
().
format
(
deployment
.
getDeploymentTime
()));
createTime
.
addStyleName
(
ExplorerLayout
.
STYLE_LABEL_BOLD
);
createTime
.
setSizeUndefined
();
grid
.
addComponent
(
createTime
);
...
...
@@ -106,7 +107,7 @@ public class ProcessDefinitionInfoComponent extends VerticalLayout {
protected
void
initImage
()
{
VerticalLayout
processImageContainer
=
new
VerticalLayout
();
Label
processTitle
=
new
Label
(
"Flow Image"
);
Label
processTitle
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
FLOW_HEADER_DIAGRAM
)
);
processTitle
.
addStyleName
(
ExplorerLayout
.
STYLE_PROCESS_DEFINITION_DETAILS_HEADER
);
processImageContainer
.
addComponent
(
processTitle
);
...
...
@@ -119,7 +120,8 @@ public class ProcessDefinitionInfoComponent extends VerticalLayout {
embedded
.
setType
(
Embedded
.
TYPE_IMAGE
);
processImageContainer
.
addComponent
(
embedded
);
}
else
{
Label
noImageAvailable
=
new
Label
(
"No image available for this flow"
);
Label
noImageAvailable
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
FLOW_NO_DIAGRAM
));
noImageAvailable
.
addStyleName
(
Reindeer
.
LABEL_SMALL
);
processImageContainer
.
addComponent
(
noImageAvailable
);
}
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/flow/listener/StartFlowClickListener.java
浏览文件 @
1e538124
...
...
@@ -13,6 +13,8 @@
package
org.activiti.explorer.ui.flow.listener
;
import
java.text.MessageFormat
;
import
org.activiti.engine.FormService
;
import
org.activiti.engine.ProcessEngines
;
import
org.activiti.engine.RuntimeService
;
...
...
@@ -20,6 +22,7 @@ import org.activiti.engine.form.StartFormData;
import
org.activiti.engine.repository.ProcessDefinition
;
import
org.activiti.engine.runtime.ProcessInstance
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.flow.FlowPage
;
import
com.vaadin.ui.Button.ClickEvent
;
...
...
@@ -58,7 +61,8 @@ public class StartFlowClickListener implements ClickListener {
ProcessInstance
processInstance
=
runtimeService
.
startProcessInstanceById
(
processDefinition
.
getId
());
// Show notification of success
ExplorerApplication
.
getCurrent
().
getMainWindow
().
showNotification
(
"Process '"
+
processDefinition
.
getName
()
+
"' has been started"
);
ExplorerApplication
.
getCurrent
().
getMainWindow
().
showNotification
(
MessageFormat
.
format
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
FLOW_STARTED_NOTIFICATIOn
),
processDefinition
.
getName
()));
}
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/login/CustomLoginForm.java
浏览文件 @
1e538124
...
...
@@ -12,6 +12,8 @@
*/
package
org.activiti.explorer.ui.login
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
com.vaadin.ui.LoginForm
;
...
...
@@ -33,9 +35,9 @@ public class CustomLoginForm extends LoginForm {
protected
static
final
String
STYLE_LOGIN_BUTTON
=
"login-button"
;
public
CustomLoginForm
()
{
usernameCaption
=
"User ID"
;
passwordCaption
=
"Password"
;
submitCaption
=
"Log in"
;
usernameCaption
=
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
LOGIN_USERNAME
)
;
passwordCaption
=
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
LOGIN_PASSWORD
)
;
submitCaption
=
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
LOGIN_BUTTON
)
;
}
// Hack-alert !! See explanation at http://vaadin.com/book/-/page/components.loginform.html
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/login/LoginPage.java
浏览文件 @
1e538124
...
...
@@ -16,6 +16,7 @@ import org.activiti.engine.IdentityService;
import
org.activiti.engine.ProcessEngines
;
import
org.activiti.engine.identity.User
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
com.vaadin.ui.CustomLayout
;
...
...
@@ -69,7 +70,10 @@ public class LoginPage extends CustomLayout {
ExplorerApplication
.
getCurrent
().
showDefaultContent
();
}
else
{
refreshUi
();
ExplorerApplication
.
getCurrent
().
showErrorNotification
(
"Could not log you in"
,
"Invalid user id and/or password"
);
ExplorerApplication
.
getCurrent
().
showErrorNotification
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
LOGIN_FAILED_HEADER
),
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
LOGIN_FAILED_INVALID
)
);
}
}
}
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/ManagementMenuBar.java
浏览文件 @
1e538124
...
...
@@ -13,6 +13,7 @@
package
org.activiti.explorer.ui.management
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.management.db.DatabasePage
;
import
org.activiti.explorer.ui.management.deployment.DeploymentPage
;
import
org.activiti.explorer.ui.management.deployment.NewDeploymentListener
;
...
...
@@ -31,24 +32,24 @@ public class ManagementMenuBar extends MenuBar {
setWidth
(
"100%"
);
// Database
MenuItem
databaseItem
=
addItem
(
"Database"
,
new
Command
()
{
MenuItem
databaseItem
=
addItem
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
MGMT_MENU_DATABASE
)
,
new
Command
()
{
public
void
menuSelected
(
MenuItem
selectedItem
)
{
ExplorerApplication
.
getCurrent
().
switchView
(
new
DatabasePage
());
}
});
// Deployments
MenuItem
deploymentsItem
=
addItem
(
"Deployments"
,
null
);
MenuItem
deploymentsItem
=
addItem
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
MGMT_MENU_DEPLOYMENTS
)
,
null
);
deploymentsItem
.
addItem
(
"Show all"
,
new
Command
()
{
deploymentsItem
.
addItem
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
MGMT_MENU_DEPLOYMENTS_SHOW_ALL
)
,
new
Command
()
{
public
void
menuSelected
(
MenuItem
selectedItem
)
{
ExplorerApplication
.
getCurrent
().
switchView
(
new
DeploymentPage
());
}
});
deploymentsItem
.
addItem
(
"Upload new"
,
new
NewDeploymentListener
());
deploymentsItem
.
addItem
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
MGMT_MENU_DEPLOYMENTS_UPLOAD
)
,
new
NewDeploymentListener
());
// Jobs
addItem
(
"Jobs"
,
new
Command
()
{
addItem
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
MGMT_MENU_JOBS
)
,
new
Command
()
{
private
static
final
long
serialVersionUID
=
3038274253757975888L
;
public
void
menuSelected
(
MenuItem
selectedItem
)
{
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/db/DatabaseDetailPanel.java
浏览文件 @
1e538124
...
...
@@ -15,6 +15,8 @@ package org.activiti.explorer.ui.management.db;
import
org.activiti.engine.ManagementService
;
import
org.activiti.engine.ProcessEngines
;
import
org.activiti.engine.management.TableMetaData
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.data.LazyLoadingContainer
;
import
org.activiti.explorer.data.LazyLoadingQuery
;
import
org.activiti.explorer.ui.ExplorerLayout
;
...
...
@@ -81,8 +83,9 @@ public class DatabaseDetailPanel extends VerticalLayout {
}
}
else
{
Label
noDataLabel
=
new
Label
(
"Table contains no rows"
);
Label
noDataLabel
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
DATABASE_NO_ROWS
)
);
noDataLabel
.
addStyleName
(
ExplorerLayout
.
STYLE_DATABASE_DETAILS
);
noDataLabel
.
addStyleName
(
Reindeer
.
LABEL_SMALL
);
addComponent
(
noDataLabel
);
setExpandRatio
(
noDataLabel
,
1.0f
);
}
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/deployment/DeploymentDetailPanel.java
浏览文件 @
1e538124
...
...
@@ -21,6 +21,7 @@ import org.activiti.engine.RepositoryService;
import
org.activiti.engine.repository.Deployment
;
import
org.activiti.engine.repository.ProcessDefinition
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
org.activiti.explorer.ui.Images
;
import
org.activiti.explorer.ui.flow.FlowPage
;
...
...
@@ -76,7 +77,7 @@ public class DeploymentDetailPanel extends Panel {
layout
.
addComponent
(
nameLabel
);
// Delete button
Button
deleteButton
=
new
Button
(
"Delete"
);
Button
deleteButton
=
new
Button
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
DEPLOYMENT_DELETE
)
);
deleteButton
.
setIcon
(
Images
.
DELETE
);
deleteButton
.
addStyleName
(
Reindeer
.
BUTTON_LINK
);
layout
.
addComponent
(
deleteButton
);
...
...
@@ -100,7 +101,7 @@ public class DeploymentDetailPanel extends Panel {
Embedded
clockImage
=
new
Embedded
(
null
,
Images
.
CLOCK
);
timeDetails
.
addComponent
(
clockImage
);
Label
timeLabel
=
new
Label
(
"Deployed "
+
new
PrettyTime
().
format
(
deployment
.
getDeploymentTime
()));
Label
timeLabel
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
DEPLOYMENT_CREATE_TIME
)
+
new
PrettyTime
().
format
(
deployment
.
getDeploymentTime
()));
timeDetails
.
addComponent
(
timeLabel
);
timeDetails
.
setComponentAlignment
(
timeLabel
,
Alignment
.
MIDDLE_CENTER
);
}
...
...
@@ -114,7 +115,7 @@ public class DeploymentDetailPanel extends Panel {
if
(
processDefinitions
.
size
()
>
0
)
{
// Header
Label
processDefinitionHeader
=
new
Label
(
"Process Definitions"
);
Label
processDefinitionHeader
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
DEPLOYMENT_HEADER_DEFINITIONS
)
);
processDefinitionHeader
.
addStyleName
(
ExplorerLayout
.
STYLE_DEPLOYMENT_DETAILS_HEADER
);
processDefinitionHeader
.
setWidth
(
"95%"
);
addComponent
(
processDefinitionHeader
);
...
...
@@ -152,7 +153,7 @@ public class DeploymentDetailPanel extends Panel {
Collections
.
sort
(
resourceNames
);
// small nr of elements, so we can do it in-memory
if
(
resourceNames
.
size
()
>
0
)
{
Label
resourceHeader
=
new
Label
(
"Resources"
);
Label
resourceHeader
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
DEPLOYMENT_HEADER_RESOURCES
)
);
resourceHeader
.
setWidth
(
"95%"
);
resourceHeader
.
addStyleName
(
ExplorerLayout
.
STYLE_DEPLOYMENT_DETAILS_HEADER
);
addComponent
(
resourceHeader
);
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/deployment/NewDeploymentListener.java
浏览文件 @
1e538124
...
...
@@ -13,6 +13,7 @@
package
org.activiti.explorer.ui.management.deployment
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
com.vaadin.ui.MenuBar.Command
;
import
com.vaadin.ui.MenuBar.MenuItem
;
...
...
@@ -28,8 +29,8 @@ public class NewDeploymentListener implements Command {
public
void
menuSelected
(
MenuItem
selectedItem
)
{
DeploymentUploadReceiver
receiver
=
new
DeploymentUploadReceiver
();
UploadPopupWindow
uploadPopupWindow
=
new
UploadPopupWindow
(
"Upload new Deployment"
,
"Select a file (.bar, .zip or .bpmn20.xml) or drop a file in the rectangle below"
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
DEPLOYMENT_UPLOAD
),
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
DEPLOYMENT_UPLOAD_DESCRIPTION
)
,
receiver
);
// The receiver also acts as a listener for the end of the upload
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/deployment/UploadPopupWindow.java
浏览文件 @
1e538124
...
...
@@ -17,6 +17,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
com.vaadin.event.dd.DragAndDropEvent
;
...
...
@@ -102,7 +103,7 @@ public class UploadPopupWindow extends Window
protected
void
addUpload
()
{
this
.
upload
=
new
Upload
(
null
,
receiver
);
upload
.
addStyleName
(
ExplorerLayout
.
STYLE_DEPLOYMENT_UPLOAD_BUTTON
);
upload
.
setButtonCaption
(
"Choose a file"
);
upload
.
setButtonCaption
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
UPLOAD_SELECT
)
);
upload
.
setImmediate
(
true
);
layout
.
addComponent
(
upload
);
layout
.
setComponentAlignment
(
upload
,
Alignment
.
MIDDLE_CENTER
);
...
...
@@ -130,7 +131,7 @@ public class UploadPopupWindow extends Window
layout
.
addComponent
(
dragAndDropWrapper
);
layout
.
setComponentAlignment
(
dragAndDropWrapper
,
Alignment
.
MIDDLE_CENTER
);
Label
dropLabel
=
new
Label
(
"Drop file here"
);
Label
dropLabel
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
UPLOAD_DROP
)
);
dropLabel
.
setSizeUndefined
();
dropPanel
.
addComponent
(
dropLabel
);
((
VerticalLayout
)
dropPanel
.
getContent
()).
setComponentAlignment
(
dropLabel
,
Alignment
.
MIDDLE_CENTER
);
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/management/job/JobDetailPanel.java
浏览文件 @
1e538124
...
...
@@ -20,6 +20,7 @@ import org.activiti.engine.impl.runtime.TimerEntity;
import
org.activiti.engine.runtime.Job
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Images
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
com.ocpsoft.pretty.time.PrettyTime
;
...
...
@@ -72,7 +73,7 @@ public class JobDetailPanel extends Panel {
layout
.
addComponent
(
nameLabel
);
// Execute button
Button
executeButton
=
new
Button
(
"Execute"
);
Button
executeButton
=
new
Button
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_EXECUTE
)
);
executeButton
.
setIcon
(
Images
.
EXECUTE
);
executeButton
.
addStyleName
(
Reindeer
.
BUTTON_LINK
);
layout
.
addComponent
(
executeButton
);
...
...
@@ -97,11 +98,11 @@ public class JobDetailPanel extends Panel {
protected
String
getJobLabel
(
Job
theJob
)
{
// Try figuring out the type
if
(
theJob
instanceof
TimerEntity
)
{
return
"Timer job
"
+
theJob
.
getId
();
return
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_TIMER
)
+
"
"
+
theJob
.
getId
();
}
else
if
(
theJob
instanceof
MessageEntity
)
{
return
"Message job
"
+
theJob
.
getId
();
return
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_MESSAGE
)
+
"
"
+
theJob
.
getId
();
}
else
{
return
"Job
"
+
theJob
.
getId
();
return
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_DEFAULT_NAME
)
+
"
"
+
theJob
.
getId
();
}
}
...
...
@@ -119,9 +120,9 @@ public class JobDetailPanel extends Panel {
String
dueDateString
=
null
;
if
(
job
.
getDuedate
()
!=
null
)
{
dueDateString
=
"Due date
"
+
new
PrettyTime
().
format
(
job
.
getDuedate
());
dueDateString
=
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_DUEDATE
)
+
"
"
+
new
PrettyTime
().
format
(
job
.
getDuedate
());
}
else
{
dueDateString
=
"No due date"
;
dueDateString
=
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_NO_DUEDATE
)
;
}
Label
timeLabel
=
new
Label
(
dueDateString
);
timeDetails
.
addComponent
(
timeLabel
);
...
...
@@ -138,7 +139,7 @@ public class JobDetailPanel extends Panel {
}
protected
void
addJobState
()
{
Label
processDefinitionHeader
=
new
Label
(
"Job Execution"
);
Label
processDefinitionHeader
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_HEADER_EXECUTION
)
);
processDefinitionHeader
.
addStyleName
(
ExplorerLayout
.
STYLE_JOB_DETAILS_HEADER
);
processDefinitionHeader
.
setWidth
(
"95%"
);
addComponent
(
processDefinitionHeader
);
...
...
@@ -155,7 +156,8 @@ public class JobDetailPanel extends Panel {
// Exceptions
if
(
job
.
getExceptionMessage
()
!=
null
)
{
Label
exceptionMessageLabel
=
new
Label
(
"Error during last execution: "
+
job
.
getExceptionMessage
());
Label
exceptionMessageLabel
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_ERROR
)
+
": "
+
job
.
getExceptionMessage
());
exceptionMessageLabel
.
addStyleName
(
ExplorerLayout
.
STYLE_JOB_EXCEPTION_MESSAGE
);
layout
.
addComponent
(
exceptionMessageLabel
);
...
...
@@ -176,17 +178,19 @@ public class JobDetailPanel extends Panel {
layout
.
addComponent
(
stackPanel
);
layout
.
setExpandRatio
(
stackPanel
,
1.0f
);
}
else
{
Label
noException
=
new
Label
(
"Job hasn't been executed yet"
);
Label
noException
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_NOT_EXECUTED
));
noException
.
addStyleName
(
Reindeer
.
LABEL_SMALL
);
layout
.
addComponent
(
noException
);
layout
.
setExpandRatio
(
noException
,
1.0f
);
}
}
protected
String
getRetriesLabel
(
Job
theJob
)
{
String
retriesString
;
if
(
theJob
.
getRetries
()
<=
0
)
{
retriesString
=
"No more retries left"
;
retriesString
=
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_NO_RETRIES
)
;
}
else
{
retriesString
=
"Retries
: "
+
theJob
.
getRetries
();
retriesString
=
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
JOB_RETRIES
)
+
"
: "
+
theJob
.
getRetries
();
}
return
retriesString
;
}
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/profile/ProfilePage.java
浏览文件 @
1e538124
...
...
@@ -20,6 +20,7 @@ import org.activiti.engine.ProcessEngines;
import
org.activiti.engine.identity.Picture
;
import
org.activiti.engine.identity.User
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
org.activiti.explorer.ui.Images
;
...
...
@@ -139,38 +140,38 @@ public class ProfilePage extends Panel {
}
protected
void
initAboutSection
()
{
addProfileHeader
(
infoPanelLayout
,
"About"
);
addProfileHeader
(
infoPanelLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_ABOUT
)
);
GridLayout
aboutLayout
=
createInfoSectionLayout
(
2
,
4
);
addProfileEntry
(
aboutLayout
,
"Name: "
,
user
.
getFirstName
()
+
" "
+
user
.
getLastName
());
addProfileEntry
(
aboutLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_NAME
)
,
user
.
getFirstName
()
+
" "
+
user
.
getLastName
());
if
(
jobTitle
!=
null
)
{
addProfileEntry
(
aboutLayout
,
"Job title: "
,
jobTitle
);
addProfileEntry
(
aboutLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_JOBTITLE
)
,
jobTitle
);
}
if
(
birthDate
!=
null
)
{
addProfileEntry
(
aboutLayout
,
"Birth date: "
,
birthDate
);
addProfileEntry
(
aboutLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_BIRTHDATE
)
,
birthDate
);
}
if
(
location
!=
null
)
{
addProfileEntry
(
aboutLayout
,
"Location: "
,
location
);
addProfileEntry
(
aboutLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_LOCATION
)
,
location
);
}
}
protected
void
initContactSection
()
{
addProfileHeader
(
infoPanelLayout
,
"Contact"
);
addProfileHeader
(
infoPanelLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_CONTACT
)
);
GridLayout
contactLayout
=
createInfoSectionLayout
(
2
,
4
);
if
(
user
.
getEmail
()
!=
null
)
{
addProfileEntry
(
contactLayout
,
"Email: "
,
user
.
getEmail
());
addProfileEntry
(
contactLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_EMAIL
)
,
user
.
getEmail
());
}
if
(
phone
!=
null
)
{
addProfileEntry
(
contactLayout
,
"Phone: "
,
phone
);
addProfileEntry
(
contactLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_PHONE
)
,
phone
);
}
if
(
twitterName
!=
null
)
{
addProfileEntry
(
contactLayout
,
"twitter"
,
twitterName
);
addProfileEntry
(
contactLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_TWITTER
)
,
twitterName
);
}
if
(
skypeId
!=
null
)
{
...
...
@@ -190,25 +191,25 @@ public class ProfilePage extends Panel {
skypeImage
.
setSizeUndefined
();
skypeLayout
.
addComponent
(
skypeImage
);
addProfileEntry
(
contactLayout
,
"Skype: "
,
skypeLayout
);
addProfileEntry
(
contactLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_SKYPE
)
,
skypeLayout
);
}
}
protected
void
initAccountsSection
()
{
addProfileHeader
(
infoPanelLayout
,
"Accounts"
);
addProfileHeader
(
infoPanelLayout
,
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
PROFILE_ACCOUNTS
)
);
GridLayout
accountLayout
=
createInfoSectionLayout
(
3
,
2
);
// Google
Embedded
googleImage
=
new
Embedded
(
null
,
Images
.
GOOGLE
);
googleImage
.
setSizeUndefined
();
accountLayout
.
addComponent
(
googleImage
);
addProfileEntry
(
accountLayout
,
"Google
:
"
,
"mr_kermit_frog@gmail.com"
);
addProfileEntry
(
accountLayout
,
"Google"
,
"mr_kermit_frog@gmail.com"
);
// Alfresco
Embedded
alfrescoImage
=
new
Embedded
(
null
,
Images
.
ALFRESCO
);
alfrescoImage
.
setSizeUndefined
();
accountLayout
.
addComponent
(
alfrescoImage
);
addProfileEntry
(
accountLayout
,
"Alfresco
:
"
,
"kermit_alfresco"
);
addProfileEntry
(
accountLayout
,
"Alfresco"
,
"kermit_alfresco"
);
}
protected
void
addProfileHeader
(
VerticalLayout
infoLayout
,
String
headerName
)
{
...
...
@@ -227,7 +228,7 @@ public class ProfilePage extends Panel {
}
protected
void
addProfileEntry
(
GridLayout
layout
,
String
name
,
String
value
)
{
addProfileEntry
(
layout
,
name
,
new
Label
(
value
));
addProfileEntry
(
layout
,
name
+
": "
,
new
Label
(
value
));
}
protected
void
addProfileEntry
(
GridLayout
layout
,
String
name
,
Component
value
)
{
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/task/TaskCommentPanel.java
浏览文件 @
1e538124
...
...
@@ -22,6 +22,7 @@ import org.activiti.engine.TaskService;
import
org.activiti.engine.identity.User
;
import
org.activiti.engine.task.Comment
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
com.ocpsoft.pretty.time.PrettyTime
;
...
...
@@ -160,7 +161,7 @@ public class TaskCommentPanel extends Panel {
textArea
.
addStyleName
(
ExplorerLayout
.
STYLE_TASK_COMMENT_TIME
);
grid
.
addComponent
(
textArea
);
Button
addCommentButtom
=
new
Button
(
"Add comment"
);
Button
addCommentButtom
=
new
Button
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_ADD_COMMENT
)
);
addCommentButtom
.
addStyleName
(
Reindeer
.
BUTTON_SMALL
);
grid
.
addComponent
(
addCommentButtom
);
grid
.
setComponentAlignment
(
addCommentButtom
,
Alignment
.
BOTTOM_RIGHT
);
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/task/TaskCommentPopupWindow.java
浏览文件 @
1e538124
...
...
@@ -13,6 +13,7 @@
package
org.activiti.explorer.ui.task
;
import
java.io.InputStream
;
import
java.text.MessageFormat
;
import
org.activiti.engine.IdentityService
;
import
org.activiti.engine.ProcessEngines
;
...
...
@@ -20,6 +21,7 @@ import org.activiti.engine.identity.Picture;
import
org.activiti.engine.identity.User
;
import
org.activiti.engine.task.Comment
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
com.ocpsoft.pretty.time.PrettyTime
;
...
...
@@ -92,8 +94,10 @@ public class TaskCommentPopupWindow extends Window {
layout
.
addComponent
(
commentLayout
);
layout
.
setExpandRatio
(
commentLayout
,
1.0f
);
Label
header
=
new
Label
(
new
PrettyTime
().
format
(
comment
.
getTime
())
+
" "
+
user
.
getFirstName
()
+
" "
+
user
.
getLastName
()
+
" said"
);
Label
header
=
new
Label
(
MessageFormat
.
format
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_COMMENT_POPUP_HEADER
),
new
PrettyTime
().
format
(
comment
.
getTime
()),
user
.
getFirstName
()
+
" "
+
user
.
getLastName
()));
header
.
addStyleName
(
ExplorerLayout
.
STYLE_TASK_COMMENT_AUTHOR
);
commentLayout
.
addComponent
(
header
);
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/task/TaskDetailPanel.java
浏览文件 @
1e538124
...
...
@@ -12,6 +12,7 @@
*/
package
org.activiti.explorer.ui.task
;
import
java.text.MessageFormat
;
import
java.util.Map
;
import
org.activiti.engine.FormService
;
...
...
@@ -20,6 +21,7 @@ import org.activiti.engine.TaskService;
import
org.activiti.engine.form.TaskFormData
;
import
org.activiti.engine.task.Task
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
org.activiti.explorer.ui.ExplorerLayout
;
import
org.activiti.explorer.ui.Images
;
import
org.activiti.explorer.ui.form.FormPropertiesEventListener
;
...
...
@@ -131,7 +133,7 @@ public class TaskDetailPanel extends HorizontalLayout {
// create time
if
(
task
.
getCreateTime
()
!=
null
)
{
Label
createTime
=
new
Label
(
"Created
"
+
new
PrettyTime
().
format
(
task
.
getCreateTime
()));
Label
createTime
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_CREATED
)
+
"
"
+
new
PrettyTime
().
format
(
task
.
getCreateTime
()));
createTime
.
addStyleName
(
ExplorerLayout
.
STYLE_LABEL_BOLD
);
createTime
.
setSizeUndefined
();
grid
.
addComponent
(
createTime
);
...
...
@@ -144,7 +146,7 @@ public class TaskDetailPanel extends HorizontalLayout {
// due date
if
(
task
.
getDueDate
()
!=
null
)
{
Label
dueDate
=
new
Label
(
"Has to be finished
"
+
new
PrettyTime
().
format
(
task
.
getDueDate
()));
Label
dueDate
=
new
Label
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_DUEDATE
)
+
"
"
+
new
PrettyTime
().
format
(
task
.
getDueDate
()));
dueDate
.
addStyleName
(
ExplorerLayout
.
STYLE_LABEL_BOLD
);
dueDate
.
setSizeUndefined
();
grid
.
addComponent
(
dueDate
);
...
...
@@ -212,8 +214,8 @@ public class TaskDetailPanel extends HorizontalLayout {
TaskFormData
formData
=
formService
.
getTaskFormData
(
task
.
getId
());
if
(
formData
!=
null
&&
formData
.
getFormProperties
()
!=
null
&&
formData
.
getFormProperties
().
size
()
>
0
)
{
taskForm
=
new
FormPropertiesForm
();
taskForm
.
setSubmitButtonCaption
(
"Complete task"
);
taskForm
.
setCancelButtonCaption
(
"Reset form"
);
taskForm
.
setSubmitButtonCaption
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_COMPLETE
)
);
taskForm
.
setCancelButtonCaption
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_RESET_FORM
)
);
taskForm
.
setFormProperties
(
formData
.
getFormProperties
());
taskForm
.
addListener
(
new
FormPropertiesEventListener
()
{
...
...
@@ -226,9 +228,9 @@ public class TaskDetailPanel extends HorizontalLayout {
formService
.
submitTaskFormData
(
task
.
getId
(),
properties
);
ExplorerApplication
.
getCurrent
().
getMainWindow
().
showNotification
(
"Task '"
+
task
.
getName
()
+
"' completed"
);
ExplorerApplication
.
getCurrent
().
getMainWindow
().
showNotification
(
MessageFormat
.
format
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_COMPLETED
),
task
.
getName
()));
parent
.
refreshList
();
}
...
...
@@ -244,7 +246,7 @@ public class TaskDetailPanel extends HorizontalLayout {
}
else
{
// Just add a button to complete the task
// TODO: perhaps move to a better place
Button
completeButton
=
new
Button
(
"Complete"
);
Button
completeButton
=
new
Button
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_COMPLETE
)
);
completeButton
.
addListener
(
new
ClickListener
()
{
...
...
@@ -252,8 +254,9 @@ public class TaskDetailPanel extends HorizontalLayout {
public
void
buttonClick
(
ClickEvent
event
)
{
taskService
.
complete
(
task
.
getId
());
ExplorerApplication
.
getCurrent
().
getMainWindow
().
showNotification
(
"Task '"
+
task
.
getName
()
+
"' completed"
);
ExplorerApplication
.
getCurrent
().
getMainWindow
().
showNotification
(
MessageFormat
.
format
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_COMPLETED
),
task
.
getName
()));
parent
.
refreshList
();
}
});
...
...
modules/activiti-webapp-explorer2/src/main/java/org/activiti/explorer/ui/task/TaskMenuBar.java
浏览文件 @
1e538124
...
...
@@ -20,6 +20,7 @@ import org.activiti.engine.ProcessEngines;
import
org.activiti.engine.TaskService
;
import
org.activiti.engine.identity.Group
;
import
org.activiti.explorer.ExplorerApplication
;
import
org.activiti.explorer.Messages
;
import
com.vaadin.ui.MenuBar
;
...
...
@@ -45,7 +46,7 @@ public class TaskMenuBar extends MenuBar {
// Inbox
String
userId
=
ExplorerApplication
.
getCurrent
().
getLoggedInUser
().
getId
();
long
inboxCount
=
taskService
.
createTaskQuery
().
taskAssignee
(
userId
).
count
();
addItem
(
"Inbox
("
+
inboxCount
+
")"
,
new
Command
()
{
addItem
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_MENU_INBOX
)+
"
("
+
inboxCount
+
")"
,
new
Command
()
{
public
void
menuSelected
(
MenuItem
selectedItem
)
{
ExplorerApplication
.
getCurrent
().
switchView
(
new
TaskInboxPage
());
}
...
...
@@ -53,7 +54,7 @@ public class TaskMenuBar extends MenuBar {
// Queued
List
<
Group
>
groups
=
identityService
.
createGroupQuery
().
groupMember
(
userId
).
orderByGroupName
().
asc
().
list
();
MenuItem
queuedItem
=
addItem
(
"Queued"
,
null
);
MenuItem
queuedItem
=
addItem
(
ExplorerApplication
.
getCurrent
().
getMessage
(
Messages
.
TASK_MENU_QUEUED
)
,
null
);
long
queuedCount
=
0
;
for
(
final
Group
group
:
groups
)
{
long
groupCount
=
taskService
.
createTaskQuery
().
taskCandidateGroup
(
group
.
getId
()).
count
();
...
...
modules/activiti-webapp-explorer2/src/main/resources/messages.properties
0 → 100644
浏览文件 @
1e538124
app.title
=
Explorer V2
# Login
login.failed.header
=
Could not log you in
login.failed.invalid
=
Invalid user id and/or password
login.username
=
User ID
login.password
=
Password
login.button
=
Log in
# Header
header.searchbox
=
Search tasks
header.logout
=
Logout
# Main menu
main.menu.tasks
=
Tasks
main.menu.flows
=
Flows
main.menu.management
=
Management
# Profile
profile.about
=
About
profile.name
=
Name
profile.jobtitle
=
Job title
profile.birthdate
=
Birth date
profile.location
=
Location
profile.contact
=
Contact
profile.email
=
Email
profile.phone
=
Phone
profile.twitter
=
Twitter
profile.skype
=
Skype
profile.accounts
=
Accounts
# Task menu
task.menu.inbox
=
Inbox
task.menu.queued
=
Queued
# Task details
task.created
=
Created
task.duedate
=
Has to be finished
task.complete
=
Complete task
task.task.completed
=
Task {0} completed
task.form.reset
=
Reset form
task.comment.add
=
Add comment
task.comment.popup.header
=
{0}, {1} said:
# Flow Menu
flow.menu.my
=
My Flow
flow.menu.launch
=
Launch Flow
# Flow page
flow.category
=
Category:
flow.version
=
Version
flow.deploy.time
=
Deployed
flow.header.diagram
=
Flow Diagram
flow.no.diagram
=
No image available for this flow.
flow.start
=
Start flow
flow.started.notification
=
Process {0} has been started
# Management menu
management.menu.database
=
Database
management.menu.deployments
=
Deployments
management.menu.deployments.show.all
=
Show all
management.menu.deployments.upload
=
Upload new
management.menu.jobs
=
Jobs
# Job page
job.execute
=
Execute
job.header.execution
=
Job execution
job.retries
=
Retries
job.no.retries
=
No more retries left
job.default.name
=
Job
job.timer
=
Timer job
job.message
=
Message job
job.duedate
=
Due
job.no.dudedate
=
No duedate
job.error
=
Error during last execution
job.not.executed
=
Job hasn't been executed yet.
# Deployment page
deployment.delete
=
Delete
deployment.create.time
=
Deployed
deployment.header.definitions
=
Process Definitions
deployment.header.resources
=
Resources
deployment.upload
=
Upload new deployment
deployment.upload.description
=
Select a file (.bar, .zip or .bpmn20.xml) or drop a file in the rectangle below.
# Database page
database.no.rows
=
Table contains no rows.
# Upload
upload.select
=
Choose a file
upload.drop
=
Drop a file here
modules/activiti-webapp-explorer2/src/main/webapp/VAADIN/themes/activiti/styles.css
浏览文件 @
1e538124
...
...
@@ -9,7 +9,7 @@
color
:
white
;
/* color of text */
font-family
:
Helvetica
,
Arial
,
sans-serif
;
background
:
#1b7ec3
;
/* non-white part of page */
font-size
:
1
6
px
;
font-size
:
1
4
px
;
font-weight
:
bold
;
}
...
...
@@ -29,8 +29,8 @@
}
#login-central-components
{
margin
:
0
0
0
-18
5
px
;
width
:
3
7
0px
;
margin
:
0
0
0
-18
0
px
;
width
:
3
6
0px
;
text-align
:
center
;
position
:
absolute
;
left
:
50%
;
...
...
@@ -45,14 +45,14 @@
/* Text fields of input form */
input
.login-field
{
font-size
:
16px
;
height
:
4
0px
;
height
:
3
0px
;
width
:
250px
;
margin-left
:
10px
;
padding-left
:
7px
;
/* To start the typing of the text a bit to the right */
float
:
right
;
background
:
white
;
border
:
solid
1px
transparent
;
margin-bottom
:
2
px
;
margin-bottom
:
5
px
;
-moz-border-radius
:
4px
;
-webkit-border-radius
:
4px
;
}
...
...
@@ -331,6 +331,7 @@ input.login-field {
/* Shared styles */
.deployment-details-header
,
.job-details-header
,
.proc-def-details-header
{
width
:
95%
;
height
:
1.1em
;
padding-top
:
0.3em
;
padding-right
:
0.3em
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录